[PATCH] D26900: [cmake] Obtain LLVM_CMAKE_PATH from llvm-config if available
mgorny added a comment. As discussed on IRC, I will commit the unconditional versions for projects that require the same version of LLVM (clang, lldb, lld) and the version with fallback for others (runtimes). https://reviews.llvm.org/D26900 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D26900: [cmake] Obtain LLVM_CMAKE_PATH from llvm-config if available
This revision was automatically updated to reflect the committed changes. Closed by commit rL291495: [cmake] Obtain LLVM_CMAKE_PATH from llvm-config (authored by mgorny). Changed prior to commit: https://reviews.llvm.org/D26900?vs=83527=83718#toc Repository: rL LLVM https://reviews.llvm.org/D26900 Files: cfe/trunk/CMakeLists.txt Index: cfe/trunk/CMakeLists.txt === --- cfe/trunk/CMakeLists.txt +++ cfe/trunk/CMakeLists.txt @@ -16,7 +16,8 @@ "--libdir" "--includedir" "--prefix" - "--src-root") + "--src-root" + "--cmakedir") execute_process( COMMAND ${CONFIG_COMMAND} RESULT_VARIABLE HAD_ERROR @@ -41,6 +42,7 @@ list(GET CONFIG_OUTPUT 3 INCLUDE_DIR) list(GET CONFIG_OUTPUT 4 LLVM_OBJ_ROOT) list(GET CONFIG_OUTPUT 5 MAIN_SRC_DIR) + list(GET CONFIG_OUTPUT 6 LLVM_CMAKE_PATH) if(NOT MSVC_IDE) set(LLVM_ENABLE_ASSERTIONS ${ENABLE_ASSERTIONS} @@ -58,7 +60,6 @@ find_program(LLVM_TABLEGEN_EXE "llvm-tblgen" ${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH) - set(LLVM_CMAKE_PATH "${LLVM_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX}/cmake/llvm") set(LLVMCONFIG_FILE "${LLVM_CMAKE_PATH}/LLVMConfig.cmake") if(EXISTS ${LLVMCONFIG_FILE}) list(APPEND CMAKE_MODULE_PATH "${LLVM_CMAKE_PATH}") Index: cfe/trunk/CMakeLists.txt === --- cfe/trunk/CMakeLists.txt +++ cfe/trunk/CMakeLists.txt @@ -16,7 +16,8 @@ "--libdir" "--includedir" "--prefix" - "--src-root") + "--src-root" + "--cmakedir") execute_process( COMMAND ${CONFIG_COMMAND} RESULT_VARIABLE HAD_ERROR @@ -41,6 +42,7 @@ list(GET CONFIG_OUTPUT 3 INCLUDE_DIR) list(GET CONFIG_OUTPUT 4 LLVM_OBJ_ROOT) list(GET CONFIG_OUTPUT 5 MAIN_SRC_DIR) + list(GET CONFIG_OUTPUT 6 LLVM_CMAKE_PATH) if(NOT MSVC_IDE) set(LLVM_ENABLE_ASSERTIONS ${ENABLE_ASSERTIONS} @@ -58,7 +60,6 @@ find_program(LLVM_TABLEGEN_EXE "llvm-tblgen" ${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH) - set(LLVM_CMAKE_PATH "${LLVM_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX}/cmake/llvm") set(LLVMCONFIG_FILE "${LLVM_CMAKE_PATH}/LLVMConfig.cmake") if(EXISTS ${LLVMCONFIG_FILE}) list(APPEND CMAKE_MODULE_PATH "${LLVM_CMAKE_PATH}") ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D26900: [cmake] Obtain LLVM_CMAKE_PATH from llvm-config if available
rnk accepted this revision. rnk added a comment. This revision is now accepted and ready to land. lgtm I figure we've waited a few days at this point. https://reviews.llvm.org/D26900 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D26900: [cmake] Obtain LLVM_CMAKE_PATH from llvm-config if available
mgorny retitled this revision from "[cmake] Obtain LLVM_CMAKE_PATH from llvm-config" to "[cmake] Obtain LLVM_CMAKE_PATH from llvm-config if available". mgorny updated the summary for this revision. mgorny updated this revision to Diff 83527. mgorny added a comment. Updated to support fallback to hardcoded path. https://reviews.llvm.org/D26900 Files: CMakeLists.txt Index: CMakeLists.txt === --- CMakeLists.txt +++ CMakeLists.txt @@ -58,7 +58,18 @@ find_program(LLVM_TABLEGEN_EXE "llvm-tblgen" ${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH) - set(LLVM_CMAKE_PATH "${LLVM_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX}/cmake/llvm") + # --cmakedir is supported since llvm r291218 (4.0 release) + execute_process( +COMMAND ${LLVM_CONFIG} --cmakedir +RESULT_VARIABLE HAD_ERROR +OUTPUT_VARIABLE CONFIG_OUTPUT) + if(NOT HAD_ERROR) +string(STRIP "${CONFIG_OUTPUT}" LLVM_CMAKE_PATH) + else() +set(LLVM_CMAKE_PATH +"${LLVM_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX}/cmake/llvm") + endif() + set(LLVMCONFIG_FILE "${LLVM_CMAKE_PATH}/LLVMConfig.cmake") if(EXISTS ${LLVMCONFIG_FILE}) list(APPEND CMAKE_MODULE_PATH "${LLVM_CMAKE_PATH}") Index: CMakeLists.txt === --- CMakeLists.txt +++ CMakeLists.txt @@ -58,7 +58,18 @@ find_program(LLVM_TABLEGEN_EXE "llvm-tblgen" ${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH) - set(LLVM_CMAKE_PATH "${LLVM_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX}/cmake/llvm") + # --cmakedir is supported since llvm r291218 (4.0 release) + execute_process( +COMMAND ${LLVM_CONFIG} --cmakedir +RESULT_VARIABLE HAD_ERROR +OUTPUT_VARIABLE CONFIG_OUTPUT) + if(NOT HAD_ERROR) +string(STRIP "${CONFIG_OUTPUT}" LLVM_CMAKE_PATH) + else() +set(LLVM_CMAKE_PATH +"${LLVM_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX}/cmake/llvm") + endif() + set(LLVMCONFIG_FILE "${LLVM_CMAKE_PATH}/LLVMConfig.cmake") if(EXISTS ${LLVMCONFIG_FILE}) list(APPEND CMAKE_MODULE_PATH "${LLVM_CMAKE_PATH}") ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D26900: [cmake] Obtain LLVM_CMAKE_PATH from llvm-config
mgorny added a comment. In https://reviews.llvm.org/D26900#638328, @EricWF wrote: > Is there a way to write this patch so that old `llvm-config`'s continue to > work, at least for a little while until everybody upgrades? Technically it's possible but I think it would add a lot of complexity. So if you believe that to be a major issue, I'd rather just wait a few days before applying the change. However, I don't think we really have a big market for people doing stand-alone builds ;-). https://reviews.llvm.org/D26900 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D26900: [cmake] Obtain LLVM_CMAKE_PATH from llvm-config
EricWF added a comment. Is there a way to write this patch so that old `llvm-config`'s continue to work, at least for a little while until everybody upgrades? https://reviews.llvm.org/D26900 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D26900: [cmake] Obtain LLVM_CMAKE_PATH from llvm-config
mgorny added reviewers: EricWF, mclow.lists, phosek, compnerd, Hahnfeld. mgorny added a comment. Little ping here. This is quite trivial, and since https://reviews.llvm.org/D26894 has been committed already I'd like to start adding changes like this one to all LLVM projects using llvm-config in stand-alone build. https://reviews.llvm.org/D26900 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D26900: [cmake] Obtain LLVM_CMAKE_PATH from llvm-config
mgorny created this revision. mgorny added reviewers: beanz, rnk, chapuni, chandlerc. mgorny added a subscriber: cfe-commits. Use the new --cmakedir option to obtain LLVM_CMAKE_PATH straight from llvm-config instead of reconstructing it locally. https://reviews.llvm.org/D26900 Files: CMakeLists.txt Index: CMakeLists.txt === --- CMakeLists.txt +++ CMakeLists.txt @@ -16,7 +16,8 @@ "--libdir" "--includedir" "--prefix" - "--src-root") + "--src-root" + "--cmakedir") execute_process( COMMAND ${CONFIG_COMMAND} RESULT_VARIABLE HAD_ERROR @@ -41,6 +42,7 @@ list(GET CONFIG_OUTPUT 3 INCLUDE_DIR) list(GET CONFIG_OUTPUT 4 LLVM_OBJ_ROOT) list(GET CONFIG_OUTPUT 5 MAIN_SRC_DIR) + list(GET CONFIG_OUTPUT 6 LLVM_CMAKE_PATH) if(NOT MSVC_IDE) set(LLVM_ENABLE_ASSERTIONS ${ENABLE_ASSERTIONS} @@ -58,7 +60,6 @@ find_program(LLVM_TABLEGEN_EXE "llvm-tblgen" ${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH) - set(LLVM_CMAKE_PATH "${LLVM_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX}/cmake/llvm") set(LLVMCONFIG_FILE "${LLVM_CMAKE_PATH}/LLVMConfig.cmake") if(EXISTS ${LLVMCONFIG_FILE}) list(APPEND CMAKE_MODULE_PATH "${LLVM_CMAKE_PATH}") Index: CMakeLists.txt === --- CMakeLists.txt +++ CMakeLists.txt @@ -16,7 +16,8 @@ "--libdir" "--includedir" "--prefix" - "--src-root") + "--src-root" + "--cmakedir") execute_process( COMMAND ${CONFIG_COMMAND} RESULT_VARIABLE HAD_ERROR @@ -41,6 +42,7 @@ list(GET CONFIG_OUTPUT 3 INCLUDE_DIR) list(GET CONFIG_OUTPUT 4 LLVM_OBJ_ROOT) list(GET CONFIG_OUTPUT 5 MAIN_SRC_DIR) + list(GET CONFIG_OUTPUT 6 LLVM_CMAKE_PATH) if(NOT MSVC_IDE) set(LLVM_ENABLE_ASSERTIONS ${ENABLE_ASSERTIONS} @@ -58,7 +60,6 @@ find_program(LLVM_TABLEGEN_EXE "llvm-tblgen" ${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH) - set(LLVM_CMAKE_PATH "${LLVM_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX}/cmake/llvm") set(LLVMCONFIG_FILE "${LLVM_CMAKE_PATH}/LLVMConfig.cmake") if(EXISTS ${LLVMCONFIG_FILE}) list(APPEND CMAKE_MODULE_PATH "${LLVM_CMAKE_PATH}") ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits