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...
Please register or sign in to comment