diff options
| author | Remko Tronçon <git@el-tramo.be> | 2012-11-03 16:22:42 (GMT) |
|---|---|---|
| committer | Remko Tronçon <git@el-tramo.be> | 2012-11-03 16:35:21 (GMT) |
| commit | 2b65c91bcd2367f816658c82fc230e881bcb1084 (patch) | |
| tree | 210fd239ce980a747efa3b423e5fa6176fe55243 | |
| parent | b9e7c0033eb36ab1d24183be95d898f94cc487af (diff) | |
| download | swift-2b65c91bcd2367f816658c82fc230e881bcb1084.zip swift-2b65c91bcd2367f816658c82fc230e881bcb1084.tar.bz2 | |
Build 3rdParty libraries with SwiftenObject.
This ensures that they can be linked when building Swiften in DLL
mode.
Change-Id: I8a4ff9dab6003e60fab21aba2bbb4beccb26bef6
| -rw-r--r-- | 3rdParty/Expat/SConscript | 2 | ||||
| -rw-r--r-- | 3rdParty/LibIDN/SConscript | 2 | ||||
| -rw-r--r-- | 3rdParty/LibMiniUPnPc/SConscript | 2 | ||||
| -rw-r--r-- | 3rdParty/LibNATPMP/SConscript | 2 | ||||
| -rw-r--r-- | 3rdParty/SQLite/SConscript | 3 | ||||
| -rw-r--r-- | 3rdParty/SQLiteAsync/SConscript | 2 | ||||
| -rw-r--r-- | 3rdParty/ZLib/SConscript | 2 | ||||
| -rw-r--r-- | Swiften/SConscript | 7 |
8 files changed, 13 insertions, 9 deletions
diff --git a/3rdParty/Expat/SConscript b/3rdParty/Expat/SConscript index 2a77d39..d5724b4 100644 --- a/3rdParty/Expat/SConscript +++ b/3rdParty/Expat/SConscript @@ -9,17 +9,17 @@ if env.get("EXPAT_BUNDLED", False) : } if env["SCONS_STAGE"] == "build" : myenv = env.Clone() myenv.Append(CPPDEFINES = ["XML_STATIC", "HAVE_EXPAT_CONFIG_H"]) myenv.Append(CPPPATH = [".", "src"]) conf = Configure(conf_env) if conf.CheckFunc('memmove') : myenv.Append(CPPDEFINES = ["HAVE_MEMMOVE"]) conf.Finish() - env["EXPAT_OBJECTS"] = myenv.StaticObject([ + env["EXPAT_OBJECTS"] = myenv.SwiftenObject([ "src/xmltok.c", "src/xmlparse.c", "src/xmlrole.c" ]) diff --git a/3rdParty/LibIDN/SConscript b/3rdParty/LibIDN/SConscript index 9d4822d..92d6836 100644 --- a/3rdParty/LibIDN/SConscript +++ b/3rdParty/LibIDN/SConscript @@ -40,21 +40,21 @@ if env.get("LIBIDN_BUNDLED", False) : else : print "Error: Cannot find strncasecmp() or strnicmp()" Exit(1) conf.Finish() myenv.Append(CPPDEFINES = "IDNA_STATIC") myenv.Append(CPPPATH = ["src", "stubs"]) if myenv["PLATFORM"] == "win32" : myenv.Append(CPPPATH = "stubs/win32") if myenv["MSVC_VERSION"][:3] == "9.0" : myenv.Append(CPPPATH = "stubs/win32/VC2008") - env["LIBIDN_OBJECTS"] = myenv.StaticObject([ + env["LIBIDN_OBJECTS"] = myenv.SwiftenObject([ "src/stringprep.c", "src/profiles.c", "src/rfc3454.c", "src/punycode.c", "src/idna.c", "src/toutf8.c", "src/nfkc.c" ]) diff --git a/3rdParty/LibMiniUPnPc/SConscript b/3rdParty/LibMiniUPnPc/SConscript index 4fe761a..0cf0be7 100644 --- a/3rdParty/LibMiniUPnPc/SConscript +++ b/3rdParty/LibMiniUPnPc/SConscript @@ -40,25 +40,25 @@ if env.get("LIBMINIUPNPC_BUNDLED", False) : myenv.WriteVal("src/miniupnpc/miniupnpcstrings.h", myenv.Value( """ #ifndef __MINIUPNPCSTRINGS_H__ #define __MINIUPNPCSTRINGS_H__ #define OS_STRING "$OS_STRING" #define MINIUPNPC_VERSION_STRING "1.5" #endif """.replace("$OS_STRING", myenv["PLATFORM"]))) - env["LIBMINIUPNPC_OBJECTS"] = myenv.StaticObject([ + env["LIBMINIUPNPC_OBJECTS"] = myenv.SwiftenObject([ "src/miniupnpc/igd_desc_parse.c", "src/miniupnpc/miniupnpc.c", "src/miniupnpc/minixml.c", "src/miniupnpc/minisoap.c", "src/miniupnpc/minissdpc.c", "src/miniupnpc/miniwget.c", #"src/miniupnpc/upnpc.c", "src/miniupnpc/upnpcommands.c", "src/miniupnpc/upnpreplyparse.c", "src/miniupnpc/upnperrors.c", "src/miniupnpc/connecthostport.c", "src/miniupnpc/portlistingparse.c", diff --git a/3rdParty/LibNATPMP/SConscript b/3rdParty/LibNATPMP/SConscript index 98767fb..7adaa51 100644 --- a/3rdParty/LibNATPMP/SConscript +++ b/3rdParty/LibNATPMP/SConscript @@ -38,13 +38,13 @@ if env.get("LIBNATPMP_BUNDLED", False) : if myenv["PLATFORM"] == "win32": myenv.Append(CCFLAGS = ["-DWIN32"]) src_files = [ "src/libnatpmp/getgateway.c", "src/libnatpmp/natpmp.c", "src/libnatpmp/natpmpc.c", ] if myenv["PLATFORM"] == "win32": src_files += ["src/libnatpmp/wingettimeofday.c"] - env["LIBNATPMP_OBJECTS"] = myenv.StaticObject(src_files) + env["LIBNATPMP_OBJECTS"] = myenv.SwiftenObject(src_files) diff --git a/3rdParty/SQLite/SConscript b/3rdParty/SQLite/SConscript index e01bca2..ffa8946 100644 --- a/3rdParty/SQLite/SConscript +++ b/3rdParty/SQLite/SConscript @@ -6,13 +6,14 @@ if env.get("SQLITE_BUNDLED", False) : # Flags ################################################################################ if env["SCONS_STAGE"] == "flags" : env["SQLITE_FLAGS"] = { "CPPPATH": [Dir(".")], "LIBPATH": [Dir(".")], } if env["SCONS_STAGE"] == "build" : myenv = env.Clone() myenv.Replace(CCFLAGS = [flag for flag in env["CCFLAGS"] if flag not in ["-W", "-Wall"]]) - env["SQLITE_OBJECTS"] = myenv.StaticObject(["sqlite3.c"], CPPPATH = ["."]) + myenv.Append(CPPPATH = ["."]) + env["SQLITE_OBJECTS"] = myenv.SwiftenObject(["sqlite3.c"]) diff --git a/3rdParty/SQLiteAsync/SConscript b/3rdParty/SQLiteAsync/SConscript index 3d6fa39..b515055 100644 --- a/3rdParty/SQLiteAsync/SConscript +++ b/3rdParty/SQLiteAsync/SConscript @@ -7,13 +7,13 @@ if env.get("SQLITE_ASYNC_BUNDLED", False) : ################################################################################ if env["SCONS_STAGE"] == "flags" : env["SQLITE_ASYNC_FLAGS"] = { "CPPPATH": [Dir(".")], "LIBPATH": [Dir(".")], } if env["SCONS_STAGE"] == "build" : myenv = env.Clone() myenv.Replace(CCFLAGS = [flag for flag in env["CCFLAGS"] if flag not in ["-W", "-Wall"]]) myenv.UseFlags(env.get("SQLITE_FLAGS", {})) - env["SQLITE_ASYNC_OBJECTS"] = myenv.StaticObject(["sqlite3async.c"]) + env["SQLITE_ASYNC_OBJECTS"] = myenv.SwiftenObject(["sqlite3async.c"]) diff --git a/3rdParty/ZLib/SConscript b/3rdParty/ZLib/SConscript index 5540ae8..3625ee6 100644 --- a/3rdParty/ZLib/SConscript +++ b/3rdParty/ZLib/SConscript @@ -1,23 +1,23 @@ Import("env") if env.get("ZLIB_BUNDLED", False) : if env["SCONS_STAGE"] == "flags" : env["ZLIB_FLAGS"] = { "CPPPATH": [Dir("src")], "LIBPATH": [Dir(".")], } if env["SCONS_STAGE"] == "build" : - env["ZLIB_OBJECTS"] = env.StaticObject([ + env["ZLIB_OBJECTS"] = env.SwiftenObject([ "src/adler32.c", "src/compress.c", "src/crc32.c", "src/deflate.c", "src/gzio.c", "src/infback.c", "src/inffast.c", "src/inflate.c", "src/inftrees.c", "src/trees.c", "src/uncompr.c", "src/zutil.c" diff --git a/Swiften/SConscript b/Swiften/SConscript index db18cc3..2111d26 100644 --- a/Swiften/SConscript +++ b/Swiften/SConscript @@ -26,24 +26,29 @@ if env["SCONS_STAGE"] == "flags" : if env["SWIFTEN_DLL"] : if env["PLATFORM"] == "win32" : env["SWIFTEN_LIBRARY"] = env.subst("Swiften${SWIFTEN_VERSION_MAJOR}") env["SWIFTEN_LIBRARY_FILE"] = env.subst("${SWIFTEN_LIBRARY}.dll") elif env["PLATFORM"] == "darwin" : env["SWIFTEN_LIBRARY_FILE"] = env.subst("Swiften.${SWIFTEN_VERSION_MAJOR}.${SWIFTEN_VERSION_MINOR}") env["SWIFTEN_LIBRARY_ALIASES"] = ["libSwiften.dylib", env.subst("libSwiften.${SWIFTEN_VERSION_MAJOR}.dylib")] else : env["SWIFTEN_LIBRARY_FILE"] = env.subst("libSwiften.so.${SWIFTEN_VERSION_MAJOR}.${SWIFTEN_VERSION_MINOR}") env["SWIFTEN_LIBRARY_ALIASES"] = ["libSwiften.so", env.subst("libSwiften.so.${SWIFTEN_VERSION_MAJOR}")] + if env["SWIFTEN_DLL"] : + env.AddMethod(lambda e,s : e.SharedObject(s), "SwiftenObject") + else : + env.AddMethod(lambda e,s : e.StaticObject(s), "SwiftenObject") + swiften_env = env.Clone() swiften_env["LIBPATH"] = [Dir(".")] swiften_env["LIBRUNPATH"] = [Dir(".")] swiften_env["LIBS"] = [swiften_env["SWIFTEN_LIBRARY"]] if not env["SWIFTEN_DLL"] : swiften_env.Append(CPPDEFINES = ["SWIFTEN_STATIC"]) dep_env = env.Clone() for module in swiften_dep_modules : module_flags = env.get(module + "_FLAGS", {}) if env.get(module + "_BUNDLED", False) : if module in external_swiften_dep_modules : swiften_env.UseFlags(module_flags) @@ -77,29 +82,27 @@ if env["SCONS_STAGE"] == "flags" : ################################################################################ if env["SCONS_STAGE"] == "build" : swiften_env = env.Clone() swiften_env.Append(CPPDEFINES = ["SWIFTEN_BUILDING"]) for module in swiften_dep_modules : swiften_env.UseFlags(swiften_env.get(module + "_FLAGS", {})) if env.get(module + "_BUNDLED", False) : swiften_env.Append(SWIFTEN_OBJECTS = env.get(module + "_OBJECTS", [])) swiften_env.UseFlags(swiften_env["PLATFORM_FLAGS"]) if swiften_env["SWIFTEN_DLL"] : - swiften_env.AddMethod(lambda e,s : e.SharedObject(s), "SwiftenObject") swiften_env.AddMethod(lambda e,l,o : e.SharedLibrary(l,o), "SwiftenLibrary") else : swiften_env.Append(CPPDEFINES = ["SWIFTEN_STATIC"]) - swiften_env.AddMethod(lambda e,s : e.StaticObject(s), "SwiftenObject") swiften_env.AddMethod(lambda e,l,o : e.StaticLibrary(l,o), "SwiftenLibrary") Export("swiften_env") # TODO: Move all this to a submodule SConscript sources = [ "Chat/ChatStateTracker.cpp", "Chat/ChatStateNotifier.cpp", "Client/ClientSessionStanzaChannel.cpp", "Client/CoreClient.cpp", "Client/Client.cpp", "Client/ClientXMLTracer.cpp", "Client/ClientSession.cpp", |
Swift