Notice clock_* functions in librt.so for old GLIBC_2.18 builds?
Brooks Moses
bmoses@google.com
Fri Feb 21 21:56:00 GMT 2014
On 02/21/2014 02:37 AM, Andreas Schwab wrote:
> Andreas Schwab <schwab@linux-m68k.org> writes:
>> "Carlos O'Donell" <carlos@redhat.com> writes:
>>> The conditional is:
>>> #if SHLIB_COMPAT (librt, GLIBC_2_2, GLIBC_2_17)
>>>
>>> Which should result in no code if the ABI starts at
>>> GLIBC_2_17 or later.
>>
>> I think the problem is that there is no GLIBC_2.17 in Versions.def for
>> librt. If the minimum version is GLIBC_2.17 this is implicit, but with
>> GLIBC_2.18 or later this doesn't work.
>
> I have verified that after adding this the clock_* symbols disapper when
> building with a minimum version of GLIBC_2.18. I have installed this
> patch. Perhaps there is a way to automatically validate all uses of
> SHLIB_COMPAT wrt. missing entries in Versions.def.
So, to clarify: This patch is only needed for builds in the process of
re-bootstrapping, but for those of us building a powerpc64le build from
unmodified 2.19 sources this is not necessary because the minimum ABI
version is set to 2.17 and so the unpatched version happens to work correctly?
(And, to make sure I'm understanding correctly: This is code for old
functions that were removed in 2.17 but we still need to export the symbols
for old programs compiled against pre-2.17 versions -- except that, if the
minimum ABI is GLIBC_2.17 or later, then such programs cannot exist so we
don't need to export old symbols to support them. Yes?)
Thanks,
- Brooks
More information about the Libc-alpha
mailing list