Please do not reply directly to this email. All additional comments should be made in the comments box of this bug report. Summary: Review Request: ruby-gnome2 - A ruby binding of libgnome/libgnomeui-2.x https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=232160 ------- Additional Comments From mtasaka@xxxxxxxxxxxxxxxxxxx 2007-03-25 14:17 EST ------- Created an attachment (id=150856) --> (https://bugzilla.redhat.com/bugzilla/attachment.cgi?id=150856&action=view) mock build log of 0.16.0-1 with libgnomeprintui added to BR Well, for 0.16.0-1: * SourceURL - For source URL. check: http://fedoraproject.org/wiki/Packaging/SourceURL * Conditional dependency -ruby-cairo Well, "ruby extconf.rb" log says many time about the following: --------------------------------------------------- rb_cairo.h... no --------------------------------------------------- According to gooling, this may be enabled by using ruby-cairo. http://cairo.freedesktop.org/rcairo IMO you should submit ruby-cairo first (as I cannot find currently on Fedora) and use ruby-cairo for this. - And please check other conditional dependency i.e. check the line in which "ruby extconf.rb" says "no". * BuildRequires - Mockbuild fails on FC-devel i386. libgnomeprint22-devel BR for ruby-gnomeprintui2 should be libgnomeprintui22-devel. * Release specific dependency - Usually, the requires/provides, especially for main package should be release number specific * Requires - Please check the requirement for each subpackage precisely. Usually, this can be examined by checking the line which contains #include word in header files (and something else if needed) EXAMPLE: Currently, ruby-atk-devel requires ------------------------------------------------------ Requires: ruby(atk) = %{version} ------------------------------------------------------ However, /usr/lib/ruby/site_ruby/1.8/i386-linux/rbatk.h in ruby-atk-devel contains the file: ------------------------------------------------------ 10 #include "ruby.h" 11 #include <atk/atk.h> 12 #include <atk/atk-enum-types.h> 13 #include <atk/atknoopobject.h> 14 #include <atk/atknoopobjectfactory.h> 15 #include "rbgobject.h" 16 #include "rbatkversion.h" ------------------------------------------------------ This means that ruby-atk-devel should require ruby-devel, atk-devel, ruby-glib-devel(=ruby(glib-devel)). * Group - "Development" group should not be used for non-devel package. Usually "System Environment/Libraries" should be used. * Timestamps - Please keep timestamps for *.rb *.h text files. These files are not created nor modified at build stage and installed directly from tarball. * For .rb files, timestamps are kept by ----------------------------------------------- make install DESTDIR=$RPM_BUILD_ROOT INSTALL="%{__install} -p" ----------------------------------------------- * For header files, it is a bit difficult. Well, actually there is a way, however my way is somewhat ugly and I wonder if I should stick to keep timestamps by doing so... ? However, would you ask upstream to keep timestamps on *.rb *.h files by default? * Gecko engine dependency - Well, I have to explain this a bit longer. # Summary - You must specify what version of firefox you used for build time. i.e. you must use "BuildRequires: firefox-devel = <VERSION>" - You must specify version specific dependency against firefox for ruby-gtkmozembed. i.e. you must write for ruby-gtkmozembed: Requires: firefox = <version> - NOTE: firefox version may differ on each branches (devel/FC-6/FC-5). # Explanation - Well, what ruby-gtkmozembed requires are: -------------------------------------------------------- [tasaka1@localhost ruby-gnome2]$ rpm -q --requires ruby-gtkmozembed | egrep '(moz|xp)' libgtkembedmoz.so libxpcom.so -------------------------------------------------------- NOTE that only basenames are checked by rpm. However, ldd -r shows: -------------------------------------------------------- [tasaka1@localhost ruby-gnome2]$ ldd -r /usr/lib/ruby/site_ruby/1.8/i386-linux/gtkmozembed.so 2>/dev/null | egrep '(moz|xpcom)' libgtkembedmoz.so => /usr/lib/firefox-2.0.0.3/libgtkembedmoz.so (0x00110000) libxpcom.so => /usr/lib/firefox-2.0.0.3/libxpcom.so (0x0012f000) libxpcom_core.so => /usr/lib/firefox-2.0.0.3/libxpcom_core.so (0x00cad000) --------------------------------------------------------- Here, the directory /usr/lib/firefox-2.0.0.3 is not in default library path and actually gtkmozembed.so has rpath. --------------------------------------------------------- [tasaka1@localhost ruby-gnome2]$ objdump -T --headers --private-headers /usr/lib/ruby/site_ruby/1.8/i386-linux/gtkmozembed.so | grep RPATH RPATH /usr/lib/firefox-2.0.0.3 --------------------------------------------------------- So, if firefox is updated to 2.0.0.4, it succeeds without any complaint, because rpm does not check rpath dependency. However gtkmozembed.so actually requires libxpcom.so under /usr/lib/firefox-2.0.0.3, so ruby-gtkmozembed gets unusable. To aviod this, we have to specify version dependency against firefox explicitly. * Summary - Well, IMO summary should not be a sentence, but should be an noun phrase, like ---------------------------------------------------------- Summary: Ruby binding of libgnome/libgnomeui-2.x ---------------------------------------------------------- - and, summary/description should be different between a subpackage and its development part subpackage. i.e. summary/description of ruby-atk/ruby-atk-devel should be different, for example. * Macro - Please use macros. E.g. /usr/bin -> %{_bindir} I have not checked yet for - what documents should be added to each subpackage - whether license is correct and is of no problem - and something else...... -- Configure bugmail: https://bugzilla.redhat.com/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the QA contact for the bug, or are watching the QA contact. _______________________________________________ Fedora-package-review mailing list Fedora-package-review@xxxxxxxxxx http://www.redhat.com/mailman/listinfo/fedora-package-review