bootstrap-fix-include-next
authorLLVM Packaging Team <pkg-llvm-team@lists.alioth.debian.org>
Mon, 11 Sep 2023 13:40:42 +0000 (14:40 +0100)
committerGianfranco Costamagna <locutusofborg@debian.org>
Mon, 11 Sep 2023 13:40:42 +0000 (14:40 +0100)
commitf57bf874416694c53e6d0b9c4cf34ca97cdcbd79
tree4ba6b1cea4f042d031e4a3f003475f97e5498879
parent467ba9931b27922b4efffda8ecfc7812092c391a
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