]> git.pld-linux.org Git - packages/db4.2.git/blame_incremental - db4.2.spec
- unified: more Obsoletes when built as default_db
[packages/db4.2.git] / db4.2.spec
... / ...
CommitLineData
1#
2# Conditional build:
3%bcond_without java # don't build Java library
4%bcond_without tcl # don't build Tcl bindings
5%bcond_with pmutex # use process-shared POSIX mutexes (not available with linuxthreads)
6%bcond_with nptl # use process-shared POSIX mutexes (NPTL provides full interface)
7%bcond_without static_libs # don't build static libraries
8%bcond_with default_db # use this db as default system db
9#
10%define ver 4.2.52
11%define patchlevel 5
12%{?with_nptl:%define with_pmutex 1}
13Summary: Berkeley DB database library for C
14Summary(pl.UTF-8): Biblioteka C do obsługi baz Berkeley DB
15Name: db4.2
16Version: %{ver}.%{patchlevel}
17Release: 1
18License: Sleepycat public license (GPL-like, see LICENSE)
19Group: Libraries
20#Source0Download: http://www.oracle.com/technetwork/database/berkeleydb/downloads/index-082944.html
21Source0: http://download.oracle.com/berkeley-db/db-%{ver}.tar.gz
22# Source0-md5: cbc77517c9278cdb47613ce8cb55779f
23%patchset_source -f http://download.oracle.com/berkeley-db/patches/db/%{ver}/patch.%{ver}.%g 1 %{patchlevel}
24Patch0: db-so-suffix.patch
25Patch1: %{name}-amd64-fastmutex.patch
26URL: http://www.oracle.com/technetwork/database/berkeleydb/downloads/index.html
27BuildRequires: autoconf
28BuildRequires: automake
29BuildRequires: ed
30%{?with_java:BuildRequires: jdk}
31BuildRequires: libstdc++-devel
32BuildRequires: libtool >= 2:2.2
33BuildRequires: rpmbuild(macros) >= 1.426
34BuildRequires: sed >= 4.0
35%{?with_tcl:BuildRequires: tcl-devel >= 8.4.0}
36%if %{with default_db}
37Provides: db = %{version}-%{release}
38Obsoletes: db4
39%endif
40BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
41
42%if %{without default_db}
43%define _includedir %{_prefix}/include/db4.2
44%endif
45
46%description
47The Berkeley Database (Berkeley DB) is a programmatic toolkit that
48provides embedded database support for both traditional and
49client/server applications. Berkeley DB is used by many applications,
50including Python and Perl, so this should be installed on all systems.
51
52%description -l pl.UTF-8
53Berkeley Database (Berkeley DB) to zestaw narzędzi programistycznych
54zapewniających obsługę baz danych w aplikacjach tradycyjnych jak i
55klient-serwer. Berkeley db jest używana w wielu aplikacjach, w tym w
56Pythonie i Perlu.
57
58%package devel
59Summary: Header files for Berkeley database library
60Summary(pl.UTF-8): Pliki nagłówkowe do biblioteki Berkeley Database
61Group: Development/Libraries
62Requires: %{name} = %{version}-%{release}
63%if %{with default_db}
64Provides: db-devel = %{version}-%{release}
65Obsoletes: db-devel
66Obsoletes: db3-devel
67Obsoletes: db4-devel
68%endif
69
70%description devel
71The Berkeley Database (Berkeley DB) is a programmatic toolkit that
72provides embedded database support for both traditional and
73client/server applications. Berkeley DB includes B+tree, Extended
74Linear Hashing, Fixed and Variable-length record access methods,
75transactions, locking, logging, shared memory caching and database
76recovery. DB supports C, C++, Java and Perl APIs.
77
78This package contains the header files, libraries, and documentation
79for building programs which use Berkeley DB.
80
81%description devel -l pl.UTF-8
82Berkeley Database (Berkeley DB) to zestaw narzędzi programistycznych
83zapewniających obsługę baz danych w aplikacjach tradycyjnych jak i
84klient-serwer. Berkeley DB obsługuje dostęp do bazy przez B-drzewa i
85funkcje mieszające ze stałą lub zmienną wielkością rekordu,
86transakcje, kroniki, pamięć dzieloną i odtwarzanie baz. Ma wsparcie
87dla C, C++, Javy i Perla.
88
89Ten pakiet zawiera pliki nagłówkowe i dokumentację do budowania
90programów używających Berkeley DB.
91
92%package static
93Summary: Static libraries for Berkeley database library
94Summary(pl.UTF-8): Statyczne biblioteki Berkeley Database
95Group: Development/Libraries
96Requires: %{name}-devel = %{version}-%{release}
97%if %{with default_db}
98Provides: db-static = %{version}-%{release}
99Obsoletes: db-static
100Obsoletes: db3-static
101Obsoletes: db4-static
102%endif
103
104%description static
105The Berkeley Database (Berkeley DB) is a programmatic toolkit that
106provides embedded database support for both traditional and
107client/server applications. Berkeley DB includes B+tree, Extended
108Linear Hashing, Fixed and Variable-length record access methods,
109transactions, locking, logging, shared memory caching and database
110recovery. DB supports C, C++, Java and Perl APIs.
111
112This package contains the static libraries for building programs which
113use Berkeley DB.
114
115%description static -l pl.UTF-8
116Berkeley Database (Berkeley DB) to zestaw narzędzi programistycznych
117zapewniających obsługę baz danych w aplikacjach tradycyjnych jak i
118klient-serwer. Berkeley DB obsługuje dostęp do bazy przez B-drzewa i
119funkcje mieszające ze stałą lub zmienną wielkością rekordu,
120transakcje, kroniki, pamięć dzieloną i odtwarzanie baz. Ma wsparcie
121dla C, C++, Javy i Perla.
122
123Ten pakiet zawiera statyczne biblioteki do budowania programów
124używających Berkeley DB.
125
126%package cxx
127Summary: Berkeley database library for C++
128Summary(pl.UTF-8): Biblioteka baz danych Berkeley dla C++
129Group: Libraries
130%if %{with default_db}
131Provides: db-cxx = %{version}-%{release}
132Obsoletes: db4-cxx
133%endif
134
135%description cxx
136Berkeley database library for C++.
137
138%description cxx -l pl.UTF-8
139Biblioteka baz danych Berkeley dla C++.
140
141%package cxx-devel
142Summary: Header files for db-cxx library
143Summary(pl.UTF-8): Pliki nagłówkowe biblioteki db-cxx
144Group: Development/Libraries
145Requires: %{name}-cxx = %{version}-%{release}
146Requires: %{name}-devel = %{version}-%{release}
147%if %{with default_db}
148Provides: db-cxx-devel = %{version}-%{release}
149Obsoletes: db-cxx-devel
150%endif
151Conflicts: db-devel < 4.1.25-3
152
153%description cxx-devel
154Header files for db-cxx library.
155
156%description cxx-devel -l pl.UTF-8
157Pliki nagłówkowe biblioteki db-cxx.
158
159%package cxx-static
160Summary: Static version of db-cxx library
161Summary(pl.UTF-8): Statyczna wersja biblioteki db-cxx
162Group: Development/Libraries
163Requires: %{name}-cxx-devel = %{version}-%{release}
164%if %{with default_db}
165Provides: db-cxx-static = %{version}-%{release}
166Obsoletes: db-cxx-static
167%endif
168Conflicts: db-static < 4.2.50-1
169
170%description cxx-static
171Static version of db-cxx library.
172
173%description cxx-static -l pl.UTF-8
174Statyczna wersja biblioteki db-cxx.
175
176%package java
177Summary: Berkeley database library for Java
178Summary(pl.UTF-8): Biblioteka baz danych Berkeley dla Javy
179Group: Libraries
180Requires: jpackage-utils
181%if %{with default_db}
182Provides: db-java = %{version}-%{release}
183Obsoletes: db-java
184%endif
185
186%description java
187Berkeley database library for Java.
188
189%description java -l pl.UTF-8
190Biblioteka baz danych Berkeley dla Javy.
191
192%package java-devel
193Summary: Development files for db-java library
194Summary(pl.UTF-8): Pliki programistyczne biblioteki db-java
195Group: Development/Languages/Java
196Requires: %{name}-java = %{version}-%{release}
197%if %{with default_db}
198Provides: db-java-devel = %{version}-%{release}
199Obsoletes: db-java-devel
200%endif
201Conflicts: db-devel < 4.1.25-3
202
203%description java-devel
204Development files for db-java library.
205
206%description java-devel -l pl.UTF-8
207Pliki programistyczne biblioteki db-java.
208
209%package tcl
210Summary: Berkeley database library for Tcl
211Summary(pl.UTF-8): Biblioteka baz danych Berkeley dla Tcl
212Group: Development/Languages/Tcl
213Requires: tcl
214%if %{with default_db}
215Provides: db-tcl = %{version}-%{release}
216Obsoletes: db4-tcl
217%endif
218
219%description tcl
220Berkeley database library for Tcl.
221
222%description tcl -l pl.UTF-8
223Biblioteka baz danych Berkeley dla Tcl.
224
225%package tcl-devel
226Summary: Development files for db-tcl library
227Summary(pl.UTF-8): Pliki programistyczne biblioteki db-tcl
228Group: Development/Languages/Tcl
229Requires: %{name}-tcl = %{version}-%{release}
230%if %{with default_db}
231Provides: db-tcl-devel = %{version}-%{release}
232Obsoletes: db-tcl-devel
233%endif
234Conflicts: db-devel < 4.1.25-3
235
236%description tcl-devel
237Development files for db-tcl library.
238
239%description tcl-devel -l pl.UTF-8
240Pliki programistyczne biblioteki db-tcl.
241
242%package utils
243Summary: Command line tools for managing Berkeley DB databases
244Summary(pl.UTF-8): Narzędzia do obsługi baz Berkeley DB z linii poleceń
245Group: Applications/Databases
246Requires: %{name} = %{version}-%{release}
247%if %{with default_db}
248Provides: db-utils = %{version}-%{release}
249Obsoletes: db-utils
250Obsoletes: db3-utils
251Obsoletes: db4-utils
252%endif
253
254%description utils
255The Berkeley Database (Berkeley DB) is a programmatic toolkit that
256provides embedded database support for both traditional and
257client/server applications. Berkeley DB includes B+tree, Extended
258Linear Hashing, Fixed and Variable-length record access methods,
259transactions, locking, logging, shared memory caching and database
260recovery. DB supports C, C++, Java and Perl APIs.
261
262This package contains command line tools for managing Berkeley DB
263databases.
264
265%description utils -l pl.UTF-8
266Berkeley Database (Berkeley DB) to zestaw narzędzi programistycznych
267zapewniających obsługę baz danych w aplikacjach tradycyjnych jak i
268klient-serwer. Berkeley DB obsługuje dostęp do bazy przez B-drzewa i
269funkcje mieszające ze stałą lub zmienną wielkością rekordu,
270transakcje, kroniki, pamięć dzieloną i odtwarzanie baz. Ma wsparcie
271dla C, C++, Javy i Perla.
272
273Ten pakiet zawiera narzędzia do obsługi baz Berkeley DB z linii
274poleceń.
275
276%prep
277%setup -q -n db-%{ver}
278# official patches
279%patchset_patch 1 %{patchlevel}
280
281%patch0 -p1
282%patch1 -p1
283
284%if %{without nptl}
285sed -i -e 's,AM_PTHREADS_SHARED("POSIX/.*,:,' dist/aclocal/mutex.ac
286%endif
287
288sed -i -e '/AC_PROG_LIBTOOL/aLT_OUTPUT' dist/configure.ac
289
290%build
291cd dist
292cp -f /usr/share/aclocal/libtool.m4 aclocal/libtool.ac
293cp -f /usr/share/aclocal/ltoptions.m4 aclocal/ltoptions.ac
294cp -f /usr/share/aclocal/ltsugar.m4 aclocal/ltsugar.ac
295cp -f /usr/share/aclocal/ltversion.m4 aclocal/ltversion.ac
296cp -f /usr/share/aclocal/lt~obsolete.m4 aclocal/lt~obsolete.ac
297cp -f /usr/share/automake/config.sub .
298cp -f /usr/share/libtool/config/ltmain.sh .
299sh s_config
300cd ..
301
302%if %{with static_libs}
303cp -a build_unix build_unix.static
304
305cd build_unix.static
306
307CC="%{__cc}"
308CXX="%{__cxx}"
309CFLAGS="%{rpmcflags}"
310CXXFLAGS="%{rpmcflags} -fno-implicit-templates"
311LDFLAGS="%{rpmcflags} %{rpmldflags}"
312export CC CXX CFLAGS CXXFLAGS LDFLAGS
313
314../dist/%configure \
315 --disable-shared \
316 --enable-static \
317 --enable-compat185 \
318 --enable-cxx \
319 --%{?with_pmutex:en}%{!?with_pmutex:dis}able-posixmutexes \
320 --enable-rpc
321
322# (temporarily?) disabled because of compilation errors:
323# --enable-dump185 \
324
325%{__make} library_build
326cd ..
327%endif
328
329cd build_unix
330
331../dist/%configure \
332 --prefix=%{_prefix} \
333 --libdir=%{_libdir} \
334 --enable-shared \
335 --disable-static \
336 --enable-compat185 \
337 --enable-cxx \
338 --%{?with_pmutex:en}%{!?with_pmutex:dis}able-posixmutexes \
339 --enable-rpc \
340 %{?with_java:--enable-java} \
341 %{?with_tcl:--enable-tcl --with-tcl=/usr/lib}
342
343%{__make} library_build \
344 TCFLAGS='-I$(builddir) -I%{_includedir}' \
345 LIBSO_LIBS="\$(LIBS)" \
346 LIBTSO_LIBS="\$(LIBS) -ltcl"
347
348%install
349rm -rf $RPM_BUILD_ROOT
350install -d $RPM_BUILD_ROOT{%{_includedir},%{_libdir},%{_bindir}}
351%if %{with java}
352install -d $RPM_BUILD_ROOT%{_javadir}
353%endif
354
355%if %{with static_libs}
356%{__make} -C build_unix.static library_install \
357 DESTDIR=$RPM_BUILD_ROOT \
358 docdir=%{_docdir}/db-%{version}-docs \
359 includedir=%{_includedir}
360%endif
361
362%{__make} -C build_unix library_install \
363 DESTDIR=$RPM_BUILD_ROOT \
364 LIB_INSTALL_FILE_LIST="" \
365 docdir=%{_docdir}/db-%{version}-docs \
366 includedir=%{_includedir}
367
368%if %{with default_db}
369install -d $RPM_BUILD_ROOT/%{_lib}
370mv $RPM_BUILD_ROOT%{_libdir}/libdb-4.2.so $RPM_BUILD_ROOT/%{_lib}
371%endif
372
373cd $RPM_BUILD_ROOT%{_libdir}
374%if %{with static_libs}
375mv -f libdb.a libdb-4.2.a
376mv -f libdb_cxx.a libdb_cxx-4.2.a
377%endif
378%if %{with java}
379mv -f $RPM_BUILD_ROOT%{_libdir}/db.jar $RPM_BUILD_ROOT%{_javadir}/db-4.2.jar
380%endif
381%if %{with default_db}
382ln -sf /%{_lib}/libdb-4.2.so libdb.so
383ln -sf /%{_lib}/libdb-4.2.so libdb4.so
384ln -sf /%{_lib}/libdb-4.2.so libdb-4.2.so
385ln -sf /%{_lib}/libdb-4.2.so libndbm.so
386ln -sf libdb-4.2.la libdb.la
387ln -sf libdb-4.2.la libdb4.la
388ln -sf libdb-4.2.la libndbm.la
389ln -sf libdb_cxx-4.2.so libdb_cxx.so
390ln -sf libdb_cxx-4.2.la libdb_cxx.la
391%if %{with java}
392ln -sf libdb_java-4.2.la libdb_java.la
393ln -sf db-4.2.jar $RPM_BUILD_ROOT%{_javadir}/db.jar
394%endif
395%if %{with tcl}
396ln -sf libdb_tcl-4.2.so libdb_tcl.so
397ln -sf libdb_tcl-4.2.la libdb_tcl.la
398%endif
399%if %{with static_libs}
400ln -sf libdb-4.2.a libdb.a
401ln -sf libdb-4.2.a libdb4.a
402ln -sf libdb-4.2.a libndbm.a
403ln -sf libdb_cxx-4.2.a libdb_cxx.a
404%endif
405%endif
406
407sed -i "s/old_library=''/old_library='libdb-4.2.a'/" libdb-4.2.la
408sed -i "s/old_library=''/old_library='libdb_cxx-4.2.a'/" libdb_cxx-4.2.la
409
410cd -
411
412cd $RPM_BUILD_ROOT%{_bindir}
413mv -f berkeley_db_svc berkeley_db_svc-4.2
414%{?with_default_db:ln -sf berkeley_db_svc-4.2 berkeley_db_svc}
415for F in db_*; do
416 Fver=$(echo $F|sed 's/db_/db4.2_/')
417 mv $F $Fver
418 %{?with_default_db:ln -sf $Fver $F}
419done
420cd -
421rm -f examples_c*/tags
422install -d $RPM_BUILD_ROOT%{_examplesdir}/db-%{version}
423cp -rf examples_c/* $RPM_BUILD_ROOT%{_examplesdir}/db-%{version}
424
425install -d $RPM_BUILD_ROOT%{_examplesdir}/db-cxx-%{version}
426cp -rf examples_cxx/* $RPM_BUILD_ROOT%{_examplesdir}/db-cxx-%{version}
427
428%if %{with java}
429install -d $RPM_BUILD_ROOT%{_examplesdir}/db-java-%{version}
430cp -rf examples_java/* $RPM_BUILD_ROOT%{_examplesdir}/db-java-%{version}
431%else
432%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/db-%{version}-docs/java
433%endif
434
435%clean
436rm -rf $RPM_BUILD_ROOT
437
438%post -p /sbin/ldconfig
439%postun -p /sbin/ldconfig
440
441%post tcl -p /sbin/ldconfig
442%postun tcl -p /sbin/ldconfig
443
444%post cxx -p /sbin/ldconfig
445%postun cxx -p /sbin/ldconfig
446
447%files
448%defattr(644,root,root,755)
449%doc LICENSE README
450%if %{with default_db}
451%attr(755,root,root) /%{_lib}/libdb-4.2.so
452%else
453%attr(755,root,root) %{_libdir}/libdb-4.2.so
454%endif
455%dir %{_docdir}/db-%{version}-docs
456%{_docdir}/db-%{version}-docs/sleepycat
457%{_docdir}/db-%{version}-docs/index.html
458
459%files devel
460%defattr(644,root,root,755)
461%{_libdir}/libdb-4.2.la
462%if %{with default_db}
463%attr(755,root,root) %{_libdir}/libdb-4.2.so
464%attr(755,root,root) %{_libdir}/libdb4.so
465%attr(755,root,root) %{_libdir}/libdb.so
466%attr(755,root,root) %{_libdir}/libndbm.so
467%{_libdir}/libdb4.la
468%{_libdir}/libdb.la
469%{_libdir}/libndbm.la
470%else
471%dir %{_includedir}
472%endif
473%{_includedir}/db.h
474%{_includedir}/db_185.h
475%{_docdir}/db-%{version}-docs/api_c
476%{_docdir}/db-%{version}-docs/images
477%{_docdir}/db-%{version}-docs/ref
478%{_examplesdir}/db-%{version}
479
480%if %{with static_libs}
481%files static
482%defattr(644,root,root,755)
483%{_libdir}/libdb-4.2.a
484%if %{with default_db}
485%{_libdir}/libdb4.a
486%{_libdir}/libdb.a
487%{_libdir}/libndbm.a
488%endif
489%endif
490
491%files cxx
492%defattr(644,root,root,755)
493%attr(755,root,root) %{_libdir}/libdb_cxx-4.2.so
494
495%files cxx-devel
496%defattr(644,root,root,755)
497%{_libdir}/libdb_cxx-4.2.la
498%if %{with default_db}
499%attr(755,root,root) %{_libdir}/libdb_cxx.so
500%{_libdir}/libdb_cxx.la
501%endif
502%{_includedir}/db_cxx.h
503%{_docdir}/db-%{version}-docs/api_cxx
504%{_examplesdir}/db-cxx-%{version}
505
506%if %{with static_libs}
507%files cxx-static
508%defattr(644,root,root,755)
509%{_libdir}/libdb_cxx-4.2.a
510%if %{with default_db}
511%{_libdir}/libdb_cxx.a
512%endif
513%endif
514
515%if %{with java}
516%files java
517%defattr(644,root,root,755)
518%attr(755,root,root) %{_libdir}/libdb_java-4.2.so
519%{_javadir}/db-4.2.jar
520%if %{with default_db}
521%{_javadir}/db.jar
522%endif
523
524%files java-devel
525%defattr(644,root,root,755)
526%{_libdir}/libdb_java-4.2.la
527%if %{with default_db}
528%attr(755,root,root) %{_libdir}/libdb_java.so
529%{_libdir}/libdb_java.la
530%endif
531%{_docdir}/db-%{version}-docs/java
532%{_examplesdir}/db-java-%{version}
533%endif
534
535%if %{with tcl}
536%files tcl
537%defattr(644,root,root,755)
538%attr(755,root,root) %{_libdir}/libdb_tcl-4.2.so
539
540%files tcl-devel
541%defattr(644,root,root,755)
542%{_libdir}/libdb_tcl-4.2.la
543%if %{with default_db}
544%attr(755,root,root) %{_libdir}/libdb_tcl.so
545%{_libdir}/libdb_tcl.la
546%endif
547%{_docdir}/db-%{version}-docs/api_tcl
548%endif
549
550%files utils
551%defattr(644,root,root,755)
552%attr(755,root,root) %{_bindir}/berkeley_db_svc-4.2
553%attr(755,root,root) %{_bindir}/db4.2_archive
554%attr(755,root,root) %{_bindir}/db4.2_checkpoint
555%attr(755,root,root) %{_bindir}/db4.2_deadlock
556%attr(755,root,root) %{_bindir}/db4.2_dump
557#%attr(755,root,root) %{_bindir}/db4.2_dump185
558%attr(755,root,root) %{_bindir}/db4.2_load
559%attr(755,root,root) %{_bindir}/db4.2_printlog
560%attr(755,root,root) %{_bindir}/db4.2_recover
561%attr(755,root,root) %{_bindir}/db4.2_stat
562%attr(755,root,root) %{_bindir}/db4.2_upgrade
563%attr(755,root,root) %{_bindir}/db4.2_verify
564%if %{with default_db}
565%attr(755,root,root) %{_bindir}/berkeley_db_svc
566%attr(755,root,root) %{_bindir}/db_archive
567%attr(755,root,root) %{_bindir}/db_checkpoint
568%attr(755,root,root) %{_bindir}/db_deadlock
569%attr(755,root,root) %{_bindir}/db_dump
570#%attr(755,root,root) %{_bindir}/db_dump185
571%attr(755,root,root) %{_bindir}/db_load
572%attr(755,root,root) %{_bindir}/db_printlog
573%attr(755,root,root) %{_bindir}/db_recover
574%attr(755,root,root) %{_bindir}/db_stat
575%attr(755,root,root) %{_bindir}/db_upgrade
576%attr(755,root,root) %{_bindir}/db_verify
577%endif
578%{_docdir}/db-%{version}-docs/utility
This page took 0.070948 seconds and 4 git commands to generate.