at 22.05-pre 9.3 kB view raw
1diff --git a/CMakeLists.txt b/CMakeLists.txt 2index 9e74014134a0..976e6a1757fd 100644 3--- a/CMakeLists.txt 4+++ b/CMakeLists.txt 5@@ -5,6 +5,8 @@ cmake_minimum_required(VERSION 3.13.4) 6 if( CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR ) 7 project(Clang) 8 9+ include(GNUInstallDirs) 10+ 11 set(CMAKE_CXX_STANDARD 14 CACHE STRING "C++ standard to conform to") 12 set(CMAKE_CXX_STANDARD_REQUIRED YES) 13 set(CMAKE_CXX_EXTENSIONS NO) 14@@ -416,7 +418,7 @@ include_directories(BEFORE 15 16 if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY) 17 install(DIRECTORY include/clang include/clang-c 18- DESTINATION include 19+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} 20 COMPONENT clang-headers 21 FILES_MATCHING 22 PATTERN "*.def" 23@@ -425,7 +427,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY) 24 ) 25 26 install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/clang 27- DESTINATION include 28+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} 29 COMPONENT clang-headers 30 FILES_MATCHING 31 PATTERN "CMakeFiles" EXCLUDE 32@@ -445,7 +447,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY) 33 34 add_custom_target(bash-autocomplete DEPENDS utils/bash-autocomplete.sh) 35 install(PROGRAMS utils/bash-autocomplete.sh 36- DESTINATION share/clang 37+ DESTINATION ${CMAKE_INSTALL_DATADIR}/clang 38 COMPONENT bash-autocomplete) 39 if(NOT LLVM_ENABLE_IDE) 40 add_llvm_install_targets(install-bash-autocomplete 41diff --git a/cmake/modules/AddClang.cmake b/cmake/modules/AddClang.cmake 42index 704278a0e93b..d25c8d325c71 100644 43--- a/cmake/modules/AddClang.cmake 44+++ b/cmake/modules/AddClang.cmake 45@@ -123,9 +123,9 @@ macro(add_clang_library name) 46 install(TARGETS ${lib} 47 COMPONENT ${lib} 48 ${export_to_clangtargets} 49- LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX} 50- ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX} 51- RUNTIME DESTINATION bin) 52+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX} 53+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX} 54+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) 55 56 if (NOT LLVM_ENABLE_IDE) 57 add_llvm_install_targets(install-${lib} 58@@ -170,7 +170,7 @@ macro(add_clang_tool name) 59 60 install(TARGETS ${name} 61 ${export_to_clangtargets} 62- RUNTIME DESTINATION bin 63+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} 64 COMPONENT ${name}) 65 66 if(NOT LLVM_ENABLE_IDE) 67@@ -185,7 +185,7 @@ endmacro() 68 macro(add_clang_symlink name dest) 69 add_llvm_tool_symlink(${name} ${dest} ALWAYS_GENERATE) 70 # Always generate install targets 71- llvm_install_symlink(${name} ${dest} ALWAYS_GENERATE) 72+ llvm_install_symlink(${name} ${dest} ${CMAKE_INSTALL_FULL_BINDIR} ALWAYS_GENERATE) 73 endmacro() 74 75 function(clang_target_link_libraries target type) 76diff --git a/lib/Headers/CMakeLists.txt b/lib/Headers/CMakeLists.txt 77index b2c0ce8dd4a0..19e5443d8c25 100644 78--- a/lib/Headers/CMakeLists.txt 79+++ b/lib/Headers/CMakeLists.txt 80@@ -215,7 +215,7 @@ set_target_properties(clang-resource-headers PROPERTIES 81 FOLDER "Misc" 82 RUNTIME_OUTPUT_DIRECTORY "${output_dir}") 83 84-set(header_install_dir lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include) 85+set(header_install_dir ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include) 86 87 install( 88 FILES ${files} ${generated_files} 89diff --git a/tools/c-index-test/CMakeLists.txt b/tools/c-index-test/CMakeLists.txt 90index ceef4b08637c..8efad5520ca4 100644 91--- a/tools/c-index-test/CMakeLists.txt 92+++ b/tools/c-index-test/CMakeLists.txt 93@@ -54,7 +54,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY) 94 set_property(TARGET c-index-test APPEND PROPERTY INSTALL_RPATH 95 "@executable_path/../../lib") 96 else() 97- set(INSTALL_DESTINATION bin) 98+ set(INSTALL_DESTINATION ${CMAKE_INSTALL_BINDIR}) 99 endif() 100 101 install(TARGETS c-index-test 102diff --git a/tools/clang-format/CMakeLists.txt b/tools/clang-format/CMakeLists.txt 103index 35ecdb11253c..d77d75de0094 100644 104--- a/tools/clang-format/CMakeLists.txt 105+++ b/tools/clang-format/CMakeLists.txt 106@@ -21,20 +21,20 @@ if( LLVM_LIB_FUZZING_ENGINE OR LLVM_USE_SANITIZE_COVERAGE ) 107 endif() 108 109 install(PROGRAMS clang-format-bbedit.applescript 110- DESTINATION share/clang 111+ DESTINATION ${CMAKE_INSTALL_DATADIR}/clang 112 COMPONENT clang-format) 113 install(PROGRAMS clang-format-diff.py 114- DESTINATION share/clang 115+ DESTINATION ${CMAKE_INSTALL_DATADIR}/clang 116 COMPONENT clang-format) 117 install(PROGRAMS clang-format-sublime.py 118- DESTINATION share/clang 119+ DESTINATION ${CMAKE_INSTALL_DATADIR}/clang 120 COMPONENT clang-format) 121 install(PROGRAMS clang-format.el 122- DESTINATION share/clang 123+ DESTINATION ${CMAKE_INSTALL_DATADIR}/clang 124 COMPONENT clang-format) 125 install(PROGRAMS clang-format.py 126- DESTINATION share/clang 127+ DESTINATION ${CMAKE_INSTALL_DATADIR}/clang 128 COMPONENT clang-format) 129 install(PROGRAMS git-clang-format 130- DESTINATION bin 131+ DESTINATION ${CMAKE_INSTALL_BINDIR} 132 COMPONENT clang-format) 133diff --git a/tools/clang-rename/CMakeLists.txt b/tools/clang-rename/CMakeLists.txt 134index cda8e29ec5b1..0134d8ccd70b 100644 135--- a/tools/clang-rename/CMakeLists.txt 136+++ b/tools/clang-rename/CMakeLists.txt 137@@ -19,8 +19,8 @@ clang_target_link_libraries(clang-rename 138 ) 139 140 install(PROGRAMS clang-rename.py 141- DESTINATION share/clang 142+ DESTINATION ${CMAKE_INSTALL_DATADIR}/clang 143 COMPONENT clang-rename) 144 install(PROGRAMS clang-rename.el 145- DESTINATION share/clang 146+ DESTINATION ${CMAKE_INSTALL_DATADIR}/clang 147 COMPONENT clang-rename) 148diff --git a/tools/libclang/CMakeLists.txt b/tools/libclang/CMakeLists.txt 149index 51ff2e7e1565..1ed5f8a079a1 100644 150--- a/tools/libclang/CMakeLists.txt 151+++ b/tools/libclang/CMakeLists.txt 152@@ -166,7 +166,7 @@ endif() 153 if(INTERNAL_INSTALL_PREFIX) 154 set(LIBCLANG_HEADERS_INSTALL_DESTINATION "${INTERNAL_INSTALL_PREFIX}/include") 155 else() 156- set(LIBCLANG_HEADERS_INSTALL_DESTINATION include) 157+ set(LIBCLANG_HEADERS_INSTALL_DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) 158 endif() 159 160 install(DIRECTORY ../../include/clang-c 161@@ -196,7 +196,7 @@ foreach(PythonVersion ${CLANG_PYTHON_BINDINGS_VERSIONS}) 162 COMPONENT 163 libclang-python-bindings 164 DESTINATION 165- "lib${LLVM_LIBDIR_SUFFIX}/python${PythonVersion}/site-packages") 166+ "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/python${PythonVersion}/site-packages") 167 endforeach() 168 if(NOT LLVM_ENABLE_IDE) 169 add_custom_target(libclang-python-bindings) 170diff --git a/tools/scan-build/CMakeLists.txt b/tools/scan-build/CMakeLists.txt 171index ec0702d76f18..d25d982f51da 100644 172--- a/tools/scan-build/CMakeLists.txt 173+++ b/tools/scan-build/CMakeLists.txt 174@@ -47,7 +47,7 @@ if(CLANG_INSTALL_SCANBUILD) 175 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile}) 176 list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile}) 177 install(PROGRAMS bin/${BinFile} 178- DESTINATION bin 179+ DESTINATION ${CMAKE_INSTALL_BINDIR} 180 COMPONENT scan-build) 181 endforeach() 182 183@@ -61,7 +61,7 @@ if(CLANG_INSTALL_SCANBUILD) 184 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/libexec/${LibexecFile}) 185 list(APPEND Depends ${CMAKE_BINARY_DIR}/libexec/${LibexecFile}) 186 install(PROGRAMS libexec/${LibexecFile} 187- DESTINATION libexec 188+ DESTINATION ${CMAKE_INSTALL_LIBEXECDIR} 189 COMPONENT scan-build) 190 endforeach() 191 192@@ -89,7 +89,7 @@ if(CLANG_INSTALL_SCANBUILD) 193 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/share/scan-build/${ShareFile}) 194 list(APPEND Depends ${CMAKE_BINARY_DIR}/share/scan-build/${ShareFile}) 195 install(FILES share/scan-build/${ShareFile} 196- DESTINATION share/scan-build 197+ DESTINATION ${CMAKE_INSTALL_DATADIR}/scan-build 198 COMPONENT scan-build) 199 endforeach() 200 201diff --git a/tools/scan-view/CMakeLists.txt b/tools/scan-view/CMakeLists.txt 202index dd3d33439299..fea19c12ce70 100644 203--- a/tools/scan-view/CMakeLists.txt 204+++ b/tools/scan-view/CMakeLists.txt 205@@ -19,7 +19,7 @@ if(CLANG_INSTALL_SCANVIEW) 206 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile}) 207 list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile}) 208 install(PROGRAMS bin/${BinFile} 209- DESTINATION bin 210+ DESTINATION ${CMAKE_INSTALL_BINDIR} 211 COMPONENT scan-view) 212 endforeach() 213 214@@ -33,7 +33,7 @@ if(CLANG_INSTALL_SCANVIEW) 215 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/share/${ShareFile}) 216 list(APPEND Depends ${CMAKE_BINARY_DIR}/share/scan-view/${ShareFile}) 217 install(FILES share/${ShareFile} 218- DESTINATION share/scan-view 219+ DESTINATION ${CMAKE_INSTALL_DATADIR}/scan-view 220 COMPONENT scan-view) 221 endforeach() 222 223diff --git a/utils/hmaptool/CMakeLists.txt b/utils/hmaptool/CMakeLists.txt 224index 62f2de0cb15c..6aa66825b6ec 100644 225--- a/utils/hmaptool/CMakeLists.txt 226+++ b/utils/hmaptool/CMakeLists.txt 227@@ -10,7 +10,7 @@ add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/${CLANG_HM 228 229 list(APPEND Depends ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/${CLANG_HMAPTOOL}) 230 install(PROGRAMS ${CLANG_HMAPTOOL} 231- DESTINATION bin 232+ DESTINATION ${CMAKE_INSTALL_BINDIR} 233 COMPONENT hmaptool) 234 235 add_custom_target(hmaptool ALL DEPENDS ${Depends})