[PATCH] D141092: Optionally install clang-tblgen to aid cross-compiling

2023-01-05 Thread James Le Cuirot via Phabricator via cfe-commits
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

2023-01-05 Thread James Le Cuirot via Phabricator via cfe-commits
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

2023-01-07 Thread James Le Cuirot via Phabricator via cfe-commits
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

2023-01-07 Thread James Le Cuirot via Phabricator via cfe-commits
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

2023-01-11 Thread James Le Cuirot via Phabricator via cfe-commits
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

2023-01-11 Thread James Le Cuirot via Phabricator via cfe-commits
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