fixed Bug 1649 - bindings scanning for fd-net-device (adding --force-planetlab option to force PlanetLab support)
--- a/src/fd-net-device/bindings/callbacks_list.py Sat May 04 22:38:49 2013 +0200
+++ b/src/fd-net-device/bindings/callbacks_list.py Mon May 06 00:50:09 2013 +0200
@@ -2,6 +2,6 @@
['bool', 'ns3::Ptr<ns3::NetDevice>', 'ns3::Ptr<ns3::Packet const>', 'unsigned short', 'ns3::Address const&', 'ns3::Address const&', 'ns3::NetDevice::PacketType', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
['bool', 'ns3::Ptr<ns3::NetDevice>', 'ns3::Ptr<ns3::Packet const>', 'unsigned short', 'ns3::Address const&', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
['void', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
- ['void', 'unsigned char*', 'long', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
+ ['void', 'unsigned char*', 'int', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
['void', 'ns3::Ptr<ns3::NetDevice>', 'ns3::Ptr<ns3::Packet const>', 'unsigned short', 'ns3::Address const&', 'ns3::Address const&', 'ns3::NetDevice::PacketType', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
]
--- a/src/fd-net-device/bindings/modulegen__gcc_ILP32.py Sat May 04 22:38:49 2013 +0200
+++ b/src/fd-net-device/bindings/modulegen__gcc_ILP32.py Mon May 06 00:50:09 2013 +0200
@@ -234,6 +234,8 @@
module.add_class('OutputStreamWrapper', import_from_module='ns.network', parent=root_module['ns3::SimpleRefCount< ns3::OutputStreamWrapper, ns3::empty, ns3::DefaultDeleter<ns3::OutputStreamWrapper> >'])
## packet.h (module 'network'): ns3::Packet [class]
module.add_class('Packet', import_from_module='ns.network', parent=root_module['ns3::SimpleRefCount< ns3::Packet, ns3::empty, ns3::DefaultDeleter<ns3::Packet> >'])
+ ## planetlab-fd-net-device-helper.h (module 'fd-net-device'): ns3::PlanetLabFdNetDeviceHelper [class]
+ module.add_class('PlanetLabFdNetDeviceHelper', parent=root_module['ns3::EmuFdNetDeviceHelper'])
## tap-fd-net-device-helper.h (module 'fd-net-device'): ns3::TapFdNetDeviceHelper [class]
module.add_class('TapFdNetDeviceHelper', parent=root_module['ns3::EmuFdNetDeviceHelper'])
## nstime.h (module 'core'): ns3::TimeChecker [class]
@@ -363,6 +365,7 @@
register_Ns3ObjectFactoryValue_methods(root_module, root_module['ns3::ObjectFactoryValue'])
register_Ns3OutputStreamWrapper_methods(root_module, root_module['ns3::OutputStreamWrapper'])
register_Ns3Packet_methods(root_module, root_module['ns3::Packet'])
+ register_Ns3PlanetLabFdNetDeviceHelper_methods(root_module, root_module['ns3::PlanetLabFdNetDeviceHelper'])
register_Ns3TapFdNetDeviceHelper_methods(root_module, root_module['ns3::TapFdNetDeviceHelper'])
register_Ns3TimeChecker_methods(root_module, root_module['ns3::TimeChecker'])
register_Ns3TimeValue_methods(root_module, root_module['ns3::TimeValue'])
@@ -4172,6 +4175,36 @@
[param('ns3::Ptr< ns3::NixVector >', 'arg0')])
return
+def register_Ns3PlanetLabFdNetDeviceHelper_methods(root_module, cls):
+ ## planetlab-fd-net-device-helper.h (module 'fd-net-device'): ns3::PlanetLabFdNetDeviceHelper::PlanetLabFdNetDeviceHelper(ns3::PlanetLabFdNetDeviceHelper const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::PlanetLabFdNetDeviceHelper const &', 'arg0')])
+ ## planetlab-fd-net-device-helper.h (module 'fd-net-device'): ns3::PlanetLabFdNetDeviceHelper::PlanetLabFdNetDeviceHelper() [constructor]
+ cls.add_constructor([])
+ ## planetlab-fd-net-device-helper.h (module 'fd-net-device'): void ns3::PlanetLabFdNetDeviceHelper::SetTapIpAddress(ns3::Ipv4Address address) [member function]
+ cls.add_method('SetTapIpAddress',
+ 'void',
+ [param('ns3::Ipv4Address', 'address')])
+ ## planetlab-fd-net-device-helper.h (module 'fd-net-device'): void ns3::PlanetLabFdNetDeviceHelper::SetTapMask(ns3::Ipv4Mask mask) [member function]
+ cls.add_method('SetTapMask',
+ 'void',
+ [param('ns3::Ipv4Mask', 'mask')])
+ ## planetlab-fd-net-device-helper.h (module 'fd-net-device'): int ns3::PlanetLabFdNetDeviceHelper::CreateFileDescriptor() const [member function]
+ cls.add_method('CreateFileDescriptor',
+ 'int',
+ [],
+ is_const=True, visibility='protected', is_virtual=True)
+ ## planetlab-fd-net-device-helper.h (module 'fd-net-device'): ns3::Ptr<ns3::NetDevice> ns3::PlanetLabFdNetDeviceHelper::InstallPriv(ns3::Ptr<ns3::Node> node) const [member function]
+ cls.add_method('InstallPriv',
+ 'ns3::Ptr< ns3::NetDevice >',
+ [param('ns3::Ptr< ns3::Node >', 'node')],
+ is_const=True, visibility='protected', is_virtual=True)
+ ## planetlab-fd-net-device-helper.h (module 'fd-net-device'): void ns3::PlanetLabFdNetDeviceHelper::SetFileDescriptor(ns3::Ptr<ns3::FdNetDevice> device) const [member function]
+ cls.add_method('SetFileDescriptor',
+ 'void',
+ [param('ns3::Ptr< ns3::FdNetDevice >', 'device')],
+ is_const=True, visibility='protected', is_virtual=True)
+ return
+
def register_Ns3TapFdNetDeviceHelper_methods(root_module, cls):
## tap-fd-net-device-helper.h (module 'fd-net-device'): ns3::TapFdNetDeviceHelper::TapFdNetDeviceHelper(ns3::TapFdNetDeviceHelper const & arg0) [copy constructor]
cls.add_constructor([param('ns3::TapFdNetDeviceHelper const &', 'arg0')])
--- a/src/fd-net-device/bindings/modulegen__gcc_LP64.py Sat May 04 22:38:49 2013 +0200
+++ b/src/fd-net-device/bindings/modulegen__gcc_LP64.py Mon May 06 00:50:09 2013 +0200
@@ -234,6 +234,8 @@
module.add_class('OutputStreamWrapper', import_from_module='ns.network', parent=root_module['ns3::SimpleRefCount< ns3::OutputStreamWrapper, ns3::empty, ns3::DefaultDeleter<ns3::OutputStreamWrapper> >'])
## packet.h (module 'network'): ns3::Packet [class]
module.add_class('Packet', import_from_module='ns.network', parent=root_module['ns3::SimpleRefCount< ns3::Packet, ns3::empty, ns3::DefaultDeleter<ns3::Packet> >'])
+ ## planetlab-fd-net-device-helper.h (module 'fd-net-device'): ns3::PlanetLabFdNetDeviceHelper [class]
+ module.add_class('PlanetLabFdNetDeviceHelper', parent=root_module['ns3::EmuFdNetDeviceHelper'])
## tap-fd-net-device-helper.h (module 'fd-net-device'): ns3::TapFdNetDeviceHelper [class]
module.add_class('TapFdNetDeviceHelper', parent=root_module['ns3::EmuFdNetDeviceHelper'])
## nstime.h (module 'core'): ns3::TimeChecker [class]
@@ -363,6 +365,7 @@
register_Ns3ObjectFactoryValue_methods(root_module, root_module['ns3::ObjectFactoryValue'])
register_Ns3OutputStreamWrapper_methods(root_module, root_module['ns3::OutputStreamWrapper'])
register_Ns3Packet_methods(root_module, root_module['ns3::Packet'])
+ register_Ns3PlanetLabFdNetDeviceHelper_methods(root_module, root_module['ns3::PlanetLabFdNetDeviceHelper'])
register_Ns3TapFdNetDeviceHelper_methods(root_module, root_module['ns3::TapFdNetDeviceHelper'])
register_Ns3TimeChecker_methods(root_module, root_module['ns3::TimeChecker'])
register_Ns3TimeValue_methods(root_module, root_module['ns3::TimeValue'])
@@ -4172,6 +4175,36 @@
[param('ns3::Ptr< ns3::NixVector >', 'arg0')])
return
+def register_Ns3PlanetLabFdNetDeviceHelper_methods(root_module, cls):
+ ## planetlab-fd-net-device-helper.h (module 'fd-net-device'): ns3::PlanetLabFdNetDeviceHelper::PlanetLabFdNetDeviceHelper(ns3::PlanetLabFdNetDeviceHelper const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::PlanetLabFdNetDeviceHelper const &', 'arg0')])
+ ## planetlab-fd-net-device-helper.h (module 'fd-net-device'): ns3::PlanetLabFdNetDeviceHelper::PlanetLabFdNetDeviceHelper() [constructor]
+ cls.add_constructor([])
+ ## planetlab-fd-net-device-helper.h (module 'fd-net-device'): void ns3::PlanetLabFdNetDeviceHelper::SetTapIpAddress(ns3::Ipv4Address address) [member function]
+ cls.add_method('SetTapIpAddress',
+ 'void',
+ [param('ns3::Ipv4Address', 'address')])
+ ## planetlab-fd-net-device-helper.h (module 'fd-net-device'): void ns3::PlanetLabFdNetDeviceHelper::SetTapMask(ns3::Ipv4Mask mask) [member function]
+ cls.add_method('SetTapMask',
+ 'void',
+ [param('ns3::Ipv4Mask', 'mask')])
+ ## planetlab-fd-net-device-helper.h (module 'fd-net-device'): int ns3::PlanetLabFdNetDeviceHelper::CreateFileDescriptor() const [member function]
+ cls.add_method('CreateFileDescriptor',
+ 'int',
+ [],
+ is_const=True, visibility='protected', is_virtual=True)
+ ## planetlab-fd-net-device-helper.h (module 'fd-net-device'): ns3::Ptr<ns3::NetDevice> ns3::PlanetLabFdNetDeviceHelper::InstallPriv(ns3::Ptr<ns3::Node> node) const [member function]
+ cls.add_method('InstallPriv',
+ 'ns3::Ptr< ns3::NetDevice >',
+ [param('ns3::Ptr< ns3::Node >', 'node')],
+ is_const=True, visibility='protected', is_virtual=True)
+ ## planetlab-fd-net-device-helper.h (module 'fd-net-device'): void ns3::PlanetLabFdNetDeviceHelper::SetFileDescriptor(ns3::Ptr<ns3::FdNetDevice> device) const [member function]
+ cls.add_method('SetFileDescriptor',
+ 'void',
+ [param('ns3::Ptr< ns3::FdNetDevice >', 'device')],
+ is_const=True, visibility='protected', is_virtual=True)
+ return
+
def register_Ns3TapFdNetDeviceHelper_methods(root_module, cls):
## tap-fd-net-device-helper.h (module 'fd-net-device'): ns3::TapFdNetDeviceHelper::TapFdNetDeviceHelper(ns3::TapFdNetDeviceHelper const & arg0) [copy constructor]
cls.add_constructor([param('ns3::TapFdNetDeviceHelper const &', 'arg0')])
--- a/src/fd-net-device/wscript Sat May 04 22:38:49 2013 +0200
+++ b/src/fd-net-device/wscript Mon May 06 00:50:09 2013 +0200
@@ -2,6 +2,13 @@
import os.path
+from waflib import Options
+
+def options(opt):
+ opt.add_option('--force-planetlab',
+ help=('Forces compilation of PlanetLab even if not suported by the local system'),
+ dest='force_planetlab', default=False, action="store_true")
+
def configure(conf):
conf.env['ENABLE_FDNETDEV'] = False
@@ -72,7 +79,7 @@
# Enable use of PlanetLab TAP helper
# TODO: How to validate
(sysname, nodename, release, version, machine) = os.uname()
- if release.find('onelab') != -1:
+ if release.find('onelab') != -1 or Options.options.force_planetlab:
conf.env['ENABLE_PLANETLAB'] = True
if conf.env['ENABLE_PLANETLAB']:
@@ -84,7 +91,7 @@
conf.report_optional_feature("PlanetLabFdNetDevice",
"PlanetLab FdNetDevice",
False,
- "PlanetLab operating system not detected")
+ "PlanetLab operating system not detected (see option --force-planetlab)")
def build(bld):
# Don't do anything for this module if emu's not enabled.