Spec URL: http://sailer.fedorapeople.org/mingw32-antlr.spec SRPM URL: http://sailer.fedorapeople.org/mingw32-antlr-2.7.7-3.fc14.src.rpm Description: MinGW Windows ANTLR C++ run-time library This is the run-time library needed for antlr2 generated C++ parsers. Scratch Build: http://koji.fedoraproject.org/koji/taskinfo?taskID=2853816 $ rpmlint mingw32-antlr.spec mingw32-antlr-2.7.7-3.fc14.src.rpm mingw32-antlr-2.7.7-3.fc14.noarch.rpm mingw32-antlr-static-2.7.7-3.fc14.noarch.rpm mingw32-antlr-debuginfo-2.7.7-3.fc14.noarch.rpm mingw32-antlr.noarch: W: no-manual-page-for-binary i686-pc-mingw32-antlr-config mingw32-antlr-static.noarch: E: arch-independent-package-contains-binary-or-object /usr/i686-pc-mingw32/sys-root/mingw/lib/libantlr2.a mingw32-antlr-static.noarch: W: no-documentation mingw32-antlr-debuginfo.noarch: E: debuginfo-without-sources 4 packages and 1 specfiles checked; 2 errors, 2 warnings. These rpmlint Warnings & Errors should be waived as per MinGW packaging guidelines. The antlr-config tool is self-explanatory, the native package does not have a man page as well.
Taking for review. The spec and srpm above are missing all BuildRequires, did you upload the right files? The comment "we ship only a static library" just above the %files section is misleading now that you're also building a dll. There are some substantial build system improvements in mingw32-antlr.patch, have you submitted it upstream already? Not sure how close you want to keep to the native antlr spec file, but if that's not important, then you can remove BuildRoot definition, the whole %clean section, and the "rm -rf $RPM_BUILD_ROOT" in the beginning of %install, as they are no longer needed with current Fedora releases.
Hi Kalev, thanks for taking the review! Yes indeed I uploaded the wrong version. I've now corrected this and fixed the spec according to your comments. http://sailer.fedorapeople.org/mingw32-antlr-2.7.7-4.fc14.src.rpm http://sailer.fedorapeople.org/mingw32-antlr.spec http://koji.fedoraproject.org/koji/taskinfo?taskID=3042739 Yes I have reported my changes upstream using the "feedback" form on the www.antlr2.org website. There does not seem to be an antlr2 bugtracker (the bugs link leads to the antlr3 bug tracker that does not seem to have a v2 tag)
Fedora review mingw32-antlr-2.7.7-4.fc14.src.rpm 2011-05-02 + OK ! needs attention rpmlint output: $ rpmlint mingw32-antlr \ mingw32-antlr-static \ mingw32-antlr-debuginfo-2.7.7-4.fc15.noarch.rpm \ mingw32-antlr-2.7.7-4.fc15.src.rpm mingw32-antlr.noarch: W: spelling-error %description -l en_US parsers -> parser, parses, parers mingw32-antlr.noarch: W: no-manual-page-for-binary i686-pc-mingw32-antlr-config mingw32-antlr-static.noarch: E: arch-independent-package-contains-binary-or-object /usr/i686-pc-mingw32/sys-root/mingw/lib/libantlr2.a mingw32-antlr-static.noarch: W: no-documentation mingw32-antlr-debuginfo.noarch: E: debuginfo-without-sources mingw32-antlr.src: W: spelling-error %description -l en_US parsers -> parser, parses, parers 4 packages and 0 specfiles checked; 2 errors, 4 warnings. All these rpmlint warnings and errors are harmless and can be ignored. + rpmlint output + The package is named according to Fedora MinGW packaging guidelines + The spec file name matches the package base name + The package meets the Packaging Guidelines + The package is licensed with a Fedora approved license and meets the Licensing Guidelines. + The license field in the spec file matches the actual license + The stated license is the same as the one for the corresponding native Fedora package + The package contains the license file (LICENSE.txt) + Spec file is written in American English + Spec file is legible + Upstream sources match sources in the srpm. md5sum: 01cc9a2a454dd33dcd8c856ec89af090 antlr-2.7.7.tar.gz 01cc9a2a454dd33dcd8c856ec89af090 Download/antlr-2.7.7.tar.gz + The package builds in koji n/a ExcludeArch bugs filed + BuildRequires look sane n/a The spec file MUST handle locales properly n/a ldconfig in %post and %postun + Package does not bundle copies of system libraries n/a Package isn't relocatable + Package owns all directories it creates + No duplicate files in %files + Permissions are properly set + Consistent use of macros + The package must contain code or permissible content n/a Large documentation files should go in -doc subpackage + Files marked %doc should not affect package n/a Header files should be in -devel Fedora MinGW guidelines allow headers in main package + Static libraries should be in -static n/a Library files that end in .so must go in a -devel package n/a -devel must require the fully versioned base n/a Packages should not contain libtool .la files Fedora MinGW guidelines allow .la files n/a Packages containing GUI apps must include %{name}.desktop file + Directory ownership sane + Filenames are valid UTF-8 If you want to, you can also remove the %clean section and the %defattr lines which are also no longer required in current Fedora releases, before importing the package to git: http://fedoraproject.org/wiki/PackagingGuidelines#.25clean http://fedoraproject.org/wiki/PackagingGuidelines#File_Permissions Looks good. APPROVED
Thanks! Will remove %clean and %defattr New Package SCM Request ======================= Package Name: mingw32-antlr Short Description: MinGW Windows ANTLR C++ run-time library Owners: sailer Branches: f14 f15
This package does not seem to meet the naming requirements for mingw packages. Specifically, the source package name (which is what you are asking me to create) does not begin with "mingw-". http://fedoraproject.org/wiki/Packaging:MinGW#Package_naming I did not check other aspects of the guidelines.
Please check out the version of the MinGW packaging guidelines that apply to f14 and f15, which are here: http://fedoraproject.org/wiki/Packaging:MinGW_Old As far as I know the new ones are still pending some legal review, and will never apply to anything older than f16.
Hi Jason and Thomas, Right now we're in the middle of getting support for mingw-w64 landed in Fedora 16. See https://fedoraproject.org/wiki/Features/Mingw-w64_cross_compiler for more details about that. As part of this feature, we've had to update the packaging guidelines and have them approved by the FPC. This was done recently. This is only one of the steps required to get everything ready. Right now we're waiting for 5 packages to be reviewed and approved before we can continue. One of these packages, mingw-filesystem, implements all the macros specified in the new guidelines. As long as that package isn't approved, the new packaging guidelines can't be enforced yet. Packages awaiting review: mingw-filesystem: https://bugzilla.redhat.com/show_bug.cgi?id=673784 mingw-binutils: https://bugzilla.redhat.com/show_bug.cgi?id=673786 mingw-gcc: https://bugzilla.redhat.com/show_bug.cgi?id=673788 mingw-headers: https://bugzilla.redhat.com/show_bug.cgi?id=673790 mingw-crt: https://bugzilla.redhat.com/show_bug.cgi?id=673792 So to summarize, as long as the 5 packages mentioned above (where mingw-filesystem is the most important one) aren't approved we can't use the new guidelines yet and we've got to stick with the old ones.
Wait until https://fedorahosted.org/fpc/ticket/83 is resolved
New Package SCM Request ======================= Package Name: mingw-antlr Short Description: MinGW Windows ANTLR C++ run-time library Owners: sailer Branches: f14 f15
Git done (by process-git-requests).
mingw-antlr-2.7.7-5.fc15 has been submitted as an update for Fedora 15. https://admin.fedoraproject.org/updates/mingw-antlr-2.7.7-5.fc15
mingw-antlr-2.7.7-5.fc14 has been submitted as an update for Fedora 14. https://admin.fedoraproject.org/updates/mingw-antlr-2.7.7-5.fc14
mingw-antlr-2.7.7-5.fc14 has been pushed to the Fedora 14 testing repository.
mingw-antlr-2.7.7-5.fc15 has been pushed to the Fedora 15 stable repository.
mingw-antlr-2.7.7-5.fc14 has been pushed to the Fedora 14 stable repository.