SConstruct
author Tom Henderson <tomh@tomh.org>
Sun, 18 Mar 2007 14:06:51 -0700
changeset 345 47b41507a45a
parent 343 2998eaea1de1
child 348 1802fde7996c
permissions -rw-r--r--
move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
124
c0d0f7bebb73 add magic emacs incantation for python
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 108
diff changeset
     1
## -*- Mode: python; py-indent-offset: 4; indent-tabs-mode: nil; coding: utf-8; -*-
8
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
     2
import os.path
62
0ec2ff3a483f split SConstruct to make it more readable
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 61
diff changeset
     3
import build
8
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
     4
136
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
     5
ns3 = build.Ns3()
8
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
     6
ns3.build_dir = 'build-dir'
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
     7
ns3.version = '0.0.1'
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
     8
ns3.name = 'ns3'
136
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
     9
ns3.doxygen_config = os.path.join('doc', 'doxygen.conf')
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
    10
ns3.add_extra_dist(os.path.join('doc', 'main.txt'))
8
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    11
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    12
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    13
#
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    14
# The Core module
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    15
#
136
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
    16
core = build.Ns3Module('core', 'src/core')
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
    17
ns3.add(core)
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
    18
core.add_sources([
152
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    19
    'reference-list-test.cc',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    20
    'callback-test.cc',
265
fb0c531530f2 add debugging support
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 226
diff changeset
    21
    'debug.cc',
276
58651aff818b split out assert from debug.h
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 268
diff changeset
    22
    'assert.cc',
223
80f1c6b76999 initial go at smart pointer implementation
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 197
diff changeset
    23
    'ptr.cc',
291
f5a98bae86c1 large checkin-- bringing in serial device code
Tom Henderson <tomh@tomh.org>
parents: 288
diff changeset
    24
    'test.cc',
152
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    25
    ])
136
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
    26
env = Environment()
299
dd6d1a6d6eff strawman connectors and channel
owner@UPSTAIRS.Belkin
parents: 296
diff changeset
    27
if env['PLATFORM'] == 'posix' or env['PLATFORM'] == 'darwin' or env['PLATFORM'] == 'cygwin':
136
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
    28
    core.add_external_dep('pthread')
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
    29
    core.add_sources([
152
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    30
        'unix-system-wall-clock-ms.cc',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    31
        'unix-system-file.cc'
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    32
        ])
8
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    33
elif env['PLATFORM'] == 'win32':
136
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
    34
    core.add_sources([
152
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    35
        'win32-system-wall-clock-ms.cc',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    36
        'win32-system-file.cc'
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    37
        ])
136
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
    38
core.add_inst_headers([
152
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    39
    'system-file.h',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    40
    'system-wall-clock-ms.h',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    41
    'reference-list.h',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    42
    'callback.h',
223
80f1c6b76999 initial go at smart pointer implementation
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 197
diff changeset
    43
    'ptr.h',
265
fb0c531530f2 add debugging support
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 226
diff changeset
    44
    'debug.h',
276
58651aff818b split out assert from debug.h
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 268
diff changeset
    45
    'assert.h',
278
fc1133fee95d add fatal-error.h header
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 276
diff changeset
    46
    'fatal-error.h',
152
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    47
    'test.h'
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    48
    ])
8
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    49
265
fb0c531530f2 add debugging support
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 226
diff changeset
    50
def config_core (env, config):
fb0c531530f2 add debugging support
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 226
diff changeset
    51
    retval = []
fb0c531530f2 add debugging support
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 226
diff changeset
    52
    # XXX This check is primitive but it should be
fb0c531530f2 add debugging support
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 226
diff changeset
    53
    # good enough for now.
fb0c531530f2 add debugging support
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 226
diff changeset
    54
    if config.CheckCHeader ('stdlib.h') == 1:
fb0c531530f2 add debugging support
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 226
diff changeset
    55
        retval.append ('#define HAVE_STDLIB_H 1')
fb0c531530f2 add debugging support
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 226
diff changeset
    56
        retval.append ('#define HAVE_GETENV 1')
fb0c531530f2 add debugging support
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 226
diff changeset
    57
    else:
fb0c531530f2 add debugging support
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 226
diff changeset
    58
        retval.append ('#undef HAVE_STDLIB_H')
