NetBSD-Bugs archive

[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>, 
gnats-bugs%NetBSD.org@localhost
Cc: lib-bug-people%netbsd.org@localhost, gnats-admin%netbsd.org@localhost, 
        netbsd-bugs%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.
 
 christos
 


Home | Main Index | Thread Index | Old Index