summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemko Tronçon <git@el-tramo.be>2013-04-21 14:45:37 (GMT)
committerRemko Tronçon <git@el-tramo.be>2013-04-21 14:45:37 (GMT)
commit5eff3391c316d5ab325b78024296e74127c6747c (patch)
treea86008521ec5d1b5704c76aae72545344536ad2b
parentf5946a1273b363f46ae0753eccdf6bd96a72e997 (diff)
downloadswift-5eff3391c316d5ab325b78024296e74127c6747c.zip
swift-5eff3391c316d5ab325b78024296e74127c6747c.tar.bz2
Fix compilation when 3rdParty/ is not there.
Change-Id: I6d86bf7d8dcc750ff69ff08500c9987b3c1de43e
-rw-r--r--3rdParty/LibMiniUPnPc/SConscript1
-rw-r--r--3rdParty/LibNATPMP/SConscript1
-rw-r--r--3rdParty/Lua/SConscript1
-rw-r--r--BuildTools/SCons/SConstruct17
-rw-r--r--Sluift/SConscript7
-rw-r--r--SwifTools/SConscript4
-rw-r--r--Swift/QtUI/SConscript3
-rw-r--r--Swiften/Network/PlatformNATTraversalWorker.cpp13
-rw-r--r--Swiften/Network/SConscript26
-rw-r--r--Swiftob/SConscript6
10 files changed, 53 insertions, 26 deletions
diff --git a/3rdParty/LibMiniUPnPc/SConscript b/3rdParty/LibMiniUPnPc/SConscript
index 0cf0be7..505060f 100644
--- a/3rdParty/LibMiniUPnPc/SConscript
+++ b/3rdParty/LibMiniUPnPc/SConscript
@@ -7,6 +7,7 @@ if env.get("LIBMINIUPNPC_BUNDLED", False) :
################################################################################
if env["SCONS_STAGE"] == "flags" :
+ env["HAVE_LIBMINIUPNPC"] = True
env["LIBMINIUPNPC_FLAGS"] = {
"CPPPATH": [Dir("src/miniupnpc")],
"LIBPATH": [Dir(".")],
diff --git a/3rdParty/LibNATPMP/SConscript b/3rdParty/LibNATPMP/SConscript
index 7adaa51..5d08698 100644
--- a/3rdParty/LibNATPMP/SConscript
+++ b/3rdParty/LibNATPMP/SConscript
@@ -7,6 +7,7 @@ if env.get("LIBNATPMP_BUNDLED", False) :
################################################################################
if env["SCONS_STAGE"] == "flags" :
+ env["HAVE_LIBNATPMP"] = True
env["LIBNATPMP_FLAGS"] = {
"CPPPATH": [Dir("src/libnatpmp")],
"LIBPATH": [Dir(".")],
diff --git a/3rdParty/Lua/SConscript b/3rdParty/Lua/SConscript
index 0c1d075..acb2fba 100644
--- a/3rdParty/Lua/SConscript
+++ b/3rdParty/Lua/SConscript
@@ -7,6 +7,7 @@ if env.get("LUA_BUNDLED", False) :
################################################################################
if env["SCONS_STAGE"] == "flags" :
+ env["HAVE_LUA"] = True
cppdefines = []
if not env["optimize"] :
cppdefines.append("LUA_USE_APICHECK")
diff --git a/BuildTools/SCons/SConstruct b/BuildTools/SCons/SConstruct
index d5faaf4..ada291e 100644
--- a/BuildTools/SCons/SConstruct
+++ b/BuildTools/SCons/SConstruct
@@ -349,7 +349,6 @@ if env["experimental"] :
env["LIBMINIUPNPC_FLAGS"] = { "LIBS": ["miniupnpc"] }
env["LIBMINIUPNPC_FLAGS"].update(libminiupnpc_flags)
else :
- env["HAVE_LIBMINIUPNPC"] = 1
env["LIBMINIUPNPC_BUNDLED"] = 1
conf.Finish()
else :
@@ -371,7 +370,6 @@ if env["experimental"] :
env["LIBNATPMP_FLAGS"] = { "LIBS": ["natpmp"] }
env["LIBNATPMP_FLAGS"].update(libnatpmp_flags)
else :
- env["HAVE_LIBNATPMP"] = 1
env["LIBNATPMP_BUNDLED"] = 1
conf.Finish()
else :
@@ -563,13 +561,14 @@ else :
# Modules
modules = []
-for dir in os.listdir(Dir("#/3rdParty").abspath) :
- full_dir = os.path.join(Dir("#/3rdParty").abspath, dir)
- if not os.path.isdir(full_dir) :
- continue
- sconscript = os.path.join(full_dir, "SConscript")
- if os.path.isfile(sconscript) :
- modules.append("3rdParty/" + dir)
+if os.path.isdir(Dir("#/3rdParty").abspath) :
+ for dir in os.listdir(Dir("#/3rdParty").abspath) :
+ full_dir = os.path.join(Dir("#/3rdParty").abspath, dir)
+ if not os.path.isdir(full_dir) :
+ continue
+ sconscript = os.path.join(full_dir, "SConscript")
+ if os.path.isfile(sconscript) :
+ modules.append("3rdParty/" + dir)
for dir in os.listdir(Dir("#").abspath) :
full_dir = os.path.join(Dir("#").abspath, dir)
if not os.path.isdir(full_dir) :
diff --git a/Sluift/SConscript b/Sluift/SConscript
index f6388a0..2c247d8 100644
--- a/Sluift/SConscript
+++ b/Sluift/SConscript
@@ -2,7 +2,12 @@ import Version, os.path
Import(["env", "conf_env"])
-if env["SCONS_STAGE"] == "build" :
+if env["SCONS_STAGE"] == "build" and not GetOption("help") and not env.get("HAVE_LUA", 0) :
+ print "Warning: Lua was not found. Sluift will not be built."
+ if "Sluift" in env["PROJECTS"] :
+ env["PROJECTS"].remove("Sluift")
+
+elif env["SCONS_STAGE"] == "build" :
lib_env = env.Clone()
lib_env.UseFlags(env["LUA_FLAGS"])
lib_env.UseFlags(env["SWIFTEN_FLAGS"])
diff --git a/SwifTools/SConscript b/SwifTools/SConscript
index d91c5d4..9aa3bed 100644
--- a/SwifTools/SConscript
+++ b/SwifTools/SConscript
@@ -61,8 +61,8 @@ if env["SCONS_STAGE"] == "build" :
swiftools_env.Append(CPPDEFINES = ["HAVE_XSS"])
sources += ["Idle/XSSIdleQuerier.cpp"]
- swiftools_env.UseFlags(swiftools_env["BREAKPAD_FLAGS"])
- if env["HAVE_BREAKPAD"] :
+ if env.get("HAVE_BREAKPAD", False) :
+ swiftools_env.UseFlags(swiftools_env["BREAKPAD_FLAGS"])
swiftools_env.Append(CPPDEFINES = ["HAVE_BREAKPAD"])
sources += ["CrashReporter.cpp"]
diff --git a/Swift/QtUI/SConscript b/Swift/QtUI/SConscript
index 53db2df..d71375d 100644
--- a/Swift/QtUI/SConscript
+++ b/Swift/QtUI/SConscript
@@ -36,7 +36,8 @@ if myenv["HAVE_SPARKLE"] :
myenv.UseFlags(env["SPARKLE_FLAGS"])
myenv.UseFlags(env["SWIFTEN_FLAGS"])
myenv.UseFlags(env["SWIFTEN_DEP_FLAGS"])
-myenv.UseFlags(env["BREAKPAD_FLAGS"])
+if myenv.get("HAVE_BREAKPAD") :
+ myenv.UseFlags(env["BREAKPAD_FLAGS"])
if myenv.get("HAVE_GROWL", False) :
myenv.UseFlags(myenv["GROWL_FLAGS"])
myenv.Append(CPPDEFINES = ["HAVE_GROWL"])
diff --git a/Swiften/Network/PlatformNATTraversalWorker.cpp b/Swiften/Network/PlatformNATTraversalWorker.cpp
index 40d6da6..133b006 100644
--- a/Swiften/Network/PlatformNATTraversalWorker.cpp
+++ b/Swiften/Network/PlatformNATTraversalWorker.cpp
@@ -14,8 +14,12 @@
#include <Swiften/Network/NATTraversalGetPublicIPRequest.h>
#include <Swiften/Network/NATTraversalForwardPortRequest.h>
#include <Swiften/Network/NATTraversalRemovePortForwardingRequest.h>
+#ifdef HAVE_LIBNATPMP
#include <Swiften/Network/NATPMPInterface.h>
+#endif
+#ifdef HAVE_LIBMINIUPNPC
#include <Swiften/Network/MiniUPnPInterface.h>
+#endif
namespace Swift {
@@ -117,12 +121,17 @@ PlatformNATTraversalWorker::~PlatformNATTraversalWorker() {
addRequestToQueue(boost::shared_ptr<PlatformNATTraversalRequest>());
thread->join();
delete thread;
+#ifdef HAVE_LIBNATPMP
delete natPMPInterface;
+#endif
+#ifdef HAVE_LIBMINIUPNPC
delete miniUPnPInterface;
+#endif
delete nullNATTraversalInterface;
}
NATTraversalInterface* PlatformNATTraversalWorker::getNATTraversalInterface() const {
+#ifdef HAVE_LIBMINIUPNPC
if (boost::logic::indeterminate(miniUPnPSupported)) {
miniUPnPInterface = new MiniUPnPInterface();
miniUPnPSupported = miniUPnPInterface->isAvailable();
@@ -130,8 +139,9 @@ NATTraversalInterface* PlatformNATTraversalWorker::getNATTraversalInterface() co
if (miniUPnPSupported) {
return miniUPnPInterface;
}
+#endif
-
+#ifdef HAVE_LIBNATPMP
if (boost::logic::indeterminate(natPMPSupported)) {
natPMPInterface = new NATPMPInterface();
natPMPSupported = natPMPInterface->isAvailable();
@@ -139,6 +149,7 @@ NATTraversalInterface* PlatformNATTraversalWorker::getNATTraversalInterface() co
if (natPMPSupported) {
return natPMPInterface;
}
+#endif
return nullNATTraversalInterface;
}
diff --git a/Swiften/Network/SConscript b/Swiften/Network/SConscript
index b742bfe..e0e5e63 100644
--- a/Swiften/Network/SConscript
+++ b/Swiften/Network/SConscript
@@ -72,20 +72,24 @@ else :
objects = myenv.SwiftenObject(sourceList)
-if myenv["experimental"] :
+if myenv["experimental"] :
# LibNATPMP classes
- natpmp_env = myenv.Clone()
- natpmp_env.Append(CPPDEFINES = natpmp_env["LIBNATPMP_FLAGS"].get("INTERNAL_CPPDEFINES", []))
- objects += natpmp_env.SwiftenObject([
- "NATPMPInterface.cpp",
- ])
+ if myenv.get("HAVE_LIBNATPMP", False) :
+ natpmp_env = myenv.Clone()
+ natpmp_env.Append(CPPDEFINES = natpmp_env["LIBNATPMP_FLAGS"].get("INTERNAL_CPPDEFINES", []))
+ myenv.Append(CPPDEFINES = ["HAVE_LIBNATPMP"])
+ objects += natpmp_env.SwiftenObject([
+ "NATPMPInterface.cpp",
+ ])
# LibMINIUPnP classes
- upnp_env = myenv.Clone()
- upnp_env.Append(CPPDEFINES = upnp_env["LIBMINIUPNPC_FLAGS"].get("INTERNAL_CPPDEFINES", []))
- objects += upnp_env.SwiftenObject([
- "MiniUPnPInterface.cpp",
- ])
+ if myenv.get("HAVE_LIBMINIUPNPC", False) :
+ upnp_env = myenv.Clone()
+ upnp_env.Append(CPPDEFINES = upnp_env["LIBMINIUPNPC_FLAGS"].get("INTERNAL_CPPDEFINES", []))
+ myenv.Append(CPPDEFINES = ["HAVE_LIBMINIUPNPC"])
+ objects += upnp_env.SwiftenObject([
+ "MiniUPnPInterface.cpp",
+ ])
objects += myenv.SwiftenObject([
"PlatformNATTraversalWorker.cpp",
])
diff --git a/Swiftob/SConscript b/Swiftob/SConscript
index 4f6464a..424ae72 100644
--- a/Swiftob/SConscript
+++ b/Swiftob/SConscript
@@ -1,7 +1,11 @@
Import("env")
+if env["SCONS_STAGE"] == "build" and not GetOption("help") and not env.get("HAVE_LUA", 0) :
+ print "Warning: Lua was not found. Swiftob will not be built."
+ if "Sluift" in env["PROJECTS"] :
+ env["PROJECTS"].remove("Sluift")
-if env["SCONS_STAGE"] == "build":
+elif env["SCONS_STAGE"] == "build":
myenv = env.Clone()
# Too many compile warnings here at the moment
myenv.Replace(CXXFLAGS = [flag for flag in env["CXXFLAGS"] if flag != "-Weverything"])