[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: lib/45266: krb5-config causes namespace pollution (NetBSD 5, NetBSD 4, and probably HEAD)
The following reply was made to PR lib/45266; it has been noted by GNATS.
From: christos%zoulas.com@localhost (Christos Zoulas)
To: "Roland C. Dowdeswell" <elric%imrryr.org@localhost>,
Cc: lib-bug-people%netbsd.org@localhost, gnats-admin%netbsd.org@localhost,
Subject: Re: lib/45266: krb5-config causes namespace pollution (NetBSD 5,
NetBSD 4, and probably HEAD)
Date: Wed, 24 Aug 2011 12:03:38 -0400
On Aug 24, 4:49pm, elric%imrryr.org@localhost ("Roland C. Dowdeswell") wrote:
-- Subject: Re: lib/45266: krb5-config causes namespace pollution (NetBSD 5,
| I agree with the intent of this bug but third party code doesn't
| generally include <krb5/foo.h> because this has been a standard
| mistake in Kerberos distributions for over a decade. We decided
| to put a number of ancilliary files from Heimdal into /usr/include/krb5
| but by default Heimdal doesn't, it just installs them into the
| include directory directly.
| Now, that said, this is unlikely to be a problem because we do have
| /usr/include/krb5.h and we have modified it and all of the other
| includes to include <krb5/foo.h> and so little would end up breaking
| if we made this change.
Yes, and try to make the world a better place by not perpetuating the
problem. The problematic package can do -I/usr/include/krb5.
| This raises another issue that has bothered me about krb5-config
| which is:
| $ krb5-config --libs
| -L/usr/lib -lkrb5 -lhx509 -lcom_err -lcrypto -lasn1 -lwind -lroken <
| -lcrypt -lpthread
| that it asks applications to directly link against all of the
| Kerberos libraries rather than just -lkrb5. In a dynamic world,
| libkrb5.so will pull in all of the other libs---asking applications
| to directly link against them unnecessarily makes the names of all
| of the support libraries part of the ABI.
The whole thing is broken. This only adds a link path and not a run path,
it adds -lpthread instead of issuing -pthread in CFLAGS. Well, if you wanted
to make a static binary, you would need all those libs.
Main Index |
Thread Index |