]> git.pld-linux.org Git - packages/db.git/blob - db.spec
- massive attack: no need for 755 for *.la
[packages/db.git] / db.spec
1 Summary:        BSD database library for C
2 Summary(pl):    Biblioteka C do obs³ugi baz Berkeley DB
3 Name:           db
4 Version:        4.1.24
5 Release:        5
6 License:        GPL
7 Group:          Libraries
8 Source0:        http://www.berkeleydb.com/update/snapshot/%{name}-%{version}.tar.gz
9 Patch0:         http://www.sleepycat.com/update/4.1.24/patch.4.1.24.1
10 Patch1:         http://www.sleepycat.com/update/4.1.24/patch.4.1.24.2
11 Patch2:         http://www.sleepycat.com/update/4.1.24/patch.4.1.24.3
12 Patch3:         http://www.sleepycat.com/update/4.1.24/patch.4.1.24.4
13 Patch4:         http://www.sleepycat.com/update/4.1.24/patch.4.1.24.5
14 Patch5:         http://www.sleepycat.com/update/4.1.24/patch.4.1.24.6
15 Patch6:         %{name}-o_direct.patch
16 URL:            http://www.berkeleydb.com/
17 %{?_with_java:BuildRequires:    jdk}
18 BuildRequires:  tcl-devel >= 8.3.2
19 Obsoletes:      db4
20 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
21
22 %description
23 The Berkeley Database (Berkeley DB) is a programmatic toolkit that
24 provides embedded database support for both traditional and
25 client/server applications. Berkeley DB is used by many applications,
26 including Python and Perl, so this should be installed on all systems.
27
28 %description -l pl
29 Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
30 zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
31 klient-serwer. Berkeley db jest u¿ywana wielu aplikacjach, w tym w
32 Pythonie i Perlu.
33
34 %package utils
35 Summary:        Command line tools for managing Berkeley DB databases
36 Summary(pl):    Narzêdzia do obs³ugi baz Berkeley DB z linii poleceñ
37 Group:          Applications/Databases
38 Requires:       %{name} = %{version}
39 Obsoletes:      db4-utils
40
41 %description utils
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 includes B+tree, Extended
45 Linear Hashing, Fixed and Variable-length record access methods,
46 transactions, locking, logging, shared memory caching and database
47 recovery. DB supports C, C++, Java and Perl APIs.
48
49 This package contains command line tools for managing Berkeley DB
50 databases.
51
52 %description utils -l pl
53 Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
54 zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
55 klient-serwer. Berkeley DB obs³ugje dostêp do bazy przez B-drzewa i
56 funkcje mieszaj±ce ze sta³± lub zmienn± wielko¶ci± rekordu,
57 transakcje, kroniki, pamiêæ dzielon± i odtwarzanie baz. Ma wsparcie
58 dla C, C++, Javy i Perla.
59
60 Ten pakiet zawiera narzêdzia do obs³ugi baz Berkeley DB z linii
61 poleceñ.
62
63 %package tcl
64 Summary:        Berkeley database library for TCL
65 Summary(pl):    Biblioteka baz danych Berkeley dla TCL
66 Group:          Development/Languages/Tcl
67 Requires:       tcl
68 Obsoletes:      db4-tcl
69
70 %description tcl
71 Berkeley database library for TCL.
72
73 %description tcl -l pl
74 Biblioteka baz danych Berkeley dla TCL.
75
76 %package cxx
77 Summary:        Berkeley database library for C++
78 Summary(pl):    Biblioteka baz danych Berkeley dla C++
79 Group:          Libraries
80 Obsoletes:      db4-cxx
81
82 %description cxx
83 Berkeley database library for C++.
84
85 %description cxx -l pl
86 Biblioteka baz danych Berkeley dla C++.
87
88 %package java
89 Summary:        Berkeley database library for Java
90 Summary(pl):    Biblioteka baz danych Berkeley dla Javy
91 Group:          Libraries
92
93 %description java
94 Berkeley database library for Java.
95
96 %description java -l pl
97 Biblioteka baz danych Berkeley dla Javy.
98
99 %package devel
100 Summary:        Header files for Berkeley database library
101 Summary(pl):    Pliki nag³ówkowe do biblioteki Berkeley Database
102 Group:          Development/Libraries
103 Requires:       %{name} = %{version}
104 Obsoletes:      db4-devel
105 Obsoletes:      db3-devel
106
107 %description devel
108 The Berkeley Database (Berkeley DB) is a programmatic toolkit that
109 provides embedded database support for both traditional and
110 client/server applications. Berkeley DB includes B+tree, Extended
111 Linear Hashing, Fixed and Variable-length record access methods,
112 transactions, locking, logging, shared memory caching and database
113 recovery. DB supports C, C++, Java and Perl APIs.
114
115 This package contains the header files, libraries, and documentation
116 for building programs which use Berkeley DB.
117
118 %description devel -l pl
119 Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
120 zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
121 klient-serwer. Berkeley DB obs³ugje dostêp do bazy przez B-drzewa i
122 funkcje mieszaj±ce ze sta³± lub zmienn± wielko¶ci± rekordu,
123 transakcje, kroniki, pamiêæ dzielon± i odtwarzanie baz. Ma wsparcie
124 dla C, C++, Javy i Perla.
125
126 Ten pakiet zawiera pliki nag³ówkowe i dokumentacjê do budowania
127 programów u¿ywaj±cych Berkeley DB.
128
129 %package static
130 Summary:        Static libraries for Berkeley database library
131 Summary(pl):    Statyczne biblioteki Berkeley Database
132 Group:          Development/Libraries
133 Requires:       %{name}-devel = %{version}
134 Obsoletes:      db4-static
135 Obsoletes:      db3-static
136
137 %description static
138 The Berkeley Database (Berkeley DB) is a programmatic toolkit that
139 provides embedded database support for both traditional and
140 client/server applications. Berkeley DB includes B+tree, Extended
141 Linear Hashing, Fixed and Variable-length record access methods,
142 transactions, locking, logging, shared memory caching and database
143 recovery. DB supports C, C++, Java and Perl APIs.
144
145 This package contains the static libraries for building programs which
146 use Berkeley DB.
147
148 %description static -l pl
149 Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych
150 zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i
151 klient-serwer. Berkeley DB obs³ugje dostêp do bazy przez B-drzewa i
152 funkcje mieszaj±ce ze sta³± lub zmienn± wielko¶ci± rekordu,
153 transakcje, kroniki, pamiêæ dzielon± i odtwarzanie baz. Ma wsparcie
154 dla C, C++, Javy i Perla.
155
156 Ten pakiet zawiera statyczne biblioteki do budowania programów
157 u¿ywaj±cych Berkeley DB.
158
159 %prep
160 %setup -q
161 %patch0 -p0
162 %patch1 -p0
163 %patch2 -p0
164 %patch3 -p0
165 %patch4 -p0
166 %patch5 -p0
167 %patch6 -p1
168
169
170 %build
171 cd dist
172 sh s_config
173 cd ..
174
175 cp -a build_unix build_unix.static
176
177 cd build_unix.static
178
179 CC="%{__cc}"
180 CXX="%{__cxx}"
181 CFLAGS="%{rpmcflags} -fno-rtti -fno-implicit-templates"
182 CXXFLAGS="%{rpmcflags} -fno-rtti -fno-implicit-templates"
183 export CC CXX CFLAGS CXXFLAGS
184
185 ../dist/configure \
186         --prefix=%{_prefix} \
187         --enable-compat185 \
188         --disable-shared \
189         --enable-static \
190         --enable-rpc \
191         --enable-cxx
192
193 # (temporarily?) disabled because of compilation errors:
194 #       --enable-dump185 \
195
196 %{__make} library_build
197
198 cd ../build_unix
199
200 ../dist/configure \
201         --prefix=%{_prefix} \
202         --enable-compat185 \
203         --enable-shared \
204         --disable-static \
205         --enable-rpc \
206         --enable-cxx \
207         --enable-tcl \
208         --with-tcl=/usr/lib \
209         %{?_with_java:--enable-java}
210
211 %{__make} library_build TCFLAGS='-I$(builddir) -I%{_includedir}'
212
213 %install
214 rm -rf $RPM_BUILD_ROOT
215 install -d $RPM_BUILD_ROOT{%{_includedir},%{_libdir},%{_bindir},/lib}
216
217 cd build_unix.static
218
219 %{__make} library_install \
220         prefix=$RPM_BUILD_ROOT%{_prefix}
221
222 cd ../build_unix
223
224 %{__make} library_install \
225         prefix=$RPM_BUILD_ROOT%{_prefix} \
226         includedir=$RPM_BUILD_ROOT%{_includedir} \
227         LIB_INSTALL_FILE_LIST=""
228
229 (cd $RPM_BUILD_ROOT%{_libdir}
230 ln -sf libdb-4.1.so libdb4.so
231 ln -sf libdb-4.1.so libndbm.so
232 ln -sf libdb-4.1.la libdb.la
233 ln -sf libdb-4.1.la libdb4.la
234 ln -sf libdb-4.1.la libndbm.la
235 ln -sf libdb_tcl-4.1.la libdb_tcl.la
236 ln -sf libdb_cxx-4.1.la libdb_cxx.la
237 mv -f libdb.a libdb-4.1.a
238 ln -sf libdb-4.1.a libdb.a
239 ln -sf libdb-4.1.a libdb4.a
240 ln -sf libdb-4.1.a libndbm.a
241 mv -f libdb_cxx.a libdb_cxx-4.1.a
242 ln -sf libdb_cxx-4.1.a libdb_cxx.a
243
244 mv -f libdb-4.1.la libdb-4.1.la.tmp
245 mv -f libdb_cxx-4.1.la libdb_cxx-4.1.la.tmp
246 sed -e "s/old_library=''/old_library='libdb-4.1.a'/" libdb-4.1.la.tmp > libdb-4.1.la
247 sed -e "s/old_library=''/old_library='libdb_cxx-4.1.a'/" libdb_cxx-4.1.la.tmp > libdb_cxx-4.1.la
248 rm -f libdb*.la.tmp
249 )
250
251 cd ..
252 #rm -rf examples_java
253 #cp -a java/src/com/sleepycat/examples examples_java
254
255 %clean
256 rm -rf $RPM_BUILD_ROOT
257
258 %post   -p /sbin/ldconfig
259 %postun -p /sbin/ldconfig
260
261 %post   tcl -p /sbin/ldconfig
262 %postun tcl -p /sbin/ldconfig
263
264 %post   cxx -p /sbin/ldconfig
265 %postun cxx -p /sbin/ldconfig
266
267 %files
268 %defattr(644,root,root,755)
269 %doc LICENSE README
270 #%attr(755,root,root) /lib/libdb-*.so
271 %attr(755,root,root) %{_libdir}/libdb-*.so
272
273 %files utils
274 %defattr(644,root,root,755)
275 %doc docs/utility/*
276 %attr(755,root,root) %{_bindir}/berkeley_db_svc
277 %attr(755,root,root) %{_bindir}/db*_archive
278 %attr(755,root,root) %{_bindir}/db*_checkpoint
279 %attr(755,root,root) %{_bindir}/db*_deadlock
280 %attr(755,root,root) %{_bindir}/db*_dump
281 #%attr(755,root,root) %{_bindir}/db*_dump185
282 %attr(755,root,root) %{_bindir}/db*_load
283 %attr(755,root,root) %{_bindir}/db*_printlog
284 %attr(755,root,root) %{_bindir}/db*_recover
285 %attr(755,root,root) %{_bindir}/db*_stat
286 %attr(755,root,root) %{_bindir}/db*_upgrade
287 %attr(755,root,root) %{_bindir}/db*_verify
288
289 %files cxx
290 %defattr(644,root,root,755)
291 %attr(755,root,root) %{_libdir}/libdb_cxx-*.so
292
293 %if %{?_with_java:1}%{!?_with_java:0}
294 %files java
295 %defattr(644,root,root,755)
296 %attr(755,root,root) %{_libdir}/libdb_java*.so
297 %attr(644,root,root) %{_libdir}/db.jar
298 %endif
299
300 %files tcl
301 %defattr(644,root,root,755)
302 %attr(755,root,root) %{_libdir}/libdb_tcl-*.so
303
304 %files devel
305 %defattr(644,root,root,755)
306 %doc docs/{api*,ref,index.html,sleepycat,images} examples_c*
307 %{_libdir}/libdb*.la
308 %{_libdir}/libndbm.la
309 %attr(755,root,root) %{_libdir}/libdb.so
310 %attr(755,root,root) %{_libdir}/libdb4.so
311 %attr(755,root,root) %{_libdir}/libndbm.so
312 %attr(755,root,root) %{_libdir}/libdb_tcl.so
313 %attr(755,root,root) %{_libdir}/libdb_cxx.so
314 %{_includedir}/*
315
316 %files static
317 %defattr(644,root,root,755)
318 %{_libdir}/lib*.a
This page took 0.081648 seconds and 3 git commands to generate.