fb0c531530f2 add debugging support
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 226
diff changeset
    59
        retval.append ('#undef HAVE_GETENV')
fb0c531530f2 add debugging support
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 226
diff changeset
    60
    return retval
fb0c531530f2 add debugging support
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 226
diff changeset
    61
core.add_config (config_core)
fb0c531530f2 add debugging support
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 226
diff changeset
    62
fb0c531530f2 add debugging support
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 226
diff changeset
    63
8
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    64
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    65
#
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    66
# The Simu module
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    67
#
136
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
    68
simu = build.Ns3Module('simulator', 'src/simulator')
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
    69
ns3.add(simu)
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
    70
simu.add_dep('core')
173
c42687a343e1 add dep on math library
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 171
diff changeset
    71
simu.add_external_dep('m')
136
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
    72
simu.add_sources([
168
037cd2b37c67 split high precision implementations in different files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 165
diff changeset
    73
    'high-precision.cc',
152
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    74
    'time.cc',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    75
    'event-id.cc',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    76
    'scheduler.cc',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    77
    'scheduler-factory.cc',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    78
    'scheduler-list.cc',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    79
    'scheduler-heap.cc',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    80
    'scheduler-map.cc',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    81
    'event-impl.cc',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    82
    'simulator.cc',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    83
    ])
136
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
    84
simu.add_headers([
152
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    85
    'scheduler-heap.h',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    86
    'scheduler-map.h',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    87
    'scheduler-list.h'
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    88
    ])
136
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
    89
simu.add_inst_headers([
153
22c3d53dbae3 Add HighPrecision class used for external Time bookkeeping
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 152
diff changeset
    90
    'high-precision.h',
152
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    91
    'nstime.h',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    92
    'event-id.h',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    93
    'event-impl.h',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    94
    'simulator.h',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    95
    'scheduler.h',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    96
    'scheduler-factory.h',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
    97
    ])
168
037cd2b37c67 split high precision implementations in different files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 165
diff changeset
    98
high_precision_as_double = ARGUMENTS.get('high-precision-as-double', 'n')
170
9f68cb694f40 implement 128 bit arithmetic with cairo's internal types
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 168
diff changeset
    99
if high_precision_as_double == 'y':
168
037cd2b37c67 split high precision implementations in different files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 165
diff changeset
   100
    simu.add_inst_header ('high-precision-double.h')
037cd2b37c67 split high precision implementations in different files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 165
diff changeset
   101
    simu.add_source ('high-precision-double.cc')
037cd2b37c67 split high precision implementations in different files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 165
diff changeset
   102
else:
171
64cafe7b7baf make sure cairo internal header is installed when needed.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 170
diff changeset
   103
    simu.add_inst_headers ([
64cafe7b7baf make sure cairo internal header is installed when needed.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 170
diff changeset
   104
        'high-precision-128.h',
64cafe7b7baf make sure cairo internal header is installed when needed.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 170
diff changeset
   105
        'cairo-wideint-private.h'
64cafe7b7baf make sure cairo internal header is installed when needed.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 170
diff changeset
   106
        ])
170
9f68cb694f40 implement 128 bit arithmetic with cairo's internal types
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 168
diff changeset
   107
    simu.add_sources ([
9f68cb694f40 implement 128 bit arithmetic with cairo's internal types
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 168
diff changeset
   108
        'high-precision-128.cc',
9f68cb694f40 implement 128 bit arithmetic with cairo's internal types
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 168
diff changeset
   109
        'cairo-wideint.c',
9f68cb694f40 implement 128 bit arithmetic with cairo's internal types
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 168
diff changeset
   110
        ])
168
037cd2b37c67 split high precision implementations in different files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 165
diff changeset
   111
165
33a2c446e6dc add needed configure magic and header includes
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 153
diff changeset
   112
def config_simulator (env, config):
33a2c446e6dc add needed configure magic and header includes
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 153
diff changeset
   113
    retval = []
168
037cd2b37c67 split high precision implementations in different files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 165
diff changeset
   114
    high_precision_as_double = ARGUMENTS.get('high-precision-as-double', 'n')
037cd2b37c67 split high precision implementations in different files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 165
diff changeset
   115
    if high_precision_as_double == 'y':
037cd2b37c67 split high precision implementations in different files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 165
diff changeset
   116
        retval.append ('#define USE_HIGH_PRECISION_DOUBLE 1')
