summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--QA/UnitTest/SConscript45
-rw-r--r--SConstruct11
-rw-r--r--Swiften/SConscript4
3 files changed, 34 insertions, 26 deletions
diff --git a/QA/UnitTest/SConscript b/QA/UnitTest/SConscript
index 2fd7ce0..1cd92a3 100644
--- a/QA/UnitTest/SConscript
+++ b/QA/UnitTest/SConscript
@@ -1,27 +1,26 @@
import os
Import("env")
-if env["TEST"] :
- myenv = env.Clone()
- myenv.MergeFlags(env["CHECKER_FLAGS"])
- myenv.MergeFlags(env["SLIMBER_FLAGS"])
- myenv.MergeFlags(env["SWIFT_CONTROLLERS_FLAGS"])
- myenv.MergeFlags(env["SWIFTOOLS_FLAGS"])
- myenv.MergeFlags(env["SWIFTEN_FLAGS"])
- myenv.MergeFlags(env["CPPUNIT_FLAGS"])
- myenv.MergeFlags(env["LIBIDN_FLAGS"])
- myenv.MergeFlags(env["BOOST_FLAGS"])
- myenv.MergeFlags(env["SQLITE_FLAGS"])
- myenv.MergeFlags(env.get("LIBXML_FLAGS", ""))
- myenv.MergeFlags(env.get("EXPAT_FLAGS", ""))
- myenv.MergeFlags(env["ZLIB_FLAGS"])
- if env.get("HAVE_LIBXML") :
- myenv.Append(CPPDEFINES = ["HAVE_LIBXML"])
- if env.get("HAVE_EXPAT") :
- myenv.Append(CPPDEFINES = ["HAVE_EXPAT"])
- checker = myenv.Program("checker", env["UNITTEST_SOURCES"])
- for i in ["HOME", "USERPROFILE", "APPDATA"]:
- if os.environ.get(i, "") :
- myenv["ENV"][i] = os.environ[i]
- myenv.Test(checker)
+myenv = env.Clone()
+myenv.MergeFlags(env["CHECKER_FLAGS"])
+myenv.MergeFlags(env["SLIMBER_FLAGS"])
+myenv.MergeFlags(env["SWIFT_CONTROLLERS_FLAGS"])
+myenv.MergeFlags(env["SWIFTOOLS_FLAGS"])
+myenv.MergeFlags(env["SWIFTEN_FLAGS"])
+myenv.MergeFlags(env["CPPUNIT_FLAGS"])
+myenv.MergeFlags(env["LIBIDN_FLAGS"])
+myenv.MergeFlags(env["BOOST_FLAGS"])
+myenv.MergeFlags(env["SQLITE_FLAGS"])
+myenv.MergeFlags(env.get("LIBXML_FLAGS", ""))
+myenv.MergeFlags(env.get("EXPAT_FLAGS", ""))
+myenv.MergeFlags(env["ZLIB_FLAGS"])
+if env.get("HAVE_LIBXML") :
+ myenv.Append(CPPDEFINES = ["HAVE_LIBXML"])
+if env.get("HAVE_EXPAT") :
+ myenv.Append(CPPDEFINES = ["HAVE_EXPAT"])
+checker = myenv.Program("checker", env["UNITTEST_SOURCES"])
+for i in ["HOME", "USERPROFILE", "APPDATA"]:
+ if os.environ.get(i, "") :
+ myenv["ENV"][i] = os.environ[i]
+myenv.Test(checker)
diff --git a/SConstruct b/SConstruct
index 799929d..6cd55aa 100644
--- a/SConstruct
+++ b/SConstruct
@@ -44,12 +44,19 @@ env.Tool("BuildVersion", toolpath = ["#/BuildTools/SCons/Tools"])
if env["PLATFORM"] == "darwin" :
env.Tool("Nib", toolpath = ["#/BuildTools/SCons/Tools"])
env.Tool("AppBundle", toolpath = ["#/BuildTools/SCons/Tools"])
if env["PLATFORM"] == "win32" :
env.Tool("WindowsBundle", toolpath = ["#/BuildTools/SCons/Tools"])
+# Override SConscript to handle tests
+oldSConscript = SConscript
+def SConscript(*arguments, **keywords) :
+ if not keywords.get("test_only", False) or env["TEST"] :
+ return apply(oldSConscript, arguments, keywords)
+
+
# Default compiler flags
env["CCFLAGS"] = env.get("ccflags", [])
env["LINKFLAGS"] = env.get("linkflags", [])
if env["optimize"] :
env.Append(CCFLAGS = "-O2")
if env["PLATFORM"] == "win32" :
@@ -314,13 +321,13 @@ SConscript(dirs = [
"3rdParty/CppUnit",
"3rdParty/Boost",
"3rdParty/LibIDN",
"3rdParty/SQLite"])
# Checker
-SConscript(dirs = ["QA/Checker"])
+SConscript(dirs = ["QA/Checker"], test_only = True)
# Libraries
SConscript(dirs = [
"Swiften",
"SwifTools"
])
@@ -331,13 +338,13 @@ for dir in os.listdir(".") :
continue
sconscript = os.path.join(dir, "SConscript")
if os.path.isfile(sconscript) :
SConscript(sconscript)
# Unit test runner
-SConscript(dirs = ["QA/UnitTest"])
+SConscript(dirs = ["QA/UnitTest"], test_only = True)
################################################################################
# Print summary
################################################################################
print
diff --git a/Swiften/SConscript b/Swiften/SConscript
index 6c13edb..0009125 100644
--- a/Swiften/SConscript
+++ b/Swiften/SConscript
@@ -101,14 +101,16 @@ SConscript(dirs = [
"Parser",
"JID",
"Network",
"History",
"StreamStack",
"LinkLocal",
- "QA",
])
+SConscript(test_only = True, dirs = [
+ "QA",
+ ])
myenv.StaticLibrary("Swiften", sources + swiften_env["SWIFTEN_OBJECTS"])
env.Append(UNITTEST_SOURCES = [
File("Application/UnitTest/ApplicationTest.cpp"),
File("Base/UnitTest/IDGeneratorTest.cpp"),