%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_without static_libs # don't build static libraries
#
%{?with_nptl:%define with_pmutex 1}
Summary: Berkeley DB database library for C
Summary(pl): Biblioteka C do obs³ugi baz Berkeley DB
Name: db4.3
-Version: 4.3.21
-Release: 0.1
+Version: 4.3.27
+Release: 2
+Epoch: 0
License: Sleepycat public license (GPL-like, see LICENSE)
Group: Libraries
# alternative site (sometimes working): http://www.berkeleydb.com/
-#Source0Download: http://www.sleepycat.com/download/
-Source0: http://www.sleepycat.com/update/snapshot/db-%{version}.tar.gz
-# Source0-md5: 014950aaadd531f6f9064c81a2018423
-Patch0: db-so-suffix.patch
+#Source0Download: http://www.sleepycat.com/download/db/
+Source0: ftp://ftp.sleepycat.com/releases/db-%{version}.tar.gz
+# Source0-md5: fcc481d52c3b80e20a328f8c0cb042bd
URL: http://www.sleepycat.com/
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: libstdc++-devel
BuildRequires: sed >= 4.0
%{?with_tcl:BuildRequires: tcl-devel >= 8.4.0}
+Provides: db = %{version}-%{release}
Obsoletes: db4
-BuildRoot: %{tmpdir}/db-%{version}-root-%(id -u -n)
+BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
The Berkeley Database (Berkeley DB) is a programmatic toolkit that
Summary: Header files for Berkeley database library
Summary(pl): Pliki nag³ówkowe do biblioteki Berkeley Database
Group: Development/Libraries
-Requires: db = %{epoch}:%{version}-%{release}
+Requires: %{name} = %{epoch}:%{version}-%{release}
+Provides: db-devel = %{version}-%{release}
Obsoletes: db3-devel
Obsoletes: db4-devel
Summary: Static libraries for Berkeley database library
Summary(pl): Statyczne biblioteki Berkeley Database
Group: Development/Libraries
-Requires: db-devel = %{epoch}:%{version}-%{release}
+Requires: %{name}-devel = %{epoch}:%{version}-%{release}
+Provides: db-static = %{version}-%{release}
Obsoletes: db3-static
Obsoletes: db4-static
Summary: Berkeley database library for C++
Summary(pl): Biblioteka baz danych Berkeley dla C++
Group: Libraries
+Provides: db-cxx = %{version}-%{release}
Obsoletes: db4-cxx
%description cxx
Summary: Header files for db-cxx library
Summary(pl): Pliki nag³ówkowe biblioteki db-cxx
Group: Development/Libraries
-Requires: db-cxx = %{epoch}:%{version}-%{release}
-Requires: db-devel = %{epoch}:%{version}-%{release}
+Requires: %{name}-cxx = %{epoch}:%{version}-%{release}
+Requires: %{name}-devel = %{epoch}:%{version}-%{release}
+Provides: db-cxx-devel = %{version}-%{release}
Conflicts: db-devel < 4.1.25-3
%description cxx-devel
Summary: Static version of db-cxx library
Summary(pl): Statyczna wersja biblioteki db-cxx
Group: Development/Libraries
-Requires: db-cxx-devel = %{epoch}:%{version}-%{release}
+Requires: %{name}-cxx-devel = %{epoch}:%{version}-%{release}
+Provides: db-cxx-static = %{version}-%{release}
Conflicts: db-static < 4.2.50-1
%description cxx-static
Summary(pl): Biblioteka baz danych Berkeley dla Javy
Group: Libraries
Requires: jre
+Provides: db-java = %{version}-%{release}
%description java
Berkeley database library for Java.
Summary: Development files for db-java library
Summary(pl): Pliki programistyczne biblioteki db-java
Group: Development/Languages/Java
-Requires: db-java = %{epoch}:%{version}-%{release}
+Requires: %{name}-java = %{epoch}:%{version}-%{release}
+Provides: db-java-devel = %{version}-%{release}
Conflicts: db-devel < 4.1.25-3
%description java-devel
Summary(pl): Biblioteka baz danych Berkeley dla Tcl
Group: Development/Languages/Tcl
Requires: tcl
+Provides: db-tcl = %{version}-%{release}
Obsoletes: db4-tcl
%description tcl
Summary: Development files for db-tcl library
Summary(pl): Pliki programistyczne biblioteki db-tcl
Group: Development/Languages/Tcl
-Requires: tcl
-Requires: db-tcl = %{epoch}:%{version}-%{release}
+Requires: %{name}-tcl = %{epoch}:%{version}-%{release}
+Provides: db-tcl-devel = %{version}-%{release}
Conflicts: db-devel < 4.1.25-3
%description tcl-devel
Summary: Command line tools for managing Berkeley DB databases
Summary(pl): Narzêdzia do obs³ugi baz Berkeley DB z linii poleceñ
Group: Applications/Databases
-Requires: db = %{epoch}:%{version}-%{release}
+Requires: %{name} = %{epoch}:%{version}-%{release}
+Provides: db-utils = %{version}-%{release}
Obsoletes: db4-utils
%description utils
poleceñ.
%prep
-%setup -q
-%patch0 -p1
+%setup -q -n db-%{version}
%build
cd dist
--enable-static \
--enable-rpc \
--%{?with_pmutex:en}%{!?with_pmutex:dis}able-posixmutexes \
- --enable-cxx
+ --enable-cxx \
+ %{!?with_static_libs:--disable-static}
# (temporarily?) disabled because of compilation errors:
# --enable-dump185 \
%{?with_tcl:--with-tcl=/usr/lib} \
%{?with_java:--enable-java} \
--disable-static \
- --enable-shared
+ --enable-shared \
+ %{!?with_static_libs:--disable-static}
%{__make} library_build \
TCFLAGS='-I$(builddir) -I%{_includedir}' \
LIB_INSTALL_FILE_LIST=""
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 libdb-4.2.la libdb.la
-ln -sf libdb-4.2.la libdb4.la
-ln -sf libdb-4.2.la libndbm.la
+ln -sf libdb-4.3.so libdb.so
+ln -sf libdb-4.3.so libdb4.so
+ln -sf libdb-4.3.so libdb-4.so
+ln -sf libdb-4.3.so libndbm.so
+ln -sf libdb-4.3.la libdb.la
+ln -sf libdb-4.3.la libdb4.la
+ln -sf libdb-4.3.la libndbm.la
%if %{with java}
-ln -sf libdb_java-4.2.la libdb_java.la
+ln -sf libdb_java-4.3.la libdb_java.la
mv -f *.jar $RPM_BUILD_ROOT%{_javadir}
%endif
%if %{with tcl}
-ln -sf libdb_tcl-4.2.so libdb_tcl.so
-ln -sf libdb_tcl-4.2.la libdb_tcl.la
+ln -sf libdb_tcl-4.3.so libdb_tcl.so
+ln -sf libdb_tcl-4.3.la libdb_tcl.la
+%endif
+ln -sf libdb_cxx-4.3.la libdb_cxx.la
+%if %{with static_libs}
+mv -f libdb.a libdb-4.3.a
+ln -sf libdb-4.3.a libdb.a
+ln -sf libdb-4.3.a libdb4.a
+ln -sf libdb-4.3.a libndbm.a
+mv -f libdb_cxx.a libdb_cxx-4.3.a
+ln -sf libdb_cxx-4.3.a libdb_cxx.a
%endif
-ln -sf libdb_cxx-4.2.la libdb_cxx.la
-mv -f libdb.a libdb-4.2.a
-ln -sf libdb-4.2.a libdb.a
-ln -sf libdb-4.2.a libdb4.a
-ln -sf libdb-4.2.a libndbm.a
-mv -f libdb_cxx.a libdb_cxx-4.2.a
-ln -sf libdb_cxx-4.2.a libdb_cxx.a
-ln -sf libdb_cxx-4.2.so libdb_cxx.so
-ln -sf libdb_cxx-4.2.so libdb_cxx-4.so
-
-sed -i "s/old_library=''/old_library='libdb-4.2.a'/" libdb-4.2.la
-sed -i "s/old_library=''/old_library='libdb_cxx-4.2.a'/" libdb_cxx-4.2.la
+ln -sf libdb_cxx-4.3.so libdb_cxx.so
+ln -sf libdb_cxx-4.3.so libdb_cxx-4.so
+
+sed -i "s/old_library=''/old_library='libdb-4.3.a'/" libdb-4.3.la
+sed -i "s/old_library=''/old_library='libdb_cxx-4.3.a'/" libdb_cxx-4.3.la
cd -
rm -f examples_c*/tags
%files
%defattr(644,root,root,755)
%doc LICENSE README
-%attr(755,root,root) %{_libdir}/libdb-4.2.so
+%attr(755,root,root) %{_libdir}/libdb-4.3.so
%dir %{_docdir}/db-%{version}-docs
%{_docdir}/db-%{version}-docs/sleepycat
%{_docdir}/db-%{version}-docs/index.html
%files devel
%defattr(644,root,root,755)
-%{_libdir}/libdb-4.2.la
+%{_libdir}/libdb-4.3.la
%{_libdir}/libdb-4.so
%{_libdir}/libdb.la
%{_libdir}/libdb.so
%{_docdir}/db-%{version}-docs/ref
%{_examplesdir}/db-%{version}
+%if %{with static_libs}
%files static
%defattr(644,root,root,755)
-%{_libdir}/libdb-4.2.a
+%{_libdir}/libdb-4.3.a
%{_libdir}/libdb4.a
%{_libdir}/libdb.a
%{_libdir}/libndbm.a
+%endif
%files cxx
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libdb_cxx-4.2.so
+%attr(755,root,root) %{_libdir}/libdb_cxx-4.3.so
%files cxx-devel
%defattr(644,root,root,755)
%{_includedir}/db_cxx.h
-%{_libdir}/libdb_cxx-4.2.la
+%{_libdir}/libdb_cxx-4.3.la
%{_libdir}/libdb_cxx-4.so
%{_libdir}/libdb_cxx.la
%{_libdir}/libdb_cxx.so
%{_docdir}/db-%{version}-docs/api_cxx
%{_examplesdir}/db-cxx-%{version}
+%if %{with static_libs}
%files cxx-static
%defattr(644,root,root,755)
-%{_libdir}/libdb_cxx-4.2.a
+%{_libdir}/libdb_cxx-4.3.a
%{_libdir}/libdb_cxx.a
+%endif
%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.3.so
%{_javadir}/db.jar
%files java-devel
%defattr(644,root,root,755)
-%{_libdir}/libdb_java-4.2.la
+%{_libdir}/libdb_java-4.3.la
%{_libdir}/libdb_java.la
%{_libdir}/libdb_java.so
%{_docdir}/db-%{version}-docs/java
%if %{with tcl}
%files tcl
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libdb_tcl-4.2.so
+%attr(755,root,root) %{_libdir}/libdb_tcl-4.3.so
%files tcl-devel
%defattr(644,root,root,755)
-%{_libdir}/libdb_tcl-4.2.la
+%{_libdir}/libdb_tcl-4.3.la
%{_libdir}/libdb_tcl.la
%{_libdir}/libdb_tcl.so
%{_docdir}/db-%{version}-docs/api_tcl