merge with head

This commit is contained in:
Mathieu Lacage
2007-06-27 20:51:07 +02:00
2 changed files with 37 additions and 6 deletions

View File

@@ -7,7 +7,9 @@ import Params
def set_options(opt):
opt.add_option('--high-precision-as-double',
help=('Whether to use a double floating point'
' type for high precision time values'),
' type for high precision time values'
' WARNING: this option only has effect '
'with the configure command.'),
action="store_true", default=False,
dest='high_precision_as_double')

39
wscript
View File

@@ -7,6 +7,7 @@ import shutil
import Params
import Object
import pproc as subprocess
import optparse
Params.g_autoconfig = 1
@@ -23,11 +24,32 @@ def dist_hook(srcdir, blddir):
shutil.rmtree("doc/latex")
def set_options(opt):
def debug_option_callback(option, opt, value, parser):
if value == 'debug':
setattr(parser.values, option.dest, 'ultradebug')
elif value == 'optimized':
setattr(parser.values, option.dest, 'optimized')
else:
raise optparse.OptionValueError("allowed --debug-level values"
" are debug, optimized.")
opt.add_option('-d', '--debug-level',
action='callback',
type=str, dest='debug_level', default='debug',
help=('Specify the debug level, does nothing if CFLAGS is set'
' in the environment. [Allowed Values: debug, optimized].'
' WARNING: this option only has effect '
'with the configure command.'),
callback=debug_option_callback)
# options provided by the modules
opt.tool_options('compiler_cxx')
opt.add_option('--enable-gcov',
help=('Enable code coverage analysis'),
help=('Enable code coverage analysis.'
' WARNING: this option only has effect '
'with the configure command.'),
action="store_true", default=False,
dest='enable_gcov')
@@ -59,10 +81,13 @@ def configure(conf):
if not conf.check_tool('compiler_cxx'):
Params.fatal("No suitable compiler found")
# create the second environment, set the variant and set its name
variant_env = conf.env.copy()
variant_name = Params.g_options.debug_level.lower()
debug_level = Params.g_options.debug_level.lower()
if debug_level == 'ultradebug':
variant_name = 'debug'
else:
variant_name = debug_level
if Params.g_options.enable_gcov:
variant_name += '-gcov'
@@ -79,13 +104,17 @@ def configure(conf):
conf.setenv(variant_name)
variant_env.append_value('CXXDEFINES', 'RUN_SELF_TESTS')
variant_env.append_value('CXXFLAGS', ['-Wall', '-Werror'])
if os.path.basename(conf.env['CXX']).startswith("g++"):
variant_env.append_value('CXXFLAGS', ['-Wall', '-Werror'])
if 'debug' in Params.g_options.debug_level.lower():
variant_env.append_value('CXXDEFINES', 'NS3_DEBUG_ENABLE')
variant_env.append_value('CXXDEFINES', 'NS3_ASSERT_ENABLE')
if sys.platform == 'win32':
variant_env.append_value("LINKFLAGS", "-Wl,--enable-runtime-pseudo-reloc")
if os.path.basename(conf.env['CXX']).startswith("g++"):
variant_env.append_value("LINKFLAGS", "-Wl,--enable-runtime-pseudo-reloc")
conf.sub_config('src')