Spec URL: http://people.fedoraproject.org/~bruno/ocaml-camlimages.spec SRPM URL: http://people.fedoraproject.org/~bruno/ocaml-camlimages-4.0.1-1.fc17.src.rpm Description: This is an image processing library, which provides some basic functions of image processing and loading/saving various image file formats. In addition the library can handle huge images that cannot be (or can hardly be) stored into the memory (the library automatically creates swap files and escapes them to reduce the memory usage).
Note that ocaml-camlimages was previously packaged for Fedora. The last successful build was for F13. There have been significant changes in the build process between the current and previous versions of the package since then. I have done a scratch build at: http://koji.fedoraproject.org/koji/taskinfo?taskID=3745888
I believe that these lines: %define _use_internal_dependency_generator 0 %define __find_requires /usr/lib/rpm/ocaml-find-requires.sh %define __find_provides /usr/lib/rpm/ocaml-find-provides.sh should not be used anymore, even though they still appear on the wiki. When I removed those lines from some ocaml packages, I got the same Provides/Requires as before, plus additional (correct) Requires on C libraries that doing the above apparently suppresses. See: http://lists.fedoraproject.org/pipermail/ocaml-devel/2011-December/002215.html http://lists.fedoraproject.org/pipermail/ocaml-devel/2012-January/002217.html
Thanks. It doesn't look like I can expect much help from the ocaml-devel list based on the recent archives. I am not going to do new builds just yet with those lines removed, but it is good to know that there may be issues with the wiki recommendations.
I'll be reviewing this tonight, assigning to me.
I ran out of steam last night, but today is another day. So about the /usr/lib/rpm/ocaml-find-requires.sh stuff, I just checked ocaml-lablgtk, which is one of the most active maintained ocaml packages, and it has this in its changelog: * Tue Jan 5 2010 Richard W.M. Jones <rjones> - 2.14.0-4 - Use upstream RPM 4.8 dependency generator. So it seems that rpm itself now (well for quite a while actually) knows how to handle ocaml dependencies and those lines indeed can be dropped. Looking at that same package it also seems that the opt part can now be build unconditionally.
Good: ==== - rpmlint checks return: ocaml-camlimages-4.0.1-1.fc17.src.rpm ocaml-camlimages.src:89: W: macro-in-comment %exclude ocaml-camlimages.src:89: W: macro-in-comment %{_libdir} ocaml-camlimages.src:103: W: macro-in-comment %{_libdir} ocaml-camlimages.src: W: invalid-url Source1: camlimages-2.2.0-htmlref.tar.gz 3 packages and 0 specfiles checked; 0 errors, 4 warnings. These can all be ignored. - package meets naming guidelines - package meets packaging guidelines - license (GPLv2 with exceptions) OK, text in %doc, matches source - spec file legible, in am. english - source matches upstream - package compiles on devel (x86) - no missing BR - no unnecessary BR - no locales - not relocatable - owns all directories that it creates - no duplicate files - permissions ok - macro use consistent - code, not content - no need for -docs - nothing in %doc affects runtime - no need for .desktop file - devel package ok - no .la files - post/postun ldconfig not needed since no libs directly under %{_libdir} - devel requires base package n-v-r Should Fix ====== -Drop these 3 lines (use rpms internal dep generator instead): %define _use_internal_dependency_generator 0 %define __find_requires /usr/lib/rpm/ocaml-find-requires.sh %define __find_provides /usr/lib/rpm/ocaml-find-provides.sh -Make opt unconditional (not 100% sure about this, but if lablgtk does it can probably be dropped and it makes the spec easier to read) -Using: https://bitbucket.org/camlspotter/camlimages/get/v4.0.1.tar.gz as Souce0 works fine for me, wget gets a v4.0.1.tar.gz, spectool -g gets a v4.0.1.tar.gz and rpmlint likes it (iow it can download and verify the source) -Doing rm -rf buildroot in %install and having a %clean is no longer needed now a days, and should not be done when not manually defining buildroot inside the spec - -devel packages should require the main package like this: Requires: %{name}%{?_isa} = %{version}-%{release} So please add %{?_isa} there. -You could also drop the 2 %defattr lines, those are also not needed now a days Since there are no blockers, this package is APPROVED! But please do consider fixing some of the should fix items.
Thanks for the review! I'll fix the should fixes before I ask for unretirement / do the new initial import. I might do a little tonight, but most likely I'll do it Saturday during the day.
I have an updated version that fixes the should fixes at: http://people.fedoraproject.org/~bruno/ocaml-camlimages.spechttp://people.fedoraproject.org/~bruno/ocaml-camlimages-4.0.1-2.fc18.src.rpm
Package Change Request ====================== Package Name: ocaml-camlimages Short Description: OCaml image processing library New Branches: f15 f16 f17 devel Owners: bruno This technically an unretirement, though ocaml-calimages has been gone for multiple releases now and I don't think has a branch for any active releases. There should have been a new line between the two URLs in the previous comment so I am going to copy them here again so they are usable. http://people.fedoraproject.org/~bruno/ocaml-camlimages.spec http://people.fedoraproject.org/~bruno/ocaml-camlimages-4.0.1-2.fc18.src.rpm
Git done (by process-git-requests). Created new branches, please take ownership of devel, and possibly EL-6.
The package still shows as deprecated in el6 and devel, so I can't take ownership there.
The package also seems to be blocked from building even on the instances that I am approved for. Builds are failing for being blocked on f15 through devel. el6 does not have one of the build dependencies (ocaml-omake), so at least for the near term the package should stay blocked in el6.
I unretired EL-6 and devel. You'll need to file a ticket with rel-eng to unblock the Fedora branched.
ocaml-camlimages-4.0.1-2.fc17 has been submitted as an update for Fedora 17. https://admin.fedoraproject.org/updates/ocaml-camlimages-4.0.1-2.fc17
ocaml-camlimages-4.0.1-2.fc15 has been submitted as an update for Fedora 15. https://admin.fedoraproject.org/updates/ocaml-camlimages-4.0.1-2.fc15
ocaml-camlimages-4.0.1-2.fc16 has been submitted as an update for Fedora 16. https://admin.fedoraproject.org/updates/ocaml-camlimages-4.0.1-2.fc16
ocaml-camlimages-4.0.1-2.fc17 has been pushed to the Fedora 17 testing repository.
ocaml-camlimages-4.0.1-2.fc17 has been pushed to the Fedora 17 stable repository.
ocaml-camlimages-4.0.1-2.fc15 has been pushed to the Fedora 15 stable repository.
ocaml-camlimages-4.0.1-2.fc16 has been pushed to the Fedora 16 stable repository.