You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by Jim Meyering <ji...@meyering.net> on 2007/01/24 12:24:46 UTC

qpidc RPM feedback

Hi Ralf,

Thank you for the quick feedback in:

    http://bugzilla.redhat.com/220630

The following should address the points you've made.

BTW, how are you running rpmlint?  When I ran rpmlint-0.78,
it reported no errors.

While I have been approved for qpid commit access, we're still
waiting for formalities, so maybe someone else will find the time
to apply the patch below.

There is no reason to have the executable bit set on LICENSE.txt, so I'd
rather change it in the repository than work around it in the spec-file.
IMHO, we should drop all .txt suffixes, too, but that can wait.

Regarding execute bits, this might be enough:

    svn propdel svn:executable LICENSE.txt

Also, be sure to mark qpid.spec for removal before committing,
since now it's generated:

    svn rm qpidc.spec

It'd be good to mark it as ignorable, too.
Here's the patch:

2007-01-24  Jim Meyering  <me...@redhat.com>

	Suggestions from Ralf Corsepius in http://bugzilla.redhat.com/220630.
	* qpidc.spec.in (BuildRequires): Remove redundant cppunit here, too.
	The previous removal addressed only the redundant _Requires_.
	(%configure): Add --disable-static, so as not to build unused
        static libraries.

	Generate qpidc.spec.  Re-factor/generate even more.
	* qpidc.spec.in: New file.  Use it to generate qpidc.spec,
	substituting PACKAGE and VERSION from configure.ac.
	(URL): Omit trailing .tar.gz name.  That's specified via "Source0".
	* Makefile.am (qpidc.spec): New rule.
	(EXTRA_DIST): Add $(PACKAGE).spec and $(PACKAGE).spec.in.
	(MAINTAINERCLEANFILES): Define.
	* qpidc.spec: Remove file.  Now it's generated.

