-# _with_java - build with java support
+#
+# Conditional build:
+%bcond_with java # build with java support
+#
Summary: BSD database library for C
-Summary(pl): Biblioteka C do obs³ugi baz Berkeley DB
+Summary(pl.UTF-8): Biblioteka C do obsługi baz Berkeley DB
Name: db3
-Version: 3.1.17
-Release: 11
-License: GPL
+Version: 3.3.11
+Release: 0.1
+License: BSD
Group: Libraries
# alternative site (sometimes working): http://www.berkeleydb.com/
-Source0: http://www.sleepycat.com/update/snapshot/db-%{version}.tar.gz
+#Source0Download: http://dev.sleepycat.com/downloads/releasehistorybdb.html
+Source0: http://downloads.sleepycat.com/db-%{version}.tar.gz
+# Source0-md5: b6ae24fa55713f17a9ac3219d987722c
Source1: %{name}.jar
+# Source1-md5: 0d15818dea3099eed42b4be9950c69ad
Patch0: %{name}-static.patch
Patch1: %{name}-linux.patch
Patch2: %{name}-jbj.patch
URL: http://www.sleepycat.com/
BuildRequires: db1-static
BuildRequires: glibc-static
-BuildRequires: tcl-devel >= 8.3.2
-%{?_with_java:BuildRequires: java}
+%{?with_java:BuildRequires: java}
+BuildRequires: tcl-devel >= 8.3.4-10
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
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 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ñ
+Summary(pl.UTF-8): Narzędzia do obsługi baz Berkeley DB z linii poleceń
Group: Applications/Databases
-Requires: %{name} = %{version}
+Requires: %{name} = %{version}-%{release}
%description utils
The Berkeley Database (Berkeley DB) is a programmatic toolkit that
This package contains command line tools for managing Berkeley DB
databases.
-%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 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 narzêdzia do obs³ugi baz Berkeley DB z linii
-poleceñ.
+Ten pakiet zawiera narzędzia do obsługi baz Berkeley DB z linii
+poleceń.
%package tcl
-Summary: Berkeley database library for TCL
-Summary(pl): Biblioteka baz danych Berkeley dla TCL
+Summary: Berkeley database library for Tcl
+Summary(pl.UTF-8): Biblioteka baz danych Berkeley dla Tcl
Group: Development/Languages/Tcl
-Requires: %{name} = %{version}
+Requires: %{name} = %{version}-%{release}
Requires: tcl
%description tcl
-Berkeley database library for TCL.
+Berkeley database library for Tcl.
-%description tcl -l pl
-Biblioteka baz danych Berkeley dla TCL.
+%description tcl -l pl.UTF-8
+Biblioteka baz danych Berkeley dla Tcl.
-%if %{?_with_java:1}%{!?_with_java:0}
%package java
Summary: Java Berkeley database library
-Summary(pl): Biblioteki Berkeley Database dla Javy
-Group: Development/Languages/Java
-Requires: %{name} = %{version}
+Summary(pl.UTF-8): Biblioteki Berkeley Database dla Javy
+Group: Libraries/Java
+Requires: %{name} = %{version}-%{release}
%description java
Java Berkeley database library.
-%description java -l pl
+%description java -l pl.UTF-8
Biblioteki Berkeley Database dla Javy.
-%endif
%package devel
Summary: Header files for Berkeley database library
-Summary(pl): Pliki nag³ówkowe do biblioteki Berkeley Database
+Summary(pl.UTF-8): Pliki nagłówkowe do biblioteki Berkeley Database
Group: Development/Libraries
-Requires: %{name} = %{version}
+Requires: %{name} = %{version}-%{release}
%description devel
The Berkeley Database (Berkeley DB) is a programmatic toolkit that
This package contains the header files, libraries, and documentation
for building programs which use Berkeley DB.
-%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
+%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 pliki nag³ówkowe i dokumentacjê do budowania
-programów u¿ywaj±cych Berkeley DB.
+Ten pakiet zawiera pliki nagłówkowe i dokumentację do budowania
+programów używających Berkeley DB.
%package static
Summary: Static libraries for Berkeley database library
-Summary(pl): Statyczne biblioteki Berkeley Database
+Summary(pl.UTF-8): Statyczne biblioteki Berkeley Database
Group: Development/Libraries
-Requires: %{name}-devel = %{version}
+Requires: %{name}-devel = %{version}-%{release}
%description static
The Berkeley Database (Berkeley DB) is a programmatic toolkit that
This package contains the static libraries for building programs which
use Berkeley DB.
-%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 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.
+Ten pakiet zawiera statyczne biblioteki do budowania programów
+używających Berkeley DB.
%prep
%setup -q -n db-%{version}
%patch0 -p1
-%patch1 -p1
-%patch2 -p1
+#%patch1 -p1
+#%patch2 -p1
%build
cp -a build_unix build_unix.static
--prefix=%{_prefix} \
--enable-compat185 \
--enable-dump185 \
- --disable-shared \
- --enable-static \
+ --enable-shared=no \
+ --enable-static=yes \
--enable-rpc \
--enable-cxx
%{__make} static db_dump185
+#libdb_cxx.a
cd ../build_unix
CFLAGS="%{rpmcflags} -fno-rtti -fno-implicit-templates" \
CXXFLAGS="%{rpmcflags} -fno-rtti -fno-implicit-templates" \
-
-%if %{?_with_java:1}%{!?_with_java:0}
+%if %{with java}
../dist/configure \
--prefix=%{_prefix} \
--enable-compat185 \
- --enable-shared \
- --disable-static \
+ --enable-shared=yes \
+ --enable-static=no \
--enable-rpc \
--enable-cxx \
--enable-tcl \
+ --with-tcl=/usr/lib \
--enable-java
%else
../dist/configure \
--prefix=%{_prefix} \
--enable-compat185 \
- --enable-shared \
- --disable-static \
+ --enable-shared=yes \
+ --enable-static=no \
--enable-rpc \
--enable-cxx \
- --enable-tcl
+ --enable-tcl \
+ --with-tcl=/usr/lib
%endif
-%{__make} TCFLAGS='-I$(builddir) -I%{_includedir}'
+%{__make} library_build \
+ TCFLAGS='-I$(builddir) -I%{_includedir}'
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_includedir},%{_libdir},%{_bindir},/lib}
+install -d $RPM_BUILD_ROOT{%{_includedir},%{_libdir},%{_bindir}}
cd build_unix.static
%{__make} prefix=$RPM_BUILD_ROOT%{_prefix} \
install_static \
- install_static_cxx
+# install_static_cxx
install db_dump185 $RPM_BUILD_ROOT%{_bindir}
cd ../build_unix
-%if %{?_with_java:1}%{!?_with_java:0}
+%if %{with java}
%{__make} \
prefix=$RPM_BUILD_ROOT%{_prefix} \
includedir=$RPM_BUILD_ROOT%{_includedir} \
install_include \
- install_dynamic \
- install_dynamic_cxx \
+ install_shared \
install_tcl \
install_utilities \
install_java
+# install_dynamic_cxx \
%else
%{__make} \
prefix=$RPM_BUILD_ROOT%{_prefix} \
includedir=$RPM_BUILD_ROOT%{_includedir} \
install_include \
- install_dynamic \
- install_dynamic_cxx \
+ install_shared \
install_tcl \
install_utilities
+# install_dynamic_cxx \
%endif
-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}/libdb3.a
-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
-
+# dunno if it's needed, but I think can help...
+ln -sf libdb-3.3.so $RPM_BUILD_ROOT%{_libdir}/libdb.so
+ln -sf libdb-3.3.so $RPM_BUILD_ROOT%{_libdir}/libdb3.so
+ln -sf libdb-3.3.a $RPM_BUILD_ROOT%{_libdir}/libdb3.a
+ln -sf libdb-3.3.a $RPM_BUILD_ROOT%{_libdir}/libdb.a
+ln -sf libdb-3.3.so $RPM_BUILD_ROOT%{_libdir}/libndbm.so
+ln -sf libdb-3.3.a $RPM_BUILD_ROOT%{_libdir}/libndbm.a
-OLDPWD=$(pwd); cd $RPM_BUILD_ROOT%{_libdir}/
+OLDPWD=$(pwd); cd $RPM_BUILD_ROOT%{_libdir}
for i in libdb*.la; do mv $i $i.old; done
-sed -e "s/old_library=''/old_library='libdb-3.1.a'/" libdb-3.1.la.old > libdb-3.1.la
-sed -e "s/old_library=''/old_library='libdb_cxx.a'/" libdb_cxx-3.1.la.old > libdb_cxx-3.1.la
+sed -e "s/old_library=''/old_library='libdb-3.3.a'/" libdb-3.3.la.old > libdb-3.3.la
+#sed -e "s/old_library=''/old_library='libdb_cxx.a'/" libdb_cxx-3.3.la.old > libdb_cxx-3.3.la
rm -f libdb*.la.old
cd $OLDPWD
mv -f $i `echo $i | sed -e 's,/db_,/db3_,'`
done
-cd ../
+cd ..
# to remove stupid link:
rm -rf examples_java
-%if %{?_with_java:1}%{!?_with_java:0}
+%if %{with java}
cp -ra java/src/com/sleepycat/examples examples_java
-install %{SOURCE2} $RPM_BUILD_ROOT%{_libdir}/db.jar
+install %{SOURCE1} $RPM_BUILD_ROOT%{_libdir}/db.jar
%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
+%post tcl -p /sbin/ldconfig
+%postun tcl -p /sbin/ldconfig
+
+%post java -p /sbin/ldconfig
+%postun java -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
%files utils
%defattr(644,root,root,755)
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libdb_tcl-*.so
-%if %{?_with_java:1}%{!?_with_java:0}
+%if %{with java}
%files java
%defattr(644,root,root,755)
%doc docs/api_java examples_java
%files devel
%defattr(644,root,root,755)
%doc docs/{api_cxx,api_c,ref,index.html,sleepycat,images} examples_{c,cxx}
-%{_libdir}/libdb*.la
%attr(755,root,root) %{_libdir}/libdb.so
%attr(755,root,root) %{_libdir}/libdb3.so
-%attr(755,root,root) %{_libdir}/libdb-3.1.so
%attr(755,root,root) %{_libdir}/libndbm.so
%attr(755,root,root) %{_libdir}/libdb_tcl.so
-%attr(755,root,root) %{_libdir}/libdb_cxx*.so
+%{_libdir}/libdb*.la
+#%attr(755,root,root) %{_libdir}/libdb_cxx*.so
%{_includedir}/*
%files static