Bug 453936 - spicebird Provides pollution
Summary: spicebird Provides pollution
Alias: None
Product: Fedora
Classification: Fedora
Component: spicebird
Version: 8
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Steven M. Parrish
QA Contact: Fedora Extras Quality Assurance
Depends On:
TreeView+ depends on / blocked
Reported: 2008-07-03 11:44 UTC by Rex Dieter
Modified: 2018-04-11 15:03 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2009-01-07 21:51:19 UTC
Type: ---

Attachments (Terms of Use)
Spicebird spec file, misc source files, patches working on f10 (13.14 KB, application/x-bzip2)
2008-12-27 12:32 UTC, Sunil Mohan Adapa
no flags Details
Untested patch that should fix debugsyms and cflags problem (1.32 KB, patch)
2008-12-29 10:25 UTC, Sunil Mohan Adapa
no flags Details | Diff

Description Rex Dieter 2008-07-03 11:44:52 UTC
from recent fedora-devel post:

Spicebird in rawhide provides 46 sonames, which are provided by
the following other packages:


It does so for libs stored outside run-time linker's search path. This leads
to weak RPM dependencies. The worst-case scenario would be that one could
remove a required package, because RPM believes that spicebird is one
of multiple packages which satisfy the requirement.

Two examples of how the soname provides are polluted:

nss provides libssl3.so(NSS_3.2)
spicebird provides libssl3.so(NSS_3.2)
  required by: adminutil - 1.1.6-1.fc10.i386
  required by: evolution - 2.23.4-2.fc10.i386
  required by: evolution-data-server - 2.23.4-1.fc10.i386
  required by: fedora-ds-admin - 1.1.5-1.fc10.i386
  required by: fedora-ds-base - 1.1.1-2.fc10.i386
  required by: jss - 4.2.5-2.fc9.i386
  required by: libcurl - 7.18.2-2.fc10.i386
  required by: libpurple - 2.4.3-1.fc10.1.i386
  required by: mailx - 12.3-0.fc10.i386
  required by: mod_nss - 1.0.7-5.fc10.i386
  required by: mod_revocator - 1.0.2-4.fc9.i386
  required by: mozldap - 6.0.5-2.fc9.i386
  required by: nss-tools -
  required by: nss_compat_ossl - 0.9.2-4.fc9.i386
  required by: spicebird - 0.4-5.fc8.i386
  required by: xulrunner - 1.9-1.fc10.i386

spicebird provides libxpcom.so
xulrunner provides libxpcom.so
  required by: Miro - 1.2.4-2.fc10.i386
  required by: blam - 1.8.3-13.fc9.i386
  required by: cairo-dock-plug-ins-gecko - 1.6.1-0.1.svn1163_trunk.fc10.i386
  required by: devhelp - 0.19.1-1.fc10.i386
  required by: evolution-rss - 0.0.8-7.fc9.i386
  required by: firefox - 3.0-1.fc10.i386
  required by: galeon - 2.0.5-3.fc10.i386
  required by: gnome-python2-gtkmozembed - 2.19.1-16.fc9.i386
  required by: gnome-web-photo - 0.3-12.fc9.i386
  required by: gnomesword - 2.3.4-2.fc10.i386
  required by: gtkmozembedmm - 1.4.2.cvs20060817-20.fc9.i386
  required by: libswt3-gtk2 - 1:3.3.2-12.fc9.i386
  required by: mugshot - 1.2.1-1.fc10.i386
  required by: ruby-gtkmozembed - 0.17.0-0.2.rc1.fc10.i386
  required by: xulrunner - 1.9-1.fc10.i386
  required by: xulrunner-devel - 1.9-1.fc10.i386
  required by: yelp - 2.22.1-2.fc10.i386
  required by: spicebird - 0.4-5.fc8.i386

And during installation of those packages, it's only the "shortest pkg name
wins" in Yum depsolving, which protects us from problems. Plus explicit deps
on specific pkg names.

