]> git.pld-linux.org Git - packages/ldb.git/blobdiff - ldb.spec
runtime depend on lmdb-libs instead of lmdb
[packages/ldb.git] / ldb.spec
index 1761ea4c44157dffccbade117d69e85d532d3290..7b5d95d6853d6d275a4d16e7618164bcce82155c 100644 (file)
--- a/ldb.spec
+++ b/ldb.spec
-# TODO
-# - really fix the version script error (version-script.patch)
-%define                talloc_version  2.0.5
-%define                tdb_version             1.2.9
-%define                tevent_version  0.9.12
-Summary:       A schema-less, ldap like, API and database
-Name:          libldb
-Version:       1.1.0
-Release:       1
+#
+# Conditional build:
+%bcond_without lmdb    # LMDB module (64-bit only)
+#
+%ifnarch %{x8664} aarch64 alpha mips64 ppc64 s390x sparc64
+# lmdb support requires 64-bit size_t
+%undefine      with_lmdb
+%endif
+%define                talloc_version  2:2.3.3
+%define                tdb_version     2:1.4.4
+%define                tevent_version  0.11.0
+Summary:       LDAP-like embedded database
+Summary(pl.UTF-8):     Wbudowana baza danych podobna do LDAP
+Name:          ldb
+Version:       2.4.2
+Release:       2
 License:       LGPL v3+
-Group:         Development/Libraries
-URL:           http://ldb.samba.org/
-Source0:       http://samba.org/ftp/ldb/ldb-%{version}.tar.gz
-# Source0-md5: 61145ad9cfe017ce4fca5cbc77b9552b
-Patch0:                version-script.patch
-BuildRequires: autoconf
+Group:         Libraries
+Source0:       https://download.samba.org/pub/ldb/%{name}-%{version}.tar.gz
+# Source0-md5: 6b1cb6a66d7a197d077dee509dc7133d
+URL:           https://ldb.samba.org/
+BuildRequires: cmocka-devel >= 1.1.3
 BuildRequires: docbook-style-xsl
-BuildRequires: libtalloc-devel >= %{talloc_version}
-BuildRequires: libxslt
-BuildRequires: popt-devel
-BuildRequires: python-devel
-BuildRequires: python-talloc-devel
-BuildRequires: python-tdb
+BuildRequires: libbsd-devel
+BuildRequires: libxslt-progs
+%{?with_lmdb:BuildRequires:    lmdb-devel >= 0.9.16}
+BuildRequires: openldap-devel
+BuildRequires: popt-devel >= 1.6
+BuildRequires: python3-devel >= 1:3.2
+BuildRequires: python3-talloc-devel >= %{talloc_version}
+BuildRequires: python3-tdb >= %{tdb_version}
+BuildRequires: python3-tevent >= %{tevent_version}
+BuildRequires: rpmbuild(macros) >= 1.704
+BuildRequires: talloc-devel >= %{talloc_version}
 BuildRequires: tdb-devel >= %{tdb_version}
 BuildRequires: tevent-devel >= %{tevent_version}
-Requires:      libtalloc >= %{talloc_version}
+%{?with_lmdb:Requires: lmdb-libs >= 0.9.16}
+Requires:      talloc >= %{talloc_version}
 Requires:      tdb >= %{tdb_version}
 Requires:      tevent >= %{tevent_version}
+Requires:      popt >= 1.6
+Provides:      libldb = %{version}-%{release}
+Obsoletes:     libldb < 1.1.0-3
+# ldb 1.6+ dropped python2 support
+Obsoletes:     python-ldb < 1.6
+Obsoletes:     python-ldb-devel < 1.6
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %description
 An extensible library that implements an LDAP like API to access
 remote LDAP servers, or use local tdb databases.
 
-%package -n ldb-tools
+%description -l pl.UTF-8
+Rozszerzalna biblioteka implementująca API podobne do LDAP pozwalające
+na dostęp do zdalnych serwerów LDAP lub wykorzystanie lokalnych baz
+danych tdb.
+
+%package tools
 Summary:       Tools to manage LDB files
