libEnv.Tool('addLinkDeps', package='myPackage', toBuild='shared')
myLib = libEnv.SharedLibrary('myPkgLib', listFiles('src/*.cxx'))

swigEnv.Tool('addLinkDeps', package='myPackage', toBuild='swig')
mySwigWrapper = swigEnv.SwigLibrary('_py_myPkgLib', 'src/py_myPkg.i')

# More lines defining apps, test programs, etc. Then register:
   ....
progEnv.Tool('registerTargets', package = 'myPackage',
             libraryCxts = [[myLib, libEnv]],
             swigCxts = [[mySwigWrapper, swigEnv]],
             includes = ... )