First Last Prev Next    No search results available      Search page      Enter new bug
Bug#: 50869
Alias:
Product:
Component:
Status: RESOLVED
Resolution: FIXED
Assigned To: Daniel Black <dragonheart@gentoo.org>
Hardware:
OS:
Version:
Priority:
Severity:
Reporter: Morgan Collins <sirmorcant@morcant.org>
Add CC:
CC:
Remove selected CCs
URL:
Summary:
Status Whiteboard:
Keywords:

Filename Description Type Creator Created Size Actions
alleyoop-0.8.2.ebuild alleyoop-0.8.2.ebuild text/plain Morgan Collins 2004-05-12 11:28 0000 660 bytes Details
Create a New Attachment (proposed patch, testcase, etc.) View All

Bug 50869 depends on: Show dependency tree
Bug 50869 blocks:
Votes: 0    Show votes for this bug    Vote for this bug

Additional Comments: (this is where you put emerge --info)


Not eligible to see or edit group visibility for this bug.






View Bug Activity   |   Format For Printing   |   XML   |   Clone This Bug


Description:   Opened: 2004-05-12 11:26 0000
Hi

Please find attached alleyoop-0.8.2.ebuild.

Alleyoop is a graphical front-end to the increasingly popular Valgrind memory checker for x86 GNU/Linux using the Gtk+ widget set and other GNOME libraries for the X-Windows environment.

Features include a right-click context menu to intelligently suppress errors or launch an editor on the source file/jumping to the exact line of the error condition. A searchbar at the top of the viewer can be used to limit the viewable errors to those that match the regex criteria entered.

Morgan Collins

------- Comment #1 From Morgan Collins 2004-05-12 11:28:19 0000 -------
Created an attachment (id=31284) [details]
Ebuild for Alleyoop, a gtk/gnome frontend to valgrind

Ebuild for Alleyoop, a gtk/gnome frontend to valgrind

------- Comment #2 From Daniel Black 2004-05-12 17:13:01 0000 -------
Thanks for the ebuild. Let me know if I was too overzealous in the RDEPENDS
$ ldd /usr/bin/alleyoop | cut -f 3 -d ' '  | xargs -n1 qpkg -f | sort -u
and compare results to RDEPEND.


------- Comment #3 From Morgan Collins 2004-05-12 17:29:19 0000 -------
I show you proposing to make all of these RDEPENDS:

dev-libs/atk *
dev-libs/expat *
dev-libs/glib *
dev-libs/libxml2 *
dev-libs/openssl *
dev-libs/popt *
gnome-base/ORBit2 *
gnome-base/gconf *
gnome-base/gnome-keyring *
gnome-base/gnome-vfs *
gnome-base/libbonobo *
gnome-base/libbonoboui *
gnome-base/libglade *
gnome-base/libgnome *
gnome-base/libgnomecanvas *
gnome-base/libgnomeui *
media-libs/alsa-lib *
media-libs/audiofile *
media-libs/fontconfig *
media-libs/freetype *
media-libs/jpeg *
media-libs/libart_lgpl *
media-sound/esound *
sys-libs/glibc *
sys-libs/zlib *
x11-base/xorg-x11 *
x11-libs/gtk+ *
x11-libs/pango *

My RDEPENDS were for the immediate dependencies of alleyoop, not the dependencies of it's immediate dependencies.

By this I mean that alleyoop does not require libxml, but libglade does, which it depends on. If libglade was not compiled with libxml for whatever reason (support was optional for instance), alleyoop would still function correctly.

This is the behaviour I observed in other ebuilds that use gnome packages as dependencies, so this is the behaviour I chose to follow.

However the ebuild should function with the added dependencies, provided some of the extra packages you do not really depend on, but include, are not masked by other installed packages (eg Xorg vs XFree86) and the extra bloat is not needed.

------- Comment #4 From Daniel Black 2004-05-12 22:06:55 0000 -------
Is there an easy way to determine the first level dependencies? looking at the
libraries that are included in the makefile is my best guess so far.

------- Comment #5 From Daniel Black 2004-05-13 02:27:18 0000 -------
I've reduced the list to those included by the compiling command (below).
Hopefully it is a bit more accurate.

gcc  -march=pentium3 -O2   -o alleyoop  alleyoop.o ldd.o legolas.o list.o
menu-utils.o parser.o prefs.o process.o symtab.o vgcachegrindprefs.o
vgdefaultview.o vgerror.o vggeneralprefs.o vghelgrindprefs.o vgio.o vgmarshal.o
vgmemcheckprefs.o vgrule.o vgrule-editor.o vgrule-list.o vgrulepattern.o
vgsearchbar.o vgskinprefs.o vgskinview.o vgstrpool.o main.o
-Wl,--export-dynamic -pthread -L/usr/X11R6/lib -lglade-2.0 -lgnomeui-2 -lSM
-lICE -lbonoboui-2 -lxml2 -lpthread -lz -lgnomecanvas-2 -lgnome-2 -lpopt
-lart_lgpl_2 -lpangoft2-1.0 -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0
-lgdk_pixbuf-2.0 -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lbonobo-2
-lgnomevfs-2 -lbonobo-activation -lgconf-2 -lORBit-2 -lgobject-2.0
-lgthread-2.0 -lm -lgmodule-2.0 -ldl -lglib-2.0    -Wl,-Bstatic -lbfd -liberty
-Wl,-Bdynamic

------- Comment #6 From Morgan Collins 2004-05-13 09:09:53 0000 -------
Take a look at gst-editor:

RDEPEND=">=media-libs/gstreamer-0.6
    >=x11-libs/gtk+-2
    >=gnome-base/libgnomeui-2
    >=gnome-base/libbonoboui-2
    >=gnome-base/libglade-2
    app-text/scrollkeeper"
                                                                                
DEPEND="${RDEPEND}                                                      
    >=dev-util/pkgconfig-0.9"

There is no point in including a runtime dependency for libxml for instance, because libglade has the dependancy not gst-editor. 

You can determine the first level dependencies by looking at configure.in and see what the program actually uses and then look at Makefile and see what gets added.  Often times configure.in will include libbonoboui or the like, which in turns depends on libgnome-vfs, so libgnome-vfs gets into the Makefile, but it is not depended on. At some point libbonoboui could not require libgnome-vfs, or gnome-vfs could become obsolete and something else could replace it, at that point if gnome-vfs is masked, your ebuild is broke. It is best to only include first level dependencies, which my original ebuild covered.

------- Comment #7 From Daniel Black 2004-05-13 14:09:44 0000 -------
Thankyou for teaching me this.

First Last Prev Next    No search results available      Search page      Enter new bug