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