Index: qpidc.spec.in
===================================================================
--- qpidc.spec.in	(revision 0)
+++ qpidc.spec.in	(revision 0)
@@ -0,0 +1,139 @@
+#
+# Spec file for Qpid C++ packages: qpidc qpidc-devel, qpidd
+#
+%define daemon qpidd
+
+Name:           @PACKAGE@
+Version:        @VERSION@
+Release:        1%{?dist}
+Summary:        Libraries for Qpid C++ client applications
+Group:          System Environment/Libraries
+License:        Apache Software License
+URL:            http://people.apache.org/dist/incubator/qpid/M1-incubating/cpp/
+Source0:        %{name}-%{version}.tar.gz
+BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+
+BuildRequires: libtool
+BuildRequires: boost-devel
+BuildRequires: cppunit-devel
+BuildRequires: doxygen
+BuildRequires: graphviz
+BuildRequires: help2man
+BuildRequires: pkgconfig
+BuildRequires: e2fsprogs-devel
+BuildRequires: apr-devel
+
+Requires: boost
+
+Requires(post):/sbin/chkconfig
+Requires(preun):/sbin/chkconfig
+Requires(preun):/sbin/service
+Requires(postun):/sbin/service
+
+%description
+Run-time libraries for AMQP client applications developed using Qpid
+C++. Clients exchange messages with an AMQP message broker using
+the AMQP protocol.
+
+%package devel
+Summary: Header files and documentation for developing Qpid C++ clients
+Group: Development/System
+Requires: %name = %version-%release
+Requires: libtool
+Requires: apr-devel
+Requires: boost-devel
+Requires: cppunit-devel
+
+%description devel
+Libraries, header files and documentation for developing AMQP clients
+in C++ using Qpid.  Qpid implements the AMQP messaging specification.
+
+%package -n %{daemon}
+Summary: An AMQP message broker daemon
+Group: System Environment/Daemons
+Requires: %name = %version-%release
+
+%description -n %{daemon}
+A message broker daemon that receives stores and routes messages using
+the open AMQP messaging protocol.
+
+%prep
+%setup -q
+
+%build
+%configure --disable-static
+make %{?_smp_mflags}
+# Remove this generated perl file, we don't need it and it upsets rpmlint.
+rm docs/api/html/installdox
+
+%install
+rm -rf %{buildroot}
+make install DESTDIR=%{buildroot}
+install  -Dp -m0755 etc/qpidd %{buildroot}%{_initrddir}/qpidd
+rm -f %{buildroot}%_libdir/*.a
+rm -f %{buildroot}%_libdir/*.la
+# There's no qpidd-devel package so no .so for the broker needed.
+rm -f %{buildroot}%_libdir/libqpidbroker.so
+
+
+%clean
+rm -rf %{buildroot}
+
+%check
+make check
+
+%files
+%defattr(-,root,root,-)
+%doc LICENSE.txt NOTICE.txt README.txt
+%_libdir/libqpidcommon.so.0
+%_libdir/libqpidcommon.so.0.1.0
+%_libdir/libqpidclient.so.0
+%_libdir/libqpidclient.so.0.1.0
+
+%files devel
+%defattr(-,root,root,-)
+%_includedir/qpidc
+%_libdir/libqpidcommon.so
+%_libdir/libqpidclient.so
+%doc docs/api/html
+# We don't need this perl script and it causes rpmlint to complain.
+# There is probably a more polite way of calculating the devel docdir.
+
+%files -n %{daemon}
+%_libdir/libqpidbroker.so.0
+%_libdir/libqpidbroker.so.0.1.0
+%_sbindir/%{daemon}
+%{_initrddir}/qpidd
+%doc %_mandir/man1/%{daemon}.*
+
+%post -p /sbin/ldconfig
+
+%postun -p /sbin/ldconfig
+
+%post -n %{daemon}
+# This adds the proper /etc/rc*.d links for the script
+/sbin/chkconfig --add qpidd
+/sbin/ldconfig
+
+%preun -n %{daemon}
+# Check that this is actual deinstallation, not just removing for upgrade.
+if [ $1 = 0 ]; then
+        /sbin/service qpidd stop >/dev/null 2>&1 || :
+        /sbin/chkconfig --del qpidd
+fi
+
+%postun -n %{daemon}
+if [ "$1" -ge "1" ]; then
+        /sbin/service qpidd condrestart >/dev/null 2>&1 || :
+fi
+/sbin/ldconfig
+
+%changelog
+
+* Mon Dec 22 2006 Alan Conway <ac...@redhat.com> - 0.1-1
+- Fixed all rpmlint complaints (with help from David Lutterkort)
+- Added qpidd --daemon behaviour, fix init.rc scripts
+
+* Fri Dec  8 2006 David Lutterkort <dl...@redhat.com> - 0.1-1
+- Initial version based on Jim Meyering's sketch and discussions with Alan
+  Conway
Index: Makefile.am
===================================================================
--- Makefile.am	(revision 499290)
+++ Makefile.am	(working copy)
@@ -1,7 +1,11 @@
 AUTOMAKE_OPTIONS = 1.9.2 foreign
 ACLOCAL_AMFLAGS = -I m4

-EXTRA_DIST = README-dev DESIGN LICENSE.txt NOTICE.txt README.rhel3 README.txt etc/qpidd
+EXTRA_DIST = \
+  README-dev DESIGN LICENSE.txt NOTICE.txt README.rhel3 README.txt \
+  etc/qpidd \
+  $(PACKAGE).spec \
+  $(PACKAGE).spec.in

 SUBDIRS = gen lib tests src docs/api docs/man rpm

@@ -9,7 +13,14 @@
 libtool: $(LIBTOOL_DEPS)
 	$(SHELL) ./config.status --recheck

+# This cannot be done by AC_CONFIG_FILES, because automake's
+# make distcheck target does not like auto-generated files
+# being included in the distributed archive.
+qpidc.spec: %: %.in
+	sed 's/@''PACKAGE@/@PACKAGE@/;s/@''VERSION@/@VERSION@/' $< > $@-tmp
+	mv $@-tmp $@
+MAINTAINERCLEANFILES = $(PACKAGE).spec
+
 .PHONY: rpm srpm
-
 rpm srpm:
 	cd rpm && $(MAKE) $(MAKEFLAGS_AM) $@
Index: qpidc.spec
===================================================================
--- qpidc.spec	(revision 499290)
+++ qpidc.spec	(working copy)
@@ -1,140 +0,0 @@
-#
-# Spec file for Qpid C++ packages: qpidc qpidc-devel, qpidd
-#
-%define daemon qpidd
-
-Name:           qpidc
-Version:        0.1
-Release:        1%{?dist}
-Summary:        Libraries for Qpid C++ client applications
-Group:          System Environment/Libraries
-License:        Apache Software License
-URL:            http://people.apache.org/dist/incubator/qpid/M1-incubating/cpp/qpidc-0.1.tar.gz
-Source0:        %{name}-%{version}.tar.gz
-BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
-
-BuildRequires: libtool
-BuildRequires: boost-devel
-BuildRequires: cppunit
-BuildRequires: cppunit-devel
-BuildRequires: doxygen
-BuildRequires: graphviz
-BuildRequires: help2man
-BuildRequires: pkgconfig
-BuildRequires: e2fsprogs-devel
-BuildRequires: apr-devel
-
-Requires: boost
-
-Requires(post):/sbin/chkconfig
-Requires(preun):/sbin/chkconfig
-Requires(preun):/sbin/service
-Requires(postun):/sbin/service
-
-%description
-Run-time libraries for AMQP client applications developed using Qpid
-C++. Clients exchange messages with an AMQP message broker using
-the AMQP protocol.
-
-%package devel
-Summary: Header files and documentation for developing Qpid C++ clients
-Group: Development/System
-Requires: %name = %version-%release
-Requires: libtool
-Requires: apr-devel
-Requires: boost-devel
-Requires: cppunit-devel
-
-%description devel
-Libraries, header files and documentation for developing AMQP clients
-in C++ using Qpid.  Qpid implements the AMQP messaging specification.
-
-%package -n %{daemon}
-Summary: An AMQP message broker daemon
-Group: System Environment/Daemons
-Requires: %name = %version-%release
-
-%description -n %{daemon}
-A message broker daemon that receives stores and routes messages using
-the open AMQP messaging protocol.
-
-%prep
-%setup -q
-
-%build
-%configure
-make %{?_smp_mflags}
-# Remove this generated perl file, we don't need it and it upsets rpmlint.
-rm docs/api/html/installdox
-
-%install
-rm -rf %{buildroot}
-make install DESTDIR=%{buildroot}
-install  -Dp -m0755 etc/qpidd %{buildroot}%{_initrddir}/qpidd
-rm -f %{buildroot}%_libdir/*.a
-rm -f %{buildroot}%_libdir/*.la
-# There's no qpidd-devel package so no .so for the broker needed.
-rm -f %{buildroot}%_libdir/libqpidbroker.so
-
-
-%clean
-rm -rf %{buildroot}
-
-%check
-make check
-
-%files
-%defattr(-,root,root,-)
-%doc LICENSE.txt NOTICE.txt README.txt
-%_libdir/libqpidcommon.so.0
-%_libdir/libqpidcommon.so.0.1.0
-%_libdir/libqpidclient.so.0
-%_libdir/libqpidclient.so.0.1.0
-
-%files devel
-%defattr(-,root,root,-)
-%_includedir/qpidc
-%_libdir/libqpidcommon.so
-%_libdir/libqpidclient.so
-%doc docs/api/html
-# We don't need this perl script and it causes rpmlint to complain.
-# There is probably a more polite way of calculating the devel docdir.
-
-%files -n %{daemon}
-%_libdir/libqpidbroker.so.0
-%_libdir/libqpidbroker.so.0.1.0
-%_sbindir/%{daemon}
-%{_initrddir}/qpidd
-%doc %_mandir/man1/%{daemon}.*
-
-%post -p /sbin/ldconfig
-
-%postun -p /sbin/ldconfig
-
-%post -n %{daemon}
-# This adds the proper /etc/rc*.d links for the script
-/sbin/chkconfig --add qpidd
-/sbin/ldconfig
-
-%preun -n %{daemon}
-# Check that this is actual deinstallation, not just removing for upgrade.
-if [ $1 = 0 ]; then
-        /sbin/service qpidd stop >/dev/null 2>&1 || :
-        /sbin/chkconfig --del qpidd
-fi
-
-%postun -n %{daemon}
-if [ "$1" -ge "1" ]; then
-        /sbin/service qpidd condrestart >/dev/null 2>&1 || :
-fi
-/sbin/ldconfig
-
-%changelog
-
-* Mon Dec 22 2006 Alan Conway <ac...@redhat.com> - 0.1-1
-- Fixed all rpmlint complaints (with help from David Lutterkort)
-- Added qpidd --daemon behaviour, fix init.rc scripts
-
-* Fri Dec  8 2006 David Lutterkort <dl...@redhat.com> - 0.1-1
-- Initial version based on Jim Meyering's sketch and discussions with Alan
-  Conway

Re: qpidc RPM feedback

Posted by Alan Conway <ac...@redhat.com>.
On Wed, 2007-01-24 at 12:47 +0100, Ralf Corsepius wrote:
> On Wed, 2007-01-24 at 12:24 +0100, Jim Meyering wrote:
> > Hi Ralf,
> > 
> > Thank you for the quick feedback in:
> > 
> >     http://bugzilla.redhat.com/220630
> > 
> > The following should address the points you've made.
> > 
I applied Jims patch and fixed other issues mentioned in the mail
http://www.nabble.com/qpidc-RPM-feedback-t3080445.html
removed .txt extensions, fixed svn ignores etc.

Updated spec, tarballs and SRPM at: 
http://people.apache.org/dist/incubator/qpid/M1-incubating/cpp/

I added a comment to https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=220630
Cheers,
Alan.


Re: qpidc RPM feedback

Posted by Ralf Corsepius <rc...@freenet.de>.
On Wed, 2007-01-24 at 12:24 +0100, Jim Meyering wrote:
> Hi Ralf,
> 
> Thank you for the quick feedback in:
> 
>     http://bugzilla.redhat.com/220630
> 
> The following should address the points you've made.
> 
> BTW, how are you running rpmlint?  When I ran rpmlint-0.78,
> it reported no errors.
I am using an ordinary fc6+fe6 i386-installation.
# rpm -q rpmlint
rpmlint-0.78-2.fc6

All I did was to

# rpm -U ...src.rpm
# rpmbuild -ba *.spec
# rpmlint <dir>/RPMS/*.rpm

once with your original spec and once with --disable-static added.

No further magic involved.

> While I have been approved for qpid commit access, we're still
> waiting for formalities, so maybe someone else will find the time
> to apply the patch below.
> 
> There is no reason to have the executable bit set on LICENSE.txt, so I'd
> rather change it in the repository than work around it in the spec-file.
Great, if such (minor) issues can be fixed upstream - Normally,
packagers don't have upstream access, so as a reviewer I can't avoid
having to recommend/resort to work-arounds in specs.

> IMHO, we should drop all .txt suffixes, too, but that can wait.
Decision left to upstream's discretion ;)

If you'd drop the static libs, I'll presume you'll be fixing the
remaining (minor) issues later and I'd be willing to approve the
package ;)

Ralf



Re: qpidc RPM feedback

Posted by Gordon Sim <gs...@redhat.com>.
Jim Meyering wrote:
> Hi Ralf,
> 
> Thank you for the quick feedback in:
> 
>     http://bugzilla.redhat.com/220630
> 
> The following should address the points you've made.
> 
> BTW, how are you running rpmlint?  When I ran rpmlint-0.78,
> it reported no errors.
> 
> While I have been approved for qpid commit access, we're still
> waiting for formalities, so maybe someone else will find the time
> to apply the patch below.

Applied in rev 499374.

> There is no reason to have the executable bit set on LICENSE.txt, so I'd
> rather change it in the repository than work around it in the spec-file.
> IMHO, we should drop all .txt suffixes, too, but that can wait.
> 
> Regarding execute bits, this might be enough:
> 
>     svn propdel svn:executable LICENSE.txt
> 
> Also, be sure to mark qpid.spec for removal before committing,
> since now it's generated:
> 
>     svn rm qpidc.spec
> 
> It'd be good to mark it as ignorable, too.
> Here's the patch:
> 
> 2007-01-24  Jim Meyering  <me...@redhat.com>
> 
> 	Suggestions from Ralf Corsepius in http://bugzilla.redhat.com/220630.
> 	* qpidc.spec.in (BuildRequires): Remove redundant cppunit here, too.
> 	The previous removal addressed only the redundant _Requires_.
> 	(%configure): Add --disable-static, so as not to build unused
>         static libraries.
> 
> 	Generate qpidc.spec.  Re-factor/generate even more.
> 	* qpidc.spec.in: New file.  Use it to generate qpidc.spec,
> 	substituting PACKAGE and VERSION from configure.ac.
> 	(URL): Omit trailing .tar.gz name.  That's specified via "Source0".
> 	* Makefile.am (qpidc.spec): New rule.
> 	(EXTRA_DIST): Add $(PACKAGE).spec and $(PACKAGE).spec.in.
> 	(MAINTAINERCLEANFILES): Define.
> 	* qpidc.spec: Remove file.  Now it's generated.
> 
> Index: qpidc.spec.in
> ===================================================================
> --- qpidc.spec.in	(revision 0)
> +++ qpidc.spec.in	(revision 0)
> @@ -0,0 +1,139 @@
> +#
> +# Spec file for Qpid C++ packages: qpidc qpidc-devel, qpidd
> +#
> +%define daemon qpidd
> +
> +Name:           @PACKAGE@
> +Version:        @VERSION@
> +Release:        1%{?dist}
> +Summary:        Libraries for Qpid C++ client applications
> +Group:          System Environment/Libraries
> +License:        Apache Software License
> +URL:            http://people.apache.org/dist/incubator/qpid/M1-incubating/cpp/
> +Source0:        %{name}-%{version}.tar.gz
> +BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
> +
> +BuildRequires: libtool
> +BuildRequires: boost-devel
> +BuildRequires: cppunit-devel
> +BuildRequires: doxygen
> +BuildRequires: graphviz
> +BuildRequires: help2man
> +BuildRequires: pkgconfig
> +BuildRequires: e2fsprogs-devel
> +BuildRequires: apr-devel
> +
> +Requires: boost
> +
> +Requires(post):/sbin/chkconfig
> +Requires(preun):/sbin/chkconfig
> +Requires(preun):/sbin/service
> +Requires(postun):/sbin/service
> +
> +%description
> +Run-time libraries for AMQP client applications developed using Qpid
> +C++. Clients exchange messages with an AMQP message broker using
> +the AMQP protocol.
> +
> +%package devel
> +Summary: Header files and documentation for developing Qpid C++ clients
> +Group: Development/System
> +Requires: %name = %version-%release
> +Requires: libtool
> +Requires: apr-devel
> +Requires: boost-devel
> +Requires: cppunit-devel
> +
> +%description devel
> +Libraries, header files and documentation for developing AMQP clients
> +in C++ using Qpid.  Qpid implements the AMQP messaging specification.
> +
> +%package -n %{daemon}
> +Summary: An AMQP message broker daemon
> +Group: System Environment/Daemons
> +Requires: %name = %version-%release
> +
> +%description -n %{daemon}
> +A message broker daemon that receives stores and routes messages using
> +the open AMQP messaging protocol.
> +
> +%prep
> +%setup -q
> +
> +%build
> +%configure --disable-static
> +make %{?_smp_mflags}
> +# Remove this generated perl file, we don't need it and it upsets rpmlint.
> +rm docs/api/html/installdox
> +
> +%install
> +rm -rf %{buildroot}
> +make install DESTDIR=%{buildroot}
> +install  -Dp -m0755 etc/qpidd %{buildroot}%{_initrddir}/qpidd
> +rm -f %{buildroot}%_libdir/*.a
> +rm -f %{buildroot}%_libdir/*.la
> +# There's no qpidd-devel package so no .so for the broker needed.
> +rm -f %{buildroot}%_libdir/libqpidbroker.so
> +
> +
> +%clean
> +rm -rf %{buildroot}
> +
> +%check
> +make check
> +
> +%files
> +%defattr(-,root,root,-)
> +%doc LICENSE.txt NOTICE.txt README.txt
> +%_libdir/libqpidcommon.so.0
> +%_libdir/libqpidcommon.so.0.1.0
> +%_libdir/libqpidclient.so.0
> +%_libdir/libqpidclient.so.0.1.0
> +
> +%files devel
> +%defattr(-,root,root,-)
> +%_includedir/qpidc
> +%_libdir/libqpidcommon.so
> +%_libdir/libqpidclient.so
> +%doc docs/api/html
> +# We don't need this perl script and it causes rpmlint to complain.
> +# There is probably a more polite way of calculating the devel docdir.
> +
> +%files -n %{daemon}
> +%_libdir/libqpidbroker.so.0
> +%_libdir/libqpidbroker.so.0.1.0
> +%_sbindir/%{daemon}
> +%{_initrddir}/qpidd
> +%doc %_mandir/man1/%{daemon}.*
> +
> +%post -p /sbin/ldconfig
> +
> +%postun -p /sbin/ldconfig
> +
> +%post -n %{daemon}
> +# This adds the proper /etc/rc*.d links for the script
> +/sbin/chkconfig --add qpidd
> +/sbin/ldconfig
> +
> +%preun -n %{daemon}
> +# Check that this is actual deinstallation, not just removing for upgrade.
> +if [ $1 = 0 ]; then
> +        /sbin/service qpidd stop >/dev/null 2>&1 || :
> +        /sbin/chkconfig --del qpidd
> +fi
> +
> +%postun -n %{daemon}
> +if [ "$1" -ge "1" ]; then
> +        /sbin/service qpidd condrestart >/dev/null 2>&1 || :
> +fi
> +/sbin/ldconfig
> +
> +%changelog
> +
> +* Mon Dec 22 2006 Alan Conway <ac...@redhat.com> - 0.1-1
> +- Fixed all rpmlint complaints (with help from David Lutterkort)
> +- Added qpidd --daemon behaviour, fix init.rc scripts
> +
> +* Fri Dec  8 2006 David Lutterkort <dl...@redhat.com> - 0.1-1
> +- Initial version based on Jim Meyering's sketch and discussions with Alan
> +  Conway
> Index: Makefile.am
> ===================================================================
> --- Makefile.am	(revision 499290)
> +++ Makefile.am	(working copy)
> @@ -1,7 +1,11 @@
>  AUTOMAKE_OPTIONS = 1.9.2 foreign
>  ACLOCAL_AMFLAGS = -I m4
> 
> -EXTRA_DIST = README-dev DESIGN LICENSE.txt NOTICE.txt README.rhel3 README.txt etc/qpidd
> +EXTRA_DIST = \
> +  README-dev DESIGN LICENSE.txt NOTICE.txt README.rhel3 README.txt \
> +  etc/qpidd \
> +  $(PACKAGE).spec \
> +  $(PACKAGE).spec.in
> 
>  SUBDIRS = gen lib tests src docs/api docs/man rpm
> 
> @@ -9,7 +13,14 @@
>  libtool: $(LIBTOOL_DEPS)
>  	$(SHELL) ./config.status --recheck
> 
> +# This cannot be done by AC_CONFIG_FILES, because automake's
> +# make distcheck target does not like auto-generated files
> +# being included in the distributed archive.
> +qpidc.spec: %: %.in
> +	sed 's/@''PACKAGE@/@PACKAGE@/;s/@''VERSION@/@VERSION@/' $< > $@-tmp
> +	mv $@-tmp $@
> +MAINTAINERCLEANFILES = $(PACKAGE).spec
> +
>  .PHONY: rpm srpm
> -
>  rpm srpm:
>  	cd rpm && $(MAKE) $(MAKEFLAGS_AM) $@
> Index: qpidc.spec
> ===================================================================
> --- qpidc.spec	(revision 499290)
> +++ qpidc.spec	(working copy)
> @@ -1,140 +0,0 @@
> -#
> -# Spec file for Qpid C++ packages: qpidc qpidc-devel, qpidd
> -#
> -%define daemon qpidd
> -
> -Name:           qpidc
> -Version:        0.1
> -Release:        1%{?dist}
> -Summary:        Libraries for Qpid C++ client applications
> -Group:          System Environment/Libraries
> -License:        Apache Software License
> -URL:            http://people.apache.org/dist/incubator/qpid/M1-incubating/cpp/qpidc-0.1.tar.gz
> -Source0:        %{name}-%{version}.tar.gz
> -BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
> -
> -BuildRequires: libtool
> -BuildRequires: boost-devel
> -BuildRequires: cppunit
> -BuildRequires: cppunit-devel
> -BuildRequires: doxygen
> -BuildRequires: graphviz
> -BuildRequires: help2man
> -BuildRequires: pkgconfig
> -BuildRequires: e2fsprogs-devel
> -BuildRequires: apr-devel
> -
> -Requires: boost
> -
> -Requires(post):/sbin/chkconfig
> -Requires(preun):/sbin/chkconfig
> -Requires(preun):/sbin/service
> -Requires(postun):/sbin/service
> -
> -%description
> -Run-time libraries for AMQP client applications developed using Qpid
> -C++. Clients exchange messages with an AMQP message broker using
> -the AMQP protocol.
> -
> -%package devel
> -Summary: Header files and documentation for developing Qpid C++ clients
> -Group: Development/System
> -Requires: %name = %version-%release
> -Requires: libtool
> -Requires: apr-devel
> -Requires: boost-devel
> -Requires: cppunit-devel
> -
> -%description devel
> -Libraries, header files and documentation for developing AMQP clients
> -in C++ using Qpid.  Qpid implements the AMQP messaging specification.
> -
> -%package -n %{daemon}
> -Summary: An AMQP message broker daemon
> -Group: System Environment/Daemons
> -Requires: %name = %version-%release
> -
> -%description -n %{daemon}
> -A message broker daemon that receives stores and routes messages using
> -the open AMQP messaging protocol.
> -
> -%prep
> -%setup -q
> -
> -%build
> -%configure
> -make %{?_smp_mflags}
> -# Remove this generated perl file, we don't need it and it upsets rpmlint.
> -rm docs/api/html/installdox
> -
> -%install
> -rm -rf %{buildroot}
> -make install DESTDIR=%{buildroot}
> -install  -Dp -m0755 etc/qpidd %{buildroot}%{_initrddir}/qpidd
> -rm -f %{buildroot}%_libdir/*.a
> -rm -f %{buildroot}%_libdir/*.la
> -# There's no qpidd-devel package so no .so for the broker needed.
> -rm -f %{buildroot}%_libdir/libqpidbroker.so
> -
> -
> -%clean
> -rm -rf %{buildroot}
> -
> -%check
> -make check
> -
> -%files
> -%defattr(-,root,root,-)
> -%doc LICENSE.txt NOTICE.txt README.txt
> -%_libdir/libqpidcommon.so.0
> -%_libdir/libqpidcommon.so.0.1.0
> -%_libdir/libqpidclient.so.0
> -%_libdir/libqpidclient.so.0.1.0
> -
> -%files devel
> -%defattr(-,root,root,-)
> -%_includedir/qpidc
> -%_libdir/libqpidcommon.so
> -%_libdir/libqpidclient.so
> -%doc docs/api/html
> -# We don't need this perl script and it causes rpmlint to complain.
> -# There is probably a more polite way of calculating the devel docdir.
> -
> -%files -n %{daemon}
> -%_libdir/libqpidbroker.so.0
> -%_libdir/libqpidbroker.so.0.1.0
> -%_sbindir/%{daemon}
> -%{_initrddir}/qpidd
> -%doc %_mandir/man1/%{daemon}.*
> -
> -%post -p /sbin/ldconfig
> -
> -%postun -p /sbin/ldconfig
> -
> -%post -n %{daemon}
> -# This adds the proper /etc/rc*.d links for the script
> -/sbin/chkconfig --add qpidd
> -/sbin/ldconfig
> -
> -%preun -n %{daemon}
> -# Check that this is actual deinstallation, not just removing for upgrade.
> -if [ $1 = 0 ]; then
> -        /sbin/service qpidd stop >/dev/null 2>&1 || :
> -        /sbin/chkconfig --del qpidd
> -fi
> -
> -%postun -n %{daemon}
> -if [ "$1" -ge "1" ]; then
> -        /sbin/service qpidd condrestart >/dev/null 2>&1 || :
> -fi
> -/sbin/ldconfig
> -
> -%changelog
> -
> -* Mon Dec 22 2006 Alan Conway <ac...@redhat.com> - 0.1-1
> -- Fixed all rpmlint complaints (with help from David Lutterkort)
> -- Added qpidd --daemon behaviour, fix init.rc scripts
> -
> -* Fri Dec  8 2006 David Lutterkort <dl...@redhat.com> - 0.1-1
> -- Initial version based on Jim Meyering's sketch and discussions with Alan
> -  Conway