packaging(RHEL-CTDB): build libtdb and libtalloc packages ourselves
authorMichael Adam <obnox@samba.org>
Fri, 6 May 2011 10:29:10 +0000 (12:29 +0200)
committerMichael Adam <obnox@samba.org>
Wed, 18 May 2011 20:00:24 +0000 (22:00 +0200)
and add appropriate dependencies to the samba-common package.
It should also be possible to run with appropriate system talloc
and tdb packages.

packaging/RHEL-CTDB/makespec.sh
packaging/RHEL-CTDB/samba.spec.tmpl

index 29dcbeb30e495909bd5c27015ed9d2134955abf1..946ce8ebf987569bd1ce9e256910be69757bd6cc 100755 (executable)
@@ -45,8 +45,21 @@ else
        echo "GITHASH: ${GITHASH}"
 fi
 
-sed -e s/PVERSION/${VERSION}/g \
+
+#
+# get the versions of libtdb and libtalloc we provide
+#
+#LIBTDBVERSION=1.2.9
+LIBTDBVERSION=$(grep ^VERSION ${DIRNAME}/../../lib/tdb/wscript | sed -e "s/'//g" -e 's/.* //')
+
+#LIBTALLOCVERSION=2.0.1
+LIBTALLOCVERSION=$(grep ^VERSION ${DIRNAME}/../../lib/talloc/wscript | sed -e "s/'//g" -e 's/.* //')
+
+sed \
+       -e s/PVERSION/${VERSION}/g \
        -e s/GITHASH/${GITHASH}/g \
+       -e s/LIBTDBVERSION/${LIBTDBVERSION}/g \
+       -e s/LIBTALLOCVERSION/${LIBTALLOCVERSION}/g \
        < ${SPECFILE}.tmpl \
        > ${SPECFILE}
 
index ef8d42bfbe065106022228783cf83f8e680fa966..9f249f5dafb64b75ba69481ec10d8fb10e667583 100644 (file)
@@ -77,12 +77,36 @@ shares and printing to SMB printers.
 Summary: Files used by both Samba servers and clients.
 Group: Applications/System
 Provides: samba-common = %{version}-%{release}
+Requires: libtalloc >= 2.0.1
+Requires: libtdb >= 1.2.6
 
 %description common
 Samba-common provides files necessary for both the server and client
 packages of Samba.
 
 
+#######################################################################
+%package libtdb
+Summary: the tdb library
+Group: Applications/System
+Provides: libtdb = LIBTDBVERSION-%{release}
+Obsoletes: libtdb
+#Conflicts: libtdb < LIBTALLOCVERSION
+
+%description libtdb
+Samba's tdb library.
+
+#######################################################################
+%package libtalloc
+Summary: the talloc library
+Group: Applications/System
+Provides: libtalloc = LIBTALLOCVERSION-%{release}
+Obsoletes: libtalloc
+#Conflicts: libtalloc < LIBTALLOCVERSION
+
+%description libtalloc
+Samba's talloc library
+
 #######################################################################
 %package swat
 Summary: The Samba SMB server configuration program.
@@ -256,6 +280,11 @@ cp -p source3/bin/winbind_krb5_locator.so ${RPM_BUILD_ROOT}/%{_libarchdir}/krb5/
 ## cleanup
 /bin/rm -rf $RPM_BUILD_ROOT/usr/lib*/samba/security
 
+# remove installed but unpackaged files:
+/bin/rm -f $RPM_BUILD_ROOT/usr/lib*/libtalloc.so
+/bin/rm -f $RPM_BUILD_ROOT/usr/lib*/libtdb.so
+
+
 # Install the miscellany
 echo 127.0.0.1 localhost > $RPM_BUILD_ROOT%{_sysconfdir}/samba/lmhosts
 
@@ -483,6 +512,14 @@ exit 0
 
 ##########
 
+%files libtalloc
+%{_libarchdir}/libtalloc.so.LIBTALLOCVERSION
+%{_libarchdir}/libtalloc.so.2
+
+%files libtdb
+%{_libarchdir}/libtdb.so.LIBTDBVERSION
+%{_libarchdir}/libtdb.so.1
+
 %files common
 %defattr(-,root,root)
 %dir %{_sysconfdir}/samba
@@ -524,10 +561,6 @@ exit 0
 %{_includedir}/tdb.h
 %{_libarchdir}/libnetapi.so
 %{_libarchdir}/libnetapi.so.0
-%{_libarchdir}/libtalloc.so
-%{_libarchdir}/libtalloc.so.2
-%{_libarchdir}/libtdb.so
-%{_libarchdir}/libtdb.so.1
 %{_libarchdir}/libwbclient.so
 %{_libarchdir}/libwbclient.so.0