bootstrap-fix-include-next
authorLLVM Packaging Team <pkg-llvm-team@lists.alioth.debian.org>
Sat, 4 May 2024 05:30:47 +0000 (07:30 +0200)
committerGianfranco Costamagna <locutusofborg@debian.org>
Sat, 4 May 2024 05:30:47 +0000 (07:30 +0200)
commitd2bfcf8d69834b575fa393de0fd8c2bd495f8bc3
tree924894030282274912bdb8055f0c6af1eec39075
parentf9cf85717b07e22d5689e68470f9a96d85d9c100
bootstrap-fix-include-next

When doing a bootstrap, we use a newly built clang.
When this one is used, if already installed on the system,
we have clang header in two places:
llvm-toolchain-7-7/build-llvm/lib/clang/7.0.0/include/inttypes.h
and
/usr/include/clang/7.0.0/include/inttypes.h

Because clang expects only one of his headers to be available, it uses
include_next to get the glibc (libc6-dev package) header.

However, in the previous example, because we have inttypes.h twice in the
include search path, clang's header will call itself without any effect.
Therefore, it will do include_next until the define from the libc is existing (ex: _INTTYPES_H)

Gbp-Pq: Name bootstrap-fix-include-next.diff
clang/lib/Headers/inttypes.h
clang/lib/Headers/limits.h