037cd2b37c67 split high precision implementations in different files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 165
diff changeset
   117
    else:
037cd2b37c67 split high precision implementations in different files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 165
diff changeset
   118
        retval.append ('#undef USE_HIGH_PRECISION_DOUBLE')
165
33a2c446e6dc add needed configure magic and header includes
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 153
diff changeset
   119
    if config.CheckCHeader ('stdint.h') == 1:
33a2c446e6dc add needed configure magic and header includes
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 153
diff changeset
   120
        retval.append ('#define HAVE_STDINT_H 1')
33a2c446e6dc add needed configure magic and header includes
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 153
diff changeset
   121
    elif config.CheckCHeader ('inttypes.h') == 1:
33a2c446e6dc add needed configure magic and header includes
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 153
diff changeset
   122
        retval.append ('#define HAVE_INTTYPES_H 1')
33a2c446e6dc add needed configure magic and header includes
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 153
diff changeset
   123
    elif config.CheckCHeader ('sys/inttypes.h') == 1:
33a2c446e6dc add needed configure magic and header includes
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 153
diff changeset
   124
        retval.append ('#define HAVE_SYS_INT_TYPES_H 1')
33a2c446e6dc add needed configure magic and header includes
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 153
diff changeset
   125
    return retval
33a2c446e6dc add needed configure magic and header includes
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 153
diff changeset
   126
simu.add_config (config_simulator)
33a2c446e6dc add needed configure magic and header includes
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 153
diff changeset
   127
    
8
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   128
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   129
#
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   130
# The Common module
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   131
#
136
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   132
common = build.Ns3Module('common', 'src/common')
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   133
common.add_deps(['core', 'simulator'])
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   134
ns3.add(common)
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   135
common.add_sources([
152
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
   136
    'buffer.cc',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
   137
    'header.cc',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
   138
    'trailer.cc',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
   139
    'packet.cc',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
   140
    'tags.cc',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
   141
    'pcap-writer.cc',
264
128d8d1bfb51 queues, trace-writer, debug
craigdo@m354-pc01.ee.washington.edu
parents: 255
diff changeset
   142
    'trace-writer.cc',
152
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
   143
    'variable-tracer-test.cc',
345
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   144
    'trace-context.cc',
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   145
    'trace-resolver.cc',
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   146
    'callback-trace-source.cc',
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   147
    'empty-trace-resolver.cc',
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   148
    'composite-trace-resolver.cc',
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   149
    'trace-root.cc',
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   150
    ])
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   151
common.add_headers ([
152
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
   152
    ])
136
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   153
common.add_inst_headers([
152
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
   154
    'buffer.h',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
   155
    'header.h',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
   156
    'trailer.h',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
   157
    'tags.h',
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
   158
    'packet.h',
345
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   159
    'uv-trace-source.h',
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   160
    'sv-trace-source.h',
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   161
    'fv-trace-source.h',
264
128d8d1bfb51 queues, trace-writer, debug
craigdo@m354-pc01.ee.washington.edu
parents: 255
diff changeset
   162
    'trace-writer.h',
152
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
   163
    'pcap-writer.h',
345
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   164
    'callback-trace-source.h',
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   165
    'trace-context.h',
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   166
    'trace-resolver.h',
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   167
    'empty-trace-resolver.h',
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   168
    'composite-trace-resolver.h',
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   169
    'array-trace-resolver.h',
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   170
    'trace-root.h',
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   171
    'terminal-trace-resolver.h',
152
f3e570a78662 fix python indent.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 136
diff changeset
   172
    ])
8
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   173
232
8cd08910f9a1 initial node base class from george's repo.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 226
diff changeset
   174
node = build.Ns3Module ('node', 'src/node')
8cd08910f9a1 initial node base class from george's repo.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 226
diff changeset
   175
ns3.add (node)
247
fb7375bb43d7 make the sample code compile and link.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 245
diff changeset
   176
node.add_deps (['core', 'common', 'simulator'])
232
8cd08910f9a1 initial node base class from george's repo.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 226
diff changeset
   177
