[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#953083: __glibc_has_include macro needs to be restored until GCC is rebuilt



* Matthias Klose:

> On 3/4/20 9:33 AM, Florian Weimer wrote:
>> * Matthias Klose:
>> 
>>> The __glibc_has_include macro needs to be restored until GCC is rebuilt. At
>>> least on s390x, you get a non-wrorking compiler, which at least cannot glibc
>>> anymore.  The macro is still referenced in the include-fixed directory.
>>>
>>> Seen with the 2.31 branch, but I see that this is also backported to 2.30.
>> 
>> This is a bug in the gcc package.  It must not run fixincludes, to
>> avoid producing mutually incompatible headers because only a subset of
>> them is rewritten.
>
> Is this something which should be done upstream?  Or just don't include any
> fixed header in the GCC packages?

Distributions should never run fixincludes for this reason.  This is a
hack for installing compilers as non-root on proprietary systems,
where you can't fix the headers.

Other distributions routinely backport compiler compatibility fixes
into glibc (even into stable releases), and I think this is the way it
has to be done.

> Anyway, either glibc or GCC has to be fixed to avoid a non-working compiler.

If I recall correctly, the header is broken anyway because linux is
rewritten into __linux__, due to a fixincludes bug.

It should be possible to hide the header by having a file with an
#include directive with an absolute path in a directory used during
the build.


Reply to: