|
|
| 241 |
opt.add_option('--cxx-standard', |
241 |
opt.add_option('--cxx-standard', |
| 242 |
help=('Compile NS-3 with the given C++ standard'), |
242 |
help=('Compile NS-3 with the given C++ standard'), |
| 243 |
type='string', default='-std=c++11', dest='cxx_standard') |
243 |
type='string', default='-std=c++11', dest='cxx_standard') |
|
|
244 |
opt.add_option('--disable-modules', |
| 245 |
help=('Explicitly disable modules (comma-separated) from the build.'), |
| 246 |
type='string', default='', dest='disable_modules') |
| 244 |
|
247 |
|
| 245 |
# options provided in subdirectories |
248 |
# options provided in subdirectories |
| 246 |
opt.recurse('src') |
249 |
opt.recurse('src') |
|
|
| 507 |
conf.env['NS3_ENABLED_MODULES'] = _enabled_mods |
510 |
conf.env['NS3_ENABLED_MODULES'] = _enabled_mods |
| 508 |
conf.env['NS3_ENABLED_CONTRIBUTED_MODULES'] = _enabled_contrib_mods |
511 |
conf.env['NS3_ENABLED_CONTRIBUTED_MODULES'] = _enabled_contrib_mods |
| 509 |
|
512 |
|
|
|
513 |
to_remove = [] |
| 514 |
not_removed = [] |
| 515 |
if Options.options.disable_modules: |
| 516 |
for mod in Options.options.disable_modules.split(','): |
| 517 |
name = '' |
| 518 |
if mod.startswith('ns3-'): |
| 519 |
name = mod[4:] |
| 520 |
else: |
| 521 |
name = mod |
| 522 |
mod = 'ns3-' + mod |
| 523 |
|
| 524 |
if mod in conf.env['NS3_ENABLED_MODULES']: |
| 525 |
to_remove.append(name) |
| 526 |
conf.env['MODULES_NOT_BUILT'].append(name) |
| 527 |
elif mod in conf.env['NS3_ENABLED_CONTRIBUTED_MODULES']: |
| 528 |
to_remove.append(name) |
| 529 |
conf.env['MODULES_NOT_BUILT'].append(name) |
| 530 |
else: |
| 531 |
not_removed.append(name) |
| 532 |
|
| 533 |
if len(to_remove) > 0: |
| 534 |
conf.report_optional_feature("Modules Disabled", "Disable modules (" + ','.join(to_remove) + ")", True, None) |
| 535 |
if len(not_removed) > 0: |
| 536 |
conf.report_optional_feature("Modules Not Disabled", "Disable modules error (" + ','.join(not_removed) + ")", |
| 537 |
False, "Module(s) not found in the list. Spelling error?") |
| 538 |
|
| 510 |
# Add the template module to the list of enabled modules that |
539 |
# Add the template module to the list of enabled modules that |
| 511 |
# should not be built if this is a static build on Darwin. They |
540 |
# should not be built if this is a static build on Darwin. They |
| 512 |
# don't work there for the template module, and this is probably |
541 |
# don't work there for the template module, and this is probably |