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