bootstrap-fix-include-next
authorLLVM Packaging Team <pkg-llvm-team@lists.alioth.debian.org>
Tue, 28 Sep 2021 10:06:50 +0000 (11:06 +0100)
committerGianfranco Costamagna <locutusofborg@debian.org>
Tue, 28 Sep 2021 10:06:50 +0000 (11:06 +0100)
commit3f4b9d15a8fb4910fa369e0fbe0998a279a7c468
tree5cdf7b514605d9b07bb09a68645d711c65c2c82c
parent9880350b778da7e8604e7226072231c90629dab9
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