# -*- python -*- ## ## SConscript - SCons buildscript for the Lumiera Application. ## Definitions how to build the main tree ## from Buildhelper import srcSubtree from Buildhelper import scanSubtree Import('env icons config') # define the source file/dirs comprising each artifact to be built. lLib = env.SharedLibrary('lumierasupport', srcSubtree('lib'), install=True) lApp = env.SharedLibrary('lumieracommon', srcSubtree('common'), addLibs=lLib, install=True) lBack = env.SharedLibrary('lumierabackend', srcSubtree('backend'),addLibs=lLib+lApp, install=True) lProc = env.SharedLibrary('lumieraproc', srcSubtree('proc'), addLibs=lLib+lApp+lBack, install=True) core = lProc+lBack+lApp+lLib # in reverse dependency order support_lib = lLib app_lib = lApp+support_lib backend_lib = lBack+app_lib core_lib = core lumiera = ( env.Program('lumiera', ['lumiera/main.cpp'] + core, install=True) + config ) # Install the lumiera application: # symlink the executable into the bin dir env.SymLink('#$DESTDIR/bin/lumiera',env.path.installExe+'lumiera','../lib/lumiera/lumiera') # building Lumiera Plugins plugins = [] # currently none # the Lumiera GTK GUI envGtk = env.Clone() envGtk.mergeConf(['gtkmm-3.0','sigc++-2.0','gthread-2.0','cairomm-1.0','gdl','xv','x11','xext','sm']) envGtk.Append(LIBS=core) guimodule = envGtk.LumieraPlugin('gtk_gui', srcSubtree('gui'), install=True) gui = ( guimodule + icons + [env.GuiResource(f) for f in env.Glob('gui/*.css')] ) Export('lumiera core core_lib app_lib backend_lib support_lib plugins guimodule gui')