Spec URL: http://toolshed.yyz.redhat.com/~langel/xmlgraphics-commons/xmlgraphics-commons.spec SRPM URL: http://toolshed.yyz.redhat.com/~langel/xmlgraphics-commons/xmlgraphics-commons-1.2-1jpp.src.rpm I just finished packaging xmlgraphics-commons and I would appreciate a review so that I can get it into Fedora Extras. Description: Apache XML Graphics Commons is a library that consists of several reusable components used by Apache Batik and Apache FOP. Many of these components can easily be used separately outside the domains of SVG and XSL-FO. You will find components such as a PDF library, an RTF library, Graphics2D implementations that let you generate PDF & PostScript files, and much more.
Publicly visible links: http://langel.fedorapeople.org/xmlgraphics-commons/xmlgraphics-commons-1.2-1jpp.src.rpm http://langel.fedorapeople.org/xmlgraphics-commons/xmlgraphics-commons.spec
the src rpm link is incorrect in the last comment. it is here: http://langel.fedorapeople.org/xmlgraphics-commons/xmlgraphics-commons-1.2-1.src.rpm
- rpmlint: $ rpmlint xmlgraphics-commons-1.2-1.src.rpm $ rpmlint RPMS/noarch/xmlgraphics-commons-1.2-1.noarch.rpm $ rpmlint RPMS/noarch/xmlgraphics-commons-javadoc-1.2-1.noarch.rpm xmlgraphics-commons-javadoc.noarch: E: non-standard-dir-perm /usr/share/javadoc/xmlgraphics-commons-1.2/org/apache/xmlgraphics/xmp/merge/class-use 02755 xmlgraphics-commons-javadoc.noarch: E: non-standard-dir-perm /usr/share/javadoc/xmlgraphics-commons-1.2/org/apache/xmlgraphics/util 02755 xmlgraphics-commons-javadoc.noarch: E: non-standard-dir-perm /usr/share/javadoc/xmlgraphics-commons-1.2/org/apache/xmlgraphics/image/codec/png 02755 ... These directory permissions need to be set to 0755. xmlgraphics-commons-javadoc.noarch: W: non-standard-group Development/Documentation Please fix. xmlgraphics-commons-javadoc.noarch: W: dangerous-command-in-%post rm xmlgraphics-commons-javadoc.noarch: W: dangerous-command-in-%postun rm Please eliminate the post/postun sections by making xmlgraphics-commons-javadoc simply own (with %doc) the %{name} symlink. - package name fine - spec file name matches package name - package meets packaging guidelines - package meets licensing guidelines - license field matches actual license - license marked %doc Please mark the LICENSE file with %doc. - spec file uses American English - spec file legible Please add a comment explaining this loop: for j in $(find . -name "*.jar"); do mv $j $j.no done This is unnecessary: install -dm 755 $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version} cp LICENSE $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version} ... %{_docdir}/%{name}-%{version}/LICENSE It can be replaced with: %doc LICENSE in the base %files section. The %doc macro automatically handles installing the package's documentation directory and installing therein files specified relative to the build directory. You should also include NOTICE and README on the %doc line. - source and upstream md5sum match - package builds successfully on i386 - all build requirements listed - no locales - no shared libraries for ldconfig - not relocatable - directories: owns %{_javadocdir}/%{name}-%{version} which it creates, requires jpackage-utils for %{_javadir} into which it installs jar files - no duplicate files - -javadoc directory permissions not set properly See above. - %clean section fine - consistent use of macros - contains code - doc subpackage - docs don't affect runtime - no header files - no static libraries - no pkgconfig files - no library files - no devel package - no .la files - no desktop files - doesn't own other packages' directories - removes buildroot at start of %install - filenames valid UTF-8 - license text included - no description/summary translations available - builds in mock on i386 - other architectures not tested, but this is a noarch package, so I expect it will build on all architectures - did not test proper functioning, since this is a library Did you investigate running the test suite in %build? - scriptlets are unnecessary See above. - javadoc package doesn't require base package -- fine - no pkgconfig files - packages required, rather than individual files
Updated Files: http://langel.fedorapeople.org/xmlgraphics-commons/xmlgraphics-commons-1.2-1.src.rpm http://langel.fedorapeople.org/xmlgraphics-commons/xmlgraphics-commons.spec Fixed everything suggested above. Also, running the test suite in %build.
%define section free The top two lines should be deleted. # Move jars existing jars out of the way Can you just delete them? ln -s %{name}-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}.jar # install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} Stray #. ln -s %{name}-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{name} # ghost symlink That comment should be deleted -- this is no longer a ghost symlink since it ships with the package. %doc LICENSE Also include NOTICE and README on this line. %ghost %doc %{_javadocdir}/%{name} This line is no longer necessary.
Updated Files: http://langel.fedorapeople.org/xmlgraphics-commons/xmlgraphics-commons-1.2-1.src.rpm http://langel.fedorapeople.org/xmlgraphics-commons/xmlgraphics-commons.spec Fixed everything as suggested above.
Approved. But fix this comment after you commit: # Move jars existing jars out of the way
can you set the fedora-review flag to +?
New Package CVS Request ======================= Package Name: xmlgraphics-commons Short Description: library of components used by batik and fop Owners: langel Branches: F-8 InitialCC: fitzsim Cvsextras Commits: yes
cvs done.
Package Change Request ====================== Package Name: xmlgraphics-commons New Branches: el5 el6 Owners: nb rlandmann
Package Change Request ====================== Package Name: xmlgraphics-commons New Branches: el5 Owners: nb rlandmann Package is in el6 so not requesting that branch.
Git done (by process-git-requests).