[libcxx] r282475 - [cmake] Strip possibly-inherited compiler flags in in-tree build only
Michal Gorny via cfe-commits
cfe-commits at lists.llvm.org
Tue Sep 27 00:55:26 PDT 2016
Author: mgorny
Date: Tue Sep 27 02:55:26 2016
New Revision: 282475
URL: http://llvm.org/viewvc/llvm-project?rev=282475&view=rev
Log:
[cmake] Strip possibly-inherited compiler flags in in-tree build only
Strip the set of flags (including debug defs, -m32) that could
be inherited from top-level LLVM build only when in-tree build is
performed. This prevents libcxx from confusingly and undesiredly
stripping user-supplied flags e.g. when performing packaging system
controlled multi-ABI build.
Otherwise, in order to perform 32-bit builds the build scripts would
have to use LIBCXX_BUILD_32_BITS. However, -m32 is only one of the many
different ABI flags for different targets, and it really makes no sense
to add separate CMake options for each possible -m* flag and then keep
a mapping from well-known flags to the custom CMake options.
Differential Revision: https://reviews.llvm.org/D24809
Modified:
libcxx/trunk/CMakeLists.txt
Modified: libcxx/trunk/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/CMakeLists.txt?rev=282475&r1=282474&r2=282475&view=diff
==============================================================================
--- libcxx/trunk/CMakeLists.txt (original)
+++ libcxx/trunk/CMakeLists.txt Tue Sep 27 02:55:26 2016
@@ -307,9 +307,12 @@ string(TOUPPER "${CMAKE_BUILD_TYPE}" upp
include(HandleLibCXXABI) # Setup the ABI library flags
-# Remove flags that may have snuck in.
-remove_flags(-DNDEBUG -UNDEBUG -D_DEBUG
- -stdlib=libc++ -stdlib=libstdc++ -lc++abi -m32)
+if (NOT LIBCXX_STANDALONE_BUILD)
+ # Remove flags that may have snuck in.
+ remove_flags(-DNDEBUG -UNDEBUG -D_DEBUG
+ -lc++abi -m32)
+endif()
+remove_flags(-stdlib=libc++ -stdlib=libstdc++)
# FIXME(EricWF): See the FIXME on LIBCXX_ENABLE_PEDANTIC.
# Remove the -pedantic flag and -Wno-pedantic and -pedantic-errors
More information about the cfe-commits
mailing list