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