summaryrefslogtreecommitdiffstats
path: root/Modules/FindBoost.cmake
diff options
context:
space:
mode:
authorBartlomiej Cieszkowski <bartlomiej.cieszkowski@gmail.com>2020-03-26 18:39:33 (GMT)
committerBrad King <brad.king@kitware.com>2020-03-27 13:48:22 (GMT)
commitff71612d02c1155162d432212a6ae228493affd0 (patch)
tree622941f2caf73672f395b1d3894ee579ffe776c5 /Modules/FindBoost.cmake
parent040f503d83321ddfdf3f401f538dec721fe03842 (diff)
downloadCMake-ff71612d02c1155162d432212a6ae228493affd0.zip
CMake-ff71612d02c1155162d432212a6ae228493affd0.tar.gz
CMake-ff71612d02c1155162d432212a6ae228493affd0.tar.bz2
FindBoost: Allow Boost_LIB_PREFIX to be set externally
On platforms where our default Boost static library prefix is incorrect, make it possible for users to set it explicitly to work around the problem until FindBoost can be updated. Fixes: #20372
Diffstat (limited to 'Modules/FindBoost.cmake')
-rw-r--r--Modules/FindBoost.cmake24
1 files changed, 15 insertions, 9 deletions
diff --git a/Modules/FindBoost.cmake b/Modules/FindBoost.cmake
index 38d3bfa..fb8cdeb 100644
--- a/Modules/FindBoost.cmake
+++ b/Modules/FindBoost.cmake
@@ -155,6 +155,10 @@ setting variables::
used if multiple compatible suffixes should
be tested for, in decreasing order of
preference.
+ Boost_LIB_PREFIX - Set to the platform-specific library name
+ prefix (e.g. "lib") used by Boost static libs.
+ This is needed only on platforms where CMake
+ does not know the prefix by default.
Boost_ARCHITECTURE - Set to the architecture-specific library suffix
(e.g. "-x64"). Default is auto-computed for the
C++ compiler in use.
@@ -1646,15 +1650,17 @@ endif()
# Prefix initialization
# ------------------------------------------------------------------------
-# Boost's static libraries use a "lib" prefix on DLL platforms
-# to distinguish them from the DLL import libraries.
-if (Boost_USE_STATIC_LIBS AND (
- (WIN32 AND NOT CYGWIN)
- OR GHSMULTI
- ))
- set(Boost_LIB_PREFIX "lib")
-else()
- set(Boost_LIB_PREFIX "")
+if ( NOT DEFINED Boost_LIB_PREFIX )
+ # Boost's static libraries use a "lib" prefix on DLL platforms
+ # to distinguish them from the DLL import libraries.
+ if (Boost_USE_STATIC_LIBS AND (
+ (WIN32 AND NOT CYGWIN)
+ OR GHSMULTI
+ ))
+ set(Boost_LIB_PREFIX "lib")
+ else()
+ set(Boost_LIB_PREFIX "")
+ endif()
endif()
if ( NOT Boost_NAMESPACE )