Spec URL: http://people.redhat.com/ajackson/xcb/libxcb.spec SRPM URL: http://people.redhat.com/ajackson/xcb/libxcb-1.0-1.fc8.src.rpm Description: libxcb is a new C binding to the X protocol, designed for size, extensibility, latency-hiding, and thread-safety. Note that this review requires bug #246286 first.
Now that xcb-proto is done, I can take a look at this. It builds fine and rpmlint only says W: libxcb-devel no-documentation which is not an issue. Actually I'm not sure about the point of the -doc package; it has only three files which are already in the main package. Review: * source files match upstream: 19d6b2ac380fd3e613a3730e791f197f186f940bffec97f8a4f9443bb727d11d libxcb-1.0.tar.bz2 * package meets naming and versioning guidelines. * specfile is properly named, is cleanly written and uses macros consistently. * summary is OK. * description is OK. * dist tag is present. * build root is OK. * license field matches the actual license. * license is open source-compatible. * license text included in package. * latest version is being packaged. * BuildRequires are proper. * compiler flags are appropriate. * %clean is present. * package builds in mock (development, x86_64). * package installs properly * debuginfo package looks complete. * rpmlint has acceptable complaints. * final provides and requires are sane: libxcb-1.0-1.fc8.x86_64.rpm libxcb-composite.so.0()(64bit) libxcb-damage.so.0()(64bit) libxcb-dpms.so.0()(64bit) libxcb-glx.so.0()(64bit) libxcb-randr.so.0()(64bit) libxcb-record.so.0()(64bit) libxcb-render.so.0()(64bit) libxcb-res.so.0()(64bit) libxcb-screensaver.so.0()(64bit) libxcb-shape.so.0()(64bit) libxcb-shm.so.0()(64bit) libxcb-sync.so.0()(64bit) libxcb-xevie.so.0()(64bit) libxcb-xf86dri.so.0()(64bit) libxcb-xfixes.so.0()(64bit) libxcb-xinerama.so.0()(64bit) libxcb-xlib.so.0()(64bit) libxcb-xprint.so.0()(64bit) libxcb-xtest.so.0()(64bit) libxcb-xv.so.0()(64bit) libxcb-xvmc.so.0()(64bit) libxcb.so.1()(64bit) libxcb = 1.0-1.fc8 = /sbin/ldconfig libXau.so.6()(64bit) libXdmcp.so.6()(64bit) libxcb-composite.so.0()(64bit) libxcb-damage.so.0()(64bit) libxcb-dpms.so.0()(64bit) libxcb-glx.so.0()(64bit) libxcb-randr.so.0()(64bit) libxcb-record.so.0()(64bit) libxcb-render.so.0()(64bit) libxcb-res.so.0()(64bit) libxcb-screensaver.so.0()(64bit) libxcb-shape.so.0()(64bit) libxcb-shm.so.0()(64bit) libxcb-sync.so.0()(64bit) libxcb-xevie.so.0()(64bit) libxcb-xf86dri.so.0()(64bit) libxcb-xfixes.so.0()(64bit) libxcb-xinerama.so.0()(64bit) libxcb-xlib.so.0()(64bit) libxcb-xprint.so.0()(64bit) libxcb-xtest.so.0()(64bit) libxcb-xv.so.0()(64bit) libxcb-xvmc.so.0()(64bit) libxcb.so.1()(64bit) libxcb-devel-1.0-1.fc8.x86_64.rpm libxcb-devel = 1.0-1.fc8 = libxcb = 1.0-1.fc8 libxcb-composite.so.0()(64bit) libxcb-damage.so.0()(64bit) libxcb-dpms.so.0()(64bit) libxcb-glx.so.0()(64bit) libxcb-randr.so.0()(64bit) libxcb-record.so.0()(64bit) libxcb-render.so.0()(64bit) libxcb-res.so.0()(64bit) libxcb-screensaver.so.0()(64bit) libxcb-shape.so.0()(64bit) libxcb-shm.so.0()(64bit) libxcb-sync.so.0()(64bit) libxcb-xevie.so.0()(64bit) libxcb-xf86dri.so.0()(64bit) libxcb-xfixes.so.0()(64bit) libxcb-xinerama.so.0()(64bit) libxcb-xlib.so.0()(64bit) libxcb-xprint.so.0()(64bit) libxcb-xtest.so.0()(64bit) libxcb-xv.so.0()(64bit) libxcb-xvmc.so.0()(64bit) libxcb.so.1()(64bit) pkgconfig libxcb-doc-1.0-1.fc8.x86_64.rpm libxcb-doc = 1.0-1.fc8 = * %check is not present; no test suite upstream. * no shared present; ldconfig called as necessary. Unversioned .so files are in the -debug package. * owns the directories it creates. * doesn't own any directories it shouldn't. X documentation files are duplicated in -doc package. * file permissions are appropriate. * scriptlets are OK (ldconfig). * code, not content. * %docs are not necessary for the proper functioning of the package. * headers are in the -devel package. * pkgconfig files are in the -devel package; pkgconfig dependency is there. * no static libraries. * no libtool .la files.
"No test suite upstream" isn't entirely accurate, but it depends on a newer version of check than we have in rawhide atm. And when I built it, %doc certainly included a whole mess of stuff. I suspect that was a non-clean build with docbook in the runtime path; I'll poke a bit.
I guess I didn't look very hard for the test suite. I did another build to get the build log; in it I found this: checking for doxygen... no WARNING: The doxygen program was not found in your execute You may have doxygen installed somewhere not covered by your path. If this is the case make sure you have the packages installed, AND that the doxygen program is in your execute path (see your shell's manual page on setting the $PATH environment variable), OR alternatively, specify the program to use with --with-doxygen. configure: WARNING: Warning: no doxygen detected. Documentation will not be built checking whether documentation is built... no which should explain the documentation issue.
Alright, new spec and srpm in the same place as before. Added doxygen and graphviz to the buildreqs. Also, had to move --docdir for the package to not be %{name}-%{version}, since that's where %doc will install to, and where %doc will delete before installing. So you now get %{_docdir}/libxcb and %{_docdir}/libxcb-1.0. I guess that's okay?
Eh. Changed again to just not use %doc. I think this should be final.
Yes, that looks good to me. APPROVED
New Package CVS Request ======================= Package Name: libxcb Short Description: C binding to the X11 protocll Owners: ajackson Branches: InitialCC:
I assume that "protocll" was supposed to be "protocol". :) cvs done.
Imported and built. Thanks all!
Package Change Request ====================== Package Name: libxcb New Branches: F-7
CVS done.