%bcond_with java # build db-java (required for openoffice)
%bcond_without tcl # don't build Tcl bindings
%bcond_with pmutex # use POSIX mutexes (only process-private with linuxthreads)
-%bcond_with nptl # synonym for pmutex (NPTL provides full interface)
+%bcond_with nptl # use process-shared POSIX mutexes (NPTL provides full interface)
#
%{?with_nptl:%define with_pmutex 1}
Summary: Berkeley DB database library for C
Summary(pl): Biblioteka C do obsĀ³ugi baz Berkeley DB
Name: db
Version: 4.2.52
-Release: 7
+Release: 11
License: Sleepycat public license (GPL-like, see LICENSE)
Group: Libraries
# alternative site (sometimes working): http://www.berkeleydb.com/
Patch0: %{name}-so-suffix.patch
Patch1: patch.4.2.52.1
Patch2: patch.4.2.52.2
+Patch3: patch.4.2.52.3
+Patch4: patch.4.2.52.4
+Patch5: %{name}-amd64-fastmutex.patch
URL: http://www.sleepycat.com/
BuildRequires: autoconf
BuildRequires: automake
%{?with_java:BuildRequires: jdk}
BuildRequires: libtool
BuildRequires: libstdc++-devel
+BuildRequires: rpmbuild(macros) >= 1.164
BuildRequires: sed >= 4.0
%{?with_tcl:BuildRequires: tcl-devel >= 8.4.0}
Obsoletes: db4
%patch0 -p1
%patch1 -p0
%patch2 -p0
+%patch3 -p0
+%patch4 -p0
+%patch5 -p1
+
+%if %{without nptl}
+sed -i -e 's,AM_PTHREADS_SHARED("POSIX/.*,:,' dist/aclocal/mutex.ac
+%endif
%build
cd dist
-cp -f %{_datadir}/aclocal/libtool.m4 aclocal/libtool.ac
-cp -f %{_datadir}/automake/config.sub .
-cp -f %{_datadir}/libtool/ltmain.sh .
+cp -f /usr/share/aclocal/libtool.m4 aclocal/libtool.ac
+cp -f /usr/share/automake/config.sub .
+cp -f /usr/share/libtool/ltmain.sh .
sh s_config
cd ..
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_includedir},%{_libdir},%{_bindir}}
+install -d $RPM_BUILD_ROOT{%{_includedir},%{_libdir},%{_bindir},/%{_lib}}
%if %{with java}
install -d $RPM_BUILD_ROOT%{_javadir}
%endif
DESTDIR=$RPM_BUILD_ROOT \
LIB_INSTALL_FILE_LIST=""
+mv $RPM_BUILD_ROOT%{_libdir}/libdb-4.2.so $RPM_BUILD_ROOT/%{_lib}
+
cd $RPM_BUILD_ROOT%{_libdir}
-ln -sf libdb-4.2.so libdb.so
-ln -sf libdb-4.2.so libdb4.so
-ln -sf libdb-4.2.so libdb-4.so
-ln -sf libdb-4.2.so libndbm.so
+ln -sf /%{_lib}/libdb-4.2.so libdb.so
+ln -sf /%{_lib}/libdb-4.2.so libdb4.so
+ln -sf /%{_lib}/libdb-4.2.so libdb-4.so
+ln -sf /%{_lib}/libdb-4.2.so libndbm.so
ln -sf libdb-4.2.la libdb.la
ln -sf libdb-4.2.la libdb4.la
ln -sf libdb-4.2.la libndbm.la
%if %{with java}
ln -sf libdb_java-4.2.la libdb_java.la
-mv -f *.jar $RPM_BUILD_ROOT%{_javadir}
+mv -f $RPM_BUILD_ROOT%{_libdir}/*.jar $RPM_BUILD_ROOT%{_javadir}
%endif
%if %{with tcl}
ln -sf libdb_tcl-4.2.so libdb_tcl.so
%files
%defattr(644,root,root,755)
%doc LICENSE README
-%attr(755,root,root) %{_libdir}/libdb-4.2.so
+%attr(755,root,root) /%{_lib}/libdb-4.2.so
%dir %{_docdir}/%{name}-%{version}-docs
%{_docdir}/%{name}-%{version}-docs/sleepycat
%{_docdir}/%{name}-%{version}-docs/index.html
%if %{with java}
%files java
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libdb_java*.so
+%attr(755,root,root) %{_libdir}/libdb_java-4.2.so
%{_javadir}/db.jar
%files java-devel