freebsd-dev/usr.bin/clang
Dimitry Andric ab80f0b21f Ensure .inc files are regenerated when llvm/clang tblgen binaries change
When doing a fully incremental build (with WITHOUT_CLEAN enabled), from
a commit before llvm 15 was merged (3264f6b88f), to a commit after
that, a number of .inc files were not regenerated. This could lead to
unexpected compilation errors when these .inc files were included from
llvm-project sources, similar to:

  In file included from /usr/src/contrib/llvm-project/clang/lib/CodeGen/CGBuiltin.cpp:8268:
  /usr/obj/usr/src/amd64.amd64/lib/clang/libclang/clang/Basic/arm_mve_builtin_cg.inc:279:18: error: no matching constructor for initialization of 'clang::CodeGen::Address'
    Address Val2 = Address(Val1, CharUnits::fromQuantity(2));
                   ^       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Work around this by making the .inc files dependent on the tblgen binary
used for generating them. E.g., we can relatively safely assume that if
the binary gets updated, the .inc files must also be updated. (Although
this is not 100% optimal, the gain by complicating things even more is
probaby not worth the effort.)

MFC after:	3 days
Reviewed by:	emaste
Differential Revision: https://reviews.freebsd.org/D38770
2023-02-26 15:56:07 +01:00
..
bugpoint Merge llvm-project 12.0.0 release 2021-06-13 22:01:15 +02:00
clang Merge llvm-project main llvmorg-15-init-15358-g53dc0f10787 2023-02-08 20:02:26 +01:00
clang-format
clang-tblgen Merge llvm-project main llvmorg-15-init-15358-g53dc0f10787 2023-02-08 20:02:26 +01:00
llc Merge llvm-project 12.0.0 release 2021-06-13 22:01:15 +02:00
lld Ensure .inc files are regenerated when llvm/clang tblgen binaries change 2023-02-26 15:56:07 +01:00
lldb Ensure .inc files are regenerated when llvm/clang tblgen binaries change 2023-02-26 15:56:07 +01:00
lldb-server Ensure .inc files are regenerated when llvm/clang tblgen binaries change 2023-02-26 15:56:07 +01:00
lldb-tblgen
lli Merge llvm-project main llvmorg-13-init-16847-g88e66fa60ae5 2021-11-13 21:39:49 +01:00
llvm-ar Merge llvm-project main llvmorg-15-init-15358-g53dc0f10787 2023-02-08 20:02:26 +01:00
llvm-as Merge llvm-project 12.0.0 release 2021-06-13 22:01:15 +02:00
llvm-bcanalyzer Merge llvm-project 12.0.0 release 2021-06-13 22:01:15 +02:00
llvm-cov Merge llvm-project 12.0.0 release 2021-06-13 22:01:15 +02:00
llvm-cxxdump
llvm-cxxfilt Ensure .inc files are regenerated when llvm/clang tblgen binaries change 2023-02-26 15:56:07 +01:00
llvm-diff Merge llvm-project main llvmorg-14-init-10223-g401b76fdf2b3 2022-05-14 13:43:32 +02:00
llvm-dis Merge llvm-project 12.0.0 release 2021-06-13 22:01:15 +02:00
llvm-dwarfdump Merge llvm-project 12.0.0 release 2021-06-13 22:01:15 +02:00
llvm-dwarfutil Ensure .inc files are regenerated when llvm/clang tblgen binaries change 2023-02-26 15:56:07 +01:00
llvm-dwp Merge llvm-project main llvmorg-13-init-16847-g88e66fa60ae5 2021-11-13 21:39:49 +01:00
llvm-extract Merge llvm-project 12.0.0 release 2021-06-13 22:01:15 +02:00
llvm-link Merge llvm-project 12.0.0 release 2021-06-13 22:01:15 +02:00
llvm-lto
llvm-lto2
llvm-mc
llvm-mca Merge llvm-project main llvmorg-14-init-10223-g401b76fdf2b3 2022-05-14 13:43:32 +02:00
llvm-modextract
llvm-nm Ensure .inc files are regenerated when llvm/clang tblgen binaries change 2023-02-26 15:56:07 +01:00
llvm-objcopy Ensure .inc files are regenerated when llvm/clang tblgen binaries change 2023-02-26 15:56:07 +01:00
llvm-objdump Ensure .inc files are regenerated when llvm/clang tblgen binaries change 2023-02-26 15:56:07 +01:00
llvm-pdbutil Merge llvm-project main llvmorg-15-init-15358-g53dc0f10787 2023-02-08 20:02:26 +01:00
llvm-profdata Merge llvm-project 12.0.0 release 2021-06-13 22:01:15 +02:00
llvm-readobj Ensure .inc files are regenerated when llvm/clang tblgen binaries change 2023-02-26 15:56:07 +01:00
llvm-rtdyld
llvm-size Ensure .inc files are regenerated when llvm/clang tblgen binaries change 2023-02-26 15:56:07 +01:00
llvm-strings Ensure .inc files are regenerated when llvm/clang tblgen binaries change 2023-02-26 15:56:07 +01:00
llvm-symbolizer Ensure .inc files are regenerated when llvm/clang tblgen binaries change 2023-02-26 15:56:07 +01:00
llvm-tblgen Merge llvm-project main llvmorg-15-init-15358-g53dc0f10787 2023-02-08 20:02:26 +01:00
llvm-xray
opt Merge llvm-project main llvmorg-15-init-15358-g53dc0f10787 2023-02-08 20:02:26 +01:00
clang.prog.mk Merge llvm-project main llvmorg-15-init-15358-g53dc0f10787 2023-02-08 20:02:26 +01:00
llvm.prog.mk ncurses: chase dependency changes in the source tree 2021-10-04 11:38:24 +02:00
Makefile Merge llvm-project main llvmorg-15-init-17485-ga3e38b4a206b 2023-02-08 20:04:38 +01:00
Makefile.inc