[cairo] cairomm rpms for Fedora Core 4

Rick L Vinyard Jr rvinyard at cs.nmsu.edu
Wed Feb 22 11:35:51 PST 2006


On Wed, 2006-02-22 at 18:28 +0100, Murray Cumming wrote:
> On Wed, 2006-02-22 at 09:09 -0700, Rick L Vinyard Jr wrote:
> > I thought I might mention that anyone interested in cairomm rpms for
> > Fedora Core 4 (i386 and x86_64) can find the ones I've been using at:
> > 	http://miskatonic.cs.nmsu.edu/pub/fedora/4
> > 
> Excellent. Could you try to get these into Fedora Extras, please? They
> need to be in there eventually for gtkmm 2.10.
> 
> Danilo Piazzalunga is also working on debian packages.
> 

I've cleaned up the .spec file so the rpms it generates now pass
rpmlint. I also changed the versioning convention so it will pass for
Fedora Extras, and rebuilt a new set of rpms available on the miskatonic
site above.

I filed a bug-report to get cairomm added to Fedora Extras.

I'm working from a cvs checkout of cairomm, and here's my current diff.
I can post it as a bug with an attached file, but since it's short I'll
post it here and explain... and see if posting it is even necessary or
desired.

The cairomm.spec and cairomm.spec.in files are respectively available
at:
http://miskatonic.cs.nmsu.edu/pub/cairomm.spec
http://miskatonic.cs.nmsu.edu/pub/cairomm.spec.in

I've found that it's much easier to have the .spec generated by autoconf
(much like a .pc file) rather than continually go through the motions to
update them on release, so when I made then original rpms, I just
patterned it off a generic template I made awhile back. The nice thing
about going this route is that when you're ready for a release,
everything can be prepared in the configure.in.

I'd create the same for debian, but I'm not familiar enough with the
structure of a debian package to make one generic like this one is; but
I'm sure it wouldn't take too much to tweak the structure to generate
one automatically for debian.

Anyway, with that said, the following explains the diffs:

I'm not sure why I needed to modify Makefile.am to include install-sh on
the EXTRA_DIST line, but rpmbuild couldn't run without it, and it was
missing from the package. That change at least (or whatever else would
be a more proper fix) would be needed, whether or not the .spec is
generated by autoconf from .spec.in.

The remainder of the changes are only necessary if the autoconf
generation of the .spec file from .spec.in is desired.

And the full diff (which isn't really that much) against cvs:

Index: Makefile.am
===================================================================
RCS file: /cvs/cairo/cairomm/Makefile.am,v
retrieving revision 1.4
diff -U5 -r1.4 Makefile.am
--- Makefile.am 21 Feb 2006 05:30:04 -0000      1.4
+++ Makefile.am 22 Feb 2006 19:01:48 -0000
@@ -1,11 +1,11 @@
 ## Process this file with automake to produce Makefile.in

 SUBDIRS = cairomm examples $(DOCS_SUBDIR)
 #docs examples

-EXTRA_DIST = MAINTAINERS cairomm-1.0.pc.in
+EXTRA_DIST = MAINTAINERS cairomm-1.0.pc.in cairomm.spec.in cairomm.spec
install-sh

 DIST_SUBDIRS = $(SUBDIRS)

 # Install the pkg-config file:
 pkgconfigdir = $(libdir)/pkgconfig
Index: configure.in
===================================================================
RCS file: /cvs/cairo/cairomm/configure.in,v
retrieving revision 1.9
diff -U5 -r1.9 configure.in
--- configure.in        17 Feb 2006 15:14:09 -0000      1.9
+++ configure.in        22 Feb 2006 19:01:49 -0000
@@ -1,7 +1,29 @@
 AC_INIT(cairomm/cairomm.h)

+#########################################################################
+#  Project name and version
+#########################################################################
+PROJECT_NAME="cairomm"
+PROJECT_SUMMARY="This library provides a C++ interface to cairo"
+PROJECT_DESCRIPTION="This library provides a C++ interface to cairo."
+PROJECT_LICENSE="LGPL"
+PROJECT_RPMGROUP="System Environment/Libraries"
+PROJECT_URL="http://www.cairographics.org"
+RPM_REQUIRES="cairo >= 1.0.2"
+RPM_BUILD_REQUIRES="cairo-devel >= 1.0.2"
+RPM_RELEASE="3.20060222cvs"
+AC_SUBST(PROJECT_NAME)
+AC_SUBST(PROJECT_SUMMARY)
+AC_SUBST(PROJECT_DESCRIPTION)
+AC_SUBST(PROJECT_LICENSE)
+AC_SUBST(PROJECT_RPMGROUP)
+AC_SUBST(PROJECT_URL)
+AC_SUBST(RPM_REQUIRES)
+AC_SUBST(RPM_BUILD_REQUIRES)
+AC_SUBST(RPM_RELEASE)
+
 #release versioning
 GENERIC_MAJOR_VERSION=0
 GENERIC_MINOR_VERSION=5
 GENERIC_MICRO_VERSION=0
 GENERIC_VERSION=
$GENERIC_MAJOR_VERSION.$GENERIC_MINOR_VERSION.$GENERIC_MICRO_VERSION
@@ -120,8 +142,9 @@
   examples/pdf-surface/Makefile
   examples/ps-surface/Makefile
   examples/svg-surface/Makefile

   cairomm-1.0.pc
+  cairomm.spec
 )

 AC_OUTPUT()




More information about the cairo mailing list