the new structure causes them now to be installed into $TARGET/stage which is simply not what I want. I still consider $TARGET/gui the better choice, since an administrator or packager is not aware of our layer namings. The existing solution was half baked anyway, it did not really replicate the source tree. On the other hand, I want to retain the location of the CSS files within the GUI tree, since I consider it a good practice, to keep "code-like" resources with the actual code, and not far away in some arcane "data" directory. No I've noticed, that the env.GuiResource() function is only used once, for this very task. So, for the time being, we can keep it simple and deditaced to that task, i.e we pick up all CSS files we find and install it into a single target directory. NOTE: this issue has brought to my attention two further, completely unrelated issues * Ticket #1192 (Lumiera hangs on failed GUI start) * The ProcDispatcher does an idle wait, due to an error in timed-wait implementation
85 lines
2.6 KiB
Python
85 lines
2.6 KiB
Python
# -*- python -*-
|
|
##
|
|
## SConstruct - SCons based build-system for Lumiera
|
|
##
|
|
|
|
# Copyright (C) Lumiera.org
|
|
# 2008, Hermann Vosseler <Ichthyostega@web.de>
|
|
#
|
|
# This program is free software; you can redistribute it and/or
|
|
# modify it under the terms of the GNU General Public License as
|
|
# published by the Free Software Foundation; either version 2 of
|
|
# the License, or (at your option) any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program; if not, write to the Free Software
|
|
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
#####################################################################
|
|
|
|
|
|
# NOTE: scons -h for help.
|
|
# This script /defines/ the components and how they fit together.
|
|
# SCons will derive dependencies and the necessary build steps.
|
|
# Read more about the SCons build system at: http://www.scons.org
|
|
|
|
|
|
# NOTE: Lumiera SCons extension modules and plugins
|
|
#--------------------------------------------------
|
|
import sys
|
|
sys.path.append('./admin/scons')
|
|
#--------------------------------------------------
|
|
|
|
|
|
import Setup
|
|
import Options
|
|
import Platform
|
|
|
|
from Buildhelper import *
|
|
from LumieraEnvironment import *
|
|
|
|
|
|
|
|
#####################################################################
|
|
|
|
env = Setup.defineBuildEnvironment() # dirs & compiler flags
|
|
env = Platform.configure(env) # library dependencies
|
|
|
|
|
|
|
|
### === MAIN BUILD === ##############################################
|
|
|
|
# call subdir SConscript(s) to define the actual build targets...
|
|
SConscript(dirs=['data','src','src/tool','research','tests','doc'], exports='env')
|
|
|
|
|
|
|
|
|
|
# additional files to be cleaned when cleaning 'build'
|
|
env.Clean ('build', [ 'scache.conf', '.sconf_temp', '.sconsign.dblite', 'config.log' ])
|
|
env.Clean ('build', [ 'src/pre.gch' ])
|
|
|
|
|
|
|
|
### === Alias Targets === ###########################################
|
|
|
|
# pick up the targets defined by the sub SConscripts
|
|
Import('lumiera plugins tools gui testsuite doxydoc')
|
|
|
|
build = env.Alias('build', lumiera + plugins + tools + gui)
|
|
env.Default('build')
|
|
# SCons default target
|
|
|
|
|
|
env.Alias ('all', build + testsuite + doxydoc)
|
|
env.Alias ('doc', doxydoc)
|
|
env.Alias ('none')
|
|
|
|
env.Alias('install', gui)
|
|
env.Alias('install', '$DESTDIR')
|
|
|
|
#####################################################################
|