Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 30071 - dev-libs/nss needs to provide pkgconfig/mozilla-nss.pc
Summary: dev-libs/nss needs to provide pkgconfig/mozilla-nss.pc
Status: RESOLVED WONTFIX
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High major
Assignee: Mozilla Gentoo Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 36115 69339
  Show dependency tree
 
Reported: 2003-10-01 08:15 UTC by Don Seiler (RETIRED)
Modified: 2006-10-31 04:06 UTC (History)
4 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Don Seiler (RETIRED) gentoo-dev 2003-10-01 08:15:24 UTC
This bug is a spawn from Bug 29855.  Basically if mozilla isn't installed, then
there is no nss entry for pkgconfig.  Some apps, namely gaim, use pkgconfig to
determine if nss is available.  Since dev-libs/nss doesn't add a pkgconfig
entry, gaim won't pick it up.

Spoke with liquidx and brad[] about it in #gentoo-dev and they were hashing out
ideas about how mozilla itself might need changing to use --with-system-nspr or
something.

Reproducible: Always
Steps to Reproduce:
Comment 1 Don Seiler (RETIRED) gentoo-dev 2003-12-23 14:11:18 UTC
What are your thoughts on having dev-libs/nss provide a /etc/env.d file so that the nss libs would be read AHEAD of mozilla libs in /etc/ld.so.conf?

Right now I have an issue with gaim where if mozilla is installed, mozilla's nss libs are being used regardless of how I configure gaim.  The problem is that mozilla 1.6b's nss libs crash gaim-encryption, so I want it to use standalone nss instead but nothing I can do.
Comment 2 Eric Hustvedt 2003-12-23 15:07:28 UTC
IMHO, that seems like a crufty workaround for a bug in a beta version of some software. If anything, the gaim ebuild should check for the mozilla USE flag and 1.6b and, if the user wants gaim-encryption, stop with a descriptive error message explaining the situation. Additionally, the gaim-encryption project should be made aware of this issue, if they aren't already.

In an ideal world, Mozilla would provide a means to specify the usage of a separate nss library, like the --with-system-nspr flag. For some obscure reason, the Mozilla devs haven't deigned to implement that, despite prodding by users and packagers. Heck, Redhat deals with the packaging issue by building a full install from the tarball and then splitting the binary libraries into their component RPMs.
Comment 3 SpanKY gentoo-dev 2003-12-23 15:27:05 UTC
why die if mozilla sucks ?

just have it use the independent library if it exists and fallback to mozilla if it doesnt
Comment 4 Eric Hustvedt 2003-12-23 18:34:09 UTC
Currently, there isn't an autoconf macro to handle the detection of nss vs. mozilla-provided nss and set the include and libs paths accordingly. Without that type of macro, different developers make different assumptions about where nss will be. Of course, Mozilla.org doesn't make it any easier when they dump the same lib into two different paths.

Since there isn't any autoconf setup, ebuilds need to provide the detection logic to setup the paths correctly. An example is the gaim ebuild, where the mozilla USE flag will cause a dependency upon net-www/mozilla, rather than dev-libs/nss. Portage's DEPEND || clause logic is broken, such that a preference for dev-libs/nss over net-www/mozilla is taken to mean that dev-libs/nss must be installed. What it should do is: See if any of the desired packages are installed, and only if they aren't should it force the preferred package.
Comment 5 Don Seiler (RETIRED) gentoo-dev 2003-12-23 20:15:41 UTC
spanky how do you propose I do that?

My problem is that as long as mozilla is installed, gaim and gaim-encryption will see those libs first and link against them at run time.
Comment 6 Don Seiler (RETIRED) gentoo-dev 2003-12-23 21:16:59 UTC
FYI if I remove /usr/lib/mozilla from /etc/ld.so.conf, or if I add /usr/lib to /etc/ld.so.conf ahead of /usr/lib/mozilla, and then run ldconfig, gaim will startup fine, using the standalone nss libs.

brad[] mentioned in #gentoo-dev not putting the mozilla line in there since he wasn't sure if it was used or not by anything.
Comment 7 Philippe Vachon 2004-02-01 19:07:44 UTC
I was having this same problem with the NSPR and NSS. My workaround was to manually grab the mozilla-nss.pc and the mozilla-nspr.pc file, then drop them into /usr/lib/pkgconfig. Probably not the most elegant workaround, but it allowed me to compile GAIM, and hasn't proven unstable thus far. Perhaps these two files should be installed by the dev-libs/nss and dev-libs/nspr ebuilds if Mozilla isn't already installed?
Comment 8 Don Seiler (RETIRED) gentoo-dev 2004-02-12 14:36:36 UTC
My work around in gaim and gaim-encryption is this:

DEPEND="|| ( dev-libs/nss net-www/mozilla )"

This syntax has once again been cleared for use in portage.

Perhaps this bug is a non-issue for now?
Comment 9 Aron Griffis (RETIRED) gentoo-dev 2004-04-25 17:48:28 UTC
It sounds like this bug is a no-op, except for the fact that I would like to remove the mozilla entries from /etc/ld.so.conf...
Comment 10 Don Seiler (RETIRED) gentoo-dev 2004-04-25 18:19:33 UTC
Yes and actually now since mozilla-firefox ALSO provides NSS and in yet ANOTHER location, I'm just going to depend solely on the standalone dev-libs/nss package.  I think the evolution people are considering doing the same.
Comment 11 Jakub Moc (RETIRED) gentoo-dev 2006-10-31 04:06:35 UTC
Game over, this isn't going anywhere, mozilla is being removed and no comment here for 2 1/2 years. 

(In reply to comment #10)
> I'm just going to depend solely on the standalone dev-libs/nss
> package.  I think the evolution people are considering doing the same.

evolution has been using dev-libs/{nss,nspr} since December 2005, see changelog.