52 lines
2 KiB
Python
52 lines
2 KiB
Python
# -*- 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)
|
|
lVault = env.SharedLibrary('lumieravault', srcSubtree('vault'), addLibs=lLib+lApp, install=True)
|
|
lSteam = env.SharedLibrary('lumierasteam', srcSubtree('steam'), addLibs=lLib+lApp+lVault,install=True)
|
|
|
|
# in reverse dependency order
|
|
core = lSteam+lVault+lApp+lLib # used to build the core application
|
|
app_lib = lApp+lLib # use to link against the platform
|
|
core_lib = core # use to link against the core application
|
|
vault_lib = lVault+app_lib # use to link against the low-level backend
|
|
support_lib = lLib # use to link against the support lib only
|
|
|
|
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'])
|
|
|
|
guimodule = envGtk.LumieraPlugin('gtk_gui', srcSubtree('stage') + core, install=True)
|
|
resources = ( [env.GuiResource(f) for f in scanSubtree('stage', ['*.css'])] # note: collected into one target dir
|
|
)
|
|
gui = ( guimodule
|
|
+ resources
|
|
+ icons
|
|
)
|
|
|
|
|
|
Export('lumiera core core_lib app_lib vault_lib support_lib plugins envGtk guimodule gui')
|