Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at flake-libs 109 lines 5.5 kB view raw
1diff --git a/CMakeLists.txt b/CMakeLists.txt 2index 090cfa352078..624b7c9f3400 100644 3--- a/CMakeLists.txt 4+++ b/CMakeLists.txt 5@@ -38,12 +38,26 @@ if(CLANG_BUILT_STANDALONE) 6 find_package(LLVM REQUIRED HINTS "${LLVM_CMAKE_DIR}") 7 list(APPEND CMAKE_MODULE_PATH "${LLVM_DIR}") 8 9- # Turn into CACHE PATHs for overwritting 10- set(LLVM_INCLUDE_DIRS ${LLVM_INCLUDE_DIRS} CACHE PATH "Path to llvm/include and any other header dirs needed") 11- set(LLVM_BINARY_DIR "${LLVM_BINARY_DIR}" CACHE PATH "Path to LLVM build tree") 12- set(LLVM_MAIN_SRC_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../llvm" CACHE PATH "Path to LLVM source tree") 13- set(LLVM_TOOLS_BINARY_DIR "${LLVM_TOOLS_BINARY_DIR}" CACHE PATH "Path to llvm/bin") 14- set(LLVM_LIBRARY_DIR "${LLVM_LIBRARY_DIR}" CACHE PATH "Path to llvm/lib") 15+ # We can't check LLVM_CONFIG here, because find_package(LLVM ...) also sets 16+ # LLVM_CONFIG. 17+ if (NOT LLVM_CONFIG_FOUND) 18+ # Pull values from LLVMConfig.cmake. We can drop this once the llvm-config 19+ # path is removed. 20+ set(INCLUDE_DIRS ${LLVM_INCLUDE_DIRS}) 21+ set(LLVM_OBJ_DIR "${LLVM_BINARY_DIR}") 22+ # N.B. this is just a default value, the CACHE PATHs below can be overriden. 23+ set(MAIN_SRC_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../llvm") 24+ set(TOOLS_BINARY_DIR "${LLVM_TOOLS_BINARY_DIR}") 25+ set(LIBRARY_DIR "${LLVM_LIBRARY_DIR}") 26+ else() 27+ set(INCLUDE_DIRS "${LLVM_BINARY_DIR}/include" "${MAIN_INCLUDE_DIR}") 28+ endif() 29+ 30+ set(LLVM_INCLUDE_DIRS ${INCLUDE_DIRS} CACHE PATH "Path to llvm/include and any other header dirs needed") 31+ set(LLVM_BINARY_DIR "${LLVM_OBJ_ROOT}" CACHE PATH "Path to LLVM build tree") 32+ set(LLVM_MAIN_SRC_DIR "${MAIN_SRC_DIR}" CACHE PATH "Path to LLVM source tree") 33+ set(LLVM_TOOLS_BINARY_DIR "${TOOLS_BINARY_DIR}" CACHE PATH "Path to llvm/bin") 34+ set(LLVM_LIBRARY_DIR "${LIBRARY_DIR}" CACHE PATH "Path to llvm/lib") 35 36 find_program(LLVM_TABLEGEN_EXE "llvm-tblgen" ${LLVM_TOOLS_BINARY_DIR} 37 NO_DEFAULT_PATH) 38diff --git a/cmake/modules/AddClang.cmake b/cmake/modules/AddClang.cmake 39index 75b0080f6715..c895b884cd27 100644 40--- a/cmake/modules/AddClang.cmake 41+++ b/cmake/modules/AddClang.cmake 42@@ -119,8 +119,8 @@ macro(add_clang_library name) 43 install(TARGETS ${lib} 44 COMPONENT ${lib} 45 ${export_to_clangtargets} 46- LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX} 47- ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX} 48+ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" 49+ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}" 50 RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}") 51 52 if (NOT LLVM_ENABLE_IDE) 53diff --git a/lib/Headers/CMakeLists.txt b/lib/Headers/CMakeLists.txt 54index bb9a11eabbef..e2de91c65fbb 100644 55--- a/lib/Headers/CMakeLists.txt 56+++ b/lib/Headers/CMakeLists.txt 57@@ -437,7 +437,7 @@ add_header_target("openmp-resource-headers" ${openmp_wrapper_files}) 58 add_header_target("windows-resource-headers" ${windows_only_files}) 59 add_header_target("utility-resource-headers" ${utility_files}) 60 61-set(header_install_dir lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION_MAJOR}/include) 62+set(header_install_dir ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION_MAJOR}/include) 63 64 ############################################################# 65 # Install rules for the catch-all clang-resource-headers target 66diff --git a/tools/libclang/CMakeLists.txt b/tools/libclang/CMakeLists.txt 67index 4f23065a2472..6a0f55991e24 100644 68--- a/tools/libclang/CMakeLists.txt 69+++ b/tools/libclang/CMakeLists.txt 70@@ -234,7 +234,7 @@ foreach(PythonVersion ${CLANG_PYTHON_BINDINGS_VERSIONS}) 71 COMPONENT 72 libclang-python-bindings 73 DESTINATION 74- "lib${LLVM_LIBDIR_SUFFIX}/python${PythonVersion}/site-packages") 75+ "${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/python${PythonVersion}/site-packages") 76 endforeach() 77 if(NOT LLVM_ENABLE_IDE) 78 add_custom_target(libclang-python-bindings) 79diff --git a/tools/scan-build-py/CMakeLists.txt b/tools/scan-build-py/CMakeLists.txt 80index 3aca22c0b0a8..3115353e3fe3 100644 81--- a/tools/scan-build-py/CMakeLists.txt 82+++ b/tools/scan-build-py/CMakeLists.txt 83@@ -88,7 +88,7 @@ foreach(lib ${LibScanbuild}) 84 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/lib/libscanbuild/${lib}) 85 list(APPEND Depends ${CMAKE_BINARY_DIR}/lib/libscanbuild/${lib}) 86 install(FILES lib/libscanbuild/${lib} 87- DESTINATION lib${CLANG_LIBDIR_SUFFIX}/libscanbuild 88+ DESTINATION "${CMAKE_INSTALL_LIBDIR}/libscanbuild" 89 COMPONENT scan-build-py) 90 endforeach() 91 92@@ -106,7 +106,7 @@ foreach(resource ${LibScanbuildResources}) 93 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/lib/libscanbuild/resources/${resource}) 94 list(APPEND Depends ${CMAKE_BINARY_DIR}/lib/libscanbuild/resources/${resource}) 95 install(FILES lib/libscanbuild/resources/${resource} 96- DESTINATION lib${CLANG_LIBDIR_SUFFIX}/libscanbuild/resources 97+ DESTINATION "${CMAKE_INSTALL_LIBDIR}/libscanbuild/resources" 98 COMPONENT scan-build-py) 99 endforeach() 100 101@@ -122,7 +122,7 @@ foreach(lib ${LibEar}) 102 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/lib/libear/${lib}) 103 list(APPEND Depends ${CMAKE_BINARY_DIR}/lib/libear/${lib}) 104 install(FILES lib/libear/${lib} 105- DESTINATION lib${CLANG_LIBDIR_SUFFIX}/libear 106+ DESTINATION "${CMAKE_INSTALL_LIBDIR}/libear" 107 COMPONENT scan-build-py) 108 endforeach() 109