-Group:         Development/Libraries
+Summary(pl.UTF-8):     Narzędzia do zarządzania plikami LDB
+Group:         Applications/Databases
 Requires:      %{name} = %{version}-%{release}
 
-%description -n ldb-tools
+%description tools
 Tools to manage LDB files.
 
+%description tools -l pl.UTF-8
+Narzędzia do zarządzania plikami LDB.
+
 %package devel
-Summary:       Developer tools for the LDB library
+Summary:       Header files for the LDB library
+Summary(pl.UTF-8):     Pliki nagłówkowe biblioteki LDB
 Group:         Development/Libraries
 Requires:      %{name} = %{version}-%{release}
-Requires:      libtalloc-devel >= %{talloc_version}
-Requires:      pkgconfig
+Requires:      talloc-devel >= %{talloc_version}
 Requires:      tdb-devel >= %{tdb_version}
 Requires:      tevent-devel >= %{tevent_version}
+Provides:      libldb-devel = %{version}-%{release}
+Obsoletes:     libldb-devel < 1.1.0-3
 
 %description devel
 Header files needed to develop programs that link against the LDB
 library.
 
-%package -n python-ldb
-Summary:       Python bindings for the LDB library
-Group:         Development/Libraries
+%description devel -l pl.UTF-8
+Pliki nagłówkowe potrzebne do tworzenia programów wykorzystujących
+bibliotekę LDB.
+
+%package -n python3-ldb
+Summary:       Python 3 bindings for the LDB library
+Summary(pl.UTF-8):     Wiązania Pythona 3 do biblioteki LDB
+Group:         Libraries/Python
 Requires:      %{name} = %{version}-%{release}
-Requires:      python-tdb = %{tdb_version}
-Obsoletes:     pyldb
+Requires:      python3-tdb >= %{tdb_version}
+Obsoletes:     pyldb < 1.1.0-1
+
+%description -n python3-ldb
+Python 3 bindings for the LDB library.
 
-%description -n python-ldb
-Python bindings for the LDB library.
+%description -n python3-ldb -l pl.UTF-8
+Wiązania Pythona 3 do biblioteki LDB.
 
-%package -n python-ldb-devel
-Summary:       Development files for the Python bindings for the LDB library
+%package -n python3-ldb-devel
+Summary:       Development files for the Python 3 bindings for the LDB library
+Summary(pl.UTF-8):     Pliki programistyczne wiązań Pythona 3 do biblioteki LDB
 Group:         Development/Libraries
-Requires:      pyldb = %{version}-%{release}
+Requires:      python3-ldb = %{version}-%{release}
+
+%description -n python3-ldb-devel
+Development files for the Python 3 bindings for the LDB library.
 
-%description -n python-ldb-devel
-Development files for the Python bindings for the LDB library
+%description -n python3-ldb-devel -l pl.UTF-8
+Pliki programistyczne wiązań Pythona 3 do biblioteki LDB.
 
 %prep
-%setup -q -n ldb-%{version}
-%patch0 -p1
+%setup -q
 
 %build
-# use ld.bfd
-install -d $(pwd)/ld-bin
-ln -s %{_bindir}/ld.bfd $(pwd)/ld-bin/ld
-
-# note: configure in fact is waf call
-PATH=$(pwd)/ld-bin:$PATH \
-COMPILER_PATH=$(pwd)/ld-bin \
 CC="%{__cc}" \
 CFLAGS="%{rpmcflags}" \
-PYTHONDIR=%{py_sitedir} \
 ./configure \
        --prefix=%{_prefix} \
        --libdir=%{_libdir} \
@@ -103,12 +135,12 @@ rm -rf $RPM_BUILD_ROOT
 %{__make} install \
        DESTDIR=$RPM_BUILD_ROOT
 
-# Remove _tevent.so (it's managed by python-tevent)
-%{__rm} $RPM_BUILD_ROOT%{py_sitedir}/_tevent.so
+%py3_comp $RPM_BUILD_ROOT%{py3_sitedir}
+%py3_ocomp $RPM_BUILD_ROOT%{py3_sitedir}
 
 # Shared libraries need to be marked executable for
 # rpmbuild to strip them and include them in debuginfo
