bootstrap-fix-include-next
authorLLVM Packaging Team <pkg-llvm-team@lists.alioth.debian.org>
Thu, 11 Jan 2024 13:15:09 +0000 (14:15 +0100)
committerSylvestre Ledru <sylvestre@debian.org>
Thu, 11 Jan 2024 13:15:09 +0000 (14:15 +0100)
commite0971f6948c1743e302085451b0c92dc5b88492d
tree684b44c6d59751fb054cbe06035bb5a352d3fdac
parent1d233dcc420a1dea545c3d53fd1b3f051338be74
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