Skip to content
Commit 4ed7d51d authored by Thomas Petazzoni's avatar Thomas Petazzoni
Browse files

package/gcc: add patch to fix glibc header conflict

This commit backports the patch "fixinc: don't "fix" machine names in
__has_include(...)" from upstream GCC, which is needed to resolve a
header conflict between glibc headers and kernel headers, which has
appeared since we bumped glibc to version 2.36 in commit
80c8c15c.

The problem comes from the "fixinc" logic used by gcc to fixup some
headers files, generated inside an include-fixed/ folder. This logic
ended up replacing "linux/mount.h" by "__linux__/mount.h" in
__has_include() invocation, like this:

 #ifdef __has_include
 # if __has_include ("__linux__/mount.h")
 #  include "linux/mount.h"
 # endif
 #endif

in
build/host-gcc-final-11.3.0/build/gcc/include-fixed/sys/mount.h. With
this fix in place, this "include-fixed" header is no longer generated,
avoiding the problem.

This issue was visible in two different ways in glibc configurations:

 - As a build failure during the gcc build itself, for architectures
   that...
parent 7983d366
Pipeline #677503771 passed with stages
in 1 minute and 7 seconds
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment