bootstrap-fix-include-next
authorLLVM Packaging Team <pkg-llvm-team@lists.alioth.debian.org>
Wed, 18 Dec 2024 09:01:43 +0000 (10:01 +0100)
committerSylvestre Ledru <sylvestre@debian.org>
Wed, 18 Dec 2024 09:01:43 +0000 (10:01 +0100)
commitb0bab9860b69dafb2a17699ed61bf1684ecb6f1e
tree96ecc7097617e430a813150c184e0589f82e09aa
parent059c3198402518eb3bf6f44d2e4735ca53752ba0
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