Comment 1 Rex Dieter 2008-07-03 11:46:21 UTC
Looks like some Provides/Requires need filtering (since spicebird is including
it's own mozilla sources/build).  

/me slaps forehead, sorry, I should have caught that during the pkg review.

Comment 2 Ignacio Vazquez-Abrams 2008-07-03 13:05:48 UTC
Looks like a dupe of bug 224544 to me. Although it really shouldn't have private
copies of the libs in the first place.

Comment 3 Michael Schwendt 2008-07-03 20:42:31 UTC
Ignacio, it's related, but not duplicate. In other packages this
has created real depsolving problems several times before. The full
fix in rpmbuild would need more than only changing find-provides.
It would also be necessary to teach find-requires how to distinguish
between external and internal dependencies (and filter out the latter).

On fedora-devel-list Chris Aillon has pointed to a script that
can be used to filter out the internal soname provides+requires.
If it works in thunderbird, no need to reinvent the wheel:

Comment 4 Sunil Mohan Adapa 2008-07-10 06:20:36 UTC
We are working with Thunderbird folks to make Thunderbird and Spicebird run on
xulrunner. This non-trivial task will happen mostly in the time frame of
Thunderbird 3.0 and Spicebird 1.0. Until then depending on xulrunner is not
possible. Spicebird will continue to use Mozilla internal api which means it has
be built along with Mozilla source.

Hence, Spicebird has to be built in the similar way Thunderbird is built. It can
use system nspr and nss libraries. Rest of the libraries that are built will be
specific to Spicebird and will reside in /usr/lib/spicebird and spicebird
package itself will not provide any libraries to be used by other packages.

I tried to create a patch for the problem but could not find the .spec and other
files in the cvs looking here:
http://cvs.fedora.redhat.com/viewcvs/devel/?root=core Am I looking at the wrong

Comment 5 Rex Dieter 2008-07-10 11:56:19 UTC

fyi, spicebird is currently only built for F-8, so the "devel" branch is empty
(we should probably rectify that).  In the meantime, peruse:

Comment 6 Sunil Mohan Adapa 2008-07-10 13:53:30 UTC
Steven kindly sent me the spec file. I've sent him a patch to fix this problem.

There are also improvements possible on using system libraries and removing
developer specific files.

Comment 7 Rex Dieter 2008-09-06 17:32:55 UTC
Ping, is this resolved or still an issue?

Comment 8 Steven M. Parrish 2008-09-06 18:27:29 UTC
Still an issue, the current release is not compatible with gcc 4.3.  Waiting for beta .7 which hopefully will resolve the issues.  No ETA atm.

Comment 9 Kevin Fenzi 2008-11-23 03:37:44 UTC
Any news on this?

It would be nice to get spicebird in F9/F10/rawhide... 
and f8 will soon be end of life. ;(

Comment 10 Steven M. Parrish 2008-11-23 10:01:16 UTC
They just released beta .7 this week.  Will start working it up.  Hopefully it will compile with the current gcc the last beta would not.

Comment 11 Bug Zapper 2008-11-26 10:57:01 UTC
This message is a reminder that Fedora 8 is nearing its end of life.
Approximately 30 (thirty) days from now Fedora will stop maintaining
and issuing updates for Fedora 8.  It is Fedora's policy to close all
bug reports from releases that are no longer maintained.  At that time
this bug will be closed as WONTFIX if it remains open with a Fedora 
'version' of '8'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version prior to Fedora 8's end of life.

Bug Reporter: Thank you for reporting this issue and we are sorry that 
we may not be able to fix it before Fedora 8 is end of life.  If you 
would still like to see this bug fixed and are able to reproduce it 
against a later version of Fedora please change the 'version' of this 
bug to the applicable version.  If you are unable to change the version, 
please add a comment here and someone will do it for you.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events.  Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

The process we are following is described here: 

Comment 12 Sunil Mohan Adapa 2008-12-27 12:32:23 UTC
Created attachment 327882 [details]
Spicebird spec file, misc source files, patches working on f10

I made a first cut version of Spicebird build for Fedora 10. Attached are the files.

I did this based on Thunderbird RPM work. The files list, dependencies, build dependencies, l10n work, rh preferences, basic build steps etc. are fairly complete. I also included a patch for max path length related buffer overflows in upstream mozilla code.

I'd also like to fix any PPC, PPC64 build errors for bugs #447804 and #447805. I don't have the setup here. Can I get the failed build logs?

Comment 13 Steven M. Parrish 2008-12-27 12:57:35 UTC
Bugzilla messed up your attachment, can you email me the attachment and I'll do some test builds today.  I'll also send you the PPC and PPC64 logs once I try a build.  Also thanks for doing this, it was on my list of things to do over the holiday and you saved me alot of time.


Comment 14 Sunil Mohan Adapa 2008-12-27 13:15:46 UTC
(In reply to comment #13)
> Bugzilla messed up your attachment, 

I checked the patch flag by mistake. I fixed it.

Comment 15 Fedora Update System 2008-12-28 21:37:06 UTC
spicebird-0.7-1.fc10 has been submitted as an update for Fedora 10.

Comment 16 Kevin Fenzi 2008-12-28 22:46:13 UTC
Thanks for getting it built. ;) 

2 (probibly related) issues I see with the build: 

- It looks like it's not using the normal fedora CFLAGS later in the build. 
Possibly the c++ flags. 

- debuginfo is empty. Probibly because it's not building with debug symbols.

Comment 17 Sunil Mohan Adapa 2008-12-29 10:25:11 UTC
Created attachment 327919 [details]
Untested patch that should fix debugsyms and cflags problem

(In reply to comment #16)
> Thanks for getting it built. ;) 
> 2 (probibly related) issues I see with the build: 
> - It looks like it's not using the normal fedora CFLAGS later in the build. 
> Possibly the c++ flags. 
> - debuginfo is empty. Probibly because it's not building with debug symbols.

I found bug #133738 what was the similar bug for Firefox. Based on Firefox fixes, I made patch to our spec that should fix both the problems. I didn't test the patch though.

Comment 18 Sunil Mohan Adapa 2008-12-29 10:31:31 UTC
(In reply to comment #17)
> Created an attachment (id=327919) [details]
> Untested patch that should fix debugsyms and cflags problem

Also in this patch I set build process to use as many cpus as available instead of capping to 2 like Firefox seems to do. We have reliably tested up to 8 simultaneous jobs and have no reason to believe that even higher is a problem. However, if you have a problem in the build (or if the build servers need it to be that way) simply set it -j2.

Comment 19 Fedora Update System 2009-01-07 21:51:10 UTC
spicebird-0.7-2.fc10 has been pushed to the Fedora 10 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 20 Sunil Mohan Adapa 2009-01-08 05:15:39 UTC
Thank you everyone.

Note You need to log in before you can comment on or make changes to this bug.