]> git.pld-linux.org Git - packages/db4.7.git/blame_incremental - db4.7.spec
drop (incomplete) epoch 0
[packages/db4.7.git] / db4.7.spec
... / ...
CommitLineData
1#
2# Conditional build:
3%bcond_without apidocs # do not build and package API docs
4%bcond_without java # don't build Java bindings
5%bcond_without tcl # don't build Tcl bindings
6%bcond_without static_libs # don't build static libraries
7%bcond_with default_db # use this db as default system db [Th uses DB 5.3]
8
9%define libver 4.7
10%define ver %{libver}.25
11%define patchlevel 4
12%{?with_java:%include /usr/lib/rpm/macros.java}
13Summary: Berkeley DB database library for C
14Summary(pl.UTF-8): Biblioteka C do obsługi baz Berkeley DB
15Name: db4.7
16Version: %{ver}.%{patchlevel}
17Release: 8
18License: 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: ec2b87e833779681a0c3a814aa71359e
23%patchset_source -f http://download.oracle.com/berkeley-db/patches/db/%{ver}/patch.%{ver}.%g 1 %{patchlevel}
24Patch0: %{name}-format-security.patch
25URL: http://www.oracle.com/technetwork/database/berkeleydb/downloads/index.html
26BuildRequires: automake
27BuildRequires: ed
28%if %{with java}
29BuildRequires: jdk
30BuildRequires: rpm-javaprov
31%endif
32BuildRequires: libstdc++-devel
33BuildRequires: rpmbuild(macros) >= 1.426
34BuildRequires: sed >= 4.0
35%{?with_tcl:BuildRequires: tcl-devel >= 8.4.0}
36Requires: uname(release) >= 2.6.0
37%if %{with default_db}
38Provides: db = %{libver}
39Provides: db = %{version}-%{release}
40Obsoletes: db4
41%endif
42BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
43
44%if %{without default_db}
45%define _includedir %{_prefix}/include/db%{libver}
46%endif
47
48%description
49The Berkeley Database (Berkeley DB) is a programmatic toolkit that
50provides embedded database support for both traditional and
51client/server applications. Berkeley DB is used by many applications,
52including Python and Perl, so this should be installed on all systems.
53
54%description -l pl.UTF-8
55Berkeley Database (Berkeley DB) to zestaw narzędzi programistycznych
56zapewniających obsługę baz danych w aplikacjach tradycyjnych jak i
57klient-serwer. Berkeley db jest używana w wielu aplikacjach, w tym w
58Pythonie i Perlu.
59
60%package devel
61Summary: Header files for Berkeley database library
62Summary(pl.UTF-8): Pliki nagłówkowe do biblioteki Berkeley Database
63Group: Development/Libraries
64Requires: %{name} = %{version}-%{release}
65%if %{with default_db}
66Provides: db-devel = %{version}-%{release}
67Obsoletes: db-devel
68Obsoletes: db3-devel
69Obsoletes: db4-devel
70%endif
71
72%description devel
73The Berkeley Database (Berkeley DB) is a programmatic toolkit that
74provides embedded database support for both traditional and
75client/server applications. Berkeley DB includes B+tree, Extended
76Linear Hashing, Fixed and Variable-length record access methods,
77transactions, locking, logging, shared memory caching and database
78recovery. DB supports C, C++, Java and Perl APIs.
79
80This package contains the header files, libraries, and documentation
81for building programs which use Berkeley DB.
82
83%description devel -l pl.UTF-8
84Berkeley Database (Berkeley DB) to zestaw narzędzi programistycznych
85zapewniających obsługę baz danych w aplikacjach tradycyjnych jak i
86klient-serwer. Berkeley DB obsługuje dostęp do bazy przez B-drzewa i
87funkcje mieszające ze stałą lub zmienną wielkością rekordu,
88transakcje, kroniki, pamięć dzieloną i odtwarzanie baz. Ma wsparcie
89dla C, C++, Javy i Perla.
90
91Ten pakiet zawiera pliki nagłówkowe i dokumentację do budowania
92programów używających Berkeley DB.
93
94%package static
95Summary: Static libraries for Berkeley database library
96Summary(pl.UTF-8): Statyczne biblioteki Berkeley Database
97Group: Development/Libraries
98Requires: %{name}-devel = %{version}-%{release}
99%if %{with default_db}
100Provides: db-static = %{version}-%{release}
101Obsoletes: db-static
102Obsoletes: db3-static
103Obsoletes: db4-static
104%endif
105
106%description static
107The Berkeley Database (Berkeley DB) is a programmatic toolkit that
108provides embedded database support for both traditional and
109client/server applications. Berkeley DB includes B+tree, Extended
110Linear Hashing, Fixed and Variable-length record access methods,
111transactions, locking, logging, shared memory caching and database
112recovery. DB supports C, C++, Java and Perl APIs.
113
114This package contains the static libraries for building programs which
115use Berkeley DB.
116
117%description static -l pl.UTF-8
118Berkeley Database (Berkeley DB) to zestaw narzędzi programistycznych
119zapewniających obsługę baz danych w aplikacjach tradycyjnych jak i
120klient-serwer. Berkeley DB obsługuje dostęp do bazy przez B-drzewa i
121funkcje mieszające ze stałą lub zmienną wielkością rekordu,
122transakcje, kroniki, pamięć dzieloną i odtwarzanie baz. Ma wsparcie
123dla C, C++, Javy i Perla.
124
125Ten pakiet zawiera statyczne biblioteki do budowania programów
126używających Berkeley DB.
127
128%package apidocs
129Summary: Berkeley database library API documentation
130Summary(pl.UTF-8): Dokumentacja API biblioteki baz danych Berkeley
131Group: Documentation
132
133%description apidocs
134API and internal documentation for Berkeley database library.
135
136%description apidocs -l pl.UTF-8
137Dokumentacja API i wewnętrzna do biblioteki baz danych Berkeley.
138
139%package cxx
140Summary: Berkeley database library for C++
141Summary(pl.UTF-8): Biblioteka baz danych Berkeley dla C++
142Group: Libraries
143%if %{with default_db}
144Provides: db-cxx = %{version}-%{release}
145Obsoletes: db4-cxx
146%endif
147
148%description cxx
149Berkeley database library for C++.
150
151%description cxx -l pl.UTF-8
152Biblioteka baz danych Berkeley dla C++.
153
154%package cxx-devel
155Summary: Header files for db-cxx library
156Summary(pl.UTF-8): Pliki nagłówkowe biblioteki db-cxx
157Group: Development/Libraries
158Requires: %{name}-cxx = %{version}-%{release}
159Requires: %{name}-devel = %{version}-%{release}
160%if %{with default_db}
161Provides: db-cxx-devel = %{version}-%{release}
162Obsoletes: db-cxx-devel
163%endif
164Conflicts: db-devel < 4.1.25-3
165
166%description cxx-devel
167Header files for db-cxx library.
168
169%description cxx-devel -l pl.UTF-8
170Pliki nagłówkowe biblioteki db-cxx.
171
172%package cxx-static
173Summary: Static version of db-cxx library
174Summary(pl.UTF-8): Statyczna wersja biblioteki db-cxx
175Group: Development/Libraries
176Requires: %{name}-cxx-devel = %{version}-%{release}
177%if %{with default_db}
178Provides: db-cxx-static = %{version}-%{release}
179Obsoletes: db-cxx-static
180%endif
181Conflicts: db-static < 4.2.50-1
182
183%description cxx-static
184Static version of db-cxx library.
185
186%description cxx-static -l pl.UTF-8
187Statyczna wersja biblioteki db-cxx.
188
189%package java
190Summary: Berkeley database library for Java
191Summary(pl.UTF-8): Biblioteka baz danych Berkeley dla Javy
192Group: Libraries
193Requires: jpackage-utils
194%if %{with default_db}
195Provides: db-java = %{version}-%{release}
196Obsoletes: db-java
197%endif
198
199%description java
200Berkeley database library for Java.
201
202%description java -l pl.UTF-8
203Biblioteka baz danych Berkeley dla Javy.
204
205%package java-devel
206Summary: Development files for db-java library
207Summary(pl.UTF-8): Pliki programistyczne biblioteki db-java
208Group: Development/Languages/Java
209Requires: %{name}-java = %{version}-%{release}
210%if %{with default_db}
211Provides: db-java-devel = %{version}-%{release}
212Obsoletes: db-java-devel
213%endif
214Conflicts: db-devel < 4.1.25-3
215
216%description java-devel
217Development files for db-java library.
218
219%description java-devel -l pl.UTF-8
220Pliki programistyczne biblioteki db-java.
221
222%package tcl
223Summary: Berkeley database library for Tcl
224Summary(pl.UTF-8): Biblioteka baz danych Berkeley dla Tcl
225Group: Development/Languages/Tcl
226Requires: tcl
227%if %{with default_db}
228Provides: db-tcl = %{version}-%{release}
229Obsoletes: db4-tcl
230%endif
231
232%description tcl
233Berkeley database library for Tcl.
234
235%description tcl -l pl.UTF-8
236Biblioteka baz danych Berkeley dla Tcl.
237
238%package tcl-devel
239Summary: Development files for db-tcl library
240Summary(pl.UTF-8): Pliki programistyczne biblioteki db-tcl
241Group: Development/Languages/Tcl
242Requires: %{name}-tcl = %{version}-%{release}
243%if %{with default_db}
244Provides: db-tcl-devel = %{version}-%{release}
245Obsoletes: db-tcl-devel
246%endif
247Conflicts: db-devel < 4.1.25-3
248
249%description tcl-devel
250Development files for db-tcl library.
251
252%description tcl-devel -l pl.UTF-8
253Pliki programistyczne biblioteki db-tcl.
254
255%package utils
256Summary: Command line tools for managing Berkeley DB databases
257Summary(pl.UTF-8): Narzędzia do obsługi baz Berkeley DB z linii poleceń
258Group: Applications/Databases
259Requires: %{name} = %{version}-%{release}
260%if %{with default_db}
261Provides: db-utils = %{version}-%{release}
262Obsoletes: db-utils
263Obsoletes: db3-utils
264Obsoletes: db4-utils
265%endif
266
267%description utils
268The Berkeley Database (Berkeley DB) is a programmatic toolkit that
269provides embedded database support for both traditional and
270client/server applications. Berkeley DB includes B+tree, Extended
271Linear Hashing, Fixed and Variable-length record access methods,
272transactions, locking, logging, shared memory caching and database
273recovery. DB supports C, C++, Java and Perl APIs.
274
275This package contains command line tools for managing Berkeley DB
276databases.
277
278%description utils -l pl.UTF-8
279Berkeley Database (Berkeley DB) to zestaw narzędzi programistycznych
280zapewniających obsługę baz danych w aplikacjach tradycyjnych jak i
281klient-serwer. Berkeley DB obsługuje dostęp do bazy przez B-drzewa i
282funkcje mieszające ze stałą lub zmienną wielkością rekordu,
283transakcje, kroniki, pamięć dzieloną i odtwarzanie baz. Ma wsparcie
284dla C, C++, Javy i Perla.
285
286Ten pakiet zawiera narzędzia do obsługi baz Berkeley DB z linii
287poleceń.
288
289%prep
290%setup -q -n db-%{ver}
291# official patches
292%patchset_patch 1 %{patchlevel}
293
294%patch0 -p1
295
296%build
297cp -f /usr/share/automake/config.sub dist
298
299JAVACFLAGS="-source 1.5 -target 1.5"
300export JAVACFLAGS
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 --enable-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 --enable-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-%{libver}.so $RPM_BUILD_ROOT/%{_lib}
371%endif
372
373cd $RPM_BUILD_ROOT%{_libdir}
374%if %{with static_libs}
375mv -f libdb.a libdb-%{libver}.a
376mv -f libdb_cxx.a libdb_cxx-%{libver}.a
377%endif
378%if %{with java}
379mv -f $RPM_BUILD_ROOT%{_libdir}/db.jar $RPM_BUILD_ROOT%{_javadir}/db-%{libver}.jar
380%endif
381%if %{with default_db}
382ln -sf /%{_lib}/libdb-%{libver}.so libdb.so
383ln -sf /%{_lib}/libdb-%{libver}.so libdb4.so
384ln -sf /%{_lib}/libdb-%{libver}.so libdb-%{libver}.so
385ln -sf /%{_lib}/libdb-%{libver}.so libndbm.so
386ln -sf libdb-%{libver}.la libdb.la
387ln -sf libdb-%{libver}.la libdb4.la
388ln -sf libdb-%{libver}.la libndbm.la
389ln -sf libdb_cxx-%{libver}.so libdb_cxx.so
390ln -sf libdb_cxx-%{libver}.la libdb_cxx.la
391%if %{with java}
392ln -sf libdb_java-%{libver}.la libdb_java.la
393ln -sf db-%{libver}.jar $RPM_BUILD_ROOT%{_javadir}/db.jar
394%endif
395%if %{with tcl}
396ln -sf libdb_tcl-%{libver}.so libdb_tcl.so
397ln -sf libdb_tcl-%{libver}.la libdb_tcl.la
398%endif
399%if %{with static_libs}
400ln -sf libdb-%{libver}.a libdb.a
401ln -sf libdb-%{libver}.a libdb4.a
402ln -sf libdb-%{libver}.a libndbm.a
403ln -sf libdb_cxx-%{libver}.a libdb_cxx.a
404%endif
405%endif
406
407sed -i "s/old_library=''/old_library='libdb-%{libver}.a'/" libdb-%{libver}.la
408sed -i "s/old_library=''/old_library='libdb_cxx-%{libver}.a'/" libdb_cxx-%{libver}.la
409
410cd -
411
412cd $RPM_BUILD_ROOT%{_bindir}
413mv -f berkeley_db_svc berkeley_db_svc-%{libver}
414%{?with_default_db:ln -sf berkeley_db_svc-%{libver} berkeley_db_svc}
415for F in db_*; do
416 Fver=$(echo $F|sed 's/db_/db%{libver}_/')
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%endif
432
433# in %doc
434%{__rm} $RPM_BUILD_ROOT%{_docdir}/db-%{version}-docs/{index.html,license/license_db.html}
435
436%clean
437rm -rf $RPM_BUILD_ROOT
438
439%post -p /sbin/ldconfig
440%postun -p /sbin/ldconfig
441
442%post tcl -p /sbin/ldconfig
443%postun tcl -p /sbin/ldconfig
444
445%post cxx -p /sbin/ldconfig
446%postun cxx -p /sbin/ldconfig
447
448%files
449%defattr(644,root,root,755)
450%doc LICENSE README docs/index.html docs/license
451%if %{with default_db}
452%attr(755,root,root) /%{_lib}/libdb-%{libver}.so
453%else
454%attr(755,root,root) %{_libdir}/libdb-%{libver}.so
455%endif
456
457%files devel
458%defattr(644,root,root,755)
459%{_libdir}/libdb-%{libver}.la
460%if %{with default_db}
461%attr(755,root,root) %{_libdir}/libdb-%{libver}.so
462%attr(755,root,root) %{_libdir}/libdb4.so
463%attr(755,root,root) %{_libdir}/libdb.so
464%attr(755,root,root) %{_libdir}/libndbm.so
465%{_libdir}/libdb4.la
466%{_libdir}/libdb.la
467%{_libdir}/libndbm.la
468%else
469%dir %{_includedir}
470%endif
471%{_includedir}/db.h
472%{_includedir}/db_185.h
473%{_examplesdir}/db-%{version}
474
475%if %{with static_libs}
476%files static
477%defattr(644,root,root,755)
478%{_libdir}/libdb-%{libver}.a
479%if %{with default_db}
480%{_libdir}/libdb4.a
481%{_libdir}/libdb.a
482%{_libdir}/libndbm.a
483%endif
484%endif
485
486%if %{with apidocs}
487%files apidocs
488%defattr(644,root,root,755)
489%dir %{_docdir}/db-%{version}-docs
490%{_docdir}/db-%{version}-docs/api_c
491%{_docdir}/db-%{version}-docs/articles
492%dir %{_docdir}/db-%{version}-docs/gsg
493%{_docdir}/db-%{version}-docs/gsg/C
494%dir %{_docdir}/db-%{version}-docs/gsg_txn
495%{_docdir}/db-%{version}-docs/gsg_txn/C
496%dir %{_docdir}/db-%{version}-docs/gsg_db_rep
497%{_docdir}/db-%{version}-docs/gsg_db_rep/C
498%{_docdir}/db-%{version}-docs/images
499%{_docdir}/db-%{version}-docs/porting
500%{_docdir}/db-%{version}-docs/ref
501%endif
502
503%files cxx
504%defattr(644,root,root,755)
505%attr(755,root,root) %{_libdir}/libdb_cxx-%{libver}.so
506
507%files cxx-devel
508%defattr(644,root,root,755)
509%{_libdir}/libdb_cxx-%{libver}.la
510%if %{with default_db}
511%attr(755,root,root) %{_libdir}/libdb_cxx.so
512%{_libdir}/libdb_cxx.la
513%endif
514%{_includedir}/db_cxx.h
515%{_docdir}/db-%{version}-docs/api_cxx
516%{_docdir}/db-%{version}-docs/gsg/CXX
517%{_docdir}/db-%{version}-docs/gsg_txn/CXX
518%{_docdir}/db-%{version}-docs/gsg_db_rep/CXX
519%{_examplesdir}/db-cxx-%{version}
520
521%if %{with static_libs}
522%files cxx-static
523%defattr(644,root,root,755)
524%{_libdir}/libdb_cxx-%{libver}.a
525%if %{with default_db}
526%{_libdir}/libdb_cxx.a
527%endif
528%endif
529
530%if %{with java}
531%files java
532%defattr(644,root,root,755)
533%attr(755,root,root) %{_libdir}/libdb_java-%{libver}.so
534%{_javadir}/db-%{libver}.jar
535%if %{with default_db}
536%{_javadir}/db.jar
537%endif
538
539%files java-devel
540%defattr(644,root,root,755)
541%{_libdir}/libdb_java-%{libver}.la
542%if %{with default_db}
543%attr(755,root,root) %{_libdir}/libdb_java.so
544%{_libdir}/libdb_java.la
545%endif
546%{_docdir}/db-%{version}-docs/collections
547%{_docdir}/db-%{version}-docs/gsg/JAVA
548%{_docdir}/db-%{version}-docs/gsg_txn/JAVA
549%{_docdir}/db-%{version}-docs/gsg_db_rep/JAVA
550%{_docdir}/db-%{version}-docs/java
551%{_examplesdir}/db-java-%{version}
552%endif
553
554%if %{with tcl}
555%files tcl
556%defattr(644,root,root,755)
557%attr(755,root,root) %{_libdir}/libdb_tcl-%{libver}.so
558
559%files tcl-devel
560%defattr(644,root,root,755)
561%{_libdir}/libdb_tcl-%{libver}.la
562%if %{with default_db}
563%attr(755,root,root) %{_libdir}/libdb_tcl.so
564%{_libdir}/libdb_tcl.la
565%endif
566%{_docdir}/db-%{version}-docs/api_tcl
567%endif
568
569%files utils
570%defattr(644,root,root,755)
571%attr(755,root,root) %{_bindir}/berkeley_db_svc-%{libver}
572%attr(755,root,root) %{_bindir}/db%{libver}_archive
573%attr(755,root,root) %{_bindir}/db%{libver}_checkpoint
574%attr(755,root,root) %{_bindir}/db%{libver}_codegen
575%attr(755,root,root) %{_bindir}/db%{libver}_deadlock
576%attr(755,root,root) %{_bindir}/db%{libver}_dump
577#%attr(755,root,root) %{_bindir}/db%{libver}_dump185
578%attr(755,root,root) %{_bindir}/db%{libver}_hotbackup
579%attr(755,root,root) %{_bindir}/db%{libver}_load
580%attr(755,root,root) %{_bindir}/db%{libver}_printlog
581%attr(755,root,root) %{_bindir}/db%{libver}_recover
582%attr(755,root,root) %{_bindir}/db%{libver}_stat
583%attr(755,root,root) %{_bindir}/db%{libver}_upgrade
584%attr(755,root,root) %{_bindir}/db%{libver}_verify
585%if %{with default_db}
586%attr(755,root,root) %{_bindir}/berkeley_db_svc
587%attr(755,root,root) %{_bindir}/db_archive
588%attr(755,root,root) %{_bindir}/db_checkpoint
589%attr(755,root,root) %{_bindir}/db_codegen
590%attr(755,root,root) %{_bindir}/db_deadlock
591%attr(755,root,root) %{_bindir}/db_dump
592#%attr(755,root,root) %{_bindir}/db_dump185
593%attr(755,root,root) %{_bindir}/db_hotbackup
594%attr(755,root,root) %{_bindir}/db_load
595%attr(755,root,root) %{_bindir}/db_printlog
596%attr(755,root,root) %{_bindir}/db_recover
597%attr(755,root,root) %{_bindir}/db_stat
598%attr(755,root,root) %{_bindir}/db_upgrade
599%attr(755,root,root) %{_bindir}/db_verify
600%endif
601%dir %{_docdir}/db-%{version}-docs
602%{_docdir}/db-%{version}-docs/utility
This page took 0.080928 seconds and 4 git commands to generate.