3 %bcond_without java # build db-java
4 %bcond_without tcl # don't build Tcl bindings
5 %bcond_with pmutex # use POSIX mutexes (only process-private with linuxthreads)
6 %bcond_without nptl # don't use process-shared POSIX mutexes (NPTL provides full interface)
7 %bcond_without static_libs # don't build static libraries
9 %{?with_nptl:%define with_pmutex 1}
11 Summary: Berkeley DB database library for C
12 Summary(pl): Biblioteka C do obs³ugi baz Berkeley DB
17 License: Sleepycat public license (GPL-like, see LICENSE)
19 # alternative site (sometimes working): http://www.berkeleydb.com/
20 Source0: http://download.oracle.com/berkeley-db/db-%{version}.tar.gz
21 # Source0-md5: b0f1c777708cb8e9d37fb47e7ed3312d
22 URL: http://www.oracle.com/technology/products/berkeley-db/index.html
23 BuildRequires: autoconf
24 BuildRequires: automake
26 %{?with_java:BuildRequires: jdk}
27 BuildRequires: libstdc++-devel
28 BuildRequires: libtool
29 BuildRequires: sed >= 4.0
30 %{?with_tcl:BuildRequires: tcl-devel >= 8.4.0}
31 Provides: db = %{version}-%{release}
33 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
35 %ifnarch %{ix86} %{x8664}
40 The Berkeley Database (Berkeley DB) is a programmatic toolkit that
41 provides embedded database support for both traditional and
42 client/server applications. Berkeley DB is used by many applications,
43 including Python and Perl, so this should be installed on all systems.
46 Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
47 zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
48 klient-serwer. Berkeley db jest u¿ywana w wielu aplikacjach, w tym w
52 Summary: Header files for Berkeley database library
53 Summary(pl): Pliki nag³ówkowe do biblioteki Berkeley Database
54 Group: Development/Libraries
55 Requires: %{name} = %{epoch}:%{version}-%{release}
56 Provides: db-devel = %{version}-%{release}
61 The Berkeley Database (Berkeley DB) is a programmatic toolkit that
62 provides embedded database support for both traditional and
63 client/server applications. Berkeley DB includes B+tree, Extended
64 Linear Hashing, Fixed and Variable-length record access methods,
65 transactions, locking, logging, shared memory caching and database
66 recovery. DB supports C, C++, Java and Perl APIs.
68 This package contains the header files, libraries, and documentation
69 for building programs which use Berkeley DB.
71 %description devel -l pl
72 Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
73 zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
74 klient-serwer. Berkeley DB obs³uguje dostêp do bazy przez B-drzewa i
75 funkcje mieszaj±ce ze sta³± lub zmienn± wielko¶ci± rekordu,
76 transakcje, kroniki, pamiêæ dzielon± i odtwarzanie baz. Ma wsparcie
77 dla C, C++, Javy i Perla.
79 Ten pakiet zawiera pliki nag³ówkowe i dokumentacjê do budowania
80 programów u¿ywaj±cych Berkeley DB.
83 Summary: Static libraries for Berkeley database library
84 Summary(pl): Statyczne biblioteki Berkeley Database
85 Group: Development/Libraries
86 Requires: %{name}-devel = %{epoch}:%{version}-%{release}
87 Provides: db-static = %{version}-%{release}
92 The Berkeley Database (Berkeley DB) is a programmatic toolkit that
93 provides embedded database support for both traditional and
94 client/server applications. Berkeley DB includes B+tree, Extended
95 Linear Hashing, Fixed and Variable-length record access methods,
96 transactions, locking, logging, shared memory caching and database
97 recovery. DB supports C, C++, Java and Perl APIs.
99 This package contains the static libraries for building programs which
102 %description static -l pl
103 Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
104 zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
105 klient-serwer. Berkeley DB obs³uguje dostêp do bazy przez B-drzewa i
106 funkcje mieszaj±ce ze sta³± lub zmienn± wielko¶ci± rekordu,
107 transakcje, kroniki, pamiêæ dzielon± i odtwarzanie baz. Ma wsparcie
108 dla C, C++, Javy i Perla.
110 Ten pakiet zawiera statyczne biblioteki do budowania programów
111 u¿ywaj±cych Berkeley DB.
114 Summary: Berkeley database library for C++
115 Summary(pl): Biblioteka baz danych Berkeley dla C++
117 Provides: db-cxx = %{version}-%{release}
121 Berkeley database library for C++.
123 %description cxx -l pl
124 Biblioteka baz danych Berkeley dla C++.
127 Summary: Header files for db-cxx library
128 Summary(pl): Pliki nag³ówkowe biblioteki db-cxx
129 Group: Development/Libraries
130 Requires: %{name}-cxx = %{epoch}:%{version}-%{release}
131 Requires: %{name}-devel = %{epoch}:%{version}-%{release}
132 Provides: db-cxx-devel = %{version}-%{release}
133 Conflicts: db-devel < 4.1.25-3
135 %description cxx-devel
136 Header files for db-cxx library.
138 %description cxx-devel -l pl
139 Pliki nag³ówkowe biblioteki db-cxx.
142 Summary: Static version of db-cxx library
143 Summary(pl): Statyczna wersja biblioteki db-cxx
144 Group: Development/Libraries
145 Requires: %{name}-cxx-devel = %{epoch}:%{version}-%{release}
146 Provides: db-cxx-static = %{version}-%{release}
147 Conflicts: db-static < 4.2.50-1
149 %description cxx-static
150 Static version of db-cxx library.
152 %description cxx-static -l pl
153 Statyczna wersja biblioteki db-cxx.
156 Summary: Berkeley database library for Java
157 Summary(pl): Biblioteka baz danych Berkeley dla Javy
160 Provides: db-java = %{version}-%{release}
163 Berkeley database library for Java.
165 %description java -l pl
166 Biblioteka baz danych Berkeley dla Javy.
169 Summary: Development files for db-java library
170 Summary(pl): Pliki programistyczne biblioteki db-java
171 Group: Development/Languages/Java
172 Requires: %{name}-java = %{epoch}:%{version}-%{release}
173 Provides: db-java-devel = %{version}-%{release}
174 Conflicts: db-devel < 4.1.25-3
176 %description java-devel
177 Development files for db-java library.
179 %description java-devel -l pl
180 Pliki programistyczne biblioteki db-java.
183 Summary: Berkeley database library for Tcl
184 Summary(pl): Biblioteka baz danych Berkeley dla Tcl
185 Group: Development/Languages/Tcl
187 Provides: db-tcl = %{version}-%{release}
191 Berkeley database library for Tcl.
193 %description tcl -l pl
194 Biblioteka baz danych Berkeley dla Tcl.
197 Summary: Development files for db-tcl library
198 Summary(pl): Pliki programistyczne biblioteki db-tcl
199 Group: Development/Languages/Tcl
200 Requires: %{name}-tcl = %{epoch}:%{version}-%{release}
201 Provides: db-tcl-devel = %{version}-%{release}
202 Conflicts: db-devel < 4.1.25-3
204 %description tcl-devel
205 Development files for db-tcl library.
207 %description tcl-devel -l pl
208 Pliki programistyczne biblioteki db-tcl.
211 Summary: Command line tools for managing Berkeley DB databases
212 Summary(pl): Narzêdzia do obs³ugi baz Berkeley DB z linii poleceñ
213 Group: Applications/Databases
214 Requires: %{name} = %{epoch}:%{version}-%{release}
215 Provides: db-utils = %{version}-%{release}
217 # obsolete Ra package
221 The Berkeley Database (Berkeley DB) is a programmatic toolkit that
222 provides embedded database support for both traditional and
223 client/server applications. Berkeley DB includes B+tree, Extended
224 Linear Hashing, Fixed and Variable-length record access methods,
225 transactions, locking, logging, shared memory caching and database
226 recovery. DB supports C, C++, Java and Perl APIs.
228 This package contains command line tools for managing Berkeley DB
231 %description utils -l pl
232 Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
233 zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
234 klient-serwer. Berkeley DB obs³uguje dostêp do bazy przez B-drzewa i
235 funkcje mieszaj±ce ze sta³± lub zmienn± wielko¶ci± rekordu,
236 transakcje, kroniki, pamiêæ dzielon± i odtwarzanie baz. Ma wsparcie
237 dla C, C++, Javy i Perla.
239 Ten pakiet zawiera narzêdzia do obs³ugi baz Berkeley DB z linii
243 %setup -q -n db-%{version}
246 sed -i -e 's,AM_PTHREADS_SHARED("POSIX/.*,:,' dist/aclocal/mutex.ac
251 cp -f /usr/share/aclocal/libtool.m4 aclocal/libtool.ac
252 cp -f /usr/share/automake/config.sub .
253 cp -f /usr/share/libtool/ltmain.sh .
257 %if %{with static_libs}
258 cp -a build_unix build_unix.static
264 CFLAGS="%{rpmcflags}"
265 CXXFLAGS="%{rpmcflags} -fno-implicit-templates"
266 LDFLAGS="%{rpmldflags}"
267 export CC CXX CFLAGS CXXFLAGS LDFLAGS
274 --%{?with_pmutex:en}%{!?with_pmutex:dis}able-posixmutexes \
277 # (temporarily?) disabled because of compilation errors:
280 %{__make} library_build
287 --prefix=%{_prefix} \
288 --libdir=%{_libdir} \
291 --%{?with_pmutex:en}%{!?with_pmutex:dis}able-posixmutexes \
293 %{?with_tcl:--enable-tcl} \
294 %{?with_tcl:--with-tcl=/usr/lib} \
295 %{?with_java:--enable-java} \
299 %{__make} library_build \
300 TCFLAGS='-I$(builddir) -I%{_includedir}' \
301 LIBSO_LIBS="\$(LIBS)" \
302 LIBTSO_LIBS="\$(LIBS) -ltcl"
305 rm -rf $RPM_BUILD_ROOT
306 install -d $RPM_BUILD_ROOT{%{_includedir},%{_libdir},%{_bindir},/%{_lib}}
308 install -d $RPM_BUILD_ROOT%{_javadir}
311 %if %{with static_libs}
312 %{__make} -C build_unix.static library_install \
313 docdir=%{_docdir}/db-%{version}-docs \
314 DESTDIR=$RPM_BUILD_ROOT
317 %{__make} -C build_unix library_install \
318 docdir=%{_docdir}/db-%{version}-docs \
319 DESTDIR=$RPM_BUILD_ROOT \
320 LIB_INSTALL_FILE_LIST=""
322 mv $RPM_BUILD_ROOT%{_libdir}/libdb-%{mver}.so $RPM_BUILD_ROOT/%{_lib}
324 cd $RPM_BUILD_ROOT%{_libdir}
325 ln -sf /%{_lib}/libdb-%{mver}.so libdb.so
326 ln -sf /%{_lib}/libdb-%{mver}.so libdb4.so
327 ln -sf /%{_lib}/libdb-%{mver}.so libdb-%{mver}.so
328 ln -sf /%{_lib}/libdb-%{mver}.so libndbm.so
329 ln -sf libdb-%{mver}.la libdb.la
330 ln -sf libdb-%{mver}.la libdb4.la
331 ln -sf libdb-%{mver}.la libndbm.la
333 ln -sf libdb_java-%{mver}.la libdb_java.la
334 mv -f $RPM_BUILD_ROOT%{_libdir}/*.jar $RPM_BUILD_ROOT%{_javadir}
337 ln -sf libdb_tcl-%{mver}.so libdb_tcl.so
338 ln -sf libdb_tcl-%{mver}.la libdb_tcl.la
340 ln -sf libdb_cxx-%{mver}.la libdb_cxx.la
341 %if %{with static_libs}
342 mv -f libdb.a libdb-%{mver}.a
343 ln -sf libdb-%{mver}.a libdb.a
344 ln -sf libdb-%{mver}.a libdb4.a
345 ln -sf libdb-%{mver}.a libndbm.a
346 mv -f libdb_cxx.a libdb_cxx-%{mver}.a
347 ln -sf libdb_cxx-%{mver}.a libdb_cxx.a
349 ln -sf libdb_cxx-%{mver}.so libdb_cxx.so
351 sed -i "s/old_library=''/old_library='libdb-%{mver}.a'/" libdb-%{mver}.la
352 sed -i "s/old_library=''/old_library='libdb_cxx-%{mver}.a'/" libdb_cxx-%{mver}.la
355 rm -f examples_c*/tags
356 install -d $RPM_BUILD_ROOT%{_examplesdir}/db-%{version}
357 cp -rf examples_c/* $RPM_BUILD_ROOT%{_examplesdir}/db-%{version}
359 install -d $RPM_BUILD_ROOT%{_examplesdir}/db-cxx-%{version}
360 cp -rf examples_cxx/* $RPM_BUILD_ROOT%{_examplesdir}/db-cxx-%{version}
363 install -d $RPM_BUILD_ROOT%{_examplesdir}/db-java-%{version}
364 cp -rf examples_java/* $RPM_BUILD_ROOT%{_examplesdir}/db-java-%{version}
368 rm -rf $RPM_BUILD_ROOT
370 %post -p /sbin/ldconfig
371 %postun -p /sbin/ldconfig
373 %post tcl -p /sbin/ldconfig
374 %postun tcl -p /sbin/ldconfig
376 %post cxx -p /sbin/ldconfig
377 %postun cxx -p /sbin/ldconfig
380 %defattr(644,root,root,755)
382 %attr(755,root,root) /%{_lib}/libdb-%{mver}.so
383 %dir %{_docdir}/db-%{version}-docs
384 %{_docdir}/db-%{version}-docs/index.html
387 %defattr(644,root,root,755)
388 %attr(755,root,root) %{_libdir}/libdb-%{mver}.so
389 %attr(755,root,root) %{_libdir}/libdb4.so
390 %attr(755,root,root) %{_libdir}/libdb.so
391 %attr(755,root,root) %{_libdir}/libndbm.so
392 %{_libdir}/libdb-%{mver}.la
395 %{_libdir}/libndbm.la
397 %{_includedir}/db_185.h
398 %{_docdir}/db-%{version}-docs/api_c
399 %dir %{_docdir}/db-%{version}-docs/gsg
400 %{_docdir}/db-%{version}-docs/gsg/C
401 %dir %{_docdir}/db-%{version}-docs/gsg_txn
402 %{_docdir}/db-%{version}-docs/gsg_txn/C
403 %dir %{_docdir}/db-%{version}-docs/gsg_db_rep
404 %{_docdir}/db-%{version}-docs/gsg_db_rep/C
405 %{_docdir}/db-%{version}-docs/images
406 %{_docdir}/db-%{version}-docs/ref
407 %{_examplesdir}/db-%{version}
409 %if %{with static_libs}
411 %defattr(644,root,root,755)
412 %{_libdir}/libdb-%{mver}.a
419 %defattr(644,root,root,755)
420 %attr(755,root,root) %{_libdir}/libdb_cxx-%{mver}.so
423 %defattr(644,root,root,755)
424 %attr(755,root,root) %{_libdir}/libdb_cxx.so
425 %{_libdir}/libdb_cxx-%{mver}.la
426 %{_libdir}/libdb_cxx.la
427 %{_includedir}/db_cxx.h
428 %{_docdir}/db-%{version}-docs/api_cxx
429 %{_docdir}/db-%{version}-docs/gsg/CXX
430 %{_docdir}/db-%{version}-docs/gsg_txn/CXX
431 %{_docdir}/db-%{version}-docs/gsg_db_rep/CXX
432 %{_examplesdir}/db-cxx-%{version}
434 %if %{with static_libs}
436 %defattr(644,root,root,755)
437 %{_libdir}/libdb_cxx-%{mver}.a
438 %{_libdir}/libdb_cxx.a
443 %defattr(644,root,root,755)
444 %attr(755,root,root) %{_libdir}/libdb_java-%{mver}.so
448 %defattr(644,root,root,755)
449 %attr(755,root,root) %{_libdir}/libdb_java.so
450 %{_libdir}/libdb_java-%{mver}.la
451 %{_libdir}/libdb_java.la
452 %{_docdir}/db-%{version}-docs/collections
453 %{_docdir}/db-%{version}-docs/gsg/JAVA
454 %{_docdir}/db-%{version}-docs/gsg_txn/JAVA
455 %{_docdir}/db-%{version}-docs/gsg_db_rep/JAVA
456 %{_docdir}/db-%{version}-docs/java
457 %{_examplesdir}/db-java-%{version}
462 %defattr(644,root,root,755)
463 %attr(755,root,root) %{_libdir}/libdb_tcl-%{mver}.so
466 %defattr(644,root,root,755)
467 %attr(755,root,root) %{_libdir}/libdb_tcl.so
468 %{_libdir}/libdb_tcl-%{mver}.la
469 %{_libdir}/libdb_tcl.la
470 %{_docdir}/db-%{version}-docs/api_tcl
474 %defattr(644,root,root,755)
475 %attr(755,root,root) %{_bindir}/berkeley_db_svc
476 %attr(755,root,root) %{_bindir}/db*_archive
477 %attr(755,root,root) %{_bindir}/db*_checkpoint
478 %attr(755,root,root) %{_bindir}/db*_deadlock
479 %attr(755,root,root) %{_bindir}/db*_dump
480 #%attr(755,root,root) %{_bindir}/db*_dump185
481 %attr(755,root,root) %{_bindir}/db*_hotbackup
482 %attr(755,root,root) %{_bindir}/db*_load
483 %attr(755,root,root) %{_bindir}/db*_printlog
484 %attr(755,root,root) %{_bindir}/db*_recover
485 %attr(755,root,root) %{_bindir}/db*_stat
486 %attr(755,root,root) %{_bindir}/db*_upgrade
487 %attr(755,root,root) %{_bindir}/db*_verify
488 %{_docdir}/db-%{version}-docs/utility