at 22.05-pre 4.3 kB view raw
1diff --git a/CMakeLists.txt b/CMakeLists.txt 2index b1e25358d41a..7fe1f4d85401 100644 3--- a/CMakeLists.txt 4+++ b/CMakeLists.txt 5@@ -26,6 +26,8 @@ set(LIBCXX_BINARY_INCLUDE_DIR "${LIBCXX_BINARY_DIR}/include/c++build") 6 if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR LIBCXX_STANDALONE_BUILD) 7 project(libcxx CXX C) 8 9+ include(GNUInstallDirs) 10+ 11 set(PACKAGE_NAME libcxx) 12 set(PACKAGE_VERSION 13.0.0git) 13 set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}") 14@@ -412,7 +414,7 @@ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE) 15 set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}) 16 set(LIBCXX_GENERATED_INCLUDE_DIR "${LLVM_BINARY_DIR}/include/c++/v1") 17 set(LIBCXX_GENERATED_INCLUDE_TARGET_DIR "${LLVM_BINARY_DIR}/include/${LLVM_DEFAULT_TARGET_TRIPLE}/c++/v1") 18- set(LIBCXX_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE} CACHE PATH 19+ set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE} CACHE PATH 20 "Path where built libc++ libraries should be installed.") 21 set(LIBCXX_INSTALL_INCLUDE_DIR "include/c++/v1" CACHE PATH 22 "Path where target-agnostic libc++ headers should be installed.") 23@@ -426,7 +428,7 @@ elseif(LLVM_LIBRARY_OUTPUT_INTDIR) 24 set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}) 25 set(LIBCXX_GENERATED_INCLUDE_DIR "${LLVM_BINARY_DIR}/include/c++/v1") 26 set(LIBCXX_GENERATED_INCLUDE_TARGET_DIR "${LIBCXX_GENERATED_INCLUDE_DIR}") 27- set(LIBCXX_INSTALL_LIBRARY_DIR lib${LIBCXX_LIBDIR_SUFFIX} CACHE PATH 28+ set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX} CACHE PATH 29 "Path where built libc++ libraries should be installed.") 30 set(LIBCXX_INSTALL_INCLUDE_DIR "include/c++/v1" CACHE PATH 31 "Path where target-agnostic libc++ headers should be installed.") 32@@ -436,7 +438,7 @@ else() 33 set(LIBCXX_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBCXX_LIBDIR_SUFFIX}) 34 set(LIBCXX_GENERATED_INCLUDE_DIR "${CMAKE_BINARY_DIR}/include/c++/v1") 35 set(LIBCXX_GENERATED_INCLUDE_TARGET_DIR "${LIBCXX_GENERATED_INCLUDE_DIR}") 36- set(LIBCXX_INSTALL_LIBRARY_DIR lib${LIBCXX_LIBDIR_SUFFIX} CACHE PATH 37+ set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX} CACHE PATH 38 "Path where built libc++ libraries should be installed.") 39 set(LIBCXX_INSTALL_INCLUDE_DIR "include/c++/v1" CACHE PATH 40 "Path where target-agnostic libc++ headers should be installed.") 41diff --git a/cmake/Modules/HandleLibCXXABI.cmake b/cmake/Modules/HandleLibCXXABI.cmake 42index 5a8a4a270a1a..c06bae0001aa 100644 43--- a/cmake/Modules/HandleLibCXXABI.cmake 44+++ b/cmake/Modules/HandleLibCXXABI.cmake 45@@ -63,7 +63,7 @@ macro(setup_abi_lib abidefines abishared abistatic abifiles abidirs) 46 47 if (LIBCXX_INSTALL_HEADERS) 48 install(FILES "${LIBCXX_BINARY_INCLUDE_DIR}/${fpath}" 49- DESTINATION include/c++/v1/${dstdir} 50+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dstdir} 51 COMPONENT cxx-headers 52 PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ 53 ) 54diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt 55index 496429f3841e..1a0c9c0a3159 100644 56--- a/src/CMakeLists.txt 57+++ b/src/CMakeLists.txt 58@@ -376,21 +376,21 @@ if (LIBCXX_INSTALL_SHARED_LIBRARY) 59 install(TARGETS cxx_shared 60 ARCHIVE DESTINATION ${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx 61 LIBRARY DESTINATION ${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx 62- RUNTIME DESTINATION bin COMPONENT cxx) 63+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT cxx) 64 endif() 65 66 if (LIBCXX_INSTALL_STATIC_LIBRARY) 67 install(TARGETS cxx_static 68 ARCHIVE DESTINATION ${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx 69 LIBRARY DESTINATION ${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx 70- RUNTIME DESTINATION bin COMPONENT cxx) 71+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT cxx) 72 endif() 73 74 if(LIBCXX_INSTALL_EXPERIMENTAL_LIBRARY) 75 install(TARGETS cxx_experimental 76 LIBRARY DESTINATION ${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx 77 ARCHIVE DESTINATION ${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx 78- RUNTIME DESTINATION bin COMPONENT cxx) 79+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT cxx) 80 endif() 81 82 # NOTE: This install command must go after the cxx install command otherwise