src/core/wscript
author Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
Mon, 04 Feb 2008 23:13:54 +0100
changeset 2381 816df299095d
parent 2378 bc706b6e9df3
child 2385 ae4d6740d5a0
permissions -rw-r--r--
add back EnumValue
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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; -*-
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
     2
import sys
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
     3
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
     4
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
     5
def configure(conf):
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
     6
    e = conf.create_header_configurator()
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
     7
    e.mandatory = False
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
     8
    e.name = 'stdlib.h'
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
     9
    e.define = 'HAVE_STDLIB_H'
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    10
    e.run()
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    11
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    12
    e = conf.create_header_configurator()
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    13
    e.mandatory = False
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    14
    e.name = 'stdlib.h'
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    15
    e.define = 'HAVE_GETENV'
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    16
    e.run()
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    17
1018
99476ef5580a Bug #7: Better breakpoints.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 1000
diff changeset
    18
    e = conf.create_header_configurator()
99476ef5580a Bug #7: Better breakpoints.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 1000
diff changeset
    19
    e.mandatory = False
99476ef5580a Bug #7: Better breakpoints.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 1000
diff changeset
    20
    e.name = 'signal.h'
99476ef5580a Bug #7: Better breakpoints.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 1000
diff changeset
    21
    e.define = 'HAVE_SIGNAL_H'
99476ef5580a Bug #7: Better breakpoints.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 1000
diff changeset
    22
    e.run()
99476ef5580a Bug #7: Better breakpoints.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 1000
diff changeset
    23
537
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    24
    conf.write_config_header('ns3/core-config.h')
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    25
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    26
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    27
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    28
def build(bld):
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: 1018
diff changeset
    29
    core = bld.create_ns3_module('core')
