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