129 lines
4.1 KiB
Python
129 lines
4.1 KiB
Python
## -*- Mode: python; py-indent-offset: 4; indent-tabs-mode: nil; coding: utf-8; -*-
|
|
|
|
def build(bld):
|
|
helper = bld.create_ns3_module('helper', ['internet-stack', 'wifi', 'point-to-point', 'csma', 'olsr', 'global-routing', 'onoff', 'packet-sink', 'udp-echo'])
|
|
helper.source = [
|
|
'node-container.cc',
|
|
'net-device-container.cc',
|
|
'wifi-helper.cc',
|
|
'olsr-helper.cc',
|
|
'point-to-point-helper.cc',
|
|
'csma-helper.cc',
|
|
'mobility-helper.cc',
|
|
'ns2-mobility-helper.cc',
|
|
'ipv4-address-helper.cc',
|
|
'ipv4-static-routing-helper.cc',
|
|
'internet-stack-helper.cc',
|
|
'application-container.cc',
|
|
'on-off-helper.cc',
|
|
'packet-sink-helper.cc',
|
|
'packet-socket-helper.cc',
|
|
'ipv4-interface-container.cc',
|
|
'udp-echo-helper.cc',
|
|
'bridge-helper.cc',
|
|
'yans-wifi-helper.cc',
|
|
'v4ping-helper.cc',
|
|
'nqos-wifi-mac-helper.cc',
|
|
'qos-wifi-mac-helper.cc',
|
|
'ipv4-nix-vector-helper.cc',
|
|
'ipv4-global-routing-helper.cc',
|
|
'ipv4-list-routing-helper.cc',
|
|
'ipv4-routing-helper.cc',
|
|
'aodv-helper.cc',
|
|
'mesh-helper.cc',
|
|
'dot11s-installer.cc',
|
|
'flame-installer.cc',
|
|
'athstats-helper.cc',
|
|
'ipv6-address-helper.cc',
|
|
'ipv6-interface-container.cc',
|
|
'ipv6-static-routing-helper.cc',
|
|
'ipv6-list-routing-helper.cc',
|
|
'ipv6-routing-helper.cc',
|
|
'ping6-helper.cc',
|
|
'flow-monitor-helper.cc',
|
|
'animation-interface.cc',
|
|
'canvas-location.cc',
|
|
'point-to-point-dumbbell-helper.cc',
|
|
'point-to-point-grid-helper.cc',
|
|
'point-to-point-star-helper.cc',
|
|
'csma-star-helper.cc',
|
|
'udp-client-server-helper.cc',
|
|
'pcap-helper.cc',
|
|
'pcap-user-helper.cc',
|
|
]
|
|
|
|
headers = bld.new_task_gen('ns3header')
|
|
headers.module = 'helper'
|
|
headers.source = [
|
|
'node-container.h',
|
|
'net-device-container.h',
|
|
'wifi-helper.h',
|
|
'olsr-helper.h',
|
|
'point-to-point-helper.h',
|
|
'csma-helper.h',
|
|
'mobility-helper.h',
|
|
'ns2-mobility-helper.h',
|
|
'ipv4-address-helper.h',
|
|
'ipv4-static-routing-helper.h',
|
|
'internet-stack-helper.h',
|
|
'application-container.h',
|
|
'on-off-helper.h',
|
|
'packet-sink-helper.h',
|
|
'packet-socket-helper.h',
|
|
'ipv4-interface-container.h',
|
|
'udp-echo-helper.h',
|
|
'bridge-helper.h',
|
|
'yans-wifi-helper.h',
|
|
'v4ping-helper.h',
|
|
'nqos-wifi-mac-helper.h',
|
|
'qos-wifi-mac-helper.h',
|
|
'ipv4-nix-vector-helper.h',
|
|
'ipv4-global-routing-helper.h',
|
|
'ipv4-list-routing-helper.h',
|
|
'ipv4-routing-helper.h',
|
|
'aodv-helper.h',
|
|
'mesh-helper.h',
|
|
'mesh-stack-installer.h',
|
|
'dot11s-installer.h',
|
|
'flame-installer.h',
|
|
'athstats-helper.h',
|
|
'ipv6-address-helper.h',
|
|
'ipv6-interface-container.h',
|
|
'ipv6-static-routing-helper.h',
|
|
'ipv6-list-routing-helper.h',
|
|
'ipv6-routing-helper.h',
|
|
'ping6-helper.h',
|
|
'flow-monitor-helper.h',
|
|
'animation-interface.h',
|
|
'canvas-location.h',
|
|
'point-to-point-dumbbell-helper.h',
|
|
'point-to-point-grid-helper.h',
|
|
'point-to-point-star-helper.h',
|
|
'csma-star-helper.h',
|
|
'udp-client-server-helper.h',
|
|
'pcap-helper.h',
|
|
'pcap-user-helper.h',
|
|
]
|
|
|
|
env = bld.env_of_name('default')
|
|
if env['ENABLE_EMU']:
|
|
helper.source.extend([
|
|
'emu-helper.cc',
|
|
])
|
|
headers.source.extend([
|
|
'emu-helper.h',
|
|
])
|
|
if env['ENABLE_TAP']:
|
|
helper.source.extend([
|
|
'tap-bridge-helper.cc',
|
|
])
|
|
headers.source.extend([
|
|
'tap-bridge-helper.h',
|
|
])
|
|
|
|
def configure(conf):
|
|
conf.check(header_name='sys/socket.h', define_name='HAVE_SYS_SOCKET_H')
|
|
conf.check(header_name='netinet/in.h', define_name='HAVE_NETINET_IN_H')
|
|
conf.write_config_header('ns3/net-anim-config.h', top=True)
|
|
|