SCons: reconfigure to build common lib and the gui standalone and as module

compiles OK, lumiera runs and loads gui plugin, lumigui starts, but some tests fail.
This commit is contained in:
Fischlurch 2008-12-18 09:35:27 +01:00
parent 6d66476383
commit 3567e6f542

View file

@ -311,29 +311,27 @@ def defineBuildTargets(env, artifacts):
# + env.PrecompiledHeader('$SRCDIR/pre_a.hpp')
# )
objback = srcSubtree(env,'$SRCDIR/backend')
objproc = srcSubtree(env,'$SRCDIR/proc')
objlib = ( srcSubtree(env,'$SRCDIR/lumiera')
+ srcSubtree(env,'$SRCDIR/lib')
)
core = ( env.SharedLibrary('$LIBDIR/lumierabackend', objback)
objapp = srcSubtree(env,'$SRCDIR/common')
objback = srcSubtree(env,'$SRCDIR/backend')
objproc = srcSubtree(env,'$SRCDIR/proc')
objlib = srcSubtree(env,'$SRCDIR/lib')
core = ( env.SharedLibrary('$LIBDIR/lumieracommon', objapp)
+ env.SharedLibrary('$LIBDIR/lumierabackend', objback)
+ env.SharedLibrary('$LIBDIR/lumieraproc', objproc)
+ env.SharedLibrary('$LIBDIR/lumiera', objlib)
)
artifacts['lumiera'] = env.Program('$BINDIR/lumiera', ['$SRCDIR/main.cpp'], LIBS=core)
artifacts['lumiera'] = env.Program('$BINDIR/lumiera', ['$SRCDIR/lumiera/main.cpp'], LIBS=core)
artifacts['corelib'] = core
# temporary solution to build the GuiStarterPlugin (TODO: implement plugin building as discussed on November meeting)
envplug = env.Clone()
envplug.Append(CPPPATH='$SRCDIR/plugin', CPPDEFINES='LUMIERA_PLUGIN')
guistarterplugin = env.LoadableModule('#$BINDIR/guistart',
envplug.SharedObject('$SRCDIR/guistart.cpp'), LIBS=core, SHLIBPREFIX='')
artifacts['plugins'] = guistarterplugin
artifacts['plugins'] = [] # currently none
# the Lumiera GTK GUI
envgtk = env.Clone().mergeConf(['gtkmm-2.4','cairomm-1.0','gdl-1.0','librsvg-2.0','xv','xext','sm'])
envgtk.Append(CPPDEFINES='LUMIERA_PLUGIN', LIBS=core)
objgui = srcSubtree(envgtk,'$SRCDIR/gui')
# render and install Icons
@ -343,7 +341,9 @@ def defineBuildTargets(env, artifacts):
+ [env.IconCopy(f) for f in scanSubtree(prerendered_icon_dir, ['*.png'])]
)
artifacts['lumigui'] = ( envgtk.Program('$BINDIR/lumigui', objgui + core)
guimodule = envgtk.LoadableModule('$LIBDIR/gui', objgui, SHLIBPREFIX='')
artifacts['lumigui'] = ( guimodule
+ envgtk.Program('$BINDIR/lumigui', objgui )
+ env.Install('$BINDIR', env.Glob('$SRCDIR/gui/*.rc'))
+ artifacts['icons']
)