author | Mathieu Lacage <mathieu.lacage@sophia.inria.fr> |
Mon, 29 Oct 2007 15:01:36 +0100 | |
changeset 2048 | c62b4aae737d |
parent 2046 | 7a9113c1b0c1 |
child 2132 | b6599fb46d19 |
permissions | -rw-r--r-- |
537
e8a4183dfe00
Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff
changeset
|
1 |
## -*- Mode: python; py-indent-offset: 4; indent-tabs-mode: nil; coding: utf-8; -*- |
1669
5ee478e0475e
Compile mobility-visualizer with -fno-strict-aliasing to avoid GNOME bug #316221
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
1664
diff
changeset
|
2 |
import os.path |
537
e8a4183dfe00
Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff
changeset
|
3 |
|
1664
306c81333d64
Add a small mobility model visualization tool
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
1421
diff
changeset
|
4 |
def configure(conf): |
306c81333d64
Add a small mobility model visualization tool
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
1421
diff
changeset
|
5 |
check = conf.create_pkgconfig_configurator() |
306c81333d64
Add a small mobility model visualization tool
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
1421
diff
changeset
|
6 |
check.name = 'goocanvas gthread-2.0' |
306c81333d64
Add a small mobility model visualization tool
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
1421
diff
changeset
|
7 |
check.uselib = 'MOBILITY_VISUALIZER' |
306c81333d64
Add a small mobility model visualization tool
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
1421
diff
changeset
|
8 |
check.mandatory = False |
306c81333d64
Add a small mobility model visualization tool
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
1421
diff
changeset
|
9 |
conf.env['ENABLE_MOBILITY_VISUALIZER'] = check.run() |
306c81333d64
Add a small mobility model visualization tool
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
1421
diff
changeset
|
10 |
|
600
fd944dbf33c6
WAF: simplify wscripts using the new chained uselib_local dependencies feature of WAF SVN; now build all samples and examples; add --disable-rpath configure option; add WAF build instructions.
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
537
diff
changeset
|
11 |
|
537
e8a4183dfe00
Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff
changeset
|
12 |
def build(bld): |
770
6441e0706902
WAF: make all ns3 modules register themselves in the environment; link the run-tests program with all ns3 modules, not with a hardcoded list.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
600
diff
changeset
|
13 |
env = bld.env_of_name('default') |
537
e8a4183dfe00
Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff
changeset
|
14 |
|
1217
2f7791ae388d
WAF: add new bld.create_ns3_module() and bld.create_ns3_program() methods to make declaration of modules and programs simpler, and allowing us to change how ns-3 is built in a centralized way, without needing to change every module wscript file.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
771
diff
changeset
|
15 |
unit_tests = bld.create_ns3_program('run-tests') |
600
fd944dbf33c6
WAF: simplify wscripts using the new chained uselib_local dependencies feature of WAF SVN; now build all samples and examples; add --disable-rpath configure option; add WAF build instructions.
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
537
diff
changeset
|
16 |
unit_tests.install_var = 0 # do not install |
fd944dbf33c6
WAF: simplify wscripts using the new chained uselib_local dependencies feature of WAF SVN; now build all samples and examples; add --disable-rpath configure option; add WAF build instructions.
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
537
diff
changeset
|
17 |
unit_tests.unit_test = 1 # runs on 'waf check' |
1217
2f7791ae388d
WAF: add new bld.create_ns3_module() and bld.create_ns3_program() methods to make declaration of modules and programs simpler, and allowing us to change how ns-3 is built in a centralized way, without needing to change every module wscript file.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
771
diff
changeset
|
18 |
unit_tests.source = 'run-tests.cc' |
770
6441e0706902
WAF: make all ns3 modules register themselves in the environment; link the run-tests program with all ns3 modules, not with a hardcoded list.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
600
diff
changeset
|
19 |
## link unit test program with all ns3 modules |
1220
4933e0890acd
Build all modules as a single ns3 shared library.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
1217
diff
changeset
|
20 |
unit_tests.uselib_local = 'ns3' |
537
e8a4183dfe00
Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff
changeset
|
21 |
|
1217
2f7791ae388d
WAF: add new bld.create_ns3_module() and bld.create_ns3_program() methods to make declaration of modules and programs simpler, and allowing us to change how ns-3 is built in a centralized way, without needing to change every module wscript file.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
771
diff
changeset
|
22 |
obj = bld.create_ns3_program('bench-simulator', ['simulator']) |
2f7791ae388d
WAF: add new bld.create_ns3_module() and bld.create_ns3_program() methods to make declaration of modules and programs simpler, and allowing us to change how ns-3 is built in a centralized way, without needing to change every module wscript file.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
771
diff
changeset
|
23 |
obj.source = 'bench-simulator.cc' |
770
6441e0706902
WAF: make all ns3 modules register themselves in the environment; link the run-tests program with all ns3 modules, not with a hardcoded list.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
600
diff
changeset
|
24 |
|
1322
b6a4885a92df
re-enable packet benchmarking
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
1220
diff
changeset
|
25 |
obj = bld.create_ns3_program('bench-packets', ['common']) |
b6a4885a92df
re-enable packet benchmarking
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
1220
diff
changeset
|
26 |
obj.source = 'bench-packets.cc' |
b6a4885a92df
re-enable packet benchmarking
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
1220
diff
changeset
|
27 |
|
1217
2f7791ae388d
WAF: add new bld.create_ns3_module() and bld.create_ns3_program() methods to make declaration of modules and programs simpler, and allowing us to change how ns-3 is built in a centralized way, without needing to change every module wscript file.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
771
diff
changeset
|
28 |
obj = bld.create_ns3_program('replay-simulation', ['simulator']) |
2f7791ae388d
WAF: add new bld.create_ns3_module() and bld.create_ns3_program() methods to make declaration of modules and programs simpler, and allowing us to change how ns-3 is built in a centralized way, without needing to change every module wscript file.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
771
diff
changeset
|
29 |
obj.source = 'replay-simulation.cc' |
1368
e75dc1a2a5fb
add TraceResolver::PrintAvailable method
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
1220
diff
changeset
|
30 |
|
2048
c62b4aae737d
rename print-trace-sources to print-introspected-doxygen
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
2046
diff
changeset
|
31 |
obj = bld.create_ns3_program('print-introspected-doxygen', |
1368
e75dc1a2a5fb
add TraceResolver::PrintAvailable method
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
1220
diff
changeset
|
32 |
['internet-node', 'csma-cd', 'point-to-point']) |
2048
c62b4aae737d
rename print-trace-sources to print-introspected-doxygen
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
2046
diff
changeset
|
33 |
obj.source = 'print-introspected-doxygen.cc' |
1664
306c81333d64
Add a small mobility model visualization tool
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
1421
diff
changeset
|
34 |
|
306c81333d64
Add a small mobility model visualization tool
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
1421
diff
changeset
|
35 |
if env['ENABLE_MOBILITY_VISUALIZER']: |
306c81333d64
Add a small mobility model visualization tool
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
1421
diff
changeset
|
36 |
obj = bld.create_ns3_program('mobility-visualizer', |
306c81333d64
Add a small mobility model visualization tool
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
1421
diff
changeset
|
37 |
['internet-node', 'mobility']) |
306c81333d64
Add a small mobility model visualization tool
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
1421
diff
changeset
|
38 |
obj.source = ['mobility-visualizer-model.cc', 'mobility-visualizer-view.cc'] |
306c81333d64
Add a small mobility model visualization tool
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
1421
diff
changeset
|
39 |
obj.uselib = 'MOBILITY_VISUALIZER' |
1669
5ee478e0475e
Compile mobility-visualizer with -fno-strict-aliasing to avoid GNOME bug #316221
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
1664
diff
changeset
|
40 |
if os.path.basename(obj.env['CXX']).startswith("g++"): |
5ee478e0475e
Compile mobility-visualizer with -fno-strict-aliasing to avoid GNOME bug #316221
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
1664
diff
changeset
|
41 |
obj.env.append_value('CXXFLAGS', '-fno-strict-aliasing') |
1664
306c81333d64
Add a small mobility model visualization tool
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
1421
diff
changeset
|
42 |