-Summary: BSD database library for C
-Summary(pl): Biblioteka C do obs³ugi baz Berkeley DB
-Name: db
-Version: 4.0.14
-Release: 3.2
-License: GPL
+#
+# Conditional build:
+%bcond_with java # build db-java
+%bcond_without tcl # don't build Tcl bindings
+%bcond_with pmutex # use POSIX mutexes (only process-private with linuxthreads)
+%bcond_with nptl # use process-shared POSIX mutexes (NPTL provides full interface)
+%bcond_with default_db # use this db as default system db
+#
+%define ver 4.2.52
+%define patchlevel 5
+#
+%{?with_nptl:%define with_pmutex 1}
+Summary: Berkeley DB database library for C
+Summary(pl.UTF-8): Biblioteka C do obsługi baz Berkeley DB
+Name: db4.2
+Version: %{ver}.%{patchlevel}
+Release: 1
+License: Sleepycat public license (GPL-like, see LICENSE)
Group: Libraries
-Source0: http://www.berkeleydb.com/update/snapshot/%{name}-%{version}.tar.gz
-#Patch0: %{name}-static.patch
-#Patch1: %{name}-linux.patch
-#Patch2: %{name}-jbj.patch
-Patch0: %{name}-rpm.patch
-URL: http://www.berkeleydb.com/
-#BuildRequires: glibc-static
-%{?_with_java:BuildRequires: java}
-BuildRequires: tcl-devel >= 8.3.2
+#Source0Download: http://www.oracle.com/technetwork/database/berkeleydb/downloads/index-082944.html
+Source0: http://download.oracle.com/berkeley-db/db-%{ver}.tar.gz
+# Source0-md5: cbc77517c9278cdb47613ce8cb55779f
+%patchset_source -f http://download.oracle.com/berkeley-db/patches/db/%{ver}/patch.%{ver}.%g 1 %{patchlevel}
+Patch0: db-so-suffix.patch
+Patch1: %{name}-amd64-fastmutex.patch
+URL: http://www.oracle.com/technetwork/database/berkeleydb/downloads/index.html
+BuildRequires: autoconf
+BuildRequires: automake
+BuildRequires: ed
+%{?with_java:BuildRequires: jdk}
+BuildRequires: libstdc++-devel
+BuildRequires: libtool
+BuildRequires: rpmbuild(macros) >= 1.426
+BuildRequires: sed >= 4.0
+%{?with_tcl:BuildRequires: tcl-devel >= 8.4.0}
+%if %{with default_db}
+Provides: db = %{version}-%{release}
+Obsoletes: db4
+%endif
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+%if %{without default_db}
+%define _includedir %{_prefix}/include/db4.2
+%endif
%description
The Berkeley Database (Berkeley DB) is a programmatic toolkit that
client/server applications. Berkeley DB is used by many applications,
including Python and Perl, so this should be installed on all systems.
-%description -l pl
-Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
-zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
-klient-serwer. Berkeley db jest u¿ywana wielu aplikacjach, w tym w
+%description -l pl.UTF-8
+Berkeley Database (Berkeley DB) to zestaw narzędzi programistycznych
+zapewniających obsługę baz danych w aplikacjach tradycyjnych jak i
+klient-serwer. Berkeley db jest używana w wielu aplikacjach, w tym w
Pythonie i Perlu.
-%package utils
-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: %{name} = %{version}
+%package devel
+Summary: Header files for Berkeley database library
+Summary(pl.UTF-8): Pliki nagłówkowe do biblioteki Berkeley Database
+Group: Development/Libraries
+Requires: %{name} = %{version}-%{release}
+%if %{with default_db}
+Provides: db-devel = %{version}-%{release}
+Obsoletes: db3-devel
+Obsoletes: db4-devel
+%endif
-%description utils
+%description devel
The Berkeley Database (Berkeley DB) is a programmatic toolkit that
provides embedded database support for both traditional and
client/server applications. Berkeley DB includes B+tree, Extended
transactions, locking, logging, shared memory caching and database
recovery. DB supports C, C++, Java and Perl APIs.
-This package contains command line tools for managing Berkeley DB
-databases.
+This package contains the header files, libraries, and documentation
+for building programs which use Berkeley DB.
-%description utils -l pl
-Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
-zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
-klient-serwer. Berkeley DB obs³ugje dostêp do bazy przez B-drzewa i
-funkcje mieszaj±ce ze sta³± lub zmienn± wielko¶ci± rekordu,
-transakcje, kroniki, pamiêæ dzielon± i odtwarzanie baz. Ma wsparcie
+%description devel -l pl.UTF-8
+Berkeley Database (Berkeley DB) to zestaw narzędzi programistycznych
+zapewniających obsługę baz danych w aplikacjach tradycyjnych jak i
+klient-serwer. Berkeley DB obsługuje dostęp do bazy przez B-drzewa i
+funkcje mieszające ze stałą lub zmienną wielkością rekordu,
+transakcje, kroniki, pamięć dzieloną i odtwarzanie baz. Ma wsparcie
dla C, C++, Javy i Perla.
-Ten pakiet zawiera narzêdzia do obs³ugi baz Berkeley DB z linii
-poleceñ.
+Ten pakiet zawiera pliki nagłówkowe i dokumentację do budowania
+programów używających Berkeley DB.
-%package tcl
-Summary: Berkeley database library for TCL
-Summary(pl): Biblioteka baz danych Berkeley dla TCL
-Group: Development/Languages/Tcl
-Requires: tcl
+%package static
+Summary: Static libraries for Berkeley database library
+Summary(pl.UTF-8): Statyczne biblioteki Berkeley Database
+Group: Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
+%if %{with default_db}
+Provides: db-static = %{version}-%{release}
+Obsoletes: db3-static
+Obsoletes: db4-static
+%endif
-%description tcl
-Berkeley database library for TCL.
+%description static
+The Berkeley Database (Berkeley DB) is a programmatic toolkit that
+provides embedded database support for both traditional and
+client/server applications. Berkeley DB includes B+tree, Extended
+Linear Hashing, Fixed and Variable-length record access methods,
+transactions, locking, logging, shared memory caching and database
+recovery. DB supports C, C++, Java and Perl APIs.
-%description tcl -l pl
-Biblioteka baz danych Berkeley dla TCL.
+This package contains the static libraries for building programs which
+use Berkeley DB.
+
+%description static -l pl.UTF-8
+Berkeley Database (Berkeley DB) to zestaw narzędzi programistycznych
+zapewniających obsługę baz danych w aplikacjach tradycyjnych jak i
+klient-serwer. Berkeley DB obsługuje dostęp do bazy przez B-drzewa i
+funkcje mieszające ze stałą lub zmienną wielkością rekordu,
+transakcje, kroniki, pamięć dzieloną i odtwarzanie baz. Ma wsparcie
+dla C, C++, Javy i Perla.
+
+Ten pakiet zawiera statyczne biblioteki do budowania programów
+używających Berkeley DB.
%package cxx
Summary: Berkeley database library for C++
-Summary(pl): Biblioteka baz danych Berkeley dla C++
+Summary(pl.UTF-8): Biblioteka baz danych Berkeley dla C++
Group: Libraries
+%if %{with default_db}
+Provides: db-cxx = %{version}-%{release}
+Obsoletes: db4-cxx
+%endif
%description cxx
Berkeley database library for C++.
-%description cxx -l pl
+%description cxx -l pl.UTF-8
Biblioteka baz danych Berkeley dla C++.
+%package cxx-devel
+Summary: Header files for db-cxx library
+Summary(pl.UTF-8): Pliki nagłówkowe biblioteki db-cxx
+Group: Development/Libraries
+Requires: %{name}-cxx = %{version}-%{release}
+Requires: %{name}-devel = %{version}-%{release}
+%if %{with default_db}
+Provides: db-cxx-devel = %{version}-%{release}
+%endif
+Conflicts: db-devel < 4.1.25-3
+
+%description cxx-devel
+Header files for db-cxx library.
+
+%description cxx-devel -l pl.UTF-8
+Pliki nagłówkowe biblioteki db-cxx.
+
+%package cxx-static
+Summary: Static version of db-cxx library
+Summary(pl.UTF-8): Statyczna wersja biblioteki db-cxx
+Group: Development/Libraries
+Requires: %{name}-cxx-devel = %{version}-%{release}
+%if %{with default_db}
+Provides: db-cxx-static = %{version}-%{release}
+%endif
+Conflicts: db-static < 4.2.50-1
+
+%description cxx-static
+Static version of db-cxx library.
+
+%description cxx-static -l pl.UTF-8
+Statyczna wersja biblioteki db-cxx.
+
%package java
Summary: Berkeley database library for Java
-Summary(pl): Biblioteka baz danych Berkeley dla Java
+Summary(pl.UTF-8): Biblioteka baz danych Berkeley dla Javy
Group: Libraries
+Requires: jpackage-utils
+%if %{with default_db}
+Provides: db-java = %{version}-%{release}
+%endif
%description java
Berkeley database library for Java.
-%description java -l pl
-Biblioteka baz danych Berkeley dla Java.
+%description java -l pl.UTF-8
+Biblioteka baz danych Berkeley dla Javy.
-%package devel
-Summary: Header files for Berkeley database library
-Summary(pl): Pliki nag³ówkowe do biblioteki Berkeley Database
-Group: Development/Libraries
-Requires: %{name} = %{version}
+%package java-devel
+Summary: Development files for db-java library
+Summary(pl.UTF-8): Pliki programistyczne biblioteki db-java
+Group: Development/Languages/Java
+Requires: %{name}-java = %{version}-%{release}
+%if %{with default_db}
+Provides: db-java-devel = %{version}-%{release}
+%endif
+Conflicts: db-devel < 4.1.25-3
-%description devel
-The Berkeley Database (Berkeley DB) is a programmatic toolkit that
-provides embedded database support for both traditional and
-client/server applications. Berkeley DB includes B+tree, Extended
-Linear Hashing, Fixed and Variable-length record access methods,
-transactions, locking, logging, shared memory caching and database
-recovery. DB supports C, C++, Java and Perl APIs.
+%description java-devel
+Development files for db-java library.
-This package contains the header files, libraries, and documentation
-for building programs which use Berkeley DB.
+%description java-devel -l pl.UTF-8
+Pliki programistyczne biblioteki db-java.
-%description devel -l pl
-Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
-zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
-klient-serwer. Berkeley DB obs³ugje dostêp do bazy przez B-drzewa i
-funkcje mieszaj±ce ze sta³± lub zmienn± wielko¶ci± rekordu,
-transakcje, kroniki, pamiêæ dzielon± i odtwarzanie baz. Ma wsparcie
-dla C, C++, Javy i Perla.
+%package tcl
+Summary: Berkeley database library for Tcl
+Summary(pl.UTF-8): Biblioteka baz danych Berkeley dla Tcl
+Group: Development/Languages/Tcl
+Requires: tcl
+%if %{with default_db}
+Provides: db-tcl = %{version}-%{release}
+Obsoletes: db4-tcl
+%endif
-Ten pakiet zawiera pliki nag³ówkowe i dokumentacjê do budowania
-programów u¿ywaj±cych Berkeley DB.
+%description tcl
+Berkeley database library for Tcl.
-%package static
-Summary: Static libraries for Berkeley database library
-Summary(pl): Statyczne biblioteki Berkeley Database
-Group: Development/Libraries
-Requires: %{name}-devel = %{version}
+%description tcl -l pl.UTF-8
+Biblioteka baz danych Berkeley dla Tcl.
-%description static
+%package tcl-devel
+Summary: Development files for db-tcl library
+Summary(pl.UTF-8): Pliki programistyczne biblioteki db-tcl
+Group: Development/Languages/Tcl
+Requires: %{name}-tcl = %{version}-%{release}
+%if %{with default_db}
+Provides: db-tcl-devel = %{version}-%{release}
+%endif
+Conflicts: db-devel < 4.1.25-3
+
+%description tcl-devel
+Development files for db-tcl library.
+
+%description tcl-devel -l pl.UTF-8
+Pliki programistyczne biblioteki db-tcl.
+
+%package utils
+Summary: Command line tools for managing Berkeley DB databases
+Summary(pl.UTF-8): Narzędzia do obsługi baz Berkeley DB z linii poleceń
+Group: Applications/Databases
+Requires: %{name} = %{version}-%{release}
+%if %{with default_db}
+Provides: db-utils = %{version}-%{release}
+Obsoletes: db4-utils
+%endif
+
+%description utils
The Berkeley Database (Berkeley DB) is a programmatic toolkit that
provides embedded database support for both traditional and
client/server applications. Berkeley DB includes B+tree, Extended
transactions, locking, logging, shared memory caching and database
recovery. DB supports C, C++, Java and Perl APIs.
-This package contains the static libraries for building programs which
-use Berkeley DB.
+This package contains command line tools for managing Berkeley DB
+databases.
-%description static -l pl
-Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
-zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
-klient-serwer. Berkeley DB obs³ugje dostêp do bazy przez B-drzewa i
-funkcje mieszaj±ce ze sta³± lub zmienn± wielko¶ci± rekordu,
-transakcje, kroniki, pamiêæ dzielon± i odtwarzanie baz. Ma wsparcie
+%description utils -l pl.UTF-8
+Berkeley Database (Berkeley DB) to zestaw narzędzi programistycznych
+zapewniających obsługę baz danych w aplikacjach tradycyjnych jak i
+klient-serwer. Berkeley DB obsługuje dostęp do bazy przez B-drzewa i
+funkcje mieszające ze stałą lub zmienną wielkością rekordu,
+transakcje, kroniki, pamięć dzieloną i odtwarzanie baz. Ma wsparcie
dla C, C++, Javy i Perla.
-Ten pakiet zawiera statyczne biblioteki do budowania programów
-u¿ywaj±cych Berkeley DB.
+Ten pakiet zawiera narzędzia do obsługi baz Berkeley DB z linii
+poleceń.
%prep
-%setup -q
+%setup -q -n db-%{ver}
+
+# official patches
+%patchset_patch 1 %{patchlevel}
+
%patch0 -p1
-#%patch1 -p1
-#%patch2 -p1
+%patch1 -p1
+
+%if %{without nptl}
+sed -i -e 's,AM_PTHREADS_SHARED("POSIX/.*,:,' dist/aclocal/mutex.ac
+%endif
%build
+cd dist
+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 ..
+
cp -a build_unix build_unix.static
cd build_unix.static
-CFLAGS="%{rpmcflags} -fno-rtti -fno-implicit-templates" \
-CXXFLAGS="%{rpmcflags} -fno-rtti -fno-implicit-templates" \
-../dist/configure \
- --prefix=%{_prefix} \
+CC="%{__cc}"
+CXX="%{__cxx}"
+CFLAGS="%{rpmcflags}"
+CXXFLAGS="%{rpmcflags} -fno-implicit-templates"
+LDFLAGS="%{rpmldflags}"
+export CC CXX CFLAGS CXXFLAGS LDFLAGS
+
+../dist/%configure \
--enable-compat185 \
--disable-shared \
--enable-static \
--enable-rpc \
+ --%{?with_pmutex:en}%{!?with_pmutex:dis}able-posixmutexes \
--enable-cxx
# (temporarily?) disabled because of compilation errors:
cd ../build_unix
-CFLAGS="%{rpmcflags} -fno-rtti -fno-implicit-templates" \
-CXXFLAGS="%{rpmcflags} -fno-rtti -fno-implicit-templates" \
-
-%if %{?_with_java:1}%{!?_with_java:0}
-../dist/configure \
+../dist/%configure \
--prefix=%{_prefix} \
+ --libdir=%{_libdir} \
--enable-compat185 \
- --enable-shared \
- --disable-static \
--enable-rpc \
+ --%{?with_pmutex:en}%{!?with_pmutex:dis}able-posixmutexes \
--enable-cxx \
- --enable-tcl \
- --with-tcl=%{_libdir} \
- --enable-java
-%else
-../dist/configure \
- --prefix=%{_prefix} \
- --enable-compat185 \
- --enable-shared \
+ %{?with_tcl:--enable-tcl} \
+ %{?with_tcl:--with-tcl=/usr/lib} \
+ %{?with_java:--enable-java} \
--disable-static \
- --enable-rpc \
- --enable-cxx \
- --enable-tcl \
- --with-tcl=/usr/lib
-%endif
+ --enable-shared
-%{__make} library_build TCFLAGS='-I$(builddir) -I%{_includedir}'
+%{__make} library_build \
+ TCFLAGS='-I$(builddir) -I%{_includedir}' \
+ LIBSO_LIBS="\$(LIBS)" \
+ LIBTSO_LIBS="\$(LIBS) -ltcl"
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_includedir},%{_libdir},%{_bindir},/lib}
+install -d $RPM_BUILD_ROOT{%{_includedir},%{_libdir},%{_bindir}}
+%if %{with java}
+install -d $RPM_BUILD_ROOT%{_javadir}
+%endif
-cd build_unix.static
+%{__make} -C build_unix.static library_install \
+ DESTDIR=$RPM_BUILD_ROOT \
+ docdir=%{_docdir}/db-%{version}-docs \
+ includedir=%{_includedir}
-%{__make} library_install \
- prefix=$RPM_BUILD_ROOT%{_prefix}
+%{__make} -C build_unix library_install \
+ DESTDIR=$RPM_BUILD_ROOT \
+ LIB_INSTALL_FILE_LIST="" \
+ docdir=%{_docdir}/db-%{version}-docs \
+ includedir=%{_includedir}
-cd ../build_unix
+cd $RPM_BUILD_ROOT%{_libdir}
+mv -f libdb.a libdb-4.2.a
+mv -f libdb_cxx.a libdb_cxx-4.2.a
+cd -
-%{__make} library_install \
- prefix=$RPM_BUILD_ROOT%{_prefix} \
- includedir=$RPM_BUILD_ROOT%{_includedir} \
- LIB_INSTALL_FILE_LIST=""
+sed -i "s/old_library=''/old_library='libdb-4.2.a'/" $RPM_BUILD_ROOT%{_libdir}/libdb-4.2.la
+sed -i "s/old_library=''/old_library='libdb_cxx-4.2.a'/" $RPM_BUILD_ROOT%{_libdir}/libdb_cxx-4.2.la
-#mv -f $RPM_BUILD_ROOT%{_libdir}/libdb-*.so $RPM_BUILD_ROOT/lib
-#ln -sf ../../lib/libdb-3.1.so $RPM_BUILD_ROOT%{_libdir}/libdb.so
-#ln -sf ../../lib/libdb-3.1.so $RPM_BUILD_ROOT%{_libdir}/libdb3.so
-#ln -sf ../../lib/libdb-3.1.so $RPM_BUILD_ROOT%{_libdir}/libdb-3.1.so
-#ln -sf libdb-3.1.a $RPM_BUILD_ROOT%{_libdir}/libdb.a
-#ln -sf libdb3.so $RPM_BUILD_ROOT%{_libdir}/libndbm.so
-#ln -sf libdb3.a $RPM_BUILD_ROOT%{_libdir}/libndbm.a
+rm -f examples_c*/tags
+install -d $RPM_BUILD_ROOT%{_examplesdir}/db-%{version}
+cp -rf examples_c/* $RPM_BUILD_ROOT%{_examplesdir}/db-%{version}
-cd ..
-#rm -rf examples_java
-#cp -a java/src/com/sleepycat/examples examples_java
+install -d $RPM_BUILD_ROOT%{_examplesdir}/db-cxx-%{version}
+cp -rf examples_cxx/* $RPM_BUILD_ROOT%{_examplesdir}/db-cxx-%{version}
+
+%if %{with java}
+install -d $RPM_BUILD_ROOT%{_examplesdir}/db-java-%{version}
+cp -rf examples_java/* $RPM_BUILD_ROOT%{_examplesdir}/db-java-%{version}
+mv $RPM_BUILD_ROOT%{_libdir}/db.jar $RPM_BUILD_ROOT%{_javadir}
+%else
+%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/db-%{version}-docs/java
+%endif
%clean
rm -rf $RPM_BUILD_ROOT
-%post -p /sbin/ldconfig
-%postun -p /sbin/ldconfig
+%post -p /sbin/ldconfig
+%postun -p /sbin/ldconfig
%post tcl -p /sbin/ldconfig
%postun tcl -p /sbin/ldconfig
%files
%defattr(644,root,root,755)
%doc LICENSE README
-#%attr(755,root,root) /lib/libdb-*.so
-%attr(755,root,root) %{_libdir}/libdb-*.so
+%if %{with default_db}
+%attr(755,root,root) /%{_lib}/libdb-4.2.so
+%else
+%attr(755,root,root) %{_libdir}/libdb-4.2.so
+%endif
+%dir %{_docdir}/db-%{version}-docs
+%{_docdir}/db-%{version}-docs/sleepycat
+%{_docdir}/db-%{version}-docs/index.html
-%files utils
+%files devel
%defattr(644,root,root,755)
-%doc docs/utility/*
-%attr(755,root,root) %{_bindir}/berkeley_db_svc
-%attr(755,root,root) %{_bindir}/db*_archive
-%attr(755,root,root) %{_bindir}/db*_checkpoint
-%attr(755,root,root) %{_bindir}/db*_deadlock
-%attr(755,root,root) %{_bindir}/db*_dump
-#%attr(755,root,root) %{_bindir}/db*_dump185
-%attr(755,root,root) %{_bindir}/db*_load
-%attr(755,root,root) %{_bindir}/db*_printlog
-%attr(755,root,root) %{_bindir}/db*_recover
-%attr(755,root,root) %{_bindir}/db*_stat
-%attr(755,root,root) %{_bindir}/db*_upgrade
-%attr(755,root,root) %{_bindir}/db*_verify
+%{_libdir}/libdb-4.2.la
+%if %{with default_db}
+%attr(755,root,root) %{_libdir}/libdb-4.2.so
+%attr(755,root,root) %{_libdir}/libdb4.so
+%attr(755,root,root) %{_libdir}/libdb.so
+%attr(755,root,root) %{_libdir}/libndbm.so
+%{_libdir}/libdb4.la
+%{_libdir}/libdb.la
+%{_libdir}/libndbm.la
+%else
+%dir %{_includedir}
+%endif
+%{_includedir}/db.h
+%{_includedir}/db_185.h
+%{_docdir}/db-%{version}-docs/api_c
+%{_docdir}/db-%{version}-docs/images
+%{_docdir}/db-%{version}-docs/ref
+%{_examplesdir}/db-%{version}
+
+%files static
+%defattr(644,root,root,755)
+%{_libdir}/libdb-4.2.a
%files cxx
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libdb_cxx-*.so
+%attr(755,root,root) %{_libdir}/libdb_cxx-4.2.so
+
+%files cxx-devel
+%defattr(644,root,root,755)
+%{_libdir}/libdb_cxx-4.2.la
+%if %{with default_db}
+%attr(755,root,root) %{_libdir}/libdb_cxx.so
+%{_libdir}/libdb_cxx.la
+%endif
+%{_includedir}/db_cxx.h
+%{_docdir}/db-%{version}-docs/api_cxx
+%{_examplesdir}/db-cxx-%{version}
+
+%files cxx-static
+%defattr(644,root,root,755)
+%{_libdir}/libdb_cxx-4.2.a
+%if %{with default_db}
+%{_libdir}/libdb_cxx.a
+%endif
-%if %{?_with_java:1}%{!?_with_java:0}
+%if %{with java}
%files java
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libdb_java*.so
-%attr(644,root,root) %{_libdir}/db.jar
+%attr(755,root,root) %{_libdir}/libdb_java-4.2.so
+%{_javadir}/db.jar
+
+%files java-devel
+%defattr(644,root,root,755)
+%{_libdir}/libdb_java-4.2.la
+%{_docdir}/db-%{version}-docs/java
+%{_examplesdir}/db-java-%{version}
%endif
+%if %{with tcl}
%files tcl
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libdb_tcl-*.so
+%attr(755,root,root) %{_libdir}/libdb_tcl-4.2.so
-%files devel
+%files tcl-devel
%defattr(644,root,root,755)
-%doc docs/{api*,ref,index.html,sleepycat,images} examples_c*
-%attr(755,root,root) %{_libdir}/libdb*.la
-#%attr(755,root,root) %{_libdir}/libdb.so
-%attr(755,root,root) %{_libdir}/libdb*.so
-#%attr(755,root,root) %{_libdir}/libndbm.so
-#%attr(755,root,root) %{_libdir}/libdb_tcl.so
-#%attr(755,root,root) %{_libdir}/libdb_cxx.so
-%{_includedir}/*
+%{_libdir}/libdb_tcl-4.2.la
+%if %{with default_db}
+%attr(755,root,root) %{_libdir}/libdb_tcl.so
+%{_libdir}/libdb_tcl.la
+%endif
+%{_docdir}/db-%{version}-docs/api_tcl
+%endif
-%files static
+%files utils
%defattr(644,root,root,755)
-%{_libdir}/lib*.a
+%attr(755,root,root) %{_bindir}/berkeley_db_svc
+%attr(755,root,root) %{_bindir}/db*_archive
+%attr(755,root,root) %{_bindir}/db*_checkpoint
+%attr(755,root,root) %{_bindir}/db*_deadlock
+%attr(755,root,root) %{_bindir}/db*_dump
+#%attr(755,root,root) %{_bindir}/db*_dump185
+%attr(755,root,root) %{_bindir}/db*_load
+%attr(755,root,root) %{_bindir}/db*_printlog
+%attr(755,root,root) %{_bindir}/db*_recover
+%attr(755,root,root) %{_bindir}/db*_stat
+%attr(755,root,root) %{_bindir}/db*_upgrade
+%attr(755,root,root) %{_bindir}/db*_verify
+%{_docdir}/db-%{version}-docs/utility