537
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    30
    core.source = [
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    31
        'callback-test.cc',
1498
520bc8457799 log rides along for free
Craig Dowell <craigdo@ee.washington.edu>
parents: 1414
diff changeset
    32
        'log.cc',
1018
99476ef5580a Bug #7: Better breakpoints.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 1000
diff changeset
    33
        'breakpoint.cc',
2370
5f7ad186b798 introduce ObjectBase
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 2254
diff changeset
    34
        'object-base.cc',
537
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    35
        'ptr.cc',
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    36
        'object.cc',
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    37
        'test.cc',
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    38
        'random-variable.cc',
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    39
        'rng-stream.cc',
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    40
        'uid-manager.cc',
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    41
        'default-value.cc',
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    42
        'command-line.cc',
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    43
        'type-name.cc',
960
f75042c35fc6 RandomVariableDefaultValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 953
diff changeset
    44
        'random-variable-default-value.cc',
1334
e8e07f44359f move trace code to core module
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1217
diff changeset
    45
        'variable-tracer-test.cc',
e8e07f44359f move trace code to core module
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1217
diff changeset
    46
        'trace-context.cc',
e8e07f44359f move trace code to core module
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1217
diff changeset
    47
        'trace-context-element.cc',
e8e07f44359f move trace code to core module
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1217
diff changeset
    48
        'trace-resolver.cc',
e8e07f44359f move trace code to core module
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1217
diff changeset
    49
        'callback-trace-source.cc',
e8e07f44359f move trace code to core module
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1217
diff changeset
    50
        'composite-trace-resolver.cc',
1378
69391eb72cb3 document trace source signature
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1365
diff changeset
    51
        'trace-doc.cc',
1414
1e57b16f97fd add an overload of the TraceSource::AddCallback method
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1378
diff changeset
    52
        'trace-source.cc',
1678
00452ae23a6f rewrite the TypeTraits and add some tests
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1498
diff changeset
    53
        'type-traits-test.cc',
2198
ebe61d20a7ae fix bug 98
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1804
diff changeset
    54
        'array-trace-resolver.cc',
2254
81fc1ce2d7bd interface-id -> type-id
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 2249
diff changeset
    55
        'type-id-default-value.cc',
2371
2118204a86e6 initial work on Value code
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 2370
diff changeset
    56
        'value.cc',
2118204a86e6 initial work on Value code
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 2370
diff changeset
    57
        'boolean-value.cc',
2372
bf4efb9359c6 attempt to perform correctly automatic conversions.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 2371
diff changeset
    58
        'value-test.cc',
2375
6f8733409b3b add back IntValue support
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 2374
diff changeset
    59
        'int-value.cc',
2378
bc706b6e9df3 add back UintValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 2375
diff changeset
    60
        'uint-value.cc',
2381
816df299095d add back EnumValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 2378
diff changeset
    61
        'enum-value.cc',
537
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    62
        ]
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    63
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    64
    if sys.platform == 'win32':
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    65
        core.source.extend([
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    66
            'win32-system-wall-clock-ms.cc',
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    67
            ])
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    68
    else:
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    69
        core.source.extend([
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    70
            'unix-system-wall-clock-ms.cc',
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    71
            ])
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    72
    
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    73
    headers = bld.create_obj('ns3header')
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    74
    headers.source = [
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    75
        'system-wall-clock-ms.h',
760
975a88259e2e Re-sync WAF build with the latest SConstruct changes.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 688
diff changeset
    76
        'empty.h',
537
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    77
        'callback.h',
2370
5f7ad186b798 introduce ObjectBase
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 2254
diff changeset
    78
        'object-base.h',
537
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    79
        'ptr.h',
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    80
        'object.h',
1498
520bc8457799 log rides along for free
Craig Dowell <craigdo@ee.washington.edu>
parents: 1414
diff changeset
    81
        'log.h',
537
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    82
        'assert.h',
1018
99476ef5580a Bug #7: Better breakpoints.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 1000
diff changeset
    83
        'breakpoint.h',
537
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    84
        'fatal-error.h',
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    85
        'test.h',
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    86
        'random-variable.h',
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    87
        'rng-stream.h',
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    88
        'default-value.h',
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    89
        'command-line.h',
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
    90
        'type-name.h',
960
f75042c35fc6 RandomVariableDefaultValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 953
diff changeset
    91
        'type-traits.h',
f75042c35fc6 RandomVariableDefaultValue
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 953
diff changeset
    92
        'random-variable-default-value.h',
1353
0dd2acd3418f replace CallbackTraceSourceBase with TraceSource base class
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1339
diff changeset
    93
        'trace-source.h',
1334
e8e07f44359f move trace code to core module
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1217
diff changeset
    94
        'uv-trace-source.h',
e8e07f44359f move trace code to core module
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1217
diff changeset
    95
        'sv-trace-source.h',
e8e07f44359f move trace code to core module
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1217
diff changeset
    96
        'fv-trace-source.h',
e8e07f44359f move trace code to core module
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1217
diff changeset
    97
        'callback-trace-source.h',
e8e07f44359f move trace code to core module
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1217
diff changeset
    98
        'trace-context.h',
e8e07f44359f move trace code to core module
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1217
diff changeset
    99
        'trace-context-element.h',
e8e07f44359f move trace code to core module
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1217
diff changeset
   100
        'trace-resolver.h',
e8e07f44359f move trace code to core module
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1217
diff changeset
   101
        'composite-trace-resolver.h',
e8e07f44359f move trace code to core module
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1217
diff changeset
   102
        'array-trace-resolver.h',
1378
69391eb72cb3 document trace source signature
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1365
diff changeset
   103
        'trace-doc.h',
1680
151684970a80 implement the helper IntToType template
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1678
diff changeset
   104
        'int-to-type.h',
2254
81fc1ce2d7bd interface-id -> type-id
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 2249
diff changeset
   105
        'type-id-default-value.h',
2372
bf4efb9359c6 attempt to perform correctly automatic conversions.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 2371
diff changeset
   106
        'value.h',
537
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
   107
        ]
e8a4183dfe00 Add support for building with WAF
Gustavo J. A. M. Carneiro <gjcarneiro@gmail.com>
parents:
diff changeset
   108