3 %bcond_with 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}
10 Summary: Berkeley DB database library for C
11 Summary(pl): Biblioteka C do obs³ugi baz Berkeley DB
16 License: Sleepycat public license (GPL-like, see LICENSE)
18 # alternative site (sometimes working): http://www.berkeleydb.com/
19 #Source0Download: http://dev.sleepycat.com/downloads/releasehistorybdb.html
20 Source0: http://downloads.sleepycat.com/db-%{version}.tar.gz
21 # Source0-md5: ec58179a39695cab6512eee0db0d71b9
22 URL: http://www.sleepycat.com/
23 BuildRequires: autoconf
24 BuildRequires: automake
26 %{?with_java:BuildRequires: jdk}
27 BuildRequires: libtool
28 BuildRequires: libstdc++-devel
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)
36 The Berkeley Database (Berkeley DB) is a programmatic toolkit that
37 provides embedded database support for both traditional and
38 client/server applications. Berkeley DB is used by many applications,
39 including Python and Perl, so this should be installed on all systems.
42 Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
43 zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
44 klient-serwer. Berkeley db jest u¿ywana w wielu aplikacjach, w tym w
48 Summary: Header files for Berkeley database library
49 Summary(pl): Pliki nag³ówkowe do biblioteki Berkeley Database
50 Group: Development/Libraries
51 Requires: %{name} = %{epoch}:%{version}-%{release}
52 Provides: db-devel = %{version}-%{release}
57 The Berkeley Database (Berkeley DB) is a programmatic toolkit that
58 provides embedded database support for both traditional and
59 client/server applications. Berkeley DB includes B+tree, Extended
60 Linear Hashing, Fixed and Variable-length record access methods,
61 transactions, locking, logging, shared memory caching and database
62 recovery. DB supports C, C++, Java and Perl APIs.
64 This package contains the header files, libraries, and documentation
65 for building programs which use Berkeley DB.
67 %description devel -l pl
68 Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
69 zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
70 klient-serwer. Berkeley DB obs³uguje dostêp do bazy przez B-drzewa i
71 funkcje mieszaj±ce ze sta³± lub zmienn± wielko¶ci± rekordu,
72 transakcje, kroniki, pamiêæ dzielon± i odtwarzanie baz. Ma wsparcie
73 dla C, C++, Javy i Perla.
75 Ten pakiet zawiera pliki nag³ówkowe i dokumentacjê do budowania
76 programów u¿ywaj±cych Berkeley DB.
79 Summary: Static libraries for Berkeley database library
80 Summary(pl): Statyczne biblioteki Berkeley Database
81 Group: Development/Libraries
82 Requires: %{name}-devel = %{epoch}:%{version}-%{release}
83 Provides: db-static = %{version}-%{release}
88 The Berkeley Database (Berkeley DB) is a programmatic toolkit that
89 provides embedded database support for both traditional and
90 client/server applications. Berkeley DB includes B+tree, Extended
91 Linear Hashing, Fixed and Variable-length record access methods,
92 transactions, locking, logging, shared memory caching and database
93 recovery. DB supports C, C++, Java and Perl APIs.
95 This package contains the static libraries for building programs which
98 %description static -l pl
99 Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
100 zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
101 klient-serwer. Berkeley DB obs³uguje dostêp do bazy przez B-drzewa i
102 funkcje mieszaj±ce ze sta³± lub zmienn± wielko¶ci± rekordu,
103 transakcje, kroniki, pamiêæ dzielon± i odtwarzanie baz. Ma wsparcie
104 dla C, C++, Javy i Perla.
106 Ten pakiet zawiera statyczne biblioteki do budowania programów
107 u¿ywaj±cych Berkeley DB.
110 Summary: Berkeley database library for C++
111 Summary(pl): Biblioteka baz danych Berkeley dla C++
113 Provides: db-cxx = %{version}-%{release}
117 Berkeley database library for C++.
119 %description cxx -l pl
120 Biblioteka baz danych Berkeley dla C++.
123 Summary: Header files for db-cxx library
124 Summary(pl): Pliki nag³ówkowe biblioteki db-cxx
125 Group: Development/Libraries
126 Requires: %{name}-cxx = %{epoch}:%{version}-%{release}
127 Requires: %{name}-devel = %{epoch}:%{version}-%{release}
128 Provides: db-cxx-devel = %{version}-%{release}
129 Conflicts: db-devel < 4.1.25-3
131 %description cxx-devel
132 Header files for db-cxx library.
134 %description cxx-devel -l pl
135 Pliki nag³ówkowe biblioteki db-cxx.
138 Summary: Static version of db-cxx library
139 Summary(pl): Statyczna wersja biblioteki db-cxx
140 Group: Development/Libraries
141 Requires: %{name}-cxx-devel = %{epoch}:%{version}-%{release}
142 Provides: db-cxx-static = %{version}-%{release}
143 Conflicts: db-static < 4.2.50-1
145 %description cxx-static
146 Static version of db-cxx library.
148 %description cxx-static -l pl
149 Statyczna wersja biblioteki db-cxx.
152 Summary: Berkeley database library for Java
153 Summary(pl): Biblioteka baz danych Berkeley dla Javy
156 Provides: db-java = %{version}-%{release}
159 Berkeley database library for Java.
161 %description java -l pl
162 Biblioteka baz danych Berkeley dla Javy.
165 Summary: Development files for db-java library
166 Summary(pl): Pliki programistyczne biblioteki db-java
167 Group: Development/Languages/Java
168 Requires: %{name}-java = %{epoch}:%{version}-%{release}
169 Provides: db-java-devel = %{version}-%{release}
170 Conflicts: db-devel < 4.1.25-3
172 %description java-devel
173 Development files for db-java library.
175 %description java-devel -l pl
176 Pliki programistyczne biblioteki db-java.
179 Summary: Berkeley database library for Tcl
180 Summary(pl): Biblioteka baz danych Berkeley dla Tcl
181 Group: Development/Languages/Tcl
183 Provides: db-tcl = %{version}-%{release}
187 Berkeley database library for Tcl.
189 %description tcl -l pl
190 Biblioteka baz danych Berkeley dla Tcl.
193 Summary: Development files for db-tcl library
194 Summary(pl): Pliki programistyczne biblioteki db-tcl
195 Group: Development/Languages/Tcl
196 Requires: %{name}-tcl = %{epoch}:%{version}-%{release}
197 Provides: db-tcl-devel = %{version}-%{release}
198 Conflicts: db-devel < 4.1.25-3
200 %description tcl-devel
201 Development files for db-tcl library.
203 %description tcl-devel -l pl
204 Pliki programistyczne biblioteki db-tcl.
207 Summary: Command line tools for managing Berkeley DB databases
208 Summary(pl): Narzêdzia do obs³ugi baz Berkeley DB z linii poleceñ
209 Group: Applications/Databases
210 Requires: %{name} = %{epoch}:%{version}-%{release}
211 Provides: db-utils = %{version}-%{release}
215 The Berkeley Database (Berkeley DB) is a programmatic toolkit that
216 provides embedded database support for both traditional and
217 client/server applications. Berkeley DB includes B+tree, Extended
218 Linear Hashing, Fixed and Variable-length record access methods,
219 transactions, locking, logging, shared memory caching and database
220 recovery. DB supports C, C++, Java and Perl APIs.
222 This package contains command line tools for managing Berkeley DB
225 %description utils -l pl
226 Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
227 zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
228 klient-serwer. Berkeley DB obs³uguje dostêp do bazy przez B-drzewa i
229 funkcje mieszaj±ce ze sta³± lub zmienn± wielko¶ci± rekordu,
230 transakcje, kroniki, pamiêæ dzielon± i odtwarzanie baz. Ma wsparcie
231 dla C, C++, Javy i Perla.
233 Ten pakiet zawiera narzêdzia do obs³ugi baz Berkeley DB z linii
237 %setup -q -n db-%{version}
240 sed -i -e 's,AM_PTHREADS_SHARED("POSIX/.*,:,' dist/aclocal/mutex.ac
245 cp -f /usr/share/aclocal/libtool.m4 aclocal/libtool.ac
246 cp -f /usr/share/automake/config.sub .
247 cp -f /usr/share/libtool/ltmain.sh .
251 cp -a build_unix build_unix.static
257 CFLAGS="%{rpmcflags}"
258 CXXFLAGS="%{rpmcflags} -fno-implicit-templates"
259 LDFLAGS="%{rpmldflags}"
260 export CC CXX CFLAGS CXXFLAGS LDFLAGS
267 --%{?with_pmutex:en}%{!?with_pmutex:dis}able-posixmutexes \
269 %{!?with_static_libs:--disable-static}
271 # (temporarily?) disabled because of compilation errors:
274 %{__make} library_build
279 --prefix=%{_prefix} \
280 --libdir=%{_libdir} \
283 --%{?with_pmutex:en}%{!?with_pmutex:dis}able-posixmutexes \
285 %{?with_tcl:--enable-tcl} \
286 %{?with_tcl:--with-tcl=/usr/lib} \
287 %{?with_java:--enable-java} \
290 %{!?with_static_libs:--disable-static}
292 %{__make} library_build \
293 TCFLAGS='-I$(builddir) -I%{_includedir}' \
294 LIBSO_LIBS="\$(LIBS)" \
295 LIBTSO_LIBS="\$(LIBS) -ltcl"
298 rm -rf $RPM_BUILD_ROOT
299 install -d $RPM_BUILD_ROOT{%{_includedir},%{_libdir},%{_bindir},/%{_lib}}
301 install -d $RPM_BUILD_ROOT%{_javadir}
304 %{__make} -C build_unix.static library_install \
305 docdir=%{_docdir}/db-%{version}-docs \
306 DESTDIR=$RPM_BUILD_ROOT
308 %{__make} -C build_unix library_install \
309 docdir=%{_docdir}/db-%{version}-docs \
310 DESTDIR=$RPM_BUILD_ROOT \
311 LIB_INSTALL_FILE_LIST=""
313 mv $RPM_BUILD_ROOT%{_libdir}/libdb-4.4.so $RPM_BUILD_ROOT/%{_lib}
315 cd $RPM_BUILD_ROOT%{_libdir}
316 ln -sf /%{_lib}/libdb-4.4.so libdb.so
317 ln -sf /%{_lib}/libdb-4.4.so libdb4.so
318 ln -sf /%{_lib}/libdb-4.4.so libdb-4.4.so
319 ln -sf /%{_lib}/libdb-4.4.so libndbm.so
320 ln -sf libdb-4.4.la libdb.la
321 ln -sf libdb-4.4.la libdb4.la
322 ln -sf libdb-4.4.la libndbm.la
324 ln -sf libdb_java-4.4.la libdb_java.la
325 mv -f $RPM_BUILD_ROOT%{_libdir}/*.jar $RPM_BUILD_ROOT%{_javadir}
328 ln -sf libdb_tcl-4.4.so libdb_tcl.so
329 ln -sf libdb_tcl-4.4.la libdb_tcl.la
331 ln -sf libdb_cxx-4.4.la libdb_cxx.la
332 %if %{with static_libs}
333 mv -f libdb.a libdb-4.4.a
334 ln -sf libdb-4.4.a libdb.a
335 ln -sf libdb-4.4.a libdb4.a
336 ln -sf libdb-4.4.a libndbm.a
337 mv -f libdb_cxx.a libdb_cxx-4.4.a
338 ln -sf libdb_cxx-4.4.a libdb_cxx.a
340 ln -sf libdb_cxx-4.4.so libdb_cxx.so
342 sed -i "s/old_library=''/old_library='libdb-4.4.a'/" libdb-4.4.la
343 sed -i "s/old_library=''/old_library='libdb_cxx-4.4.a'/" libdb_cxx-4.4.la
346 rm -f examples_c*/tags
347 install -d $RPM_BUILD_ROOT%{_examplesdir}/db-%{version}
348 cp -rf examples_c/* $RPM_BUILD_ROOT%{_examplesdir}/db-%{version}
350 install -d $RPM_BUILD_ROOT%{_examplesdir}/db-cxx-%{version}
351 cp -rf examples_cxx/* $RPM_BUILD_ROOT%{_examplesdir}/db-cxx-%{version}
354 install -d $RPM_BUILD_ROOT%{_examplesdir}/db-java-%{version}
355 cp -rf examples_java/* $RPM_BUILD_ROOT%{_examplesdir}/db-java-%{version}
359 rm -rf $RPM_BUILD_ROOT
361 %post -p /sbin/ldconfig
362 %postun -p /sbin/ldconfig
364 %post tcl -p /sbin/ldconfig
365 %postun tcl -p /sbin/ldconfig
367 %post cxx -p /sbin/ldconfig
368 %postun cxx -p /sbin/ldconfig
371 %defattr(644,root,root,755)
373 %attr(755,root,root) /%{_lib}/libdb-4.4.so
374 %dir %{_docdir}/db-%{version}-docs
375 %{_docdir}/db-%{version}-docs/sleepycat
376 %{_docdir}/db-%{version}-docs/index.html
379 %defattr(644,root,root,755)
380 %attr(755,root,root) %{_libdir}/libdb-4.4.so
381 %attr(755,root,root) %{_libdir}/libdb4.so
382 %attr(755,root,root) %{_libdir}/libdb.so
383 %attr(755,root,root) %{_libdir}/libndbm.so
384 %{_libdir}/libdb-4.4.la
387 %{_libdir}/libndbm.la
389 %{_includedir}/db_185.h
390 %{_docdir}/db-%{version}-docs/api_c
391 %dir %{_docdir}/db-%{version}-docs/gsg
392 %{_docdir}/db-%{version}-docs/gsg/C
393 %dir %{_docdir}/db-%{version}-docs/gsg_txn
394 %{_docdir}/db-%{version}-docs/gsg_txn/C
395 %{_docdir}/db-%{version}-docs/images
396 %{_docdir}/db-%{version}-docs/ref
397 %{_examplesdir}/db-%{version}
399 %if %{with static_libs}
401 %defattr(644,root,root,755)
402 %{_libdir}/libdb-4.4.a
409 %defattr(644,root,root,755)
410 %attr(755,root,root) %{_libdir}/libdb_cxx-4.4.so
413 %defattr(644,root,root,755)
414 %attr(755,root,root) %{_libdir}/libdb_cxx.so
415 %{_libdir}/libdb_cxx-4.4.la
416 %{_libdir}/libdb_cxx.la
417 %{_includedir}/db_cxx.h
418 %{_docdir}/db-%{version}-docs/api_cxx
419 %{_docdir}/db-%{version}-docs/gsg/CXX
420 %{_docdir}/db-%{version}-docs/gsg_txn/CXX
421 %{_examplesdir}/db-cxx-%{version}
423 %if %{with static_libs}
425 %defattr(644,root,root,755)
426 %{_libdir}/libdb_cxx-4.4.a
427 %{_libdir}/libdb_cxx.a
432 %defattr(644,root,root,755)
433 %attr(755,root,root) %{_libdir}/libdb_java-4.4.so
437 %defattr(644,root,root,755)
438 %attr(755,root,root) %{_libdir}/libdb_java.so
439 %{_libdir}/libdb_java-4.4.la
440 %{_libdir}/libdb_java.la
441 %{_docdir}/db-%{version}-docs/collections
442 %{_docdir}/db-%{version}-docs/gsg/JAVA
443 %{_docdir}/db-%{version}-docs/gsg_txn/JAVA
444 %{_docdir}/db-%{version}-docs/java
445 %{_examplesdir}/db-java-%{version}
450 %defattr(644,root,root,755)
451 %attr(755,root,root) %{_libdir}/libdb_tcl-4.4.so
454 %defattr(644,root,root,755)
455 %attr(755,root,root) %{_libdir}/libdb_tcl.so
456 %{_libdir}/libdb_tcl-4.4.la
457 %{_libdir}/libdb_tcl.la
458 %{_docdir}/db-%{version}-docs/api_tcl
462 %defattr(644,root,root,755)
463 %attr(755,root,root) %{_bindir}/berkeley_db_svc
464 %attr(755,root,root) %{_bindir}/db*_archive
465 %attr(755,root,root) %{_bindir}/db*_checkpoint
466 %attr(755,root,root) %{_bindir}/db*_deadlock
467 %attr(755,root,root) %{_bindir}/db*_dump
468 #%attr(755,root,root) %{_bindir}/db*_dump185
469 %attr(755,root,root) %{_bindir}/db*_hotbackup
470 %attr(755,root,root) %{_bindir}/db*_load
471 %attr(755,root,root) %{_bindir}/db*_printlog
472 %attr(755,root,root) %{_bindir}/db*_recover
473 %attr(755,root,root) %{_bindir}/db*_stat
474 %attr(755,root,root) %{_bindir}/db*_upgrade
475 %attr(755,root,root) %{_bindir}/db*_verify
476 %{_docdir}/db-%{version}-docs/utility