#!python # -*-python-*- import os import sys import SConsLib # Construct variables object by merging command-line settings and # configuration file. vars = SConsLib.constructVariables('SConsCfg.py') # Instantiate Scons environment env = Environment( variables = vars, MSVC_VERSION='11.0', # VMSVC 2012 choose any version you prefer TARGET_ARCH='x86', # x86 -> 32bit or x86_64 => 64bit PREFIX = GetOption('prefix') ) # Check for unrecognized variables and warn SConsLib.checkUnknownVariables(vars) # Setup Scons environment to be used during build SConsLib.setupEnvironment(env) # Further refinements to the environment Help(vars.GenerateHelpText(env)) env.Decider('timestamp-newer') env.SetOption('implicit_cache', 1) # Identify Qt location if sys.platform.startswith('win'): qtdir = SConsLib.findQtDir('Q:/Qt/5.5.1') elif sys.platform.startswith('linux'): qtdir = SConsLib.findQtDir('/home/semih/Qt/5.5.1') # Set QT5DIR env['QT5DIR'] = qtdir env['ENV']['PKG_CONFIG_PATH'] = os.path.join(qtdir, 'lib/pkgconfig') # Add qt5 tool env.Tool('qt5') # Normally in SConscript files env.EnableQt5Modules([ 'QtCore', 'QtTest' ]) #...further customization of Qt env if sys.platform == 'win32': if 'cl' in env['CC']: env.AppendUnique(CPPPATH = ['#', '.']) env.AppendUnique(CCFLAGS = [ '-EHsc', '-Zc:wchar_t', '-Zc:forScope' ]) env.AppendUnique(CPPDEFINES = ['UNICODE', 'WIN32', '_CRT_SECURE_NO_WARNINGS']) elif 'linux' in sys.platform: pass # Source directories that we expect to find SConscript files: src_dirs = Split('decnumber src test') # Read and process SConscript files SConsLib.readSConscriptFiles(env, src_dirs) # Use progress indicator to get feedback from SCons SConsLib.useProgress()