Steve McIntyre writes:
> wzss...@gmail.com wrote:
>>Is there the option C?
>>
>>Draft:
>>  1. define time64_t
>>  2. for data_struct which act as a part of ABI, define a new data_struct64
>>  3. for function which act as part of ABI, define a new version func64.
>>  4. patch all packages to use time64_t instead of time_t step by step.
>>  5. set a time as deadline (2030?), and then treat all packages
>>haven't finished
>>      the migration as rc-buggy.
>>
>> Since we have enough time, we can patch all packages in that period.
>
> It's possible, but...
>
> The problem here is that we have many thousands of packages to work
> on, glibc up through other libs to all the applications that use
> them. It's invasive work, and likely to take a very long time. Since
> it's work that would *not* be needed for 64-bit architectures, we're
> also likely to see push-back from some upstreams.
>
> 2030 is also too late to fix the problem - people are already starting
> to see issues in some applications. We want to make a difference soon:
> the earlier that we have fixes available, the fewer broken systems
> will have to be fixed / removed / replaced later.

For arm* and mips*, we mostly seem to be talking about special-purpose
systems where just switching to a new architecture/port doesn't seem to
be that much as a problem as for i386.  I think rebuilding the world and
breaking ABI might thus be acceptable there.

i386 seems different.  I think option C above would be the only
realistic proposal so far to fix the time_t problem for (parts of) i386,
but if glibc upstream doesn't want to expose two interfaces then i386
will probably just break.

Ansgar

Reply via email to