Began refactoring the source properly this time 'round.
[aesalon.git] / SConstruct
blob570df1dabe4b9163043a6231bf5e0ca87ede90ff
1 import sys
2 import os
3 import subprocess
5 colors = {}
6 colors["cyan"] = '\033[96m'
7 colors["purple"] = '\033[95m'
8 colors["blue"] = '\033[94m'
9 colors["green"] = '\033[92m'
10 colors["yellow"] = '\033[93m'
11 colors["red"] = '\033[91m'
12 colors["end"] = '\033[0m'
14 #If the output is not a terminal, remove the colors
15 if not sys.stdout.isatty():
16 for key, value in colors.iteritems():
17 colors[key] = ''
19 compile_source_message = '%sCompiling %s==> %s$SOURCE%s' % \
20 (colors['blue'], colors['purple'], colors['yellow'], colors['end'])
22 compile_shared_source_message = '%sCompiling shared %s==> %s$SOURCE%s' % \
23 (colors['blue'], colors['purple'], colors['yellow'], colors['end'])
25 link_program_message = '%sLinking Program %s==> %s$TARGET%s' % \
26 (colors['red'], colors['purple'], colors['yellow'], colors['end'])
28 link_library_message = '%sLinking Static Library %s==> %s$TARGET%s' % \
29 (colors['red'], colors['purple'], colors['yellow'], colors['end'])
31 ranlib_library_message = '%sRanlib Library %s==> %s$TARGET%s' % \
32 (colors['red'], colors['purple'], colors['yellow'], colors['end'])
34 link_shared_library_message = '%sLinking Shared Library %s==> %s$TARGET%s' % \
35 (colors['red'], colors['purple'], colors['yellow'], colors['end'])
37 moc_file_message = '%sMoc-ing%s ==> %s$SOURCE%s' % \
38 (colors['green'], colors['purple'], colors['yellow'], colors['end'])
40 env = Environment(
41 CXXCOMSTR = compile_source_message,
42 CCCOMSTR = compile_source_message,
43 SHCCCOMSTR = compile_shared_source_message,
44 SHCXXCOMSTR = compile_shared_source_message,
45 ARCOMSTR = link_library_message,
46 RANLIBCOMSTR = ranlib_library_message,
47 SHLINKCOMSTR = link_shared_library_message,
48 LINKCOMSTR = link_program_message,
49 MOCCOMSTR = moc_file_message,
51 ENV = {'PATH' : os.environ['PATH'],
52 'TERM' : os.environ['TERM'],
53 'HOME' : os.environ['HOME']})
55 env.Append(CPPPATH = ["#include/"])
56 env.Append(CCFLAGS = ["-W", "-Wall", "-g"])
57 env.Append(LIBPATH = ["#.build"])
59 Export('env')
61 qtEnv = env.Clone()
62 qt4 = Tool("qt4", toolpath=["build/tools"])
63 qt4(qtEnv)
65 Export("qtEnv")
67 SConscript("build/SConscript")
68 SConscript("src/SConscript", variant_dir=".build", duplicate=0)