[PATCH 1/8] Run duplicate symbol check as just another test, rather than as part of "waf test".

Jelmer Vernooij jelmer at samba.org
Sun Oct 12 22:18:57 MDT 2014


This allows it to be scheduled independently as part of a parallel test
run, and reduces the overhead of "waf test".

Change-Id: I780fd2c4dd711ed27df73f56de98e7f1ffd53aaf
Signed-Off-By: Jelmer Vernooij <jelmer at samba.org>
Bug: https://bugzilla.samba.org/show_bug.cgi?id=10875
---
 buildtools/wafsamba/test_duplicate_symbol.sh | 12 ++++++++++++
 selftest/tests.py                            |  1 +
 selftest/wscript                             |  3 ---
 3 files changed, 13 insertions(+), 3 deletions(-)
 create mode 100755 buildtools/wafsamba/test_duplicate_symbol.sh

diff --git a/buildtools/wafsamba/test_duplicate_symbol.sh b/buildtools/wafsamba/test_duplicate_symbol.sh
new file mode 100755
index 0000000..712c7e6
--- /dev/null
+++ b/buildtools/wafsamba/test_duplicate_symbol.sh
@@ -0,0 +1,12 @@
+#!/bin/sh
+# Run the waf duplicate symbol check, wrapped in subunit.
+
+. lib/subunit/shell/share/subunit.sh
+
+subunit_start_test duplicate_symbols
+
+if ./buildtools/bin/waf build --dup-symbol-check; then
+	subunit_pass_test duplicate_symbols
+else
+	echo | subunit_fail_test duplicate_symbols
+fi
diff --git a/selftest/tests.py b/selftest/tests.py
index 88a08c9..25f84ce 100644
--- a/selftest/tests.py
+++ b/selftest/tests.py
@@ -69,3 +69,4 @@ planpythontestsuite("none", "samba.tests.upgradeprovision")
 planpythontestsuite("none", "samba.tests.xattr")
 planpythontestsuite("none", "samba.tests.ntacls")
 planpythontestsuite("none", "samba.tests.policy")
+plantestsuite("wafsamba.duplicate_symbols", "none", [os.path.join(srcdir(), "buildtools/wafsamba/test_duplicate_symbol.sh")])
diff --git a/selftest/wscript b/selftest/wscript
index a57f7c1..f2520c3 100644
--- a/selftest/wscript
+++ b/selftest/wscript
@@ -243,8 +243,5 @@ def cmd_test(opt):
     # if running all tests, then force a symbol check
     env = LOAD_ENVIRONMENT()
     CHECK_MAKEFLAGS(env)
-    if not Options.options.TESTS and not Options.options.TESTENV:
-        Options.options.DUP_SYMBOLCHECK = True
-
     Scripting.commands.append('build')
     Scripting.commands.append('testonly')
-- 
2.1.1



More information about the samba-technical mailing list