r201842 - [CMake] Get rid of explicit dependencies to include/clang/*.inc and introduce CLANG_TABLEGEN_TARGETS.
Chandler Carruth
chandlerc at google.com
Fri Feb 21 00:12:35 PST 2014
On Fri, Feb 21, 2014 at 12:00 AM, NAKAMURA Takumi <geek4civic at gmail.com>wrote:
> Author: chapuni
> Date: Fri Feb 21 01:59:59 2014
> New Revision: 201842
>
> URL: http://llvm.org/viewvc/llvm-project?rev=201842&view=rev
> Log:
> [CMake] Get rid of explicit dependencies to include/clang/*.inc and
> introduce CLANG_TABLEGEN_TARGETS.
>
> This does;
> - clang_tablegen() adds each tblgen'd target to global property
> CLANG_TABLEGEN_TARGETS as list.
> - List of targets is added to LLVM_COMMON_DEPENDS.
> - all clang libraries and targets depend on generated headers.
>
> You might wonder this would be regression, but in fact, this is little
> loss.
> - Almost all of clang libraries depend on tblgen'd files and
> clang-tblgen.
> - clang-tblgen may cause short stall-out but doesn't cause unconditional
> rebuild.
> - Each library's dependencies to tblgen'd files might vary along
> headers' structure.
> It made hard to track and update *really optimal* dependencies.
>
> Each dependency to intrinsics_gen and ClangSACheckers is left as DEPENDS.
>
I really don't understand this. I specifically worked to make Clang's
tablegen dependencies be explicit. You've said why not doing that doesn't
cause huge problems, but not at all why it is a good idea.
Implicit, silent dependencies make the entire thing much harder to
understand and track. I would like direct and explicit dependencies instead.
-Chandler
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20140221/66f46757/attachment.html>
More information about the cfe-commits
mailing list