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