[llvm] r274270 - [CMake] Module builds depend on target intrinsics_gen to be built first.

NAKAMURA Takumi via llvm-commits llvm-commits at lists.llvm.org
Tue Jul 18 06:07:33 PDT 2017


I suppose there'd be no issue in trunk's modulemap as far as I
investigated. Could we revert it?

On Fri, Jul 1, 2016 at 5:42 AM Vassil Vassilev via llvm-commits <
llvm-commits at lists.llvm.org> wrote:

> Author: vvassilev
> Date: Thu Jun 30 15:35:56 2016
> New Revision: 274270
>
> URL: http://llvm.org/viewvc/llvm-project?rev=274270&view=rev
> Log:
> [CMake] Module builds depend on target intrinsics_gen to be built first.
>
> When compiling with modules, header A and B can be in the same module M.
> B depends on intrinsics_gen and A doesn't. Compiling a source file
> #include-ing
> header A, we implicitly request module M to be built. It puts header A and
> B in
> the same TU and tries to build them. Since B depends on intrinsics_gen
> (which
> might not be built yet) we run into build failures.
>
> This should fix our modules buildbot.
>
> Patch reviewed by Chris Bieneman.
>
> Modified:
>     llvm/trunk/CMakeLists.txt
>
> Modified: llvm/trunk/CMakeLists.txt
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/CMakeLists.txt?rev=274270&r1=274269&r2=274270&view=diff
>
> ==============================================================================
> --- llvm/trunk/CMakeLists.txt (original)
> +++ llvm/trunk/CMakeLists.txt Thu Jun 30 15:35:56 2016
> @@ -700,6 +700,15 @@ add_subdirectory(lib/TableGen)
>
>  add_subdirectory(utils/TableGen)
>
> +# Force target to be built as soon as possible. Clang modules builds
> depend
> +# header-wise on it as they ship all headers from the umbrella folders.
> Building
> +# an entire module might include header, which depends on intrinsics_gen.
> This
> +# should be right after LLVMSupport and LLVMTableGen otherwise we
> introduce a
> +# circular dependence.
> +if (LLVM_ENABLE_MODULES)
> +  list(APPEND LLVM_COMMON_DEPENDS intrinsics_gen)
> +endif(LLVM_ENABLE_MODULES)
> +
>  add_subdirectory(include/llvm)
>
>  add_subdirectory(lib)
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170718/68fcb47b/attachment.html>


More information about the llvm-commits mailing list