node.add_sources ([
8cd08910f9a1 initial node base class from george's repo.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 226
diff changeset
   178
    'node.cc',
234
6124bda39cb3 code from all trees.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 232
diff changeset
   179
    'l3-demux.cc',
241
9004ab4cfe17 add Ipv4 and Udp node capabilities, rework Copy methods to include an extra Node * argument
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 240
diff changeset
   180
    'l3-protocol.cc',
234
6124bda39cb3 code from all trees.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 232
diff changeset
   181
    'ipv4-l4-demux.cc',
240
7da682f99bf9 add non-debugged udp stack
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 238
diff changeset
   182
    'ipv4-l4-protocol.cc',
234
6124bda39cb3 code from all trees.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 232
diff changeset
   183
    'ipv4-address.cc',
6124bda39cb3 code from all trees.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 232
diff changeset
   184
    'internet-node.cc',
6124bda39cb3 code from all trees.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 232
diff changeset
   185
    'net-device.cc',
235
190d5bef3254 add ipv4 and udp header, add ipv4 checksum support to make the udp header compile. Need to be fixed in UdpHeader later.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 234
diff changeset
   186
    'mac-address.cc',
190d5bef3254 add ipv4 and udp header, add ipv4 checksum support to make the udp header compile. Need to be fixed in UdpHeader later.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 234
diff changeset
   187
    'ipv4-header.cc',
190d5bef3254 add ipv4 and udp header, add ipv4 checksum support to make the udp header compile. Need to be fixed in UdpHeader later.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 234
diff changeset
   188
    'udp-header.cc',
190d5bef3254 add ipv4 and udp header, add ipv4 checksum support to make the udp header compile. Need to be fixed in UdpHeader later.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 234
diff changeset
   189
    'ipv4-checksum.cc',
236
5673656dc2e7 a basic untested ipv4 implementation
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 235
diff changeset
   190
    'ipv4-route.cc',
5673656dc2e7 a basic untested ipv4 implementation
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 235
diff changeset
   191
    'ipv4-interface.cc',
240
7da682f99bf9 add non-debugged udp stack
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 238
diff changeset
   192
    'ipv4.cc',
238
2f09fd9cf32e add start of udp stack
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 236
diff changeset
   193
    'ipv4-end-point.cc',
2f09fd9cf32e add start of udp stack
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 236
diff changeset
   194
    'udp-end-point.cc',
240
7da682f99bf9 add non-debugged udp stack
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 238
diff changeset
   195
    'udp-socket.cc',
7da682f99bf9 add non-debugged udp stack
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 238
diff changeset
   196
    'udp.cc',
242
a44932709b47 add arp stack
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 241
diff changeset
   197
    'arp-header.cc',
a44932709b47 add arp stack
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 241
diff changeset
   198
    'arp-cache.cc',
a44932709b47 add arp stack
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 241
diff changeset
   199
    'arp-ipv4-interface.cc',
a44932709b47 add arp stack
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 241
diff changeset
   200
    'arp.cc',
247
fb7375bb43d7 make the sample code compile and link.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 245
diff changeset
   201
    'ipv4-loopback-interface.cc',
fb7375bb43d7 make the sample code compile and link.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 245
diff changeset
   202
    'llc-snap-header.cc',
fb7375bb43d7 make the sample code compile and link.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 245
diff changeset
   203
    'header-utils.cc',
291
f5a98bae86c1 large checkin-- bringing in serial device code
Tom Henderson <tomh@tomh.org>
parents: 288
diff changeset
   204
    'net-device-list.cc',
f5a98bae86c1 large checkin-- bringing in serial device code
Tom Henderson <tomh@tomh.org>
parents: 288
diff changeset
   205
    'queue.cc',
f5a98bae86c1 large checkin-- bringing in serial device code
Tom Henderson <tomh@tomh.org>
parents: 288
diff changeset
   206
    'drop-tail.cc',
345
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   207
    'channel.cc',
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   208
    'node-list.cc',
234
6124bda39cb3 code from all trees.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 232
diff changeset
   209
    ])
6124bda39cb3 code from all trees.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 232
diff changeset
   210
