Bug 258361 - libslab.pc has excess dependencies
Summary: libslab.pc has excess dependencies
Status: RESOLVED FIXED
Alias: None
Product: openSUSE 11.0
Classification: openSUSE
Component: GNOME (show other bugs)
Version: Alpha 2
Hardware: All All
: P5 - None : Normal (vote)
Target Milestone: ---
Assignee: Scott Reeves
QA Contact: E-mail List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: main-menu-behavior
  Show dependency treegraph
 
Reported: 2007-03-28 13:39 UTC by Andreas Hanke
Modified: 2008-03-08 00:43 UTC (History)
2 users (show)

See Also:
Found By: Other
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments
Proposed fix (466 bytes, patch)
2007-03-28 13:40 UTC, Andreas Hanke
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Andreas Hanke 2007-03-28 13:39:17 UTC
I have just inspected libslab a bit and found several problems which cause unnecessarily large dependencies in applications that use libslab. libslab.pc contains:

Requires: glib-2.0 gobject-2.0 gtk+-2.0 gdk-2.0 gnome-desktop-2.0 librsvg-2.0 libgnome-menu pango

- pango is not used at all, libslab does neither directly use nor expose pango. This can be entirely removed from the .pc file. It is implied by gtk+-2.0 anyway.

- gdk-2.0 is only used internally, but not exposed. It is only included app-shell-startup.c and tile.c, but not in any installed header files. This means that dependent packages have to link gdk-2.0 only if they are linking libslab statically. And just like pango it is implied by gtk+-2.0 anyway.

- Same problem with librsvg-2.0. Just like gdk-2.0 it is not used included in any installed header files; it is only used internally in search-entry.c. Please use Requires.private here: The current situation causes an unnecessary direct dependency of yast2-control-center-gnome on librsvg, triggered by this .pc entry.
Comment 1 Andreas Hanke 2007-03-28 13:40:16 UTC
Created attachment 127071 [details]
Proposed fix

Remove unused pango dependency and mark private dependencies on gdk-2.0 and librsvg-2.0 as such.
Comment 3 Federico Mena Quintero 2007-12-18 15:54:02 UTC
There's a test package here with the aforementioned patch:
http://download.opensuse.org/repositories/home:/federico-mena:/10.3/openSUSE_10.3

Andreas, could you please see if these changes are all that we need?

I'll put this patch in our main package as soon as the Main Menu bug week is over:
http://en.opensuse.org/GNOME/Main_menu_bug_week
Comment 4 Scott Reeves 2008-01-26 00:32:00 UTC
Will fix for 11.0.  Committed to svn.
Comment 5 Scott Reeves 2008-03-08 00:43:34 UTC
submitted to factory - v 0.9.9