3 %bcond_with java # build with java support
5 Summary: BSD database library for C
6 Summary(pl): Biblioteka C do obs³ugi baz Berkeley DB
12 # alternative site (sometimes working): http://www.berkeleydb.com/
13 Source0: http://www.sleepycat.com/update/snapshot/db-%{version}.tar.gz
14 # Source0-md5: b6ae24fa55713f17a9ac3219d987722c
16 # Source1-md5: 0d15818dea3099eed42b4be9950c69ad
17 Patch0: %{name}-static.patch
18 Patch1: %{name}-linux.patch
19 Patch2: %{name}-jbj.patch
20 URL: http://www.sleepycat.com/
21 BuildRequires: db1-static
22 BuildRequires: glibc-static
23 BuildRequires: tcl-devel >= 8.3.4-10
24 %{?with_java:BuildRequires: java}
25 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
28 The Berkeley Database (Berkeley DB) is a programmatic toolkit that
29 provides embedded database support for both traditional and
30 client/server applications. Berkeley DB is used by many applications,
31 including Python and Perl, so this should be installed on all systems.
34 Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
35 zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
36 klient-serwer. Berkeley db jest u¿ywana wielu aplikacjach, w tym w
40 Summary: Command line tools for managing Berkeley DB databases
41 Summary(pl): Narzêdzia do obs³ugi baz Berkeley DB z linii poleceñ
42 Group: Applications/Databases
43 Requires: %{name} = %{version}
46 The Berkeley Database (Berkeley DB) is a programmatic toolkit that
47 provides embedded database support for both traditional and
48 client/server applications. Berkeley DB includes B+tree, Extended
49 Linear Hashing, Fixed and Variable-length record access methods,
50 transactions, locking, logging, shared memory caching and database
51 recovery. DB supports C, C++, Java and Perl APIs.
53 This package contains command line tools for managing Berkeley DB
56 %description utils -l pl
57 Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
58 zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
59 klient-serwer. Berkeley DB obs³uguje dostêp do bazy przez B-drzewa i
60 funkcje mieszaj±ce ze sta³± lub zmienn± wielko¶ci± rekordu,
61 transakcje, kroniki, pamiêæ dzielon± i odtwarzanie baz. Ma wsparcie
62 dla C, C++, Javy i Perla.
64 Ten pakiet zawiera narzêdzia do obs³ugi baz Berkeley DB z linii
68 Summary: Berkeley database library for Tcl
69 Summary(pl): Biblioteka baz danych Berkeley dla Tcl
70 Group: Development/Languages/Tcl
71 Requires: %{name} = %{version}
75 Berkeley database library for Tcl.
77 %description tcl -l pl
78 Biblioteka baz danych Berkeley dla Tcl.
81 Summary: Java Berkeley database library
82 Summary(pl): Biblioteki Berkeley Database dla Javy
83 Group: Development/Languages/Java
84 Requires: %{name} = %{version}
87 Java Berkeley database library.
89 %description java -l pl
90 Biblioteki Berkeley Database dla Javy.
93 Summary: Header files for Berkeley database library
94 Summary(pl): Pliki nag³ówkowe do biblioteki Berkeley Database
95 Group: Development/Libraries
96 Requires: %{name} = %{version}
99 The Berkeley Database (Berkeley DB) is a programmatic toolkit that
100 provides embedded database support for both traditional and
101 client/server applications. Berkeley DB includes B+tree, Extended
102 Linear Hashing, Fixed and Variable-length record access methods,
103 transactions, locking, logging, shared memory caching and database
104 recovery. DB supports C, C++, Java and Perl APIs.
106 This package contains the header files, libraries, and documentation
107 for building programs which use Berkeley DB.
109 %description devel -l pl
110 Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
111 zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
112 klient-serwer. Berkeley DB obs³uguje dostêp do bazy przez B-drzewa i
113 funkcje mieszaj±ce ze sta³± lub zmienn± wielko¶ci± rekordu,
114 transakcje, kroniki, pamiêæ dzielon± i odtwarzanie baz. Ma wsparcie
115 dla C, C++, Javy i Perla.
117 Ten pakiet zawiera pliki nag³ówkowe i dokumentacjê do budowania
118 programów u¿ywaj±cych Berkeley DB.
121 Summary: Static libraries for Berkeley database library
122 Summary(pl): Statyczne biblioteki Berkeley Database
123 Group: Development/Libraries
124 Requires: %{name}-devel = %{version}
127 The Berkeley Database (Berkeley DB) is a programmatic toolkit that
128 provides embedded database support for both traditional and
129 client/server applications. Berkeley DB includes B+tree, Extended
130 Linear Hashing, Fixed and Variable-length record access methods,
131 transactions, locking, logging, shared memory caching and database
132 recovery. DB supports C, C++, Java and Perl APIs.
134 This package contains the static libraries for building programs which
137 %description static -l pl
138 Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
139 zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
140 klient-serwer. Berkeley DB obs³uguje dostêp do bazy przez B-drzewa i
141 funkcje mieszaj±ce ze sta³± lub zmienn± wielko¶ci± rekordu,
142 transakcje, kroniki, pamiêæ dzielon± i odtwarzanie baz. Ma wsparcie
143 dla C, C++, Javy i Perla.
145 Ten pakiet zawiera statyczne biblioteki do budowania programów
146 u¿ywaj±cych Berkeley DB.
149 %setup -q -n db-%{version}
155 cp -a build_unix build_unix.static
159 CFLAGS="%{rpmcflags} -fno-rtti -fno-implicit-templates" \
160 CXXFLAGS="%{rpmcflags} -fno-rtti -fno-implicit-templates" \
162 --prefix=%{_prefix} \
166 --enable-static=yes \
170 %{__make} static db_dump185
175 CFLAGS="%{rpmcflags} -fno-rtti -fno-implicit-templates" \
176 CXXFLAGS="%{rpmcflags} -fno-rtti -fno-implicit-templates" \
179 --prefix=%{_prefix} \
181 --enable-shared=yes \
186 --with-tcl=/usr/lib \
190 --prefix=%{_prefix} \
192 --enable-shared=yes \
200 %{__make} library_build \
201 TCFLAGS='-I$(builddir) -I%{_includedir}'
204 rm -rf $RPM_BUILD_ROOT
205 install -d $RPM_BUILD_ROOT{%{_includedir},%{_libdir},%{_bindir},/lib}
209 %{__make} prefix=$RPM_BUILD_ROOT%{_prefix} \
213 install db_dump185 $RPM_BUILD_ROOT%{_bindir}
219 prefix=$RPM_BUILD_ROOT%{_prefix} \
220 includedir=$RPM_BUILD_ROOT%{_includedir} \
226 # install_dynamic_cxx \
229 prefix=$RPM_BUILD_ROOT%{_prefix} \
230 includedir=$RPM_BUILD_ROOT%{_includedir} \
235 # install_dynamic_cxx \
238 mv -f $RPM_BUILD_ROOT%{_libdir}/libdb-*.so $RPM_BUILD_ROOT/lib
239 # dunno if it's needed, but I think can help...
240 ln -sf libdb-3.3.so $RPM_BUILD_ROOT%{_libdir}/libdb-3.1.so
241 ln -sf ../../lib/libdb-3.3.so $RPM_BUILD_ROOT%{_libdir}/libdb.so
242 ln -sf ../../lib/libdb-3.3.so $RPM_BUILD_ROOT%{_libdir}/libdb3.so
243 ln -sf ../../lib/libdb-3.3.so $RPM_BUILD_ROOT%{_libdir}/libdb-3.3.so
244 ln -sf libdb-3.3.a $RPM_BUILD_ROOT%{_libdir}/libdb-3.1.a
245 ln -sf libdb-3.3.a $RPM_BUILD_ROOT%{_libdir}/libdb3.a
246 ln -sf libdb-3.3.a $RPM_BUILD_ROOT%{_libdir}/libdb.a
247 ln -sf libdb3.so $RPM_BUILD_ROOT%{_libdir}/libndbm.so
248 ln -sf libdb3.a $RPM_BUILD_ROOT%{_libdir}/libndbm.a
250 OLDPWD=$(pwd); cd $RPM_BUILD_ROOT%{_libdir}
251 for i in libdb*.la; do mv $i $i.old; done
252 sed -e "s/old_library=''/old_library='libdb-3.3.a'/" libdb-3.3.la.old > libdb-3.3.la
253 #sed -e "s/old_library=''/old_library='libdb_cxx.a'/" libdb_cxx-3.3.la.old > libdb_cxx-3.3.la
257 for i in $RPM_BUILD_ROOT%{_bindir}/db_* ; do
258 mv -f $i `echo $i | sed -e 's,/db_,/db3_,'`
263 # to remove stupid link:
267 cp -ra java/src/com/sleepycat/examples examples_java
268 install %{SOURCE1} $RPM_BUILD_ROOT%{_libdir}/db.jar
272 rm -rf $RPM_BUILD_ROOT
274 %post -p /sbin/ldconfig
275 %postun -p /sbin/ldconfig
277 %post tcl -p /sbin/ldconfig
278 %postun tcl -p /sbin/ldconfig
280 %post java -p /sbin/ldconfig
281 %postun java -p /sbin/ldconfig
284 %defattr(644,root,root,755)
286 %attr(755,root,root) /lib/libdb-*.so
289 %defattr(644,root,root,755)
291 %attr(755,root,root) %{_bindir}/berkeley_db_svc
292 %attr(755,root,root) %{_bindir}/db*_archive
293 %attr(755,root,root) %{_bindir}/db*_checkpoint
294 %attr(755,root,root) %{_bindir}/db*_deadlock
295 %attr(755,root,root) %{_bindir}/db*_dump
296 %attr(755,root,root) %{_bindir}/db*_dump185
297 %attr(755,root,root) %{_bindir}/db*_load
298 %attr(755,root,root) %{_bindir}/db*_printlog
299 %attr(755,root,root) %{_bindir}/db*_recover
300 %attr(755,root,root) %{_bindir}/db*_stat
301 %attr(755,root,root) %{_bindir}/db*_upgrade
302 %attr(755,root,root) %{_bindir}/db*_verify
305 %defattr(644,root,root,755)
306 %attr(755,root,root) %{_libdir}/libdb_tcl-*.so
310 %defattr(644,root,root,755)
311 %doc docs/api_java examples_java
312 %attr(755,root,root) %{_libdir}/libdb_java*.so
317 %defattr(644,root,root,755)
318 %doc docs/{api_cxx,api_c,ref,index.html,sleepycat,images} examples_{c,cxx}
320 %attr(755,root,root) %{_libdir}/libdb.so
321 %attr(755,root,root) %{_libdir}/libdb3.so
322 %attr(755,root,root) %{_libdir}/libdb-3.?.so
323 %attr(755,root,root) %{_libdir}/libndbm.so
324 %attr(755,root,root) %{_libdir}/libdb_tcl.so
325 #%attr(755,root,root) %{_libdir}/libdb_cxx*.so
329 %defattr(644,root,root,755)