node.add_headers ([
235
190d5bef3254 add ipv4 and udp header, add ipv4 checksum support to make the udp header compile. Need to be fixed in UdpHeader later.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 234
diff changeset
   211
    'ipv4-header.h',
190d5bef3254 add ipv4 and udp header, add ipv4 checksum support to make the udp header compile. Need to be fixed in UdpHeader later.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 234
diff changeset
   212
    'udp-header.h',
190d5bef3254 add ipv4 and udp header, add ipv4 checksum support to make the udp header compile. Need to be fixed in UdpHeader later.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 234
diff changeset
   213
    'ipv4-checksum.h',
240
7da682f99bf9 add non-debugged udp stack
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 238
diff changeset
   214
    'udp.h',
242
a44932709b47 add arp stack
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 241
diff changeset
   215
    'ipv4-l4-protocol.h',
a44932709b47 add arp stack
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 241
diff changeset
   216
    'arp-header.h',
a44932709b47 add arp stack
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 241
diff changeset
   217
    'arp-cache-cache.h',
a44932709b47 add arp stack
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 241
diff changeset
   218
    'arp.h',
247
fb7375bb43d7 make the sample code compile and link.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 245
diff changeset
   219
    'ipv4-loopback-interface.h',
234
6124bda39cb3 code from all trees.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 232
diff changeset
   220
    'l3-demux.h',
6124bda39cb3 code from all trees.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 232
diff changeset
   221
    'ipv4-l4-demux.h',
6124bda39cb3 code from all trees.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 232
diff changeset
   222
    'net-device-list.h',
247
fb7375bb43d7 make the sample code compile and link.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 245
diff changeset
   223
    'header-utils.h',
291
f5a98bae86c1 large checkin-- bringing in serial device code
Tom Henderson <tomh@tomh.org>
parents: 288
diff changeset
   224
    'protocol.h',
f5a98bae86c1 large checkin-- bringing in serial device code
Tom Henderson <tomh@tomh.org>
parents: 288
diff changeset
   225
    'queue.h',
247
fb7375bb43d7 make the sample code compile and link.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 245
diff changeset
   226
    ])
fb7375bb43d7 make the sample code compile and link.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 245
diff changeset
   227
node.add_inst_headers ([
fb7375bb43d7 make the sample code compile and link.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 245
diff changeset
   228
    'node.h',
fb7375bb43d7 make the sample code compile and link.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 245
diff changeset
   229
    'internet-node.h',
249
66f64be80982 add some traffic generation to sample code
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 247
diff changeset
   230
    'udp-socket.h',
66f64be80982 add some traffic generation to sample code
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 247
diff changeset
   231
    'ipv4-address.h',
253
b9201368acdb make the p2p example compile
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 249
diff changeset
   232
    'net-device.h',
b9201368acdb make the p2p example compile
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 249
diff changeset
   233
    'arp-ipv4-interface.h',
b9201368acdb make the p2p example compile
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 249
diff changeset
   234
    'ipv4-interface.h',
b9201368acdb make the p2p example compile
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 249
diff changeset
   235
    'mac-address.h',
b9201368acdb make the p2p example compile
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 249
diff changeset
   236
    'ipv4.h',
293
007bc9e735f3 remove Ipv4L3Protocol class.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 284
diff changeset
   237
    'l3-protocol.h',
255
4355f8f37d89 add routing table output function
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 253
diff changeset
   238
    'ipv4-route.h',
291
f5a98bae86c1 large checkin-- bringing in serial device code
Tom Henderson <tomh@tomh.org>
parents: 288
diff changeset
   239
    'queue.h',
292
cc17705d3344 Merge in Craig's tracing changes as of Thursday; rename net-device-serial files to serial-net-device
Tom Henderson <tomh@tomh.org>
parents: 291
diff changeset
   240
    'drop-tail.h',
325
379ad3b7a9fc add some simple packet content dumping.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 309
diff changeset
   241
    'llc-snap-header.h',
379ad3b7a9fc add some simple packet content dumping.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 309
diff changeset
   242
    'arp-header.h',
379ad3b7a9fc add some simple packet content dumping.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 309
diff changeset
   243
    'ipv4-header.h',
379ad3b7a9fc add some simple packet content dumping.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 309
diff changeset
   244
    'udp-header.h',
345
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   245
    'channel.h',
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   246
    'node-list.h',
232
8cd08910f9a1 initial node base class from george's repo.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 226
diff changeset
   247
    ])
8cd08910f9a1 initial node base class from george's repo.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 226
diff changeset
   248
331
d75ee9d8efa4 move p2p to new dir
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 325
diff changeset
   249
