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