/[escript]/trunk/escript/SConstruct
ViewVC logotype

Annotation of /trunk/escript/SConstruct

Parent Directory Parent Directory | Revision Log Revision Log


Revision 277 - (hide annotations)
Wed Nov 30 04:52:39 2005 UTC (13 years, 11 months ago) by jgs
File size: 2373 byte(s)
explicitly define dependencies between modules

1 jgs 214 # Scons configuration file for escript
2    
3     import os
4 jgs 217 import sys
5 jgs 214
6     #
7     # ensure correct versions of python and scons
8    
9     EnsurePythonVersion(2,3)
10     EnsureSConsVersion(0,96)
11    
12     #
13     # set appropriate defaults for configuration variables
14    
15     esysroot = Dir('#..')
16 jgs 192 libinstall = None
17 jgs 268 pyinstall = None
18 jgs 214 dodebug = 0
19     usegcc = 0
20 jgs 246 options = None
21 jgs 190
22 jgs 214 #
23     # import configuration variables passed in from
24     # calling SConscript (if any)
25    
26 jgs 190 Import('*')
27    
28 jgs 214 #
29     # retreive command-line arguments if any
30 jgs 190
31 jgs 214 if ARGUMENTS.get('libinstall',0):
32     libinstall = ARGUMENTS.get('libinstall',0)
33 jgs 192 Export(["libinstall"])
34    
35 jgs 268 if ARGUMENTS.get('pyinstall',0):
36     pyinstall = ARGUMENTS.get('pyinstall',0)
37     else:
38     pyinstall = Dir(str(esysroot) + '/esys/escript')
39     Export(["pyinstall"])
40    
41 jgs 214 if ARGUMENTS.get('debug',0):
42     dodebug = 1
43    
44     if ARGUMENTS.get('usegcc',0):
45     usegcc = 1
46    
47 jgs 246 if ARGUMENTS.get('options',0):
48     options = ARGUMENTS.get('options',0)
49    
50 jgs 214 #
51     # determine platform
52    
53     env = Environment(ENV = os.environ)
54     platform = env['PLATFORM']
55    
56     #
57     # determine hostname
58    
59     hostname = os.environ['HOSTNAME']
60    
61     #
62     # export esysroot
63    
64     Export(["esysroot"])
65    
66     #
67     # set and export library directory
68    
69 jgs 190 libdir = Dir(str(esysroot) + '/escript/lib')
70 jgs 181 Export(["libdir"])
71    
72 jgs 214 #
73 jgs 268 # set and export python directory
74    
75     pydir = Dir(str(esysroot) + '/escript/lib/py_src')
76     Export(["pydir"])
77    
78     #
79 jgs 214 # load and export configuration settings
80    
81 jgs 216 options_dir = str(esysroot) + '/scons'
82     sys.path.append(options_dir)
83 jgs 191
84 jgs 224 if hostname=='ess':
85 jgs 216 from ess_options import *
86 jgs 214
87 jgs 241 if usegcc==1:
88     from gcc_options import *
89    
90 jgs 246 if options!=None:
91     exec "from " + options + " import *"
92    
93 jgs 224 if dodebug==1:
94     cxx_flags=cxx_flags_debug
95    
96 jgs 191 Export(["python_path"])
97     Export(["boost_path"])
98 jgs 223 Export(["cxx"])
99 jgs 214 Export(["cxx_flags"])
100 jgs 277 Export(["boost_lib_path"])
101     Export(["boost_lib"])
102     Export(["sys_libs"])
103 jgs 191
104 jgs 214 #
105     # print out build configuration for this module
106 jgs 191
107 jgs 214 print "############################################"
108     print "Build configuration for module: escript"
109     print " dodebug: ", dodebug
110     print " usegcc: ", usegcc
111 jgs 223 print " cxx: ", cxx
112 jgs 214 print " platform: ", platform
113     print " hostname: ", hostname
114     print " libinstall: ", libinstall
115 jgs 268 print " pyinstall: ", pyinstall
116 jgs 214 print "############################################"
117 jgs 191
118 jgs 214 #
119     # call the SConscript to do the actual build
120    
121 jgs 268 SConscript(dirs=['src/Data'], build_dir='obj/Data', duplicate=0)
122     SConscript(dirs=['py_src'], build_dir='obj/py_src', duplicate=0)

  ViewVC Help
Powered by ViewVC 1.1.26