p2p = build.Ns3Module ('p2p', 'src/devices/p2p')
345
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   250
#ns3.add (p2p)
331
d75ee9d8efa4 move p2p to new dir
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 325
diff changeset
   251
p2p.add_deps (['node'])
d75ee9d8efa4 move p2p to new dir
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 325
diff changeset
   252
p2p.add_sources ([
d75ee9d8efa4 move p2p to new dir
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 325
diff changeset
   253
    'p2p-net-device.cc',
d75ee9d8efa4 move p2p to new dir
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 325
diff changeset
   254
    'p2p-channel.cc',
d75ee9d8efa4 move p2p to new dir
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 325
diff changeset
   255
    ])
d75ee9d8efa4 move p2p to new dir
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 325
diff changeset
   256
p2p.add_inst_headers ([
d75ee9d8efa4 move p2p to new dir
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 325
diff changeset
   257
    'p2p-net-device.h',
d75ee9d8efa4 move p2p to new dir
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 325
diff changeset
   258
    'p2p-channel.h',
d75ee9d8efa4 move p2p to new dir
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 325
diff changeset
   259
    ])
d75ee9d8efa4 move p2p to new dir
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 325
diff changeset
   260
334
8075943fda5a move serial code to src/devices/serial
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 331
diff changeset
   261
serial = build.Ns3Module ('serial', 'src/devices/serial')
8075943fda5a move serial code to src/devices/serial
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 331
diff changeset
   262
ns3.add (serial)
8075943fda5a move serial code to src/devices/serial
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 331
diff changeset
   263
serial.add_deps (['node'])
8075943fda5a move serial code to src/devices/serial
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 331
diff changeset
   264
serial.add_sources ([
8075943fda5a move serial code to src/devices/serial
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 331
diff changeset
   265
    'serial-net-device.cc',
8075943fda5a move serial code to src/devices/serial
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 331
diff changeset
   266
    'serial-channel.cc',
8075943fda5a move serial code to src/devices/serial
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 331
diff changeset
   267
    'serial-phy.cc',
8075943fda5a move serial code to src/devices/serial
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 331
diff changeset
   268
    'layer-connector.cc',
8075943fda5a move serial code to src/devices/serial
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 331
diff changeset
   269
    ])
8075943fda5a move serial code to src/devices/serial
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 331
diff changeset
   270
serial.add_headers ([
8075943fda5a move serial code to src/devices/serial
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 331
diff changeset
   271
    'propagator.h',
8075943fda5a move serial code to src/devices/serial
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 331
diff changeset
   272
    ])
8075943fda5a move serial code to src/devices/serial
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 331
diff changeset
   273
serial.add_inst_headers ([
8075943fda5a move serial code to src/devices/serial
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 331
diff changeset
   274
    'serial-net-device.h',
8075943fda5a move serial code to src/devices/serial
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 331
diff changeset
   275
    'serial-channel.h',
343
2998eaea1de1 Make this compile on 32-bit machine; fix SConstruct
Tom Henderson <tomh@tomh.org>
parents: 342
diff changeset
   276
    'serial-phy.h',
334
8075943fda5a move serial code to src/devices/serial
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 331
diff changeset
   277
    'layer-connector.h',
8075943fda5a move serial code to src/devices/serial
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 331
diff changeset
   278
    ])
8075943fda5a move serial code to src/devices/serial
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 331
diff changeset
   279
8
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   280
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   281
# utils
136
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   282
run_tests = build.Ns3Module('run-tests', 'utils')
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   283
ns3.add(run_tests)
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   284
run_tests.set_executable()
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   285
run_tests.add_deps(['core', 'simulator', 'common'])
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   286
run_tests.add_source('run-tests.cc')
8
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   287
136
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   288
bench_packets = build.Ns3Module('bench-packets', 'utils')
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   289
#ns3.add(bench_packets)
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   290
bench_packets.set_executable()
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   291
bench_packets.add_dep('core')
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   292
bench_packets.add_source('bench-packets.cc')
8
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   293
136
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   294
bench_simu = build.Ns3Module('bench-simulator', 'utils')
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   295
ns3.add(bench_simu)
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   296
bench_simu.set_executable()
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   297
bench_simu.add_dep('simulator')
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   298
bench_simu.add_source('bench-simulator.cc')
8
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   299
197
8346ab3528bf fix the Simulation event replayer: make it build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 173
diff changeset
   300
