bootstrap-fix-include-next
authorLLVM Packaging Team <pkg-llvm-team@lists.alioth.debian.org>
Sat, 7 Mar 2020 00:01:35 +0000 (00:01 +0000)
committerGianfranco Costamagna <locutusofborg@debian.org>
Sat, 7 Mar 2020 00:01:35 +0000 (00:01 +0000)
commit6fa1b5a6edbe86be4626ea440ce25df33eefdc4a
tree709703d94d0265b10ab6381a0ceecd739c0acfba
parent8c8f3c6cc12bb58d7357121ea425bd3f166413ab
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