bootstrap-fix-include-next
authorLLVM Packaging Team <pkg-llvm-team@lists.alioth.debian.org>
Sat, 4 Jun 2022 13:30:38 +0000 (14:30 +0100)
committerGianfranco Costamagna <locutusofborg@debian.org>
Sat, 4 Jun 2022 13:30:38 +0000 (14:30 +0100)
commite14d35ca805f6a705d87031126e4aa995674ba86
tree4c2cde5b34e4bdb7bde8d767c8b6ba8a35d9e7e5
parentc56df44afc05d0e713d7cbe3a80849ee637adacf
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