summaryrefslogtreecommitdiff
path: root/cmake
diff options
context:
space:
mode:
authorOscar Fuentes <ofv@wanadoo.es>2011-01-03 20:01:32 +0000
committerOscar Fuentes <ofv@wanadoo.es>2011-01-03 20:01:32 +0000
commit5b30f0a7ebc60dd1aa63c237157ea658454f4270 (patch)
tree6e2fc9c3ee0c56fef0fc643bfbb4389a0b64335b /cmake
parent30f4a559d71b2382e3c74be2b9bfd9dd575d960a (diff)
downloadllvm-5b30f0a7ebc60dd1aa63c237157ea658454f4270.tar.gz
llvm-5b30f0a7ebc60dd1aa63c237157ea658454f4270.tar.bz2
llvm-5b30f0a7ebc60dd1aa63c237157ea658454f4270.tar.xz
TableGen.cmake: sometimes the .td file is not in the current directory
(clang/include/clang/Basic/StmtNodes.td, for instance, is tablegenned from clang/include/clang/AST/CMakeLists.txt) so it is not contained on the list of all .td files on the current source directory which is used as the DEPENDS of the custom command. We must add the .td file to the DEPENDS list of the custom command. Otherwise some .inc files are not regenerated when the corresponding .td file changes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122768 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'cmake')
-rw-r--r--cmake/modules/TableGen.cmake5
1 files changed, 4 insertions, 1 deletions
diff --git a/cmake/modules/TableGen.cmake b/cmake/modules/TableGen.cmake
index e61a3427cc..c1a11b3426 100644
--- a/cmake/modules/TableGen.cmake
+++ b/cmake/modules/TableGen.cmake
@@ -18,7 +18,10 @@ macro(tablegen ofn)
-I ${LLVM_MAIN_SRC_DIR}/lib/Target -I ${LLVM_MAIN_INCLUDE_DIR}
${LLVM_TARGET_DEFINITIONS_ABSOLUTE}
-o ${CMAKE_CURRENT_BINARY_DIR}/${ofn}.tmp
- DEPENDS tblgen ${local_tds} ${global_tds}
+ # The file in LLVM_TARGET_DEFINITIONS may be not in the current
+ # directory and local_tds may not contain it, so we must
+ # explicitly list it here:
+ DEPENDS tblgen ${local_tds} ${global_tds} ${LLVM_TARGET_DEFINITIONS_ABSOLUTE}
COMMENT "Building ${ofn}..."
)
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${ofn}