-find $RPM_BUILD_ROOT -name "*.so*" -exec chmod -c +x {} \;
+find $RPM_BUILD_ROOT -name "*.so*" -exec chmod -c +x {} ';'
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -116,18 +148,23 @@ rm -rf $RPM_BUILD_ROOT
 %post  -p /sbin/ldconfig
 %postun        -p /sbin/ldconfig
 
-%post  -n python-ldb -p /sbin/ldconfig
-%postun        -n python-ldb -p /sbin/ldconfig
+%post  -n python3-ldb -p /sbin/ldconfig
+%postun        -n python3-ldb -p /sbin/ldconfig
 
 %files
 %defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libldb.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libldb.so.2
 %dir %{_libdir}/ldb
-%{_libdir}/libldb.so.*
+%attr(755,root,root) %{_libdir}/ldb/libldb-key-value.so
+%attr(755,root,root) %{_libdir}/ldb/libldb-tdb-err-map.so
+%attr(755,root,root) %{_libdir}/ldb/libldb-tdb-int.so
+%{?with_lmdb:%attr(755,root,root) %{_libdir}/ldb/libldb-mdb-int.so}
 %dir %{_libdir}/ldb/modules
 %dir %{_libdir}/ldb/modules/ldb
-%{_libdir}/ldb/modules/ldb/*.so
+%attr(755,root,root) %{_libdir}/ldb/modules/ldb/*.so
 
-%files -n ldb-tools
+%files tools
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/ldbadd
 %attr(755,root,root) %{_bindir}/ldbdel
@@ -135,33 +172,35 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_bindir}/ldbmodify
 %attr(755,root,root) %{_bindir}/ldbrename
 %attr(755,root,root) %{_bindir}/ldbsearch
-%{_libdir}/ldb/libldb-cmdline.so
-%{_mandir}/man1/ldbadd.1.*
-%{_mandir}/man1/ldbdel.1.*
-%{_mandir}/man1/ldbedit.1.*
-%{_mandir}/man1/ldbmodify.1.*
-%{_mandir}/man1/ldbrename.1.*
-%{_mandir}/man1/ldbsearch.1.*
+%attr(755,root,root) %{_libdir}/ldb/libldb-cmdline.so
+%{_mandir}/man1/ldbadd.1*
+%{_mandir}/man1/ldbdel.1*
+%{_mandir}/man1/ldbedit.1*
+%{_mandir}/man1/ldbmodify.1*
+%{_mandir}/man1/ldbrename.1*
+%{_mandir}/man1/ldbsearch.1*
 
 %files devel
 %defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libldb.so
 %{_includedir}/ldb_module.h
 %{_includedir}/ldb_handlers.h
 %{_includedir}/ldb_errors.h
 %{_includedir}/ldb_version.h
 %{_includedir}/ldb.h
-%{_libdir}/libldb.so
-
 %{_pkgconfigdir}/ldb.pc
 %{_mandir}/man3/ldb.3*
 
-%files -n python-ldb
+%files -n python3-ldb
 %defattr(644,root,root,755)
-%{py_sitedir}/ldb.so
-%{_libdir}/libpyldb-util.so.1*
+%attr(755,root,root) %{_libdir}/libpyldb-util.cpython-3*.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libpyldb-util.cpython-3*.so.2
+%attr(755,root,root) %{py3_sitedir}/ldb.cpython-*.so
+%{py3_sitedir}/_ldb_text.py
+%{py3_sitedir}/__pycache__/_ldb_text.cpython-*.py[co]
 
-%files -n python-ldb-devel
+%files -n python3-ldb-devel
 %defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libpyldb-util.cpython-3*.so
 %{_includedir}/pyldb.h
-%{_libdir}/libpyldb-util.so
-%{_pkgconfigdir}/pyldb-util.pc
+%{_pkgconfigdir}/pyldb-util.cpython-3*.pc
This page took 0.11768 seconds and 4 git commands to generate.