From c04eab8c78e517210c7641551ec008b09bfe20d0 Mon Sep 17 00:00:00 2001 From: Nikita Popov Date: Mon, 8 Aug 2022 12:40:49 +0200 Subject: [PATCH] [Flang] Use find_program() to find clang-tblgen There are two scenarios here: 1. Standalone flang build, where we use an installed clang-tblgen binary. We need to use find_package() to find it. 2. Combined build of clang and flang, where we want to use the path specified in CLANG_TABLEGEN_EXE during the clang build -- however, this variable was previously not exported. The new implementation matches what is done for mlir-tblgen. Differential Revision: https://reviews.llvm.org/D131475 --- clang/CMakeLists.txt | 3 +++ flang/docs/CMakeLists.txt | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/clang/CMakeLists.txt b/clang/CMakeLists.txt index 2b1e968..1064cfd 100644 --- a/clang/CMakeLists.txt +++ b/clang/CMakeLists.txt @@ -484,6 +484,9 @@ option(CLANG_INCLUDE_TESTS add_subdirectory(utils/TableGen) +# Export CLANG_TABLEGEN_EXE for use by flang docs. +set(CLANG_TABLEGEN_EXE "${CLANG_TABLEGEN_EXE}" CACHE INTERNAL "") + add_subdirectory(include) # All targets below may depend on all tablegen'd files. diff --git a/flang/docs/CMakeLists.txt b/flang/docs/CMakeLists.txt index 770343c..3414b8e 100644 --- a/flang/docs/CMakeLists.txt +++ b/flang/docs/CMakeLists.txt @@ -126,7 +126,7 @@ if (LLVM_ENABLE_SPHINX) ARGS ${CMAKE_CURRENT_BINARY_DIR}/Source/FIR/CreateFIRLangRef.py) # CLANG_TABLEGEN_EXE variable needs to be set for clang_tablegen to run without error - set(CLANG_TABLEGEN_EXE clang-tblgen) + find_program(CLANG_TABLEGEN_EXE "clang-tblgen" ${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH) gen_rst_file_from_td(FlangCommandLineReference.rst -gen-opt-docs FlangOptionsDocs.td docs-flang-html) endif() if (${SPHINX_OUTPUT_MAN}) -- 2.7.4