diff options
| author | Remko Tronçon <git@el-tramo.be> | 2010-06-02 20:04:42 (GMT) | 
|---|---|---|
| committer | Remko Tronçon <git@el-tramo.be> | 2010-06-02 20:06:29 (GMT) | 
| commit | ca39e52da0bf9027ab660fd31d1285b1c1d55659 (patch) | |
| tree | ebbcf7dc2a2c063b9070a779f629ddefd21043bc | |
| parent | 60a1dfe187dbe11e61e7f867e4c04454a9d3a5e6 (diff) | |
| download | swift-ca39e52da0bf9027ab660fd31d1285b1c1d55659.zip swift-ca39e52da0bf9027ab660fd31d1285b1c1d55659.tar.bz2 | |
Add workaround for distros that don't have boost UUID.
Cherry pick UUID out of 3rdParty, and use this as an include path.
Since UUID is a header-only lib, this shouldn't pose problems.
| -rw-r--r-- | 3rdParty/Boost/.gitignore | 1 | ||||
| -rw-r--r-- | 3rdParty/Boost/SConscript | 11 | ||||
| -rw-r--r-- | BuildTools/SCons/SConstruct | 3 | 
3 files changed, 14 insertions, 1 deletions
| diff --git a/3rdParty/Boost/.gitignore b/3rdParty/Boost/.gitignore index faa799d..f86949c 100644 --- a/3rdParty/Boost/.gitignore +++ b/3rdParty/Boost/.gitignore @@ -7,3 +7,4 @@  *.ilk  *.manifest  /bcp +uuid diff --git a/3rdParty/Boost/SConscript b/3rdParty/Boost/SConscript index a7019e1..49e66e5 100644 --- a/3rdParty/Boost/SConscript +++ b/3rdParty/Boost/SConscript @@ -1,6 +1,15 @@  Import("env") -if env.get("BOOST_BUNDLED", False) : +# FIXME: Remove this when Boost UUID is present on most distros +if env.get("BOOST_BUNDLED_UUID_ONLY", False) : +	# Cherry pick UUID out of the 3rdParty dir, install it in a separate +	# dir, and use this as an include path. +	if env["SCONS_STAGE"] == "flags" : +		env["BOOST_FLAGS"]["CPPFLAGS"] = env["BOOST_FLAGS"].get("CPPFLAGS", []) + ["-I" + env.Dir("uuid").abspath] +	elif env["SCONS_STAGE"] == "build" : +		env.Install("uuid/boost", "src/boost/uuid") + +elif env.get("BOOST_BUNDLED", False) :  ################################################################################  # Common diff --git a/BuildTools/SCons/SConstruct b/BuildTools/SCons/SConstruct index 9e79c4c..67d60de 100644 --- a/BuildTools/SCons/SConstruct +++ b/BuildTools/SCons/SConstruct @@ -281,6 +281,9 @@ for (lib, header) in boostLibs :  		break  if allLibsPresent :  	env["BOOST_FLAGS"] = { "LIBS": ["boost_" + lib for lib, header in boostLibs] } +	if not conf.CheckCXXHeader("boost/uuid/uuid.hpp") : +		# FIXME: Remove this workaround when UUID is available in most distros +		env["BOOST_BUNDLED_UUID_ONLY"] = True  else :  	env["BOOST_BUNDLED"] = True | 
 Swift
 Swift