Subject: Re: CVS commit: pkgsrc
To: Bill Studenmund <wrstuden@zembu.com>
From: Frederick Bruckman <fb@enteract.com>
List: source-changes
Date: 09/27/2000 19:21:59
On Wed, 27 Sep 2000, Bill Studenmund wrote:
> > Packages that use the shared lib really should be linked with libGL,
> > but since none of the NetBSD packages which link in xforms seem to
> > use the gl_{get,set}_canvas*() and gl_win*() functions, simply extend
> > the present ELF hack to a.out, for now. That is, disable the shared
> > {,x}forms library the hard way, by deleting it after installation.
> > It stinks, I know. Close PR pkg/10560.
>
> Plese immediatly revert this. You can NOT just rip out shared libraries.
The shared libraries have been ripped out on ELF since 1.19, a year
ago this week.
> Also, plese actually talk to someone who has worked on this before making
> changes. We actually have shared libraries for xforms in our packages, and
> if anything needs ripping out, it's the sillyness of trying to make shread
> libraries from static ones, not the shared library itself.
Please refer to the discussion appended to the PR. It is very unfair
of you to accuse me of taking unilateral action without doing so.
The only "on-the-record" motivation I can find for the orginal libtool
sillyness is a discussion on tech-pkg, which you were a party to,
which suggested using it to move the forms shared library version away
from the xforms package version.
"libtool" complicates matters, but it's not even the problem. The
problem is simply that -lforms should really pull in -lGL. [This would
have been obvious if xforms source were available, but in fact, since
the source for gl.c is part of the distribution... it _is_ obvious.]
_In_ _fact_, libtool could be used to add a run-time dependency on
-lGL, and also add DEPENDS=Mesa-* to the xforms package, but this has
an obvious drawback, since evidently none of the present packages
which require xforms use any Mesa functions (else they wouldn't even
link static without -lGL).
The remaining alternative would be to duplicate the i386/a.out trick
of not resolving all symbols in shared libraries, on ELF and other
a.out platforms. I'm not sure that would be a good thing.
Frederick