rpms/samba4/devel samba4.spec,1.2,1.3
Simo Sorce
simo at fedoraproject.org
Tue Mar 3 22:22:40 UTC 2009
- Previous message (by thread): rpms/psi/devel psi-0.12-qt-4_5-compatibility.patch, NONE, 1.1 .cvsignore, 1.10, 1.11 psi.spec, 1.26, 1.27 sources, 1.12, 1.13
- Next message (by thread): rpms/psi/devel .cvsignore,1.11,1.12 sources,1.13,1.14
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: simo
Update of /cvs/pkgs/rpms/samba4/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv16941
Modified Files:
samba4.spec
Log Message:
* Mon Mar 2 2009 Simo Sorce <ssorce at redhat.com> - 4.0.0-5alpha7
- Compile and have separate packages for additional samba libraries
Package in their own packages: talloc, tdb, tevent, ldb
Index: samba4.spec
===================================================================
RCS file: /cvs/pkgs/rpms/samba4/devel/samba4.spec,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- samba4.spec 27 Feb 2009 22:16:54 -0000 1.2
+++ samba4.spec 3 Mar 2009 22:22:10 -0000 1.3
@@ -1,9 +1,22 @@
-%define alpha_version 7
-%define samba_version 4.0.0alpha%{alpha_version}
-%define tarball_name samba-4.0.0alpha%{alpha_version}
+%define main_release 5
+%define samba4_version 4.0.0
-%define tdb_version 1.1.1
%define talloc_version 1.2.0
+%define tdb_version 1.1.3
+%define tevent_version 0.9.3
+%define ldb_version 0.9.3
+
+%define pre_release alpha7
+
+%define tarball_name samba-4.0.0%{pre_release}
+
+%define samba4_release %{main_release}%{pre_release}%{?dist}
+# We need a higher talloc release to address previous releases done as
+# part of the samba3 package.
+%define talloc_release 29.%{main_release}%{?dist}
+%define tdb_release %{main_release}%{?dist}
+%define tevent_release %{main_release}%{?dist}
+%define ldb_release %{main_release}%{?dist}
# Most of these subpackages are disabled because they are not
# needed by OpenChange, and to avoid file conflicts with Samba3.
@@ -24,8 +37,8 @@
# and subject to change.
Name: samba4
-Version: 4.0.0
-Release: 4.alpha%{alpha_version}%{?dist}
+Version: %{samba4_version}
+Release: %{samba4_release}
Group: System Environment/Daemons
Summary: The Samba4 CIFS and AD client and server suite
License: GPLv3+ and LGPLv3+
@@ -59,8 +72,6 @@
BuildRequires: libacl-devel
BuildRequires: libaio-devel
BuildRequires: libattr-devel
-BuildRequires: libtalloc-devel >= %{talloc_version}
-BuildRequires: libtdb-devel >= %{tdb_version}
BuildRequires: ncurses-devel
BuildRequires: pam-devel
BuildRequires: perl(ExtUtils::MakeMaker)
@@ -151,6 +162,112 @@
domains and to use Windows user and group accounts on Linux.
%endif
+%package -n libtalloc
+Group: Development/Libraries
+Summary: A hierarchical allocator
+Version: %{talloc_version}
+Release: %{talloc_release}
+
+%description -n libtalloc
+A library that implements a hierarchical allocator with destructors.
+
+%package -n libtdb
+Group: Development/Libraries
+Summary: A bdb like database engine
+Version: %{tdb_version}
+Release: %{tdb_release}
+
+%description -n libtdb
+A library that implements a single key database with transactions support.
+
+%package -n tdb-tools
+Group: Development/Libraries
+Summary: Tools to manage TDB files
+Version: %{tdb_version}
+Release: %{tdb_release}
+Requires: libtdb >= %{tdb_version}
+
+%description -n tdb-tools
+Tools to manage TDB files
+
+%package -n libtevent
+Group: Development/Libraries
+Summary: An event system library
+Version: %{tevent_version}
+Release: %{tevent_release}
+Requires: libtalloc >= %{talloc_version}
+
+%description -n libtevent
+A library that implements an event driven system, that uses epoll/select to
+fire events when file status changes, supports also timer events.
+
+%package -n libldb
+Group: Development/Libraries
+Summary: A schema-less, ldap like, API and database
+Version: %{ldb_version}
+Release: %{ldb_release}
+Requires: libtalloc >= %{talloc_version}
+Requires: libtdb >= %{tdb_version}
+Requires: libtevent >= %{tevent_version}
+
+%description -n libldb
+An extensible library that implements and LDAP like API to access remote LDAP
+servers, or use local tdb databases.
+
+%package -n ldb-tools
+Group: Development/Libraries
+Summary: Tools to manage LDB files
+Version: %{ldb_version}
+Release: %{ldb_release}
+Requires: libldb >= %{ldb_version}
+
+%description -n ldb-tools
+Tools to manage LDB files
+
+%package -n libtalloc-devel
+Group: Development/Libraries
+Summary: Developer tools for the Talloc library
+Version: %{talloc_version}
+Release: %{talloc_release}
+Requires: libtalloc = %{talloc_release}
+
+%description -n libtalloc-devel
+Header files needed to develop programs that link against the Talloc library.
+
+%package -n libtdb-devel
+Group: Development/Libraries
+Summary: Developer tools for the TDB library
+Version: %{tdb_version}
+Release: %{tdb_release}
+Requires: libtdb = %{tdb_version}-%{tdb_release}
+
+%description -n libtdb-devel
+Header files needed to develop programs that link against the TDB library.
+
+%package -n libtevent-devel
+Group: Development/Libraries
+Summary: Developer tools for the tevent library
+Version: %{tevent_version}
+Release: %{tevent_release}
+Requires: libtevent = %{tevent_version}-%{tevent_release}
+Requires: libtalloc-devel >= %{talloc_version}
+
+%description -n libtevent-devel
+Header files needed to develop programs that link against the tevent library.
+
+%package -n libldb-devel
+Group: Development/Libraries
+Summary: Developer tools for the LDB library
+Version: %{ldb_version}
+Release: %{ldb_release}
+Requires: libldb = %{ldb_version}-%{ldb_release}
+Requires: libtdb-devel = %{tdb_version}-%{tdb_release}
+Requires: libtalloc-devel >= %{talloc_version}
+Requires: libtevent-devel = %{tevent_version}-%{tevent_release}
+
+%description -n libldb-devel
+Header files needed to develop programs that link against the LDB library.
+
%prep
%setup -q -n %{tarball_name}
@@ -163,8 +280,46 @@
#cd source4
#script/mkversion.sh
#cd ..
+cp -a source4/lib/ldb lib/ldb
%build
+%define shared_build_dir %{_sourcedir}/sbtmp
+SAVE_LDLPATH=$LD_LIBRARY_PATH
+SAVE_CFLAGS=$CFLAGS
+export LD_LIBRARY_PATH=%{shared_build_dir}/%{_lib}
+export CFLAGS="$CFLAGS -I%{shared_build_dir}/include"
+
+# talloc
+pushd lib/talloc
+./autogen.sh
+%configure --with-shared-build-dir=%{shared_build_dir}
+make shared-build %{?_smp_mflags}
+popd
+
+# tdb
+pushd lib/tdb
+./autogen.sh
+%configure --with-shared-build-dir=%{shared_build_dir}
+make shared-build %{?_smp_mflags}
+popd
+
+# tevent
+pushd lib/tevent
+./autogen.sh
+%configure --with-shared-build-dir=%{shared_build_dir}
+make shared-build %{?_smp_mflags}
+popd
+
+# ldb
+pushd lib/ldb
+./autogen.sh
+%configure --with-shared-build-dir=%{shared_build_dir}
+make shared-build # %{?_smp_mflags} XXX Causes build failure on F10
+popd
+
+export LD_LIBRARY_PATH=$SAVE_LDLPATH
+export CFLAGS=$SAVE_CFLAGS
+
cd source4
%configure \
@@ -183,9 +338,9 @@
(cd ../pidl && %{__perl} Makefile.PL INSTALLDIRS=vendor )
# Builds using PIDL the IDL and many other things.
-make proto
-
-make everything
+#make proto
+#make everything
+make
%install
rm -rf $RPM_BUILD_ROOT
@@ -263,7 +418,7 @@
rm $RPM_BUILD_ROOT%{_bindir}/setnttoken
rm $RPM_BUILD_ROOT%{_bindir}/smbtorture
rm $RPM_BUILD_ROOT%{_bindir}/subunitrun
-rm $RPM_BUILD_ROOT%{_bindir}/tdbtorture
+#rm $RPM_BUILD_ROOT%{_bindir}/tdbtorture
# Avoids a file conflict with perl-Parse-Yapp.
rm -rf $RPM_BUILD_ROOT%{perl_vendorlib}/Parse/Yapp
@@ -273,9 +428,6 @@
rm $RPM_BUILD_ROOT%{_sbindir}/samba
rm $RPM_BUILD_ROOT%{_bindir}/mymachinepw
rm $RPM_BUILD_ROOT%{_bindir}/smbstatus
-rm $RPM_BUILD_ROOT%{_bindir}/tdbbackup
-rm $RPM_BUILD_ROOT%{_bindir}/tdbdump
-rm $RPM_BUILD_ROOT%{_bindir}/tdbtool
rm -r $RPM_BUILD_ROOT%{_datadir}/samba/setup
%endif
%if ! %enable_client
@@ -285,13 +437,13 @@
%endif
%if ! %enable_common
rm $RPM_BUILD_ROOT%{_bindir}/ad2oLschema
+rm $RPM_BUILD_ROOT%{_bindir}/net
rm $RPM_BUILD_ROOT%{_bindir}/ldbadd
rm $RPM_BUILD_ROOT%{_bindir}/ldbdel
rm $RPM_BUILD_ROOT%{_bindir}/ldbedit
rm $RPM_BUILD_ROOT%{_bindir}/ldbmodify
rm $RPM_BUILD_ROOT%{_bindir}/ldbrename
rm $RPM_BUILD_ROOT%{_bindir}/ldbsearch
-rm $RPM_BUILD_ROOT%{_bindir}/net
rm $RPM_BUILD_ROOT%{_bindir}/oLschema2ldif
rm $RPM_BUILD_ROOT%{_bindir}/regdiff
rm $RPM_BUILD_ROOT%{_bindir}/regpatch
@@ -306,12 +458,45 @@
rm $RPM_BUILD_ROOT%{_libdir}/libgensec.so.*
rm $RPM_BUILD_ROOT%{_libdir}/libregistry.so
rm $RPM_BUILD_ROOT%{_libdir}/libregistry.so.*
+rm $RPM_BUILD_ROOT%{_libdir}/libtorture.so
+rm $RPM_BUILD_ROOT%{_libdir}/libtorture.so.*
+rm $RPM_BUILD_ROOT%{_libdir}/libldb.so.*
rm $RPM_BUILD_ROOT%{_libdir}/pkgconfig/dcerpc_atsvc.pc
rm $RPM_BUILD_ROOT%{_libdir}/pkgconfig/gensec.pc
rm $RPM_BUILD_ROOT%{_libdir}/pkgconfig/registry.pc
+rm $RPM_BUILD_ROOT%{_libdir}/pkgconfig/torture.pc
rm $RPM_BUILD_ROOT%{_includedir}/samba-4.0/gensec.h
rm $RPM_BUILD_ROOT%{_includedir}/samba-4.0/registry.h
%endif
+
+# talloc
+pushd lib/talloc
+make install DESTDIR=$RPM_BUILD_ROOT
+ln -s libtalloc.so.%{talloc_version} $RPM_BUILD_ROOT%{_libdir}/libtalloc.so
+find $RPM_BUILD_ROOT/usr/share/swig -name talloc.i -delete
+popd
+
+# tdb
+pushd lib/tdb
+make install DESTDIR=$RPM_BUILD_ROOT
+ln -s libtdb.so.%{tdb_version} $RPM_BUILD_ROOT%{_libdir}/libtdb.so
+popd
+
+# tevent
+pushd lib/tevent
+make install DESTDIR=$RPM_BUILD_ROOT
+ln -s libtevent.so.%{tevent_version} $RPM_BUILD_ROOT%{_libdir}/libtevent.so
+popd
+
+# ldb
+pushd lib/ldb
+make install DESTDIR=$RPM_BUILD_ROOT
+ln -s -f libldb.so.%{ldb_version} $RPM_BUILD_ROOT%{_libdir}/libldb.so
+mkdir $RPM_BUILD_ROOT%{_libdir}/ldb
+popd
+
+rm -f $RPM_BUILD_ROOT%{_libdir}/lib*.a
+
%if ! %enable_python
rm -r $RPM_BUILD_ROOT%{python_sitearch}/*
rm -r $RPM_BUILD_ROOT%{python_libdir}/lib
@@ -328,10 +513,13 @@
find source4/heimdal -type f | xargs chmod -x
%clean
+rm -fr %{shared_build_dir}
rm -rf $RPM_BUILD_ROOT
%pre
+%if %enable_winbind
getent group wbpriv >/dev/null || groupadd -g 88 wbpriv
+%endif
exit 0
%post
@@ -356,6 +544,30 @@
%postun libs -p /sbin/ldconfig
+%post -n libtalloc
+/sbin/ldconfig
+
+%postun -n libtalloc
+/sbin/ldconfig
+
+%post -n libtdb
+/sbin/ldconfig
+
+%postun -n libtdb
+/sbin/ldconfig
+
+%post -n libtevent
+/sbin/ldconfig
+
+%postun -n libtevent
+/sbin/ldconfig
+
+%post -n libldb
+/sbin/ldconfig
+
+%postun -n libldb
+/sbin/ldconfig
+
%files
%defattr(-,root,root,-)
@@ -383,10 +595,9 @@
%{_datadir}/samba/*.dat
%{_libdir}/libdcerpc.so.*
%{_libdir}/libdcerpc_samr.so.*
-%{_libdir}/libldb.so.*
%{_libdir}/libndr.so.*
%{_libdir}/libsamba-hostconfig.so.*
-%{_libdir}/libtorture.so.*
+#%{_libdir}/libtorture.so.*
#Only needed if Samba's build produces plugins
#%{_libdir}/samba
%dir %{_sysconfdir}/%{name}
@@ -423,16 +634,15 @@
%{_includedir}/samba-4.0
%{_libdir}/libdcerpc.so
%{_libdir}/libdcerpc_samr.so
-%{_libdir}/libldb.so
%{_libdir}/libndr.so
%{_libdir}/libsamba-hostconfig.so
-%{_libdir}/libtorture.so
+#%{_libdir}/libtorture.so
%{_libdir}/pkgconfig/dcerpc.pc
%{_libdir}/pkgconfig/dcerpc_samr.pc
%{_libdir}/pkgconfig/ldb.pc
%{_libdir}/pkgconfig/ndr.pc
%{_libdir}/pkgconfig/samba-hostconfig.pc
-%{_libdir}/pkgconfig/torture.pc
+#%{_libdir}/pkgconfig/torture.pc
%if %all_libraries
%{_libdir}/libdcerpc_atsvc.so
%{_libdir}/libgensec.so
@@ -463,12 +673,6 @@
%defattr(-,root,root,-)
%{_bindir}/net
%{_bindir}/testparm
-%{_bindir}/ldbadd
-%{_bindir}/ldbdel
-%{_bindir}/ldbedit
-%{_bindir}/ldbmodify
-%{_bindir}/ldbsearch
-%{_bindir}/ldbrename
%{_bindir}/ad2oLschema
%{_bindir}/oLschema2ldif
%{_bindir}/regdiff
@@ -482,7 +686,86 @@
#%config(noreplace) %{_sysconfdir}/%{name}/smb.conf
%endif
+%files -n libtalloc
+%defattr(-,root,root,-)
+%{_libdir}/libtalloc.so.*
+
+%files -n libtdb
+%defattr(-,root,root,-)
+%{_libdir}/libtdb.so.*
+
+%files -n libtevent
+%defattr(-,root,root,-)
+%{_libdir}/libtevent.so.*
+
+%files -n libldb
+%defattr(-,root,root,-)
+%{_libdir}/libldb.so.*
+%dir %{_libdir}/ldb
+#%{_libdir}/ldb/*
+
+%files -n tdb-tools
+%defattr(-,root,root,-)
+%{_bindir}/tdbbackup
+%{_bindir}/tdbdump
+%{_bindir}/tdbtool
+#FIXME: currently not installed in standalone build
+#%{_mandir}/man8/tdbbackup.8*
+#%{_mandir}/man8/tdbdump.8*
+#%{_mandir}/man8/tdbtool.8*
+
+%files -n ldb-tools
+%defattr(-,root,root,-)
+%{_bindir}/ldbadd
+%{_bindir}/ldbdel
+%{_bindir}/ldbedit
+%{_bindir}/ldbmodify
+%{_bindir}/ldbrename
+%{_bindir}/ldbsearch
+%{_bindir}/ldbtest
+%{_mandir}/man1/ldbadd.1.*
+%{_mandir}/man1/ldbdel.1.*
+%{_mandir}/man1/ldbedit.1.*
+%{_mandir}/man1/ldbmodify.1.*
+%{_mandir}/man1/ldbrename.1.*
+%{_mandir}/man1/ldbsearch.1.*
+%{_mandir}/man1/ad2oLschema.1.gz
+%{_mandir}/man1/oLschema2ldif.1.gz
+
+%files -n libtalloc-devel
+%defattr(-,root,root,-)
+%{_includedir}/talloc.h
+%{_libdir}/libtalloc.so
+%{_libdir}/pkgconfig/talloc.pc
+%{_mandir}/man3/talloc.3.gz
+
+%files -n libtdb-devel
+%defattr(-,root,root,-)
+%{_includedir}/tdb.h
+%{_libdir}/libtdb.so
+%{_libdir}/pkgconfig/tdb.pc
+
+%files -n libtevent-devel
+%defattr(-,root,root,-)
+%{_includedir}/tevent.h
+%{_libdir}/libtevent.so
+%{_libdir}/pkgconfig/tevent.pc
+
+%files -n libldb-devel
+%defattr(-,root,root,-)
+%{_includedir}/ldb_module.h
+%{_includedir}/ldb_handlers.h
+%{_includedir}/ldb_errors.h
+%{_includedir}/ldb.h
+%{_libdir}/libldb.so
+%{_libdir}/pkgconfig/ldb.pc
+%{_mandir}/man3/ldb.3.gz
+
%changelog
+* Mon Mar 2 2009 Simo Sorce <ssorce at redhat.com> - 4.0.0-5alpha7
+- Compile and have separate packages for additional samba libraries
+ Package in their own packages: talloc, tdb, tevent, ldb
+
* Fri Feb 27 2009 Matthew Barnes <mbarnes at redhat.com> - 4.0.0-4.alpha7
- Update to 4.0.0alpha7
- Previous message (by thread): rpms/psi/devel psi-0.12-qt-4_5-compatibility.patch, NONE, 1.1 .cvsignore, 1.10, 1.11 psi.spec, 1.26, 1.27 sources, 1.12, 1.13
- Next message (by thread): rpms/psi/devel .cvsignore,1.11,1.12 sources,1.13,1.14
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the fedora-extras-commits
mailing list