equal
deleted
inserted
replaced
148 def create_ns3_program(bld, name, dependencies=('simulator',)): |
148 def create_ns3_program(bld, name, dependencies=('simulator',)): |
149 program = bld.create_obj('cpp', 'program') |
149 program = bld.create_obj('cpp', 'program') |
150 program.name = name |
150 program.name = name |
151 program.target = program.name |
151 program.target = program.name |
152 program.uselib_local = 'ns3' |
152 program.uselib_local = 'ns3' |
|
153 program.ns3_module_dependencies = ['ns3-'+dep for dep in dependencies] |
153 return program |
154 return program |
154 |
155 |
155 |
156 |
156 def build(bld): |
157 def build(bld): |
157 print "Entering directory `%s/build'" % Params.g_build.m_curdirnode.abspath() |
158 print "Entering directory `%s/build'" % Params.g_build.m_curdirnode.abspath() |
176 if Params.g_options.doxygen: |
177 if Params.g_options.doxygen: |
177 doxygen() |
178 doxygen() |
178 raise SystemExit(0) |
179 raise SystemExit(0) |
179 |
180 |
180 # process subfolders from here |
181 # process subfolders from here |
|
182 bld.add_subdirs('lib') # first subdirs are processed last by WAF |
181 bld.add_subdirs('src') |
183 bld.add_subdirs('src') |
182 bld.add_subdirs('samples utils examples tutorial') |
184 bld.add_subdirs('samples utils examples tutorial') |
183 |
185 |
184 ## Create a single ns3 library containing all modules |
|
185 lib = bld.create_obj('cpp', 'shlib') |
|
186 lib.name = 'ns3' |
|
187 lib.target = 'ns3' |
|
188 lib.add_objects = list(bld.env_of_name('default')['NS3_MODULES']) |
|
189 |
186 |
190 |
187 |
191 def shutdown(): |
188 def shutdown(): |
192 #import UnitTest |
189 #import UnitTest |
193 #ut = UnitTest.unit_test() |
190 #ut = UnitTest.unit_test() |
212 |
209 |
213 def _run_waf_check(): |
210 def _run_waf_check(): |
214 ## generate the trace sources list docs |
211 ## generate the trace sources list docs |
215 env = Params.g_build.env_of_name('default') |
212 env = Params.g_build.env_of_name('default') |
216 proc_env = _get_proc_env() |
213 proc_env = _get_proc_env() |
217 prog = _find_program('print-introspected-doxygen', env).m_linktask.m_outputs[0].abspath(env) |
214 try: |
218 out = open('doc/introspected-doxygen.h', 'w') |
215 prog = _find_program('print-introspected-doxygen', env).m_linktask.m_outputs[0].abspath(env) |
219 if subprocess.Popen([prog], stdout=out, env=proc_env).wait(): |
216 except ValueError: # could happen if print-introspected-doxygen is |
220 raise SystemExit(1) |
217 # not built because of waf configure |
221 out.close() |
218 # --enable-modules=xxx |
|
219 pass |
|
220 else: |
|
221 out = open('doc/introspected-doxygen.h', 'w') |
|
222 if subprocess.Popen([prog], stdout=out, env=proc_env).wait(): |
|
223 raise SystemExit(1) |
|
224 out.close() |
222 |
225 |
223 run_program('run-tests') |
226 run_program('run-tests') |
224 |
227 |
225 |
228 |
226 def _find_program(program_name, env): |
229 def _find_program(program_name, env): |