Spec URL: http://remi.fedorapeople.org/perl-Gtk2-MozEmbed.spec SRPM URL: http://remi.fedorapeople.org/perl-Gtk2-MozEmbed-0.08-1.fc8.src.rpm Mock Log: http://remi.fedorapeople.org/perl-Gtk2-MozEmbed-build.log Koji Scratch Build: http://koji.fedoraproject.org/koji/taskinfo?taskID=1128243 Description: This module allows you to use the Mozilla embedding widget from Perl. --- rpmlint output : perl-Gtk2-MozEmbed.src: I: checking perl-Gtk2-MozEmbed.x86_64: I: checking perl-Gtk2-MozEmbed.x86_64: W: devel-file-in-non-devel-package /usr/lib64/perl5/vendor_perl/5.10.0/x86_64-linux-thread-multi/Gtk2/MozEmbed/Install/gtkmozembed2perl.h perl-Gtk2-MozEmbed.x86_64: W: devel-file-in-non-devel-package /usr/lib64/perl5/vendor_perl/5.10.0/x86_64-linux-thread-multi/Gtk2/MozEmbed/Install/gtkmozembed2perl-autogen.h perl-Gtk2-MozEmbed-debuginfo.x86_64: I: checking 3 packages and 0 specfiles checked; 0 errors, 2 warnings. no -devel package seems ok according to perl Guidelines This package is needed for gmusicbrowser (comming soon for review)
rpmlint's warnings are expected for Perl packages; and while MozEmbed.so()(64bit) will need to be filtered, we're still figuring out the best way to do that over on fedora-perl-devel-list, so that's not a blocker right now. 1) MozEmbed.xs and other source files say LGPLv2+. 2) %check should be included, even if "make test" needs to be wrapped in some construct to prevent it from running in mock, e.g.: %{?_with_display_tests: make test} This will allow rebuilding locally using "rpmbuild --with display-tests" or defining "%_with_display_tests 1" in ~/.rpmmacros. 3) '%{__rm}' should be replaced with just 'rm', or make and chmod also need to be their macro representations. (Though I always prefer the %{_fixperms} chmod incantation :)) 4) %{perl_vendorarch}/Gtk2 and %{perl_vendorarch}/auto/Gtk2 need to be included as dirs in %files. One easy way to do so is: %{perl_vendorarch}/* %exclude %dir %{perl_vendorarch}/auto/ koji @ http://koji.fedoraproject.org/koji/taskinfo?taskID=1215907 Source tarball matches upstream: 23ffb8e4134ee8a8897149bf9db43d400cdbbe17 Gtk2-MozEmbed-0.08.tar.gz 23ffb8e4134ee8a8897149bf9db43d400cdbbe17 Gtk2-MozEmbed-0.08.tar.gz.srpm Provides, requires and rpmlint looks sane: =====> perl-Gtk2-MozEmbed-0.08-1.fc10.x86_64.rpm <===== ====> rpmlint perl-Gtk2-MozEmbed.x86_64: W: devel-file-in-non-devel-package /usr/lib64/perl5/vendor_perl/5.10.0/x86_64-linux-thread-multi/Gtk2/MozEmbed/Install/gtkmozembed2perl.h perl-Gtk2-MozEmbed.x86_64: W: devel-file-in-non-devel-package /usr/lib64/perl5/vendor_perl/5.10.0/x86_64-linux-thread-multi/Gtk2/MozEmbed/Install/gtkmozembed2perl-autogen.h 1 packages and 0 specfiles checked; 0 errors, 2 warnings. ====> provides for perl-Gtk2-MozEmbed-0.08-1.fc10.x86_64.rpm MozEmbed.so()(64bit) perl(Gtk2::MozEmbed) = 0.08 perl(Gtk2::MozEmbed::Install::Files) perl-Gtk2-MozEmbed = 0.08-1.fc10 perl-Gtk2-MozEmbed(x86-64) = 0.08-1.fc10 ====> requires for perl-Gtk2-MozEmbed-0.08-1.fc10.x86_64.rpm gecko-libs = 1.9.0.6 libatk-1.0.so.0()(64bit) libc.so.6()(64bit) libc.so.6(GLIBC_2.2.5)(64bit) libcairo.so.2()(64bit) libdl.so.2()(64bit) libgdk-x11-2.0.so.0()(64bit) libgdk_pixbuf-2.0.so.0()(64bit) libglib-2.0.so.0()(64bit) libgmodule-2.0.so.0()(64bit) libgobject-2.0.so.0()(64bit) libgthread-2.0.so.0()(64bit) libgtk-x11-2.0.so.0()(64bit) libnspr4.so()(64bit) libpango-1.0.so.0()(64bit) libpangocairo-1.0.so.0()(64bit) libplc4.so()(64bit) libplds4.so()(64bit) libpthread.so.0()(64bit) libpthread.so.0(GLIBC_2.2.5)(64bit) librt.so.1()(64bit) libxpcom.so()(64bit) libxul.so()(64bit) perl >= 0:5.008 perl(:MODULE_COMPAT_5.10.0) perl(DynaLoader) perl(Glib) >= 1.180 perl(Gtk2) perl(Gtk2) >= 1.081 perl(strict) perl(warnings) rtld(GNU_HASH) =====> perl-Gtk2-MozEmbed-debuginfo-0.08-1.fc10.x86_64.rpm <===== ====> rpmlint 1 packages and 0 specfiles checked; 0 errors, 0 warnings. ====> provides for perl-Gtk2-MozEmbed-debuginfo-0.08-1.fc10.x86_64.rpm perl-Gtk2-MozEmbed-debuginfo = 0.08-1.fc10 perl-Gtk2-MozEmbed-debuginfo(x86-64) = 0.08-1.fc10 ====> requires for perl-Gtk2-MozEmbed-debuginfo-0.08-1.fc10.x86_64.rpm Address #1-4 and I think we're in business :-)
1, 2 and 3 fixed About 4, I don't think this folders need to be owned be the package. Both are already owned by perl-Gtk2 which is Required . Both are also owned by perl-Gtk2-TrayIcon which is probably a mistake (or an exception for the Guidelines exists for perl ?) Guidelines : Packages must not own files already owned by other packages. http://remi.fedorapeople.org/perl-Gtk2-MozEmbed.spec http://remi.fedorapeople.org/perl-Gtk2-MozEmbed-0.08-2.fc8.src.rpm
Basically, Perl packages should own everything they provide (including directories) under %{perl_vendorarch} or %{perl_vendorlib} except %{perl_vendorarch}/auto.... Even if they're already owned by another Perl package. (Rationale being that as we move to 5.10.1, 5.10.2, etc, we will see directory ownership start to be a bit fuzzy.) https://fedoraproject.org/wiki/Packaging:Perl#Directory_Ownership
Thanks for pointing me to this Guidelines section I haven't noticed... It seems clear now :) http://remi.fedorapeople.org/perl-Gtk2-MozEmbed.spec http://remi.fedorapeople.org/perl-XML-Entities-0.02-3.fc8.src.rpm %changelog * Tue Mar 03 2009 Remi Collet <Fedora> - 0.08-3 - Fix from review : Gtk2 dir ownership
APPROVED
Thanks for the review. New Package CVS Request ======================= Package Name: perl-Gtk2-MozEmbed Short Description: Interface to the Mozilla embedding widget Owners: remi Branches: F-10 InitialCC:
cvs done.
perl-Gtk2-MozEmbed-0.08-3.fc10.1 has been submitted as an update for Fedora 10. http://admin.fedoraproject.org/updates/perl-Gtk2-MozEmbed-0.08-3.fc10.1
perl-Gtk2-MozEmbed-0.08-3.fc10.1 has been pushed to the Fedora 10 stable repository. If problems still persist, please make note of it in this bug report.