russell.gallop created this revision. russell.gallop added reviewers: chandlerc, dcoughlin, jroelofs, mgorny, pcc, tstellar, beanz, dsanders. Herald added subscribers: cfe-commits, Charusso. Herald added projects: clang, LLVM.
This fixes a couple of paths to allow add_subdirectory(llvm) from a higher level CMake project. Otherwise should be NFC. Tested by creating a top level CMakeLists.txt in llvm-project: cmake_minimum_required(VERSION 3.4.3) project(my-super-project) add_subdirectory(llvm) And pointing cmake at that instead of llvm/CMakeLists.txt. In this arrangement, most things are built inside an llvm directory inside the build directory. Some tools and files aren't which causes some test fails. This makes things consistent by changing CMAKE_BINARY_DIR to LLVM_BINARY_DIR and CMAKE_SOURCE_DIR to LLVM_SOURCE_DIR. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D73123 Files: clang/tools/scan-build/CMakeLists.txt clang/tools/scan-view/CMakeLists.txt clang/utils/hmaptool/CMakeLists.txt llvm/tools/llvm-go/CMakeLists.txt llvm/tools/llvm-shlib/CMakeLists.txt llvm/unittests/TableGen/CMakeLists.txt
Index: llvm/unittests/TableGen/CMakeLists.txt =================================================================== --- llvm/unittests/TableGen/CMakeLists.txt +++ llvm/unittests/TableGen/CMakeLists.txt @@ -13,5 +13,5 @@ CodeExpanderTest.cpp AutomataTest.cpp ) -include_directories(${CMAKE_SOURCE_DIR}/utils/TableGen) +include_directories(${LLVM_SOURCE_DIR}/utils/TableGen) target_link_libraries(TableGenTests PRIVATE LLVMTableGenGlobalISel LLVMTableGen) Index: llvm/tools/llvm-shlib/CMakeLists.txt =================================================================== --- llvm/tools/llvm-shlib/CMakeLists.txt +++ llvm/tools/llvm-shlib/CMakeLists.txt @@ -129,7 +129,7 @@ # Get the full name to the libs so the python script understands them. foreach(lib ${LIB_NAMES}) - list(APPEND FULL_LIB_NAMES ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib/${lib}.lib) + list(APPEND FULL_LIB_NAMES ${LLVM_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib/${lib}.lib) endforeach() # Need to seperate lib names with newlines. Index: llvm/tools/llvm-go/CMakeLists.txt =================================================================== --- llvm/tools/llvm-go/CMakeLists.txt +++ llvm/tools/llvm-go/CMakeLists.txt @@ -1,5 +1,5 @@ if(LLVM_BINDINGS MATCHES "go") - set(binpath ${CMAKE_BINARY_DIR}/bin/llvm-go${CMAKE_EXECUTABLE_SUFFIX}) + set(binpath ${LLVM_BINARY_DIR}/bin/llvm-go${CMAKE_EXECUTABLE_SUFFIX}) add_custom_command(OUTPUT ${binpath} COMMAND ${GO_EXECUTABLE} build -o ${binpath} llvm-go.go DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/llvm-go.go Index: clang/utils/hmaptool/CMakeLists.txt =================================================================== --- clang/utils/hmaptool/CMakeLists.txt +++ clang/utils/hmaptool/CMakeLists.txt @@ -1,14 +1,14 @@ set(CLANG_HMAPTOOL hmaptool) -add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/${CLANG_HMAPTOOL} +add_custom_command(OUTPUT ${LLVM_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/${CLANG_HMAPTOOL} COMMAND ${CMAKE_COMMAND} -E make_directory - ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin + ${LLVM_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/${CLANG_HMAPTOOL} - ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/ + ${LLVM_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${CLANG_HMAPTOOL}) -list(APPEND Depends ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/${CLANG_HMAPTOOL}) +list(APPEND Depends ${LLVM_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/${CLANG_HMAPTOOL}) install(PROGRAMS ${CLANG_HMAPTOOL} DESTINATION bin COMPONENT hmaptool) Index: clang/tools/scan-view/CMakeLists.txt =================================================================== --- clang/tools/scan-view/CMakeLists.txt +++ clang/tools/scan-view/CMakeLists.txt @@ -13,28 +13,28 @@ if(CLANG_INSTALL_SCANVIEW) foreach(BinFile ${BinFiles}) - add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/bin/${BinFile} + add_custom_command(OUTPUT ${LLVM_BINARY_DIR}/bin/${BinFile} COMMAND ${CMAKE_COMMAND} -E make_directory - ${CMAKE_BINARY_DIR}/bin + ${LLVM_BINARY_DIR}/bin COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile} - ${CMAKE_BINARY_DIR}/bin/ + ${LLVM_BINARY_DIR}/bin/ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile}) - list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile}) + list(APPEND Depends ${LLVM_BINARY_DIR}/bin/${BinFile}) install(PROGRAMS bin/${BinFile} DESTINATION bin COMPONENT scan-view) endforeach() foreach(ShareFile ${ShareFiles}) - add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/share/scan-view/${ShareFile} + add_custom_command(OUTPUT ${LLVM_BINARY_DIR}/share/scan-view/${ShareFile} COMMAND ${CMAKE_COMMAND} -E make_directory - ${CMAKE_BINARY_DIR}/share/scan-view + ${LLVM_BINARY_DIR}/share/scan-view COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/share/${ShareFile} - ${CMAKE_BINARY_DIR}/share/scan-view/ + ${LLVM_BINARY_DIR}/share/scan-view/ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/share/${ShareFile}) - list(APPEND Depends ${CMAKE_BINARY_DIR}/share/scan-view/${ShareFile}) + list(APPEND Depends ${LLVM_BINARY_DIR}/share/scan-view/${ShareFile}) install(FILES share/${ShareFile} DESTINATION share/scan-view COMPONENT scan-view) Index: clang/tools/scan-build/CMakeLists.txt =================================================================== --- clang/tools/scan-build/CMakeLists.txt +++ clang/tools/scan-build/CMakeLists.txt @@ -33,56 +33,56 @@ if(CLANG_INSTALL_SCANBUILD) foreach(BinFile ${BinFiles}) - add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/bin/${BinFile} + add_custom_command(OUTPUT ${LLVM_BINARY_DIR}/bin/${BinFile} COMMAND ${CMAKE_COMMAND} -E make_directory - ${CMAKE_BINARY_DIR}/bin + ${LLVM_BINARY_DIR}/bin COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile} - ${CMAKE_BINARY_DIR}/bin/ + ${LLVM_BINARY_DIR}/bin/ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile}) - list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile}) + list(APPEND Depends ${LLVM_BINARY_DIR}/bin/${BinFile}) install(PROGRAMS bin/${BinFile} DESTINATION bin COMPONENT scan-build) endforeach() foreach(LibexecFile ${LibexecFiles}) - add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/libexec/${LibexecFile} + add_custom_command(OUTPUT ${LLVM_BINARY_DIR}/libexec/${LibexecFile} COMMAND ${CMAKE_COMMAND} -E make_directory - ${CMAKE_BINARY_DIR}/libexec + ${LLVM_BINARY_DIR}/libexec COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/libexec/${LibexecFile} - ${CMAKE_BINARY_DIR}/libexec/ + ${LLVM_BINARY_DIR}/libexec/ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/libexec/${LibexecFile}) - list(APPEND Depends ${CMAKE_BINARY_DIR}/libexec/${LibexecFile}) + list(APPEND Depends ${LLVM_BINARY_DIR}/libexec/${LibexecFile}) install(PROGRAMS libexec/${LibexecFile} DESTINATION libexec COMPONENT scan-build) endforeach() foreach(ManPage ${ManPages}) - add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_MANDIR}/man1/${ManPage} + add_custom_command(OUTPUT ${LLVM_BINARY_DIR}/${CMAKE_INSTALL_MANDIR}/man1/${ManPage} COMMAND ${CMAKE_COMMAND} -E make_directory - ${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_MANDIR}/man1 + ${LLVM_BINARY_DIR}/${CMAKE_INSTALL_MANDIR}/man1 COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/man/${ManPage} - ${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_MANDIR}/man1/ + ${LLVM_BINARY_DIR}/${CMAKE_INSTALL_MANDIR}/man1/ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/man/${ManPage}) - list(APPEND Depends ${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_MANDIR}/man1/${ManPage}) + list(APPEND Depends ${LLVM_BINARY_DIR}/${CMAKE_INSTALL_MANDIR}/man1/${ManPage}) install(PROGRAMS man/${ManPage} DESTINATION ${CMAKE_INSTALL_MANDIR}/man1 COMPONENT scan-build) endforeach() foreach(ShareFile ${ShareFiles}) - add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/share/scan-build/${ShareFile} + add_custom_command(OUTPUT ${LLVM_BINARY_DIR}/share/scan-build/${ShareFile} COMMAND ${CMAKE_COMMAND} -E make_directory - ${CMAKE_BINARY_DIR}/share/scan-build + ${LLVM_BINARY_DIR}/share/scan-build COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/share/scan-build/${ShareFile} - ${CMAKE_BINARY_DIR}/share/scan-build/ + ${LLVM_BINARY_DIR}/share/scan-build/ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/share/scan-build/${ShareFile}) - list(APPEND Depends ${CMAKE_BINARY_DIR}/share/scan-build/${ShareFile}) + list(APPEND Depends ${LLVM_BINARY_DIR}/share/scan-build/${ShareFile}) install(FILES share/scan-build/${ShareFile} DESTINATION share/scan-build COMPONENT scan-build)
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits