build: (fixes #15) Fix build erroneous order constraint warnings

Patch based on original suggestion from ita1024 on updated constraints
This commit is contained in:
Tom Henderson
2019-04-21 11:52:53 -07:00
parent b823749325
commit 5396fc911e
4 changed files with 9 additions and 70 deletions

61
wscript
View File

@@ -689,7 +689,7 @@ def configure(conf):
class SuidBuild_task(Task.Task):
"""task that makes a binary Suid
"""
after = 'link'
after = ['cxxprogram', 'cxxshlib', 'cxxstlib']
def __init__(self, *args, **kwargs):
super(SuidBuild_task, self).__init__(*args, **kwargs)
self.m_display = 'build-suid'
@@ -1174,65 +1174,6 @@ class CheckContext(Context.Context):
wutils.bld = bld
wutils.run_python_program("test.py -n -c core", bld.env)
class print_introspected_doxygen_task(Task.TaskBase):
after = 'cxx link'
color = 'BLUE'
def __init__(self, bld):
self.bld = bld
super(print_introspected_doxygen_task, self).__init__(generator=self)
def __str__(self):
return 'print-introspected-doxygen\n'
def runnable_status(self):
return Task.RUN_ME
def run(self):
## generate the trace sources list docs
env = wutils.bld.env
proc_env = wutils.get_proc_env()
try:
program_obj = wutils.find_program('print-introspected-doxygen', env)
except ValueError: # could happen if print-introspected-doxygen is
# not built because of waf configure
# --enable-modules=xxx
pass
else:
prog = program_obj.path.find_or_declare(ccroot.get_target_name(program_obj)).get_bld().abspath(env)
# Create a header file with the introspected information.
doxygen_out = open(os.path.join('doc', 'introspected-doxygen.h'), 'w')
if subprocess.Popen([prog], stdout=doxygen_out, env=proc_env).wait():
raise SystemExit(1)
doxygen_out.close()
# Create a text file with the introspected information.
text_out = open(os.path.join('doc', 'ns3-object.txt'), 'w')
if subprocess.Popen([prog, '--output-text'], stdout=text_out, env=proc_env).wait():
raise SystemExit(1)
text_out.close()
class run_python_unit_tests_task(Task.TaskBase):
after = 'cxx link'
color = 'BLUE'
def __init__(self, bld):
self.bld = bld
super(run_python_unit_tests_task, self).__init__(generator=self)
def __str__(self):
return 'run-python-unit-tests\n'
def runnable_status(self):
return Task.RUN_ME
def run(self):
proc_env = wutils.get_proc_env()
wutils.run_argv([self.bld.env['PYTHON'], os.path.join("..", "utils", "python-unit-tests.py")],
self.bld.env, proc_env, force_no_valgrind=True)
def check_shell(bld):
if ('NS3_MODULE_PATH' not in os.environ) or ('NS3_EXECUTABLE_PATH' not in os.environ):
return