diff options
-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 |