cvs commit: src/lib/libc/gen fts-compat.c fts-compat.h

Warner Losh imp at bsdimp.com
Fri Aug 24 16:25:29 PDT 2007


From: Daniel Eischen <deischen at FreeBSD.org>
Subject: Re: cvs commit: src/lib/libc/gen fts-compat.c fts-compat.h
Date: Fri, 24 Aug 2007 18:25:17 -0400 (EDT)

> On Fri, 24 Aug 2007, Alfred Perlstein wrote:
> 
> > Not to pick on anyone here but Yar did something that works,
> > why exactly are we not allowing him to use the tools provided
> > for this exact purpose and instead making him do convoluted
> > workarounds?
> >
> > I mean seriously, so we have a versioned symbol that could
> > possibly be avoided by a lot of hard work and magic which will
> > probably fail for a bunch of users....
> >
> > ...so why not just use what works?
> 
> Please, enough of this "it works, so why not?".  We didn't always
> have symbol versioning, and we have solved these problems before
> without it.  There seems to be an inherent problem with our
> build system, and the LD_LIBRARY_PATH trick seems to make sense
> to me, or building and installing the install tools as static
> to avoid problems like this.

The other problem, once you get past the build tools, is now all your
ports binaries do not work.  While people running current are big boys
and girls, it is a pain to have to frequently rebuild them.

> I never added symbol versioning to libc in order to solve
> -current upgrade problems.  Sure, you're free to use it that
> way, but it would not make me very happy ;-)

So who cares if we find new uses for tools?  I never thought devd
would be used for network state transition...

What's the overhead of having the transition crutch around for a
while?  The benefit is that people are less likely to screw up their
systems at a time when we want to encourage people to upgrade so they
can test the latest/greatest version.  If it were 9 months after
RELENG_6 was branched, and a long time to a release, then I'd be much
more inclined to agree with the 'current is hard, so why spend
engineering effort on making it easy' crowd than I would now that more
of the world is watching and using it since we're in the glide path to
beta1.

I don't see why we can't put the versioned symbols in, let everybody
upgrade and then remove the old symbols after a big enough window has
passed.  It isn't like they are hurting anything by being there, is
it?

If there is some actual harm here, it hasn't been clearly articulated
and needs to be if that's the case.  I'm certainly open to this
possibility.

Just my humble opinion.

Warner


More information about the cvs-src mailing list