From: Alexandre Ganea Date: Tue, 18 Dec 2018 21:03:06 +0000 (+0000) Subject: Fix MSVC dependency issue between Clang-tablegen and LLVM-tablegen X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=76d00595ddabc82e54ea7c55c6ff0333137127ad;p=llvm Fix MSVC dependency issue between Clang-tablegen and LLVM-tablegen Previously, when compiling Visual Studio targets, one could see random build errors. This was caused by tablegen projects using the same build folders. This workaround simply chains tablegen projects. Differential Revision: https://reviews.llvm.org/D54153 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@349541 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/cmake/modules/TableGen.cmake b/cmake/modules/TableGen.cmake index d1afcb42f9d..9ac229d84f4 100644 --- a/cmake/modules/TableGen.cmake +++ b/cmake/modules/TableGen.cmake @@ -158,6 +158,12 @@ macro(add_tablegen target project) llvm_ExternalProject_BuildCmd(tblgen_build_cmd ${target} ${LLVM_NATIVE_BUILD} CONFIGURATION Release) + # Create an artificial dependency between tablegen projects, because they + # compile the same dependencies, thus using the same build folders. + # FIXME: A proper fix requires sequentially chaining tablegens. + if (NOT ${project} STREQUAL LLVM) + add_dependencies(${project}-tablegen-host LLVM-tablegen-host) + endif() add_custom_command(OUTPUT ${${project}_TABLEGEN_EXE} COMMAND ${tblgen_build_cmd} DEPENDS CONFIGURE_LLVM_NATIVE ${target}