Spec URL: https://www.rombobjörn.se/packages/ahven-2.4-1/ahven.spec SRPM URL: https://www.rombobjörn.se/packages/ahven-2.4-1/ahven-2.4-1.fc20.src.rpm Description: Ahven is a simple unit testing library (or a framework) for the Ada programming language. It is loosely modeled after Junit and some ideas are taken from Aunit. Features: · Simple API · Small size · Junit-compatible test results in XML format, which allows integration with tools like Jenkins and Cruisecontrol · Strict coding style (enforced by Adacontrol) · Plain Ada 95 code, no Ada 2005 features used, but can be compiled as Ada 2005 code if needed · Portable across different compilers and operating systems · Permissive Open Source license (ISC) I'm not sure the split into a base package and a -devel subpackage is very useful for a unit testing library that only testsuites will link to, but the other unit testing libraries I found in Fedora had -devel subpackages so I packaged this one the same way. Note: ahven-devel contains copies of Jquery and some other Javascript libraries. Those are copied there by Sphinx when it generates the HTML documentation. It's possible that Sphinx needs to be adjusted to comply with the new Javascript policy, but I don't think Ahven is at fault for this. Fedora Account System username: rombobeorn
Updated for policy changes and the current state of Rawhide: https://www.rombobjörn.se/packages/ahven-2.4-2/ahven.spec https://www.rombobjörn.se/packages/ahven-2.4-2/ahven-2.4-2.fc21.src.rpm
I'll take a look (though be forewarned that I know _nothing_ about Ada ;).
Ok, there are a number of rpmlint warnings: Rpmlint ------- Checking: ahven-2.4-2.fc21.x86_64.rpm ahven-devel-2.4-2.fc21.x86_64.rpm ahven-2.4-2.fc21.src.rpm ahven.x86_64: I: enchant-dictionary-not-found sv ahven.x86_64: W: executable-stack /usr/lib64/libahven.so.24 ...the above is probably worth fixing: https://fedoraproject.org/wiki/Packaging_tricks#Executable_stack ahven.x86_64: W: no-documentation ...meh -- not much worth including in the main package doc-wise. ahven-devel.x86_64: W: only-non-binary-in-usr-lib ...this appears to be complaining about the GNAT libs. I'll assume they're ok, and ignore this. Please do correct this if it's wrong however. ahven-devel.x86_64: W: hidden-file-or-dir /usr/share/doc/ahven/html/.buildinfo ...I'd also fix this. Probably simplest to just remove that file after the %install stage. It doesn't appear to be necessary in the package. ahven-devel.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/ahven/html/_static/jquery.js ahven-devel.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/ahven/html/objects.inv ahven-devel.x86_64: W: file-not-utf8 /usr/share/doc/ahven/html/objects.inv 3 packages and 0 specfiles checked; 0 errors, 7 warnings. I guess this is the Sphinx problem you referred to? I'll plan to just waive the check on this one since it's just the docs.
Also, Adam's comments in this bug may be a better approach than undefining _hardened_build: https://bugzilla.redhat.com/show_bug.cgi?id=1197501#c5 ...but I'll leave that for you to decide if it's appropriate.
(In reply to Jeff Layton from comment #3) > ahven.x86_64: I: enchant-dictionary-not-found sv That one only says that you don't have a Swedish dictionary installed. > ahven.x86_64: W: executable-stack /usr/lib64/libahven.so.24 > > ...the above is probably worth fixing: > > https://fedoraproject.org/wiki/Packaging_tricks#Executable_stack As documented in https://fedoraproject.org/wiki/Packaging:Ada, an executable stack is normal in Ada because GNAT uses trampolines for pointers to nested functions. > ahven-devel.x86_64: W: only-non-binary-in-usr-lib > > ...this appears to be complaining about the GNAT libs. I'll assume they're > ok, and ignore this. Please do correct this if it's wrong however. Like in most -devel packages there is a symbolic link in _libdir. Like in all Ada libraries there are also a number of ALI files. ALI files are architecture-specific so they can't be moved to /usr/share. I have no idea what other binary files RPMlint expects to find in a -devel package that would silence that warning. > ahven-devel.x86_64: W: hidden-file-or-dir > /usr/share/doc/ahven/html/.buildinfo > > ...I'd also fix this. Probably simplest to just remove that file after the > %install stage. It doesn't appear to be necessary in the package. Well, Sphinx generates that and it didn't seem worth caring about, but OK, I'll remove it. > ahven-devel.x86_64: W: wrong-file-end-of-line-encoding > /usr/share/doc/ahven/html/_static/jquery.js > ahven-devel.x86_64: W: wrong-file-end-of-line-encoding > /usr/share/doc/ahven/html/objects.inv > ahven-devel.x86_64: W: file-not-utf8 /usr/share/doc/ahven/html/objects.inv > 3 packages and 0 specfiles checked; 0 errors, 7 warnings. > > I guess this is the Sphinx problem you referred to? I'll plan to just waive > the check on this one since it's just the docs. For jquery.js the argument is the same: If there's a problem with that file, the place to fix it is in Sphinx. objects.inv isn't even a text file. If I'm removing .buildinfo I'll simply remove that one too. (In reply to Jeff Layton from comment #4) > Also, Adam's comments in this bug may be a better approach than undefining > _hardened_build: > > https://bugzilla.redhat.com/show_bug.cgi?id=1197501#c5 > > ...but I'll leave that for you to decide if it's appropriate. The general case is more complex than simply using -fPIC everywhere. In this specific case the testsuite isn't being packaged and doesn't need hardening. The library itself is hardened.
Fair enough then. Those explanations all look reasonable to me, and you're definitely more knowledgeable about Ada packages than I am. I'll go ahead and consider the review "passed". You can fix up .buildinfo and objects.inv at your leisure.
Thanks Jeff for the review. New Package SCM Request ======================= Package Name: ahven Short Description: A unit testing framework for Ada 95 Upstream URL: http://ahven.stronglytyped.org/ Owners: rombobeorn Branches: f21 f22 InitialCC:
Git done (by process-git-requests).
ahven-2.4-3.fc22 has been submitted as an update for Fedora 22. https://admin.fedoraproject.org/updates/ahven-2.4-3.fc22
ahven-2.4-3.fc22 has been pushed to the Fedora 22 testing repository.
ahven-2.4-4.fc22 has been pushed to the Fedora 22 testing repository.
ahven-2.4-4.fc22 has been pushed to the Fedora 22 stable repository.