[PATCH] D57383: [CMake] Add install targets for utilities to LLVM exports if LLVM_INSTALL_UTILS=ON
Stefan Gränitz via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Jan 29 07:01:05 PST 2019
sgraenitz created this revision.
sgraenitz added reviewers: mgorny, smeenai, beanz, gottesmm, dschuff, tstellar.
D56606 <https://reviews.llvm.org/D56606> was only appending target names to the `LLVM_EXPORTS`/`LLVM_EXPORTS_BUILDTREE_ONLY` properties. Targets showed up correctly in the build-tree `LLVMExports.cmake`, but they were missing in the installed one (as we found in https://bugs.llvm.org/show_bug.cgi?id=40443), because install did not register them explicitly.
Repository:
rL LLVM
https://reviews.llvm.org/D57383
Files:
cmake/modules/AddLLVM.cmake
Index: cmake/modules/AddLLVM.cmake
===================================================================
--- cmake/modules/AddLLVM.cmake
+++ cmake/modules/AddLLVM.cmake
@@ -911,18 +911,28 @@
add_llvm_executable(${name} DISABLE_LLVM_LINK_LLVM_DYLIB ${ARGN})
set_target_properties(${name} PROPERTIES FOLDER "Utils")
- if( LLVM_INSTALL_UTILS AND LLVM_BUILD_UTILS )
- install (TARGETS ${name}
- RUNTIME DESTINATION ${LLVM_UTILS_INSTALL_DIR}
- COMPONENT ${name})
- if (NOT LLVM_ENABLE_IDE)
- add_llvm_install_targets(install-${name}
- DEPENDS ${name}
- COMPONENT ${name})
+ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+ if (LLVM_INSTALL_UTILS AND LLVM_BUILD_UTILS)
+ if (${name} IN_LIST LLVM_DISTRIBUTION_COMPONENTS OR
+ NOT LLVM_DISTRIBUTION_COMPONENTS)
+ set(export_to_llvmexports EXPORT LLVMExports)
+ set_property(GLOBAL PROPERTY LLVM_HAS_EXPORTS True)
+ endif()
+
+ install(TARGETS ${name}
+ ${export_to_llvmexports}
+ RUNTIME DESTINATION ${LLVM_UTILS_INSTALL_DIR}
+ COMPONENT ${name})
+
+ if (NOT LLVM_ENABLE_IDE)
+ add_llvm_install_targets(install-${name}
+ DEPENDS ${name}
+ COMPONENT ${name})
+ endif()
+ set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name})
+ elseif(LLVM_BUILD_UTILS)
+ set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS_BUILDTREE_ONLY ${name})
endif()
- set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name})
- elseif( LLVM_BUILD_UTILS )
- set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS_BUILDTREE_ONLY ${name})
endif()
endmacro(add_llvm_utility name)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D57383.184080.patch
Type: text/x-patch
Size: 1755 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190129/39f17732/attachment.bin>
More information about the llvm-commits
mailing list