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_with nptl # use process-shared POSIX mutexes (NPTL provides full interface)
8 %{?with_nptl:%define with_pmutex 1}
9 Summary: Berkeley DB database library for C
10 Summary(pl): Biblioteka C do obs³ugi baz Berkeley DB
14 License: Sleepycat public license (GPL-like, see LICENSE)
16 # alternative site (sometimes working): http://www.berkeleydb.com/
17 #Source0Download: http://www.sleepycat.com/download/
18 Source0: http://www.sleepycat.com/update/snapshot/%{name}-%{version}.tar.gz
19 # Source0-md5: cbc77517c9278cdb47613ce8cb55779f
20 Patch0: %{name}-so-suffix.patch
21 Patch1: patch.4.2.52.1
22 Patch2: patch.4.2.52.2
23 Patch3: patch.4.2.52.3
24 Patch4: patch.4.2.52.4
25 Patch5: %{name}-amd64-fastmutex.patch
26 URL: http://www.sleepycat.com/
27 BuildRequires: autoconf
28 BuildRequires: automake
30 %{?with_java:BuildRequires: jdk}
31 BuildRequires: libtool
32 BuildRequires: libstdc++-devel
33 BuildRequires: rpmbuild(macros) >= 1.164
34 BuildRequires: sed >= 4.0
35 %{?with_tcl:BuildRequires: tcl-devel >= 8.4.0}
37 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
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}
60 The Berkeley Database (Berkeley DB) is a programmatic toolkit that
61 provides embedded database support for both traditional and
62 client/server applications. Berkeley DB includes B+tree, Extended
63 Linear Hashing, Fixed and Variable-length record access methods,
64 transactions, locking, logging, shared memory caching and database
65 recovery. DB supports C, C++, Java and Perl APIs.
67 This package contains the header files, libraries, and documentation
68 for building programs which use Berkeley DB.
70 %description devel -l pl
71 Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
72 zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
73 klient-serwer. Berkeley DB obs³uguje dostêp do bazy przez B-drzewa i
74 funkcje mieszaj±ce ze sta³± lub zmienn± wielko¶ci± rekordu,
75 transakcje, kroniki, pamiêæ dzielon± i odtwarzanie baz. Ma wsparcie
76 dla C, C++, Javy i Perla.
78 Ten pakiet zawiera pliki nag³ówkowe i dokumentacjê do budowania
79 programów u¿ywaj±cych Berkeley DB.
82 Summary: Static libraries for Berkeley database library
83 Summary(pl): Statyczne biblioteki Berkeley Database
84 Group: Development/Libraries
85 Requires: %{name}-devel = %{epoch}:%{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++
118 Berkeley database library for C++.
120 %description cxx -l pl
121 Biblioteka baz danych Berkeley dla C++.
124 Summary: Header files for db-cxx library
125 Summary(pl): Pliki nag³ówkowe biblioteki db-cxx
126 Group: Development/Libraries
127 Requires: %{name}-cxx = %{epoch}:%{version}-%{release}
128 Requires: %{name}-devel = %{epoch}:%{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 Conflicts: db-static < 4.2.50-1
144 %description cxx-static
145 Static version of db-cxx library.
147 %description cxx-static -l pl
148 Statyczna wersja biblioteki db-cxx.
151 Summary: Berkeley database library for Java
152 Summary(pl): Biblioteka baz danych Berkeley dla Javy
157 Berkeley database library for Java.
159 %description java -l pl
160 Biblioteka baz danych Berkeley dla Javy.
163 Summary: Development files for db-java library
164 Summary(pl): Pliki programistyczne biblioteki db-java
165 Group: Development/Languages/Java
166 Requires: %{name}-java = %{epoch}:%{version}-%{release}
167 Conflicts: db-devel < 4.1.25-3
169 %description java-devel
170 Development files for db-java library.
172 %description java-devel -l pl
173 Pliki programistyczne biblioteki db-java.
176 Summary: Berkeley database library for Tcl
177 Summary(pl): Biblioteka baz danych Berkeley dla Tcl
178 Group: Development/Languages/Tcl
183 Berkeley database library for Tcl.
185 %description tcl -l pl
186 Biblioteka baz danych Berkeley dla Tcl.
189 Summary: Development files for db-tcl library
190 Summary(pl): Pliki programistyczne biblioteki db-tcl
191 Group: Development/Languages/Tcl
192 Requires: %{name}-tcl = %{epoch}:%{version}-%{release}
193 Conflicts: db-devel < 4.1.25-3
195 %description tcl-devel
196 Development files for db-tcl library.
198 %description tcl-devel -l pl
199 Pliki programistyczne biblioteki db-tcl.
202 Summary: Command line tools for managing Berkeley DB databases
203 Summary(pl): Narzêdzia do obs³ugi baz Berkeley DB z linii poleceñ
204 Group: Applications/Databases
205 Requires: %{name} = %{epoch}:%{version}-%{release}
207 # obsolete Ra package
211 The Berkeley Database (Berkeley DB) is a programmatic toolkit that
212 provides embedded database support for both traditional and
213 client/server applications. Berkeley DB includes B+tree, Extended
214 Linear Hashing, Fixed and Variable-length record access methods,
215 transactions, locking, logging, shared memory caching and database
216 recovery. DB supports C, C++, Java and Perl APIs.
218 This package contains command line tools for managing Berkeley DB
221 %description utils -l pl
222 Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
223 zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
224 klient-serwer. Berkeley DB obs³uguje dostêp do bazy przez B-drzewa i
225 funkcje mieszaj±ce ze sta³± lub zmienn± wielko¶ci± rekordu,
226 transakcje, kroniki, pamiêæ dzielon± i odtwarzanie baz. Ma wsparcie
227 dla C, C++, Javy i Perla.
229 Ten pakiet zawiera narzêdzia do obs³ugi baz Berkeley DB z linii
242 sed -i -e 's,AM_PTHREADS_SHARED("POSIX/.*,:,' dist/aclocal/mutex.ac
247 cp -f /usr/share/aclocal/libtool.m4 aclocal/libtool.ac
248 cp -f /usr/share/automake/config.sub .
249 cp -f /usr/share/libtool/ltmain.sh .
253 cp -a build_unix build_unix.static
259 CFLAGS="%{rpmcflags}"
260 CXXFLAGS="%{rpmcflags} -fno-implicit-templates"
261 LDFLAGS="%{rpmldflags}"
262 export CC CXX CFLAGS CXXFLAGS LDFLAGS
269 --%{?with_pmutex:en}%{!?with_pmutex:dis}able-posixmutexes \
272 # (temporarily?) disabled because of compilation errors:
275 %{__make} library_build
280 --prefix=%{_prefix} \
281 --libdir=%{_libdir} \
284 --%{?with_pmutex:en}%{!?with_pmutex:dis}able-posixmutexes \
286 %{?with_tcl:--enable-tcl} \
287 %{?with_tcl:--with-tcl=/usr/lib} \
288 %{?with_java:--enable-java} \
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}/%{name}-%{version}-docs \
306 DESTDIR=$RPM_BUILD_ROOT
308 %{__make} -C build_unix library_install \
309 docdir=%{_docdir}/%{name}-%{version}-docs \
310 DESTDIR=$RPM_BUILD_ROOT \
311 LIB_INSTALL_FILE_LIST=""
313 mv $RPM_BUILD_ROOT%{_libdir}/libdb-4.2.so $RPM_BUILD_ROOT/%{_lib}
315 cd $RPM_BUILD_ROOT%{_libdir}
316 ln -sf /%{_lib}/libdb-4.2.so libdb.so
317 ln -sf /%{_lib}/libdb-4.2.so libdb4.so
318 ln -sf /%{_lib}/libdb-4.2.so libdb-4.2.so
319 ln -sf /%{_lib}/libdb-4.2.so libndbm.so
320 ln -sf libdb-4.2.la libdb.la
321 ln -sf libdb-4.2.la libdb4.la
322 ln -sf libdb-4.2.la libndbm.la
324 ln -sf libdb_java-4.2.la libdb_java.la
325 mv -f $RPM_BUILD_ROOT%{_libdir}/*.jar $RPM_BUILD_ROOT%{_javadir}
328 ln -sf libdb_tcl-4.2.so libdb_tcl.so
329 ln -sf libdb_tcl-4.2.la libdb_tcl.la
331 ln -sf libdb_cxx-4.2.la libdb_cxx.la
332 mv -f libdb.a libdb-4.2.a
333 ln -sf libdb-4.2.a libdb.a
334 ln -sf libdb-4.2.a libdb4.a
335 ln -sf libdb-4.2.a libndbm.a
336 mv -f libdb_cxx.a libdb_cxx-4.2.a
337 ln -sf libdb_cxx-4.2.a libdb_cxx.a
338 ln -sf libdb_cxx-4.2.so libdb_cxx.so
340 sed -i "s/old_library=''/old_library='libdb-4.2.a'/" libdb-4.2.la
341 sed -i "s/old_library=''/old_library='libdb_cxx-4.2.a'/" libdb_cxx-4.2.la
344 rm -f examples_c*/tags
345 install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
346 cp -rf examples_c/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
348 install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-cxx-%{version}
349 cp -rf examples_cxx/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-cxx-%{version}
352 install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-java-%{version}
353 cp -rf examples_java/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-java-%{version}
357 rm -rf $RPM_BUILD_ROOT
359 %post -p /sbin/ldconfig
360 %postun -p /sbin/ldconfig
362 %post tcl -p /sbin/ldconfig
363 %postun tcl -p /sbin/ldconfig
365 %post cxx -p /sbin/ldconfig
366 %postun cxx -p /sbin/ldconfig
369 %defattr(644,root,root,755)
371 %attr(755,root,root) /%{_lib}/libdb-4.2.so
372 %dir %{_docdir}/%{name}-%{version}-docs
373 %{_docdir}/%{name}-%{version}-docs/sleepycat
374 %{_docdir}/%{name}-%{version}-docs/index.html
377 %defattr(644,root,root,755)
378 %attr(755,root,root) %{_libdir}/libdb-4.2.so
379 %attr(755,root,root) %{_libdir}/libdb4.so
380 %attr(755,root,root) %{_libdir}/libdb.so
381 %attr(755,root,root) %{_libdir}/libndbm.so
382 %{_libdir}/libdb-4.2.la
385 %{_libdir}/libndbm.la
387 %{_includedir}/db_185.h
388 %{_docdir}/%{name}-%{version}-docs/api_c
389 %{_docdir}/%{name}-%{version}-docs/images
390 %{_docdir}/%{name}-%{version}-docs/ref
391 %{_examplesdir}/%{name}-%{version}
394 %defattr(644,root,root,755)
395 %{_libdir}/libdb-4.2.a
401 %defattr(644,root,root,755)
402 %attr(755,root,root) %{_libdir}/libdb_cxx-4.2.so
405 %defattr(644,root,root,755)
406 %attr(755,root,root) %{_libdir}/libdb_cxx.so
407 %{_includedir}/db_cxx.h
408 %{_libdir}/libdb_cxx-4.2.la
409 %{_libdir}/libdb_cxx.la
410 %{_docdir}/%{name}-%{version}-docs/api_cxx
411 %{_examplesdir}/%{name}-cxx-%{version}
414 %defattr(644,root,root,755)
415 %{_libdir}/libdb_cxx-4.2.a
416 %{_libdir}/libdb_cxx.a
420 %defattr(644,root,root,755)
421 %attr(755,root,root) %{_libdir}/libdb_java-4.2.so
425 %defattr(644,root,root,755)
426 %attr(755,root,root) %{_libdir}/libdb_java.so
427 %{_libdir}/libdb_java-4.2.la
428 %{_libdir}/libdb_java.la
429 %{_docdir}/%{name}-%{version}-docs/java
430 %{_examplesdir}/%{name}-java-%{version}
435 %defattr(644,root,root,755)
436 %attr(755,root,root) %{_libdir}/libdb_tcl-4.2.so
439 %defattr(644,root,root,755)
440 %attr(755,root,root) %{_libdir}/libdb_tcl.so
441 %{_libdir}/libdb_tcl-4.2.la
442 %{_libdir}/libdb_tcl.la
443 %{_docdir}/%{name}-%{version}-docs/api_tcl
447 %defattr(644,root,root,755)
448 %attr(755,root,root) %{_bindir}/berkeley_db_svc
449 %attr(755,root,root) %{_bindir}/db*_archive
450 %attr(755,root,root) %{_bindir}/db*_checkpoint
451 %attr(755,root,root) %{_bindir}/db*_deadlock
452 %attr(755,root,root) %{_bindir}/db*_dump
453 #%attr(755,root,root) %{_bindir}/db*_dump185
454 %attr(755,root,root) %{_bindir}/db*_load
455 %attr(755,root,root) %{_bindir}/db*_printlog
456 %attr(755,root,root) %{_bindir}/db*_recover
457 %attr(755,root,root) %{_bindir}/db*_stat
458 %attr(755,root,root) %{_bindir}/db*_upgrade
459 %attr(755,root,root) %{_bindir}/db*_verify
460 %{_docdir}/%{name}-%{version}-docs/utility