tech-toolchain archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: HEADS UP: I will be merging christos-time_t by the end of the week
On Mon, Jan 05, 2009 at 09:01:36PM +0100, Bernd Ernesti wrote:
> On Mon, Jan 05, 2009 at 02:36:46PM -0500, Thor Lancelot Simon wrote:
> > On Mon, Jan 05, 2009 at 10:47:34AM +0100, Bernd Ernesti wrote:
> > > On Sun, Jan 04, 2009 at 09:13:57PM -0500, Christos Zoulas wrote:
> > > [..]
> > >
> > > > - all (most) the rest of the libraries get bumped
>
> I still want to know what 'most' means here.
Any library which has a function which takes a time_t, or any structure
containing a time_t, or a pointer to such a structure, as an argument,
or returns such a type.
> Why is the libc major version not changed if all other libaries have to
> be changed?
Because Christos versioned every single function in libc which handles any
time_t. I don't see anyone stepping up to do that in other libraries, and
in any case, how would we get 3rd-party library maintainers to take such
patches?
> All programs are now linked against libc, so it should be possible to not
> bump the other libraries, since it is required to recompile EVERYTHING after
> you compiled something against the new libc.
The point is to allow programs linked only to the old libc to continue to
work, without having to build and install two versions of libc. I actually
question whether that is worth the trouble.
I think bumping the libc major also would be better, because then I think
it might be feasible to modify the linker and loader to reject attempts
to link a program to libc.so.90 when a dependent library wanted libc.so.80.
This would at least cause programs to fail in a *deterministic* way at
run time if they were not caught at compile time...
And it *might* be possible to not bump dependent library versions, with
that set of toolchain modifications (to reject attempts to bring in two
versions of libc at once). What do others think?
--
Thor Lancelot Simon
tls%rek.tjls.com@localhost
"Even experienced UNIX users occasionally enter rm *.* at the UNIX
prompt only to realize too late that they have removed the wrong
segment of the directory structure." - Microsoft WSS whitepaper
Home |
Main Index |
Thread Index |
Old Index