[PATCH] D15161: [CMake] On Darwin the LIBCXX_INSTALL_HEADERS and LIBCXX_INSTALL_LIBRARY options should default off
Chris Bieneman via cfe-commits
cfe-commits at lists.llvm.org
Wed Dec 2 13:40:02 PST 2015
beanz updated this revision to Diff 41668.
beanz added a comment.
My patch dropped one of the gating checks. This fixes that. It only needs to apply to Darwin when installing to /usr.
http://reviews.llvm.org/D15161
Files:
CMakeLists.txt
Index: CMakeLists.txt
===================================================================
--- CMakeLists.txt
+++ CMakeLists.txt
@@ -55,8 +55,17 @@
option(LIBCXX_INCLUDE_DOCS "Build the libc++ documentation." ${LLVM_INCLUDE_DOCS})
set(LIBCXX_LIBDIR_SUFFIX "${LLVM_LIBDIR_SUFFIX}" CACHE STRING
"Define suffix of library directory name (32/64)")
-option(LIBCXX_INSTALL_HEADERS "Install the libc++ headers." ON)
-option(LIBCXX_INSTALL_LIBRARY "Install the libc++ library." ON)
+
+set(INSTALL_HEADERS_DEFAULT ON)
+set(INSTALL_LIBRARY_DEFAULT ON)
+if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin"
+ AND "${CMAKE_INSTALL_PREFIX}" STREQUAL "/usr")
+ set(INSTALL_HEADERS_DEFAULT OFF)
+ set(INSTALL_LIBRARY_DEFAULT OFF)
+endif()
+option(LIBCXX_INSTALL_HEADERS "Install the libc++ headers." ${INSTALL_HEADERS_DEFAULT})
+option(LIBCXX_INSTALL_LIBRARY "Install the libc++ library." ${INSTALL_LIBRARY_DEFAULT})
+
option(LIBCXX_INSTALL_SUPPORT_HEADERS "Install libc++ support headers." ON)
set(LIBCXX_ABI_VERSION 1 CACHE STRING "ABI version of libc++.")
option(LIBCXX_ABI_UNSTABLE "Unstable ABI of libc++." OFF)
@@ -133,23 +142,6 @@
set(LIBCXX_COVERAGE_LIBRARY "" CACHE STRING
"The Profile-rt library used to build with code coverage")
-# Don't allow a user to accidentally overwrite the system libc++ installation on Darwin.
-# If the user specifies -DCMAKE_INSTALL_PREFIX=/usr the install rules for libc++
-# will not be generated and a warning will be issued.
-option(LIBCXX_OVERRIDE_DARWIN_INSTALL "Enable overwriting darwins libc++ installation." OFF)
-mark_as_advanced(LIBCXX_OVERRIDE_DARWIN_INSTALL) # Don't show this option by default.
-
-if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin" AND NOT LIBCXX_OVERRIDE_DARWIN_INSTALL)
- if ("${CMAKE_INSTALL_PREFIX}" STREQUAL "/usr")
- message(WARNING "Disabling libc++ install rules because installation would "
- "overwrite the systems installation. Configure with "
- "-DLIBCXX_OVERRIDE_DARWIN_INSTALL=ON to suppress this behaviour.")
- mark_as_advanced(CLEAR LIBCXX_OVERRIDE_DARWIN_INSTALL) # Show the override option.
- set(LIBCXX_INSTALL_HEADERS OFF)
- set(LIBCXX_INSTALL_LIBRARY OFF)
- endif()
-endif()
-
#===============================================================================
# Check option configurations
#===============================================================================
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D15161.41668.patch
Type: text/x-patch
Size: 2401 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20151202/35ece209/attachment-0001.bin>
More information about the cfe-commits
mailing list