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: d84dff288a19186b136b0daf7067ade3
22 Patch0: http://www.sleepycat.com/update/4.4.20/patch.4.4.20.1
23 Patch1: http://www.sleepycat.com/update/4.4.20/patch.4.4.20.2
24 URL: http://www.sleepycat.com/
25 BuildRequires: autoconf
26 BuildRequires: automake
28 %{?with_java:BuildRequires: jdk}
29 BuildRequires: libstdc++-devel
30 BuildRequires: libtool
31 BuildRequires: sed >= 4.0
32 %{?with_tcl:BuildRequires: tcl-devel >= 8.4.0}
33 Provides: db = %{version}-%{release}
35 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
38 The Berkeley Database (Berkeley DB) is a programmatic toolkit that
39 provides embedded database support for both traditional and
40 client/server applications. Berkeley DB is used by many applications,
41 including Python and Perl, so this should be installed on all systems.
44 Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
45 zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
46 klient-serwer. Berkeley db jest u¿ywana w wielu aplikacjach, w tym w
50 Summary: Header files for Berkeley database library
51 Summary(pl): Pliki nag³ówkowe do biblioteki Berkeley Database
52 Group: Development/Libraries
53 Requires: %{name} = %{epoch}:%{version}-%{release}
54 Provides: db-devel = %{version}-%{release}
59 The Berkeley Database (Berkeley DB) is a programmatic toolkit that
60 provides embedded database support for both traditional and
61 client/server applications. Berkeley DB includes B+tree, Extended
62 Linear Hashing, Fixed and Variable-length record access methods,
63 transactions, locking, logging, shared memory caching and database
64 recovery. DB supports C, C++, Java and Perl APIs.
66 This package contains the header files, libraries, and documentation
67 for building programs which use Berkeley DB.
69 %description devel -l pl
70 Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
71 zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
72 klient-serwer. Berkeley DB obs³uguje dostêp do bazy przez B-drzewa i
73 funkcje mieszaj±ce ze sta³± lub zmienn± wielko¶ci± rekordu,
74 transakcje, kroniki, pamiêæ dzielon± i odtwarzanie baz. Ma wsparcie
75 dla C, C++, Javy i Perla.
77 Ten pakiet zawiera pliki nag³ówkowe i dokumentacjê do budowania
78 programów u¿ywaj±cych Berkeley DB.
81 Summary: Static libraries for Berkeley database library
82 Summary(pl): Statyczne biblioteki Berkeley Database
83 Group: Development/Libraries
84 Requires: %{name}-devel = %{epoch}:%{version}-%{release}
85 Provides: db-static = %{version}-%{release}
90 The Berkeley Database (Berkeley DB) is a programmatic toolkit that
91 provides embedded database support for both traditional and
92 client/server applications. Berkeley DB includes B+tree, Extended
93 Linear Hashing, Fixed and Variable-length record access methods,
94 transactions, locking, logging, shared memory caching and database
95 recovery. DB supports C, C++, Java and Perl APIs.
97 This package contains the static libraries for building programs which
100 %description static -l pl
101 Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
102 zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
103 klient-serwer. Berkeley DB obs³uguje dostêp do bazy przez B-drzewa i
104 funkcje mieszaj±ce ze sta³± lub zmienn± wielko¶ci± rekordu,
105 transakcje, kroniki, pamiêæ dzielon± i odtwarzanie baz. Ma wsparcie
106 dla C, C++, Javy i Perla.
108 Ten pakiet zawiera statyczne biblioteki do budowania programów
109 u¿ywaj±cych Berkeley DB.
112 Summary: Berkeley database library for C++
113 Summary(pl): Biblioteka baz danych Berkeley dla C++
115 Provides: db-cxx = %{version}-%{release}
119 Berkeley database library for C++.
121 %description cxx -l pl
122 Biblioteka baz danych Berkeley dla C++.
125 Summary: Header files for db-cxx library
126 Summary(pl): Pliki nag³ówkowe biblioteki db-cxx
127 Group: Development/Libraries
128 Requires: %{name}-cxx = %{epoch}:%{version}-%{release}
129 Requires: %{name}-devel = %{epoch}:%{version}-%{release}
130 Provides: db-cxx-devel = %{version}-%{release}
131 Conflicts: db-devel < 4.1.25-3
133 %description cxx-devel
134 Header files for db-cxx library.
136 %description cxx-devel -l pl
137 Pliki nag³ówkowe biblioteki db-cxx.
140 Summary: Static version of db-cxx library
141 Summary(pl): Statyczna wersja biblioteki db-cxx
142 Group: Development/Libraries
143 Requires: %{name}-cxx-devel = %{epoch}:%{version}-%{release}
144 Provides: db-cxx-static = %{version}-%{release}
145 Conflicts: db-static < 4.2.50-1
147 %description cxx-static
148 Static version of db-cxx library.
150 %description cxx-static -l pl
151 Statyczna wersja biblioteki db-cxx.
154 Summary: Berkeley database library for Java
155 Summary(pl): Biblioteka baz danych Berkeley dla Javy
158 Provides: db-java = %{version}-%{release}
161 Berkeley database library for Java.
163 %description java -l pl
164 Biblioteka baz danych Berkeley dla Javy.
167 Summary: Development files for db-java library
168 Summary(pl): Pliki programistyczne biblioteki db-java
169 Group: Development/Languages/Java
170 Requires: %{name}-java = %{epoch}:%{version}-%{release}
171 Provides: db-java-devel = %{version}-%{release}
172 Conflicts: db-devel < 4.1.25-3
174 %description java-devel
175 Development files for db-java library.
177 %description java-devel -l pl
178 Pliki programistyczne biblioteki db-java.
181 Summary: Berkeley database library for Tcl
182 Summary(pl): Biblioteka baz danych Berkeley dla Tcl
183 Group: Development/Languages/Tcl
185 Provides: db-tcl = %{version}-%{release}
189 Berkeley database library for Tcl.
191 %description tcl -l pl
192 Biblioteka baz danych Berkeley dla Tcl.
195 Summary: Development files for db-tcl library
196 Summary(pl): Pliki programistyczne biblioteki db-tcl
197 Group: Development/Languages/Tcl
198 Requires: %{name}-tcl = %{epoch}:%{version}-%{release}
199 Provides: db-tcl-devel = %{version}-%{release}
200 Conflicts: db-devel < 4.1.25-3
202 %description tcl-devel
203 Development files for db-tcl library.
205 %description tcl-devel -l pl
206 Pliki programistyczne biblioteki db-tcl.
209 Summary: Command line tools for managing Berkeley DB databases
210 Summary(pl): Narzêdzia do obs³ugi baz Berkeley DB z linii poleceñ
211 Group: Applications/Databases
212 Requires: %{name} = %{epoch}:%{version}-%{release}
213 Provides: db-utils = %{version}-%{release}
215 # obsolete Ra package
219 The Berkeley Database (Berkeley DB) is a programmatic toolkit that
220 provides embedded database support for both traditional and
221 client/server applications. Berkeley DB includes B+tree, Extended
222 Linear Hashing, Fixed and Variable-length record access methods,
223 transactions, locking, logging, shared memory caching and database
224 recovery. DB supports C, C++, Java and Perl APIs.
226 This package contains command line tools for managing Berkeley DB
229 %description utils -l pl
230 Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
231 zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
232 klient-serwer. Berkeley DB obs³uguje dostêp do bazy przez B-drzewa i
233 funkcje mieszaj±ce ze sta³± lub zmienn± wielko¶ci± rekordu,
234 transakcje, kroniki, pamiêæ dzielon± i odtwarzanie baz. Ma wsparcie
235 dla C, C++, Javy i Perla.
237 Ten pakiet zawiera narzêdzia do obs³ugi baz Berkeley DB z linii
241 %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-4.4.so $RPM_BUILD_ROOT/%{_lib}
324 cd $RPM_BUILD_ROOT%{_libdir}
325 ln -sf /%{_lib}/libdb-4.4.so libdb.so
326 ln -sf /%{_lib}/libdb-4.4.so libdb4.so
327 ln -sf /%{_lib}/libdb-4.4.so libdb-4.4.so
328 ln -sf /%{_lib}/libdb-4.4.so libndbm.so
329 ln -sf libdb-4.4.la libdb.la
330 ln -sf libdb-4.4.la libdb4.la
331 ln -sf libdb-4.4.la libndbm.la
333 ln -sf libdb_java-4.4.la libdb_java.la
334 mv -f $RPM_BUILD_ROOT%{_libdir}/*.jar $RPM_BUILD_ROOT%{_javadir}
337 ln -sf libdb_tcl-4.4.so libdb_tcl.so
338 ln -sf libdb_tcl-4.4.la libdb_tcl.la
340 ln -sf libdb_cxx-4.4.la libdb_cxx.la
341 %if %{with static_libs}
342 mv -f libdb.a libdb-4.4.a
343 ln -sf libdb-4.4.a libdb.a
344 ln -sf libdb-4.4.a libdb4.a
345 ln -sf libdb-4.4.a libndbm.a
346 mv -f libdb_cxx.a libdb_cxx-4.4.a
347 ln -sf libdb_cxx-4.4.a libdb_cxx.a
349 ln -sf libdb_cxx-4.4.so libdb_cxx.so
351 sed -i "s/old_library=''/old_library='libdb-4.4.a'/" libdb-4.4.la
352 sed -i "s/old_library=''/old_library='libdb_cxx-4.4.a'/" libdb_cxx-4.4.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-4.4.so
383 %dir %{_docdir}/db-%{version}-docs
384 %{_docdir}/db-%{version}-docs/sleepycat
385 %{_docdir}/db-%{version}-docs/index.html
388 %defattr(644,root,root,755)
389 %attr(755,root,root) %{_libdir}/libdb-4.4.so
390 %attr(755,root,root) %{_libdir}/libdb4.so
391 %attr(755,root,root) %{_libdir}/libdb.so
392 %attr(755,root,root) %{_libdir}/libndbm.so
393 %{_libdir}/libdb-4.4.la
396 %{_libdir}/libndbm.la
398 %{_includedir}/db_185.h
399 %{_docdir}/db-%{version}-docs/api_c
400 %dir %{_docdir}/db-%{version}-docs/gsg
401 %{_docdir}/db-%{version}-docs/gsg/C
402 %dir %{_docdir}/db-%{version}-docs/gsg_txn
403 %{_docdir}/db-%{version}-docs/gsg_txn/C
404 %{_docdir}/db-%{version}-docs/images
405 %{_docdir}/db-%{version}-docs/ref
406 %{_examplesdir}/db-%{version}
408 %if %{with static_libs}
410 %defattr(644,root,root,755)
411 %{_libdir}/libdb-4.4.a
418 %defattr(644,root,root,755)
419 %attr(755,root,root) %{_libdir}/libdb_cxx-4.4.so
422 %defattr(644,root,root,755)
423 %attr(755,root,root) %{_libdir}/libdb_cxx.so
424 %{_libdir}/libdb_cxx-4.4.la
425 %{_libdir}/libdb_cxx.la
426 %{_includedir}/db_cxx.h
427 %{_docdir}/db-%{version}-docs/api_cxx
428 %{_docdir}/db-%{version}-docs/gsg/CXX
429 %{_docdir}/db-%{version}-docs/gsg_txn/CXX
430 %{_examplesdir}/db-cxx-%{version}
432 %if %{with static_libs}
434 %defattr(644,root,root,755)
435 %{_libdir}/libdb_cxx-4.4.a
436 %{_libdir}/libdb_cxx.a
441 %defattr(644,root,root,755)
442 %attr(755,root,root) %{_libdir}/libdb_java-4.4.so
446 %defattr(644,root,root,755)
447 %attr(755,root,root) %{_libdir}/libdb_java.so
448 %{_libdir}/libdb_java-4.4.la
449 %{_libdir}/libdb_java.la
450 %{_docdir}/db-%{version}-docs/collections
451 %{_docdir}/db-%{version}-docs/gsg/JAVA
452 %{_docdir}/db-%{version}-docs/gsg_txn/JAVA
453 %{_docdir}/db-%{version}-docs/java
454 %{_examplesdir}/db-java-%{version}
459 %defattr(644,root,root,755)
460 %attr(755,root,root) %{_libdir}/libdb_tcl-4.4.so
463 %defattr(644,root,root,755)
464 %attr(755,root,root) %{_libdir}/libdb_tcl.so
465 %{_libdir}/libdb_tcl-4.4.la
466 %{_libdir}/libdb_tcl.la
467 %{_docdir}/db-%{version}-docs/api_tcl
471 %defattr(644,root,root,755)
472 %attr(755,root,root) %{_bindir}/berkeley_db_svc
473 %attr(755,root,root) %{_bindir}/db*_archive
474 %attr(755,root,root) %{_bindir}/db*_checkpoint
475 %attr(755,root,root) %{_bindir}/db*_deadlock
476 %attr(755,root,root) %{_bindir}/db*_dump
477 #%attr(755,root,root) %{_bindir}/db*_dump185
478 %attr(755,root,root) %{_bindir}/db*_hotbackup
479 %attr(755,root,root) %{_bindir}/db*_load
480 %attr(755,root,root) %{_bindir}/db*_printlog
481 %attr(755,root,root) %{_bindir}/db*_recover
482 %attr(755,root,root) %{_bindir}/db*_stat
483 %attr(755,root,root) %{_bindir}/db*_upgrade
484 %attr(755,root,root) %{_bindir}/db*_verify
485 %{_docdir}/db-%{version}-docs/utility