replay_simu = build.Ns3Module('replay-simulation', 'utils')
8346ab3528bf fix the Simulation event replayer: make it build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 173
diff changeset
   301
ns3.add(replay_simu)
8346ab3528bf fix the Simulation event replayer: make it build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 173
diff changeset
   302
replay_simu.set_executable()
8346ab3528bf fix the Simulation event replayer: make it build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 173
diff changeset
   303
replay_simu.add_dep('simulator')
8346ab3528bf fix the Simulation event replayer: make it build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 173
diff changeset
   304
replay_simu.add_source('replay-simulation.cc')
8346ab3528bf fix the Simulation event replayer: make it build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 173
diff changeset
   305
8
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   306
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   307
# samples
268
a43b635230e8 test and debug the debug support
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 265
diff changeset
   308
sample_debug = build.Ns3Module('sample-debug', 'samples')
a43b635230e8 test and debug the debug support
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 265
diff changeset
   309
sample_debug.set_executable()
a43b635230e8 test and debug the debug support
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 265
diff changeset
   310
ns3.add(sample_debug)
a43b635230e8 test and debug the debug support
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 265
diff changeset
   311
sample_debug.add_dep('core')
a43b635230e8 test and debug the debug support
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 265
diff changeset
   312
sample_debug.add_source('main-debug.cc')
a43b635230e8 test and debug the debug support
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 265
diff changeset
   313
sample_debug.add_source('main-debug-other.cc')
a43b635230e8 test and debug the debug support
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 265
diff changeset
   314
136
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   315
sample_callback = build.Ns3Module('sample-callback', 'samples')
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   316
sample_callback.set_executable()
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   317
ns3.add(sample_callback)
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   318
sample_callback.add_dep('core')
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   319
sample_callback.add_source('main-callback.cc')
8
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   320
226
1f8c4e56bc86 add smart pointer sample code
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 223
diff changeset
   321
sample_ptr = build.Ns3Module('sample-ptr', 'samples')
1f8c4e56bc86 add smart pointer sample code
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 223
diff changeset
   322
sample_ptr.set_executable()
1f8c4e56bc86 add smart pointer sample code
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 223
diff changeset
   323
ns3.add(sample_ptr)
1f8c4e56bc86 add smart pointer sample code
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 223
diff changeset
   324
sample_ptr.add_dep('core')
1f8c4e56bc86 add smart pointer sample code
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 223
diff changeset
   325
sample_ptr.add_source('main-ptr.cc')
1f8c4e56bc86 add smart pointer sample code
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 223
diff changeset
   326
136
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   327
sample_trace = build.Ns3Module('sample-trace', 'samples')
345
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   328
#ns3.add(sample_trace)
136
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   329
sample_trace.add_dep('common')
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   330
sample_trace.set_executable()
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   331
sample_trace.add_source('main-trace.cc')
8
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   332
136
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   333
sample_simu = build.Ns3Module('sample-simulator', 'samples')
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   334
ns3.add(sample_simu)
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   335
sample_simu.set_executable()
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   336
sample_simu.add_dep('simulator')
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   337
sample_simu.add_source('main-simulator.cc')
8
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   338
136
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   339
sample_packet = build.Ns3Module('sample-packet', 'samples')
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   340
ns3.add(sample_packet)
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   341
sample_packet.set_executable()
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   342
sample_packet.add_dep('common')
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   343
sample_packet.add_source('main-packet.cc')
8
cb4ae01ba180 add scons build
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   344
136
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   345
sample_test = build.Ns3Module('sample-test', 'samples')
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   346
sample_test.set_executable()
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   347
ns3.add(sample_test)
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   348
sample_test.add_dep('core')
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   349
sample_test.add_source('main-test.cc')
60
6672664e72bb add sample code for test, add doxygen doc
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 56
diff changeset
   350
292
cc17705d3344 Merge in Craig's tracing changes as of Thursday; rename net-device-serial files to serial-net-device
Tom Henderson <tomh@tomh.org>
parents: 291
diff changeset
   351
sample_serial_net_device_if = build.Ns3Module ('sample-serial-net-device-if', 'samples')
cc17705d3344 Merge in Craig's tracing changes as of Thursday; rename net-device-serial files to serial-net-device
Tom Henderson <tomh@tomh.org>
parents: 291
diff changeset
   352
