[PATCH] D141092: Optionally install clang-tblgen to aid cross-compiling
chewi created this revision. chewi added a reviewer: MaskRay. chewi added a project: clang. Herald added a subscriber: StephenFan. Herald added a project: All. chewi requested review of this revision. Herald added a subscriber: cfe-commits. clang-tblgen is required to cross-compile clang itself. This change respects LLVM_DISTRIBUTION_COMPONENTS. Closes: https://github.com/llvm/llvm-project/issues/20282 Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D141092 Files: clang/utils/TableGen/CMakeLists.txt Index: clang/utils/TableGen/CMakeLists.txt === --- clang/utils/TableGen/CMakeLists.txt +++ clang/utils/TableGen/CMakeLists.txt @@ -28,3 +28,13 @@ target_link_libraries(clang-tblgen PRIVATE clangSupport_tablegen) set_target_properties(clang-tblgen PROPERTIES FOLDER "Clang tablegenning") + +install(TARGETS clang-tblgen +COMPONENT clang-tblgen +RUNTIME DESTINATION "${CLANG_TOOLS_INSTALL_DIR}") + +if(NOT LLVM_ENABLE_IDE) + add_llvm_install_targets("install-clang-tblgen" + DEPENDS clang-tblgen + COMPONENT clang-tblgen) +endif() Index: clang/utils/TableGen/CMakeLists.txt === --- clang/utils/TableGen/CMakeLists.txt +++ clang/utils/TableGen/CMakeLists.txt @@ -28,3 +28,13 @@ target_link_libraries(clang-tblgen PRIVATE clangSupport_tablegen) set_target_properties(clang-tblgen PROPERTIES FOLDER "Clang tablegenning") + +install(TARGETS clang-tblgen +COMPONENT clang-tblgen +RUNTIME DESTINATION "${CLANG_TOOLS_INSTALL_DIR}") + +if(NOT LLVM_ENABLE_IDE) + add_llvm_install_targets("install-clang-tblgen" + DEPENDS clang-tblgen + COMPONENT clang-tblgen) +endif() ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D141092: Optionally install clang-tblgen to aid cross-compiling
chewi added a comment. Apologies. I conceived this against 15.0.6, but have now noticed that the latest TableGen.cmake may have changed things. I'll retest tomorrow and adjust as necessary. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141092/new/ https://reviews.llvm.org/D141092 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D141092: Optionally install clang-tblgen to aid cross-compiling
chewi updated this revision to Diff 487073. chewi edited the summary of this revision. chewi added a reviewer: nikic. chewi added a comment. Herald added a project: LLVM. Herald added a subscriber: llvm-commits. Reworked and retested against the main branch. Thankfully, it is simpler now. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141092/new/ https://reviews.llvm.org/D141092 Files: llvm/cmake/modules/TableGen.cmake Index: llvm/cmake/modules/TableGen.cmake === --- llvm/cmake/modules/TableGen.cmake +++ llvm/cmake/modules/TableGen.cmake @@ -190,7 +190,8 @@ endif() endif() - if (ADD_TABLEGEN_DESTINATION AND NOT LLVM_INSTALL_TOOLCHAIN_ONLY AND LLVM_BUILD_UTILS) + if (ADD_TABLEGEN_DESTINATION AND NOT LLVM_INSTALL_TOOLCHAIN_ONLY AND + (LLVM_BUILD_UTILS OR ${target} IN_LIST LLVM_DISTRIBUTION_COMPONENTS)) set(export_arg) if(ADD_TABLEGEN_EXPORT) get_target_export_arg(${target} ${ADD_TABLEGEN_EXPORT} export_arg) Index: llvm/cmake/modules/TableGen.cmake === --- llvm/cmake/modules/TableGen.cmake +++ llvm/cmake/modules/TableGen.cmake @@ -190,7 +190,8 @@ endif() endif() - if (ADD_TABLEGEN_DESTINATION AND NOT LLVM_INSTALL_TOOLCHAIN_ONLY AND LLVM_BUILD_UTILS) + if (ADD_TABLEGEN_DESTINATION AND NOT LLVM_INSTALL_TOOLCHAIN_ONLY AND + (LLVM_BUILD_UTILS OR ${target} IN_LIST LLVM_DISTRIBUTION_COMPONENTS)) set(export_arg) if(ADD_TABLEGEN_EXPORT) get_target_export_arg(${target} ${ADD_TABLEGEN_EXPORT} export_arg) ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D141092: Optionally install clang-tblgen to aid cross-compiling
chewi added a comment. I forgot to add: I notice you no longer need llvm-tblgen already present when cross-compiling LLVM, but sadly, that still isn't the case for clang-tblgen. I tried leveraging CrossCompile.cmake to perform a "NATIVE" Clang build, but I think a lot more work would be needed to do it this way. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141092/new/ https://reviews.llvm.org/D141092 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D141092: Optionally install clang-tblgen to aid cross-compiling
chewi added a comment. I don't have commit access. Please merge this for me. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141092/new/ https://reviews.llvm.org/D141092 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D141092: Optionally install clang-tblgen to aid cross-compiling
chewi added a comment. James Le Cuirot I'm new to this process, so thanks for bearing with me. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141092/new/ https://reviews.llvm.org/D141092 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits