summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Conway <aconway@apache.org>2006-12-13 00:26:30 +0000
committerAlan Conway <aconway@apache.org>2006-12-13 00:26:30 +0000
commitf6f325b0101da7d1f42a0a3766537bb7745d8330 (patch)
treeb15501c87f66020a24e9ba89114ba1b4f8ff5bdc
parent19176def0ac87f7dc1e6208edb188000ed80025d (diff)
downloadqpid-python-f6f325b0101da7d1f42a0a3766537bb7745d8330.tar.gz
Sundry fixes to spec and build system for RPM packaging.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@486428 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--cpp/Makefile.am5
-rw-r--r--cpp/README-dev3
-rw-r--r--cpp/README.txt1
-rw-r--r--cpp/configure.ac4
-rw-r--r--cpp/docs/api/Makefile.am22
-rw-r--r--cpp/docs/api/user.doxygen2
-rw-r--r--cpp/lib/broker/Makefile.am4
-rw-r--r--cpp/lib/common/Makefile.am6
-rw-r--r--cpp/qpidc.spec108
-rw-r--r--cpp/src/Makefile.am3
10 files changed, 132 insertions, 26 deletions
diff --git a/cpp/Makefile.am b/cpp/Makefile.am
index d577f590cb..17803f6b80 100644
--- a/cpp/Makefile.am
+++ b/cpp/Makefile.am
@@ -1,7 +1,10 @@
AUTOMAKE_OPTIONS = 1.9.2 foreign
ACLOCAL_AMFLAGS = -I m4
-EXTRA_DIST = README-dist DESIGN LICENSE.txt NOTICE.txt README.rhel3
+EXTRA_DIST = README.txt README-dev DESIGN LICENSE.txt NOTICE.txt README.rhel3
+dist_doc_DATA = README.txt
+
+dist_sysconf_DATA = etc/init.d/qpidd
SUBDIRS = gen lib tests src docs/api docs/man
diff --git a/cpp/README-dev b/cpp/README-dev
index eca566919b..fbc857193d 100644
--- a/cpp/README-dev
+++ b/cpp/README-dev
@@ -6,7 +6,8 @@ If you have taken the sources from SVN you will need the following
packages (or later) to build Qpid. We prefer to avoid spending time
accommodating older versions of these packages, so please make sure
that you have the latest stable version.
-
+
+ * GNU make <http://www.gnu.org/software/make/>
* autoconf <http://www.gnu.org/software/autoconf/>
* automake <http://www.gnu.org/software/automake/>
* cppunit <http://cppunit.sourceforge.net>
diff --git a/cpp/README.txt b/cpp/README.txt
new file mode 100644
index 0000000000..2498bbb495
--- /dev/null
+++ b/cpp/README.txt
@@ -0,0 +1 @@
+TODO: Fill in this readme!
diff --git a/cpp/configure.ac b/cpp/configure.ac
index 7f4a313201..c7593247ca 100644
--- a/cpp/configure.ac
+++ b/cpp/configure.ac
@@ -8,15 +8,13 @@ dnl This program is distributed in the hope that it will be useful, but
dnl WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
dnl implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-AC_INIT([qpid], [0.1], [qpid-dev@incubator.apache.org])
+AC_INIT([qpidc], [0.1], [qpid-dev@incubator.apache.org])
AC_CONFIG_AUX_DIR([build-aux])
AM_INIT_AUTOMAKE([dist-bzip2])
# Minimum Autoconf version required.
AC_PREREQ(2.59)
-# Where to generate output; srcdir location.
-# FIXME: if no one includes config.h, don't do this
AC_CONFIG_HEADERS([config.h:config.in])
AC_CONFIG_SRCDIR([lib/broker/ExchangeBinding.cpp])
diff --git a/cpp/docs/api/Makefile.am b/cpp/docs/api/Makefile.am
index 7e2f2e811d..3f64ce6f46 100644
--- a/cpp/docs/api/Makefile.am
+++ b/cpp/docs/api/Makefile.am
@@ -1,9 +1,9 @@
-html: user.doxygen doxygen.tstamp
+html: doxygen.tstamp
dist-hook: html
-EXTRA_DIST=html
+nobase_dist_doc_DATA=$(wildcard html/*)
SOURCES = \
$(wildcard $(topsrcdir)/gen/*.h) \
@@ -12,27 +12,11 @@ SOURCES = \
$(wildcard $(topsrcdir)/lib/common/framing/*.h) \
$(wildcard $(topsrcdir)/lib/client/*.h)
-doxygen.tstamp: $(SOURCES)
+doxygen.tstamp: user.doxygen $(SOURCES)
doxygen user.doxygen
touch $@
clean-local:
rm -rf docs.tstamp html man latex doxygen.tstamp xml
-HTML_TARGET_DIR=$(pkgdatadir)/api/html
-
-install-data-local:
- installfiles=`echo html/*`; \
- if test "$$installfiles" = 'html/*'; \
- then echo '-- Nothing to install' ; \
- else \
- $(mkinstalldirs) $(DESTDIR)$(HTML_TARGET_DIR); \
- for i in $$installfiles; do \
- echo '-- Installing '$$i ; \
- $(INSTALL_DATA) $$i $(DESTDIR)$(HTML_TARGET_DIR); \
- done; \
- fi
-
-uninstall-local:
- rm -f $(DESTDIR)$(HTML_TARGET_DIR)/*
diff --git a/cpp/docs/api/user.doxygen b/cpp/docs/api/user.doxygen
index d2f47be9b4..2b19196568 100644
--- a/cpp/docs/api/user.doxygen
+++ b/cpp/docs/api/user.doxygen
@@ -138,7 +138,7 @@ STRIP_FROM_INC_PATH =
# (but less readable) file names. This can be useful is your file systems
# doesn't support long names like on DOS, Mac, or CD-ROM.
-SHORT_NAMES = NO
+SHORT_NAMES = YES
# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
# will interpret the first line (until the first dot) of a JavaDoc-style
diff --git a/cpp/lib/broker/Makefile.am b/cpp/lib/broker/Makefile.am
index 036efe3955..01a5b3d847 100644
--- a/cpp/lib/broker/Makefile.am
+++ b/cpp/lib/broker/Makefile.am
@@ -79,3 +79,7 @@ libqpidbroker_la_SOURCES = \
TxOp.h \
TxPublish.cpp \
TxPublish.h
+
+
+# Force build during dist phase so help2man will work.
+dist-hook: $(lib_LTLIBRARIES)
diff --git a/cpp/lib/common/Makefile.am b/cpp/lib/common/Makefile.am
index bd9f3f422e..b9f83f1f71 100644
--- a/cpp/lib/common/Makefile.am
+++ b/cpp/lib/common/Makefile.am
@@ -65,6 +65,7 @@ libqpidcommon_la_SOURCES = \
$(framing)/BodyHandler.cpp \
$(framing)/Buffer.cpp \
$(framing)/FieldTable.cpp \
+ $(framing)/FramingContent.cpp \
$(framing)/InitiationHandler.cpp \
$(framing)/ProtocolInitiation.cpp \
$(framing)/ProtocolVersion.cpp \
@@ -92,7 +93,6 @@ nobase_pkginclude_HEADERS = \
$(framing)/BodyHandler.h \
$(framing)/Buffer.h \
$(framing)/FieldTable.h \
- $(framing)/FramingContent.cpp \
$(framing)/FramingContent.h \
$(framing)/HeaderProperties.h \
$(framing)/InitiationHandler.h \
@@ -122,3 +122,7 @@ nobase_pkginclude_HEADERS = \
sys/Thread.h \
sys/Time.h \
sys/TimeoutHandler.h
+
+
+# Force build during dist phase so help2man will work.
+dist-hook: $(lib_LTLIBRARIES)
diff --git a/cpp/qpidc.spec b/cpp/qpidc.spec
new file mode 100644
index 0000000000..fe94a543e2
--- /dev/null
+++ b/cpp/qpidc.spec
@@ -0,0 +1,108 @@
+Name: qpidc
+Version: 0.1
+Release: 1%{?dist}
+Summary: Libraries for Qpid C++ client applications.
+Group: System Environment/Libraries
+License: Apache
+URL: http://incubator.apache.org/qpid/
+# FIXME: Source must be a URL pointing to where the tarball can be downloaded
+Source0: %{name}-%{version}.tar.gz
+BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+
+# FIXME: The BR's need to be checked against a clean buildroot [lutter]
+BuildRequires: libtool
+BuildRequires: boost-devel
+BuildRequires: cppunit
+BuildRequires: cppunit-devel
+BuildRequires: doxygen
+BuildRequires: graphviz
+BuildRequires: help2man
+BuildRequires: pkgconfig
+
+# FIXME: Remove when APR dependency is removed. [aconway]
+BuildRequires: e2fsprogs-devel
+BuildRequires: apr-devel
+Requires: apr
+
+Requires: boost
+
+%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-client = %version-%release
+Requires: libtool
+Requires: apr-devel
+Requires: boost-devel
+Requires: cppunit
+Requires: cppunit-devel
+
+%description devel
+Libraries, header files and documentation for developing AMQP clients
+in C++ using Qpid. Qpid implements the AMQP messaging specification.
+
+%define daemon qpidd
+%package -n %{daemon}
+Summary: An AMQP message broker daemon.
+Group: System Environment/Daemons
+Requires: %name-client = %version-%release
+
+%description %{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}
+
+%install
+rm -rf $RPM_BUILD_ROOT
+make install DESTDIR=$RPM_BUILD_ROOT
+rm -f $RPM_BUILD_ROOT%_libdir/*.a
+rm -f $RPM_BUILD_ROOT%_libdir/*.la
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%check
+make check
+
+%files %{name}
+%defattr(-,root,root,-)
+%doc LICENSE.txt NOTICE.txt
+%_docdir/html/*
+%_libdir/libqpidcommon.so.0
+%_libdir/libqpidcommon.so.0.1.0
+%_libdir/libqpidclient.so.0
+%_libdir/libqpidclient.so.0.1.0
+
+%files %{name}-devel
+%defattr(-,root,root,-)
+%_includedir/qpid/*.h
+%_libdir/libqpidcommon.so
+%_libdir/libqpidclient.so
+
+%files %{daemon}
+%_libdir/libqpidbroker.so.0
+%_libdir/libqpidbroker.so.0.1.0
+%_sbindir/%{daemon}
+%_mandir/man1/%{daemon}.*
+
+#FIXME: Fix Makefile.am to install etc/init.d/%{daemon} properly:
+%_sysconfdir/init.d/%{daemon}
+
+%changelog
+* Mon Dec 11 2006 Alan Conway <aconway@localhost.localdomain> - 0.1-1
+- Second cut, still needs work and testing.
+
+* Fri Dec 8 2006 David Lutterkort <dlutter@redhat.com> - 0.1-1
+- Initial version based on Jim Meyering's sketch and discussions with Alan
+ Conway
+
diff --git a/cpp/src/Makefile.am b/cpp/src/Makefile.am
index 2d5c83ba61..40398eb2c9 100644
--- a/cpp/src/Makefile.am
+++ b/cpp/src/Makefile.am
@@ -12,3 +12,6 @@ LDADD = \
sbin_PROGRAMS = qpidd
qpidd_SOURCES = qpidd.cpp
+
+# Force build of qpidd during dist phase so help2man will work.
+dist-hook: $(sbin_PROGRAMS)