nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at 22.05 85 lines 4.9 kB view raw
1diff --git a/CMakeLists.txt b/CMakeLists.txt 2index b0569a4a54ca..7d665f5a3258 100644 3--- a/CMakeLists.txt 4+++ b/CMakeLists.txt 5@@ -10,6 +10,8 @@ endif() 6 #=============================================================================== 7 cmake_minimum_required(VERSION 3.13.4) 8 9+include(GNUInstallDirs) 10+ 11 set(LLVM_COMMON_CMAKE_UTILS "${CMAKE_CURRENT_SOURCE_DIR}/../cmake") 12 13 # Add path for custom modules 14@@ -415,13 +417,13 @@ 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_RUNTIME_DIR bin CACHE PATH 22+ set(LIBCXX_INSTALL_RUNTIME_DIR "${CMAKE_INSTALL_BINDIR}" CACHE PATH 23 "Path where built libc++ runtime libraries should be installed.") 24- set(LIBCXX_INSTALL_INCLUDE_DIR "include/c++/v1" CACHE PATH 25+ set(LIBCXX_INSTALL_INCLUDE_DIR "${CMAKE_INSTALL_INCLUDEDIR}/c++/v1" CACHE PATH 26 "Path where target-agnostic libc++ headers should be installed.") 27- set(LIBCXX_INSTALL_INCLUDE_TARGET_DIR "include/${LLVM_DEFAULT_TARGET_TRIPLE}/c++/v1" CACHE PATH 28+ set(LIBCXX_INSTALL_INCLUDE_TARGET_DIR "${CMAKE_INSTALL_INCLUDEDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++/v1" CACHE PATH 29 "Path where target-specific libc++ headers should be installed.") 30 if(LIBCXX_LIBDIR_SUBDIR) 31 string(APPEND LIBCXX_LIBRARY_DIR /${LIBCXX_LIBDIR_SUBDIR}) 32@@ -431,11 +433,11 @@ elseif(LLVM_LIBRARY_OUTPUT_INTDIR) 33 set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}) 34 set(LIBCXX_GENERATED_INCLUDE_DIR "${LLVM_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_RUNTIME_DIR bin CACHE PATH 40+ set(LIBCXX_INSTALL_RUNTIME_DIR "${CMAKE_INSTALL_BINDIR}/c++/v1" CACHE PATH 41 "Path where built libc++ runtime libraries should be installed.") 42- set(LIBCXX_INSTALL_INCLUDE_DIR "include/c++/v1" CACHE PATH 43+ set(LIBCXX_INSTALL_INCLUDE_DIR "${CMAKE_INSTALL_INCLUDEDIR}/c++/v1" CACHE PATH 44 "Path where target-agnostic libc++ headers should be installed.") 45 set(LIBCXX_INSTALL_INCLUDE_TARGET_DIR "${LIBCXX_INSTALL_INCLUDE_DIR}" CACHE PATH 46 "Path where target-specific libc++ headers should be installed.") 47@@ -443,11 +445,11 @@ else() 48 set(LIBCXX_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBCXX_LIBDIR_SUFFIX}) 49 set(LIBCXX_GENERATED_INCLUDE_DIR "${CMAKE_BINARY_DIR}/include/c++/v1") 50 set(LIBCXX_GENERATED_INCLUDE_TARGET_DIR "${LIBCXX_GENERATED_INCLUDE_DIR}") 51- set(LIBCXX_INSTALL_LIBRARY_DIR lib${LIBCXX_LIBDIR_SUFFIX} CACHE PATH 52+ set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX} CACHE PATH 53 "Path where built libc++ libraries should be installed.") 54- set(LIBCXX_INSTALL_RUNTIME_DIR bin CACHE PATH 55+ set(LIBCXX_INSTALL_RUNTIME_DIR "${CMAKE_INSTALL_BINDIR}" CACHE PATH 56 "Path where built libc++ runtime libraries should be installed.") 57- set(LIBCXX_INSTALL_INCLUDE_DIR "include/c++/v1" CACHE PATH 58+ set(LIBCXX_INSTALL_INCLUDE_DIR "${CMAKE_INSTALL_INCLUDEDIR}/c++/v1" CACHE PATH 59 "Path where target-agnostic libc++ headers should be installed.") 60 set(LIBCXX_INSTALL_INCLUDE_TARGET_DIR "${LIBCXX_INSTALL_INCLUDE_DIR}" CACHE PATH 61 "Path where target-specific libc++ headers should be installed.") 62diff --git a/cmake/Modules/HandleLibCXXABI.cmake b/cmake/Modules/HandleLibCXXABI.cmake 63index 5a8a4a270a1a..d69405ddeeac 100644 64--- a/cmake/Modules/HandleLibCXXABI.cmake 65+++ b/cmake/Modules/HandleLibCXXABI.cmake 66@@ -1,8 +1,9 @@ 67- 68 #=============================================================================== 69 # Add an ABI library if appropriate 70 #=============================================================================== 71 72+include(GNUInstallDirs) 73+ 74 # 75 # _setup_abi: Set up the build to use an ABI library 76 # 77@@ -63,7 +64,7 @@ macro(setup_abi_lib abidefines abishared abistatic abifiles abidirs) 78 79 if (LIBCXX_INSTALL_HEADERS) 80 install(FILES "${LIBCXX_BINARY_INCLUDE_DIR}/${fpath}" 81- DESTINATION include/c++/v1/${dstdir} 82+ DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dstdir}" 83 COMPONENT cxx-headers 84 PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ 85 )