sample_serial_net_device_if.set_executable ()
cc17705d3344 Merge in Craig's tracing changes as of Thursday; rename net-device-serial files to serial-net-device
Tom Henderson <tomh@tomh.org>
parents: 291
diff changeset
   353
ns3.add (sample_serial_net_device_if)
334
8075943fda5a move serial code to src/devices/serial
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 331
diff changeset
   354
sample_serial_net_device_if.add_deps (['common', 'node', 'serial'])
292
cc17705d3344 Merge in Craig's tracing changes as of Thursday; rename net-device-serial files to serial-net-device
Tom Henderson <tomh@tomh.org>
parents: 291
diff changeset
   355
sample_serial_net_device_if.add_source ('main-serial-net-device-if.cc')
cc17705d3344 Merge in Craig's tracing changes as of Thursday; rename net-device-serial files to serial-net-device
Tom Henderson <tomh@tomh.org>
parents: 291
diff changeset
   356
247
fb7375bb43d7 make the sample code compile and link.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 245
diff changeset
   357
sample_simple = build.Ns3Module('sample-simple', 'samples')
fb7375bb43d7 make the sample code compile and link.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 245
diff changeset
   358
sample_simple.set_executable()
fb7375bb43d7 make the sample code compile and link.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 245
diff changeset
   359
ns3.add(sample_simple)
fb7375bb43d7 make the sample code compile and link.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 245
diff changeset
   360
sample_simple.add_deps(['core', 'simulator', 'node'])
fb7375bb43d7 make the sample code compile and link.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 245
diff changeset
   361
sample_simple.add_source('main-simple.cc')
fb7375bb43d7 make the sample code compile and link.
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 245
diff changeset
   362
253
b9201368acdb make the p2p example compile
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 249
diff changeset
   363
sample_sp2p = build.Ns3Module('sample-simple-p2p', 'samples')
b9201368acdb make the p2p example compile
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 249
diff changeset
   364
sample_sp2p.set_executable()
345
47b41507a45a move channel.cc channel.h to node directory; merge ns-3-tracing from mathieu
Tom Henderson <tomh@tomh.org>
parents: 343
diff changeset
   365
#n3.add(sample_sp2p)
331
d75ee9d8efa4 move p2p to new dir
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 325
diff changeset
   366
sample_sp2p.add_deps(['core', 'simulator', 'node', 'p2p'])
253
b9201368acdb make the p2p example compile
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 249
diff changeset
   367
sample_sp2p.add_source('main-simple-p2p.cc')
b9201368acdb make the p2p example compile
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 249
diff changeset
   368
338
95aa9b19ca89 Rename simple.tcl.cc to simple.cc; remove OTcl comments
Tom Henderson <tomh@tomh.org>
parents: 334
diff changeset
   369
sample_ns2_simple = build.Ns3Module('sample-ns2-simple', 'samples')
95aa9b19ca89 Rename simple.tcl.cc to simple.cc; remove OTcl comments
Tom Henderson <tomh@tomh.org>
parents: 334
diff changeset
   370
sample_ns2_simple.set_executable()
95aa9b19ca89 Rename simple.tcl.cc to simple.cc; remove OTcl comments
Tom Henderson <tomh@tomh.org>
parents: 334
diff changeset
   371
ns3.add(sample_ns2_simple)
95aa9b19ca89 Rename simple.tcl.cc to simple.cc; remove OTcl comments
Tom Henderson <tomh@tomh.org>
parents: 334
diff changeset
   372
sample_ns2_simple.add_deps(['core', 'simulator', 'node', 'serial'])
95aa9b19ca89 Rename simple.tcl.cc to simple.cc; remove OTcl comments
Tom Henderson <tomh@tomh.org>
parents: 334
diff changeset
   373
sample_ns2_simple.add_source('ns-2/simple.cc')
288
76c95195c166 Add samples/ns-2/simple.tcl.cc to SConstruct
Tom Henderson <tomh@tomh.org>
parents: 264
diff changeset
   374
136
4faf1726e8ff make python code more Pep8 conformant (patch from Gustavo Carneiro)
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 128
diff changeset
   375
ns3.generate_dependencies()