Spec URL: http://dl.dropbox.com/u/8648526/graphite2.spec SRPM URL: http://dl.dropbox.com/u/8648526/graphite2.spec Description: LibreOffice has stopped using graphite in favour of graphite2. This will enable LibreOffice to once again be built with support for complex scripts and ligatures. Graphite2 is a project within SIL’s Non-Roman Script Initiative and Language Software Development groups to provide rendering capabilities for complex non-Roman writing systems. Graphite can be used to create “smart fonts” capable of displaying writing systems with various complex behaviors. With respect to the Text Encoding Model, Graphite handles the "Rendering" aspect of writing system implementation.
Ah!?!?! The SRPM Url is, of course: SRPM URL: http://dl.dropbox.com/u/8648526/graphite2-1.0.1-1.fc15.src.rpm
Hi Nicholas, I tried to build the package from the spec file you provided but before I was able to do that I had to install following packages: cmake, freetype-devel (zlib-devel installed for dependecy). Shouldn't those be BuildRequirments?
D'Oh! Thanks for picking that up Martin. That's what I get for neglecting to run it through mock! An updated SPEC and SRPM have been made available with the required BuildRequires Spec URL: http://dl.dropbox.com/u/8648526/graphite2.spec SRPM URL: http://dl.dropbox.com/u/8648526/graphite2-1.0.1-2.fc15.src.rpm
$ rpmlint rpmbuild/SRPMS/graphite2-1.0.1-2.fc15.src.rpm rpmbuild/SPECS/graphite2.spec rpmbuild/RPMS/x86_64/graphite2-* graphite2.x86_64: W: no-manual-page-for-binary gr2fonttest graphite2.x86_64: W: no-manual-page-for-binary comparerenderer graphite2.x86_64: W: no-manual-page-for-binary gr2fonttest graphite2.x86_64: W: no-manual-page-for-binary comparerenderer graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/gr_features.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/direct_machine.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/TtfTypes.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/opcodes.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Bidi.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Face.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Face.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/include/graphite2/XmlLog.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/include/graphite2/Types.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/gr_font.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/SegCacheEntry.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Sparse.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/NameTable.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/opcode_table.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/XmlTraceLog.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/GlyphFaceCache.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/NameTable.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/tests/comparerenderer/CompareRenderer.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/SegCache.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/include/graphite2/Font.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/SegCache.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/SegCacheStore.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/CachedFace.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Slot.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/TtfUtil.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Font.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/gr_segment.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Main.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/tests/comparerenderer/RenderedLine.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Silf.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/FeatureMap.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/tests/comparerenderer/FeatureParser.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Segment.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Segment.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/tests/comparerenderer/Renderer.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/CmapCache.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/SegCacheStore.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/XmlTraceLogTags.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/tests/comparerenderer/GrRenderer.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/GlyphFaceCache.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/FeatureVal.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/GlyphFace.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/CmapCache.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/gr_face.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/gr2fonttest/gr2FontTest.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/gr_char_info.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/FeatureMap.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Silf.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/TtfUtil.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/GlyphFace.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/processUTF.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Sparse.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/tests/comparerenderer/Gr2Renderer.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Pass.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/List.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Code.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/CharInfo.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/SegCacheEntry.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/gr_logging.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/tests/comparerenderer/RendererOptions.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/gr_slot.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Slot.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Font.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Code.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/include/graphite2/Segment.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Position.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Machine.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/locale2lcid.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Pass.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/CachedFace.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/gr_features.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/direct_machine.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/TtfTypes.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/opcodes.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Bidi.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Face.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Face.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/include/graphite2/XmlLog.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/include/graphite2/Types.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/gr_font.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/SegCacheEntry.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Sparse.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/NameTable.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/opcode_table.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/XmlTraceLog.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/GlyphFaceCache.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/NameTable.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/tests/comparerenderer/CompareRenderer.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/SegCache.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/include/graphite2/Font.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/SegCache.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/SegCacheStore.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/CachedFace.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Slot.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/TtfUtil.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Font.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/gr_segment.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Main.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/tests/comparerenderer/RenderedLine.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Silf.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/FeatureMap.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/tests/comparerenderer/FeatureParser.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Segment.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Segment.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/tests/comparerenderer/Renderer.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/CmapCache.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/SegCacheStore.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/XmlTraceLogTags.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/tests/comparerenderer/GrRenderer.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/GlyphFaceCache.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/FeatureVal.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/GlyphFace.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/CmapCache.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/gr_face.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/gr2fonttest/gr2FontTest.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/gr_char_info.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/FeatureMap.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Silf.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/TtfUtil.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/GlyphFace.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/processUTF.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Sparse.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/tests/comparerenderer/Gr2Renderer.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Pass.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/List.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Code.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/CharInfo.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/SegCacheEntry.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/gr_logging.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/tests/comparerenderer/RendererOptions.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/gr_slot.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Slot.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Font.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Code.cpp graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/include/graphite2/Segment.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Position.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Machine.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/locale2lcid.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/Pass.h graphite2-debuginfo.x86_64: E: incorrect-fsf-address /usr/src/debug/graphite2-1.0.1/src/CachedFace.cpp graphite2-devel.x86_64: E: incorrect-fsf-address /usr/include/graphite2/Types.h graphite2-devel.x86_64: E: incorrect-fsf-address /usr/include/graphite2/Font.h graphite2-devel.x86_64: E: incorrect-fsf-address /usr/include/graphite2/Segment.h graphite2-devel.x86_64: E: incorrect-fsf-address /usr/include/graphite2/Types.h graphite2-devel.x86_64: E: incorrect-fsf-address /usr/include/graphite2/Font.h graphite2-devel.x86_64: E: incorrect-fsf-address /usr/include/graphite2/Segment.h 7 packages and 1 specfiles checked; 146 errors, 4 warnings.
During informal review I didn't find any issues, except those stated in the rpmlint output. I do however have some comments on the spec file: I think following lines cp LICENSE $RPM_BUILD_ROOT/usr/share/graphite2 %files %doc /usr/share/graphite2/LICENSE should be replaced with just %files %doc LICENSE Also this line: %doc /usr/share/graphite2/*.cmake seems incorrect to me. Assuming *.cmake belongs to %doc (which I don't know) and therefore package can run without those files - is it neccessary to use the whole path? At least I would replace /usr/share with the macro (and graphite2 for that matter).
(In reply to comment #5) > I think following lines > cp LICENSE $RPM_BUILD_ROOT/usr/share/graphite2 > > %files > %doc /usr/share/graphite2/LICENSE > > should be replaced with just > > %files > %doc LICENSE Yes, definitely. There's no need to install the doc files. Just add them with %doc by giving their relative location in the directory tree of the extracted tarball. Also, add the files COPYING and ChangeLog to the base package. > Also this line: > %doc /usr/share/graphite2/*.cmake > > seems incorrect to me. Assuming *.cmake belongs to %doc (which I don't know) > and therefore package can run without those files - is it neccessary to use the > whole path? At least I would replace /usr/share with the macro (and graphite2 > for that matter). Yes. Just drop "%doc" and replace /usr/share with %{_datadir}. Some additional notes: - The devel package must require the base package as mentioned here: https://fedoraproject.org/wiki/Packaging/Guidelines#Requiring_Base_Package - You can drop Requires: pkgconfig as you probably don't want to build the package for EPEL < 6. The dependency on pkgconfig is detected automatically in Fedora and EPEL 6. - Please be a bit more verbose in %files, i.e. try to avoid adding files with plain asterisks, especially, if only few files are addressed: %{_bindir}/comparerenderer %{_bindir}/gr2fonttest %{_libdir}/libgraphite2.so.* %{_libdir}/libgraphite2.so %{_libdir}/pkgconfig/graphite2.pc %{_datadir}/graphite2/graphite2*.cmake etc. This helps to get a better overview of what's actually going to be added, and avoids packaging unwanted files. - Add %dir %{_datadir}/graphite2/ to the devel package for proper directory ownership. - Either add %defattr(-,root,root,-) to the base package or drop it from the devel package. Both is fine but you should use it consistently. - "make docs" in %build has no effect at the moment because of the missing BRs doxygen, tex(latex), and asciidoc. Add them and spread the generated documentation on the base and devel package (using %doc). - Please ask upstream to update the FSF address in the source files and COPYING.
Thanks Martin (and Martin). Have updated the SPEC according to your suggestions above. As for the FSF address, I'd already notified upstream - and am pleased to see that it's already been fixed in a new release (to which I have re-based the package). Spec URL: http://dl.dropbox.com/u/8648526/graphite2.spec SRPM URL: http://dl.dropbox.com/u/8648526/graphite2-1.0.2-1.fc15.src.rpm
OK, great. The package looks fine now. Just two (optional) suggestions: - Move %post and %postun behind the %install section (and before %files). It's just the common location. - %{_libdir}/libgraphite2.so.2.0.0 is a bit too precise. :) In order to simplify future updates, I suggest to avoid mentioning the soversion: %{_libdir}/libgraphite2.so.* But that's optional. The package is ready anyway. $ rpmlint ./graphite2-*.rpm graphite2.x86_64: W: no-manual-page-for-binary gr2fonttest graphite2.x86_64: W: no-manual-page-for-binary comparerenderer 4 packages and 0 specfiles checked; 0 errors, 2 warnings. --------------------------------- key: [+] OK [.] OK, not applicable [X] needs work --------------------------------- [+] MUST: The package must be named according to the Package Naming Guidelines. [+] MUST: The spec file name must match the base package %{name}. [+] MUST: The package must meet the Packaging Guidelines. [+] MUST: The package must be licensed with a Fedora approved license. - LGPLv2+ according to source file headers [+] MUST: The License field in the package spec file must match the actual license. [+] MUST: The file containing the text of the license(s) for the package must be included in %doc. [+] MUST: The spec file must be written in American English. [+] MUST: The spec file for the package MUST be legible. [+] MUST: The sources used to build the package must match the upstream source. $ md5sum graphite2-1.0.2.tgz* 3115c721f5cb7c464f01c2dddccfaba6 graphite2-1.0.2.tgz 3115c721f5cb7c464f01c2dddccfaba6 graphite2-1.0.2.tgz.1 [+] MUST: The package MUST successfully compile and build into binary rpms on at least one primary architecture. - koji scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=3285384 [.] MUST: If the package does not successfully compile, build or work on an architecture, ... [+] MUST: All build dependencies must be listed in BuildRequires. [+] MUST: When compiling C, C++, or Fortran files, %{optflags} must be applied. [.] MUST: The spec file MUST handle locales properly. [+] MUST: Packages storing shared library files (not just symlinks) must call ldconfig in %post and %postun. [+] MUST: Packages must NOT bundle copies of system libraries. [.] MUST: If the package is designed to be relocatable, ... [+] MUST: A package must own all directories that it creates. [+] MUST: A Fedora package must not list a file more than once in %files. [+] MUST: Permissions on files must be set properly. [+] MUST: Each package must consistently use macros. [+] MUST: The package must contain code, or permissable content. [.] MUST: Large documentation files must go in a -doc subpackage. [+] MUST: Files in %doc must not affect the runtime of the application. [+] MUST: Header files must be in a -devel package. [.] MUST: Static libraries must be in a -static package. [+] MUST: If a package contains .so files with a suffix, then .so (without suffix) must go in a -devel package. [+] MUST: devel packages must require the base package using a fully versioned dependency. [+] MUST: Packages must NOT contain any .la libtool archives. [.] MUST: Packages containing GUI applications must include a %{name}.desktop file. [+] MUST: Packages must not own files or directories already owned by other packages. [+] MUST: All filenames in rpm packages must be valid UTF-8. EPEL <= 5 only: [X] MUST: The spec file must contain a valid BuildRoot field. [X] MUST: At the beginning of %install, each package MUST run rm -rf %{buildroot}. [X] MUST: Each package must have a %clean section, which contains rm -rf %{buildroot}. [X] MUST: Packages containing pkgconfig(.pc) files must 'Requires: pkgconfig' [.] SHOULD: If the source package does not include license text(s) as a separate file from upstream, the packager SHOULD query upstream to include it. [+] SHOULD: The reviewer should test that the package builds in mock. [+] SHOULD: The package should compile and build into binary rpms on all supported architectures. [+] SHOULD: The reviewer should test that the package functions as described. [+] SHOULD: If scriptlets are used, those scriptlets must be sane. [.] SHOULD: Usually, subpackages other than devel should require the base package using a fully versioned dependency. [+] SHOULD: pkgconfig(.pc) files should be placed in a -devel pkg. [.] SHOULD: If the package has file dependencies outside of /etc, /bin, /sbin, /usr/bin, or /usr/sbin consider requiring the package which provides the file instead of the file itself. [X] SHOULD: Your package should contain man pages for binaries/scripts. ---------------- Package APPROVED ----------------
New Package SCM Request ======================= Package Name: graphite2 Short Description: Font rendering capabilities for complex non-Roman writing systems Owners:vanoudt Branches: f15 InitialCC:
Git done (by process-git-requests). Added f16 branch.
graphite2-1.0.2-1.fc15 has been submitted as an update for Fedora 15. https://admin.fedoraproject.org/updates/graphite2-1.0.2-1.fc15
graphite2-1.0.2-1.fc16 has been submitted as an update for Fedora 16. https://admin.fedoraproject.org/updates/graphite2-1.0.2-1.fc16
graphite2-1.0.2-1.fc16 has been pushed to the Fedora 16 testing repository.
graphite2-1.0.2-2.fc15 has been submitted as an update for Fedora 15. https://admin.fedoraproject.org/updates/graphite2-1.0.2-2.fc15
graphite2-1.0.2-2.fc16 has been submitted as an update for Fedora 16. https://admin.fedoraproject.org/updates/graphite2-1.0.2-2.fc16