diff --git a/llvm/include/llvm/IR/CMakeLists.txt b/llvm/include/llvm/IR/CMakeLists.txt --- a/llvm/include/llvm/IR/CMakeLists.txt +++ b/llvm/include/llvm/IR/CMakeLists.txt @@ -1,5 +1,6 @@ set(LLVM_TARGET_DEFINITIONS Attributes.td) tablegen(LLVM Attributes.inc -gen-attrs) +add_public_tablegen_target(attributes_gen) set(LLVM_TARGET_DEFINITIONS Intrinsics.td) tablegen(LLVM IntrinsicImpl.inc -gen-intrinsic-impl) diff --git a/llvm/lib/AsmParser/CMakeLists.txt b/llvm/lib/AsmParser/CMakeLists.txt --- a/llvm/lib/AsmParser/CMakeLists.txt +++ b/llvm/lib/AsmParser/CMakeLists.txt @@ -8,6 +8,7 @@ ${LLVM_MAIN_INCLUDE_DIR}/llvm/ASMParser DEPENDS + attributes_gen intrinsics_gen LINK_COMPONENTS diff --git a/llvm/lib/IR/CMakeLists.txt b/llvm/lib/IR/CMakeLists.txt --- a/llvm/lib/IR/CMakeLists.txt +++ b/llvm/lib/IR/CMakeLists.txt @@ -74,6 +74,7 @@ ${LLVM_PTHREAD_LIB} DEPENDS + attributes_gen intrinsics_gen LINK_COMPONENTS diff --git a/llvm/unittests/Analysis/CMakeLists.txt b/llvm/unittests/Analysis/CMakeLists.txt --- a/llvm/unittests/Analysis/CMakeLists.txt +++ b/llvm/unittests/Analysis/CMakeLists.txt @@ -64,6 +64,8 @@ ${ANALYSIS_TEST_SOURCES} ) +add_dependencies(AnalysisTests attributes_gen) + target_link_libraries(AnalysisTests PRIVATE LLVMTestingSupport) # On AIX, enable run-time linking to allow symbols from the plugins shared diff --git a/llvm/utils/TableGen/CMakeLists.txt b/llvm/utils/TableGen/CMakeLists.txt --- a/llvm/utils/TableGen/CMakeLists.txt +++ b/llvm/utils/TableGen/CMakeLists.txt @@ -86,6 +86,9 @@ X86RecognizableInstr.cpp WebAssemblyDisassemblerEmitter.cpp $ + + DEPENDS + attributes_gen # via llvm-min-tablegen ) target_link_libraries(llvm-tblgen PRIVATE LLVMTableGenGlobalISel) set_target_properties(llvm-tblgen PROPERTIES FOLDER "Tablegenning")