X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=db.spec;h=6fe1ae00ba31400eefeaf15f051932da7a6a7d97;hb=735ee68e3e7b925827646e6d38f830ff0f23e54b;hp=323a839143e24638f6d55a3183116c7db36ded9c;hpb=240ad277fc78528b653fa35a0b16fdbf66666635;p=packages%2Fdb.git diff --git a/db.spec b/db.spec index 323a839..6fe1ae0 100644 --- a/db.spec +++ b/db.spec @@ -1,22 +1,28 @@ +# +# Conditional build: +# _with_java - build db-java (required for openoffice) +# Summary: BSD database library for C Summary(pl): Biblioteka C do obs³ugi baz Berkeley DB Name: db -Version: 4.0.14 -Release: 3.2 -License: GPL +Version: 4.1.25 +Release: 4 +License: BSD Group: Libraries -Source0: http://www.berkeleydb.com/update/snapshot/%{name}-%{version}.tar.gz -#Patch0: %{name}-static.patch -#Patch1: %{name}-linux.patch -#Patch2: %{name}-jbj.patch -Patch0: %{name}-rpm.patch -URL: http://www.berkeleydb.com/ -#BuildRequires: glibc-static -%{?_with_java:BuildRequires: java} +# alternative site (sometimes working): http://www.berkeleydb.com/ +Source0: http://www.sleepycat.com/update/snapshot/%{name}-%{version}.tar.gz +# Source0-md5: df71961002b552c0e72c6e4e358f27e1 +Patch0: %{name}-o_direct.patch +Patch1: http://www.sleepycat.com/update/4.1.25/patch.4.1.25.1 +URL: http://www.sleepycat.com/ +BuildRequires: autoconf +BuildRequires: ed +%{?_with_java:BuildRequires: gcc-java} +BuildRequires: libstdc++-devel BuildRequires: tcl-devel >= 8.3.2 +Obsoletes: db4 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) - %description The Berkeley Database (Berkeley DB) is a programmatic toolkit that provides embedded database support for both traditional and @@ -26,16 +32,18 @@ including Python and Perl, so this should be installed on all systems. %description -l pl Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i -klient-serwer. Berkeley db jest u¿ywana wielu aplikacjach, w tym w +klient-serwer. Berkeley db jest u¿ywana w wielu aplikacjach, w tym w Pythonie i Perlu. -%package utils -Summary: Command line tools for managing Berkeley DB databases -Summary(pl): Narzêdzia do obs³ugi baz Berkeley DB z linii poleceñ -Group: Applications/Databases +%package devel +Summary: Header files for Berkeley database library +Summary(pl): Pliki nag³ówkowe do biblioteki Berkeley Database +Group: Development/Libraries Requires: %{name} = %{version} +Obsoletes: db3-devel +Obsoletes: db4-devel -%description utils +%description devel The Berkeley Database (Berkeley DB) is a programmatic toolkit that provides embedded database support for both traditional and client/server applications. Berkeley DB includes B+tree, Extended @@ -43,10 +51,10 @@ Linear Hashing, Fixed and Variable-length record access methods, transactions, locking, logging, shared memory caching and database recovery. DB supports C, C++, Java and Perl APIs. -This package contains command line tools for managing Berkeley DB -databases. +This package contains the header files, libraries, and documentation +for building programs which use Berkeley DB. -%description utils -l pl +%description devel -l pl Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i klient-serwer. Berkeley DB obs³ugje dostêp do bazy przez B-drzewa i @@ -54,25 +62,44 @@ funkcje mieszaj transakcje, kroniki, pamiêæ dzielon± i odtwarzanie baz. Ma wsparcie dla C, C++, Javy i Perla. -Ten pakiet zawiera narzêdzia do obs³ugi baz Berkeley DB z linii -poleceñ. +Ten pakiet zawiera pliki nag³ówkowe i dokumentacjê do budowania +programów u¿ywaj±cych Berkeley DB. -%package tcl -Summary: Berkeley database library for TCL -Summary(pl): Biblioteka baz danych Berkeley dla TCL -Group: Development/Languages/Tcl -Requires: tcl +%package static +Summary: Static libraries for Berkeley database library +Summary(pl): Statyczne biblioteki Berkeley Database +Group: Development/Libraries +Requires: %{name}-devel = %{version} +Obsoletes: db3-static +Obsoletes: db4-static -%description tcl -Berkeley database library for TCL. +%description static +The Berkeley Database (Berkeley DB) is a programmatic toolkit that +provides embedded database support for both traditional and +client/server applications. Berkeley DB includes B+tree, Extended +Linear Hashing, Fixed and Variable-length record access methods, +transactions, locking, logging, shared memory caching and database +recovery. DB supports C, C++, Java and Perl APIs. -%description tcl -l pl -Biblioteka baz danych Berkeley dla TCL. +This package contains the static libraries for building programs which +use Berkeley DB. + +%description static -l pl +Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych +zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i +klient-serwer. Berkeley DB obs³ugje dostêp do bazy przez B-drzewa i +funkcje mieszaj±ce ze sta³± lub zmienn± wielko¶ci± rekordu, +transakcje, kroniki, pamiêæ dzielon± i odtwarzanie baz. Ma wsparcie +dla C, C++, Javy i Perla. + +Ten pakiet zawiera statyczne biblioteki do budowania programów +u¿ywaj±cych Berkeley DB. %package cxx Summary: Berkeley database library for C++ Summary(pl): Biblioteka baz danych Berkeley dla C++ Group: Libraries +Obsoletes: db4-cxx %description cxx Berkeley database library for C++. @@ -80,52 +107,68 @@ Berkeley database library for C++. %description cxx -l pl Biblioteka baz danych Berkeley dla C++. +%package cxx-devel +Summary: Berkeley database library for C++ +Summary(pl): Biblioteka baz danych Berkeley dla C++ +Group: Libraries +Requires: %{name}-cxx = %{version} +Requires: %{name}-devel = %{version} +Obsoletes: db4-cxx +Conflicts: db-devel < 4.1.25-3 + +%description cxx-devel +Berkeley database library for C++. + +%description cxx-devel -l pl +Biblioteka baz danych Berkeley dla C++. + %package java Summary: Berkeley database library for Java -Summary(pl): Biblioteka baz danych Berkeley dla Java +Summary(pl): Biblioteka baz danych Berkeley dla Javy Group: Libraries %description java Berkeley database library for Java. %description java -l pl -Biblioteka baz danych Berkeley dla Java. +Biblioteka baz danych Berkeley dla Javy. -%package devel -Summary: Header files for Berkeley database library -Summary(pl): Pliki nag³ówkowe do biblioteki Berkeley Database -Group: Development/Libraries -Requires: %{name} = %{version} +%package tcl +Summary: Berkeley database library for TCL +Summary(pl): Biblioteka baz danych Berkeley dla TCL +Group: Development/Languages/Tcl +Requires: tcl +Obsoletes: db4-tcl -%description devel -The Berkeley Database (Berkeley DB) is a programmatic toolkit that -provides embedded database support for both traditional and -client/server applications. Berkeley DB includes B+tree, Extended -Linear Hashing, Fixed and Variable-length record access methods, -transactions, locking, logging, shared memory caching and database -recovery. DB supports C, C++, Java and Perl APIs. +%description tcl +Berkeley database library for TCL. -This package contains the header files, libraries, and documentation -for building programs which use Berkeley DB. +%description tcl -l pl +Biblioteka baz danych Berkeley dla TCL. -%description devel -l pl -Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych -zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i -klient-serwer. Berkeley DB obs³ugje dostêp do bazy przez B-drzewa i -funkcje mieszaj±ce ze sta³± lub zmienn± wielko¶ci± rekordu, -transakcje, kroniki, pamiêæ dzielon± i odtwarzanie baz. Ma wsparcie -dla C, C++, Javy i Perla. +%package tcl-devel +Summary: Berkeley database library for TCL +Summary(pl): Biblioteka baz danych Berkeley dla TCL +Group: Development/Languages/Tcl +Requires: tcl +Requires: %{name}-tcl = %{version} +Obsoletes: db4-tcl +Conflicts: db-devel < 4.1.25-3 -Ten pakiet zawiera pliki nag³ówkowe i dokumentacjê do budowania -programów u¿ywaj±cych Berkeley DB. +%description tcl-devel +Berkeley database library for TCL. -%package static -Summary: Static libraries for Berkeley database library -Summary(pl): Statyczne biblioteki Berkeley Database -Group: Development/Libraries -Requires: %{name}-devel = %{version} +%description tcl-devel -l pl +Biblioteka baz danych Berkeley dla TCL. -%description static +%package utils +Summary: Command line tools for managing Berkeley DB databases +Summary(pl): Narzêdzia do obs³ugi baz Berkeley DB z linii poleceñ +Group: Applications/Databases +Requires: %{name} = %{version} +Obsoletes: db4-utils + +%description utils The Berkeley Database (Berkeley DB) is a programmatic toolkit that provides embedded database support for both traditional and client/server applications. Berkeley DB includes B+tree, Extended @@ -133,10 +176,10 @@ Linear Hashing, Fixed and Variable-length record access methods, transactions, locking, logging, shared memory caching and database recovery. DB supports C, C++, Java and Perl APIs. -This package contains the static libraries for building programs which -use Berkeley DB. +This package contains command line tools for managing Berkeley DB +databases. -%description static -l pl +%description utils -l pl Berkeley Database (Berkeley DB) to zestaw narzêdzi programistycznych zapewniaj±cych obs³ugê baz danych w aplikacjach tradycyjnych jak i klient-serwer. Berkeley DB obs³ugje dostêp do bazy przez B-drzewa i @@ -144,24 +187,32 @@ funkcje mieszaj transakcje, kroniki, pamiêæ dzielon± i odtwarzanie baz. Ma wsparcie dla C, C++, Javy i Perla. -Ten pakiet zawiera statyczne biblioteki do budowania programów -u¿ywaj±cych Berkeley DB. +Ten pakiet zawiera narzêdzia do obs³ugi baz Berkeley DB z linii +poleceñ. %prep %setup -q %patch0 -p1 -#%patch1 -p1 -#%patch2 -p1 +%patch1 -p0 %build +cd dist +sh s_config +cd .. + cp -a build_unix build_unix.static cd build_unix.static -CFLAGS="%{rpmcflags} -fno-rtti -fno-implicit-templates" \ -CXXFLAGS="%{rpmcflags} -fno-rtti -fno-implicit-templates" \ +CC="%{__cc}" +CXX="%{__cxx}" +CFLAGS="%{rpmcflags} -fno-implicit-templates" +CXXFLAGS="%{rpmcflags} -fno-implicit-templates" +export CC CXX CFLAGS CXXFLAGS + ../dist/configure \ --prefix=%{_prefix} \ + --libdir=%{_libdir} \ --enable-compat185 \ --disable-shared \ --enable-static \ @@ -175,33 +226,20 @@ CXXFLAGS="%{rpmcflags} -fno-rtti -fno-implicit-templates" \ cd ../build_unix -CFLAGS="%{rpmcflags} -fno-rtti -fno-implicit-templates" \ -CXXFLAGS="%{rpmcflags} -fno-rtti -fno-implicit-templates" \ - -%if %{?_with_java:1}%{!?_with_java:0} -../dist/configure \ - --prefix=%{_prefix} \ - --enable-compat185 \ - --enable-shared \ - --disable-static \ - --enable-rpc \ - --enable-cxx \ - --enable-tcl \ - --with-tcl=%{_libdir} \ - --enable-java -%else ../dist/configure \ --prefix=%{_prefix} \ + --libdir=%{_libdir} \ --enable-compat185 \ --enable-shared \ --disable-static \ --enable-rpc \ --enable-cxx \ --enable-tcl \ - --with-tcl=/usr/lib -%endif + --with-tcl=/usr/lib \ + %{?_with_java:--enable-java} -%{__make} library_build TCFLAGS='-I$(builddir) -I%{_includedir}' +%{__make} library_build \ + TCFLAGS='-I$(builddir) -I%{_includedir}' %install rm -rf $RPM_BUILD_ROOT @@ -210,22 +248,38 @@ install -d $RPM_BUILD_ROOT{%{_includedir},%{_libdir},%{_bindir},/lib} cd build_unix.static %{__make} library_install \ - prefix=$RPM_BUILD_ROOT%{_prefix} + prefix=$RPM_BUILD_ROOT%{_prefix} \ + libdir=$RPM_BUILD_ROOT%{_libdir} cd ../build_unix %{__make} library_install \ prefix=$RPM_BUILD_ROOT%{_prefix} \ + libdir=$RPM_BUILD_ROOT%{_libdir} \ includedir=$RPM_BUILD_ROOT%{_includedir} \ LIB_INSTALL_FILE_LIST="" -#mv -f $RPM_BUILD_ROOT%{_libdir}/libdb-*.so $RPM_BUILD_ROOT/lib -#ln -sf ../../lib/libdb-3.1.so $RPM_BUILD_ROOT%{_libdir}/libdb.so -#ln -sf ../../lib/libdb-3.1.so $RPM_BUILD_ROOT%{_libdir}/libdb3.so -#ln -sf ../../lib/libdb-3.1.so $RPM_BUILD_ROOT%{_libdir}/libdb-3.1.so -#ln -sf libdb-3.1.a $RPM_BUILD_ROOT%{_libdir}/libdb.a -#ln -sf libdb3.so $RPM_BUILD_ROOT%{_libdir}/libndbm.so -#ln -sf libdb3.a $RPM_BUILD_ROOT%{_libdir}/libndbm.a +(cd $RPM_BUILD_ROOT%{_libdir} +ln -sf libdb-4.1.so libdb4.so +ln -sf libdb-4.1.so libndbm.so +ln -sf libdb-4.1.la libdb.la +ln -sf libdb-4.1.la libdb4.la +ln -sf libdb-4.1.la libndbm.la +ln -sf libdb_tcl-4.1.la libdb_tcl.la +ln -sf libdb_cxx-4.1.la libdb_cxx.la +mv -f libdb.a libdb-4.1.a +ln -sf libdb-4.1.a libdb.a +ln -sf libdb-4.1.a libdb4.a +ln -sf libdb-4.1.a libndbm.a +mv -f libdb_cxx.a libdb_cxx-4.1.a +ln -sf libdb_cxx-4.1.a libdb_cxx.a + +mv -f libdb-4.1.la libdb-4.1.la.tmp +mv -f libdb_cxx-4.1.la libdb_cxx-4.1.la.tmp +sed -e "s/old_library=''/old_library='libdb-4.1.a'/" libdb-4.1.la.tmp > libdb-4.1.la +sed -e "s/old_library=''/old_library='libdb_cxx-4.1.a'/" libdb_cxx-4.1.la.tmp > libdb_cxx-4.1.la +rm -f libdb*.la.tmp +) cd .. #rm -rf examples_java @@ -249,26 +303,36 @@ rm -rf $RPM_BUILD_ROOT #%attr(755,root,root) /lib/libdb-*.so %attr(755,root,root) %{_libdir}/libdb-*.so -%files utils +%files devel %defattr(644,root,root,755) -%doc docs/utility/* -%attr(755,root,root) %{_bindir}/berkeley_db_svc -%attr(755,root,root) %{_bindir}/db*_archive -%attr(755,root,root) %{_bindir}/db*_checkpoint -%attr(755,root,root) %{_bindir}/db*_deadlock -%attr(755,root,root) %{_bindir}/db*_dump -#%attr(755,root,root) %{_bindir}/db*_dump185 -%attr(755,root,root) %{_bindir}/db*_load -%attr(755,root,root) %{_bindir}/db*_printlog -%attr(755,root,root) %{_bindir}/db*_recover -%attr(755,root,root) %{_bindir}/db*_stat -%attr(755,root,root) %{_bindir}/db*_upgrade -%attr(755,root,root) %{_bindir}/db*_verify +%doc docs/{api*,ref,index.html,sleepycat,images} examples_c* +%{_includedir}/db.h +%{_includedir}/db_185.h +%{_libdir}/libdb-4.1.la +%{_libdir}/libdb.la +%{_libdir}/libdb.so +%{_libdir}/libdb4.la +%{_libdir}/libdb4.so +%{_libdir}/libndbm.la +%{_libdir}/libndbm.so + +%files static +%defattr(644,root,root,755) +%{_libdir}/lib*.a %files cxx %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libdb_cxx-*.so +%files cxx-devel +%defattr(644,root,root,755) +%{_includedir}/cxx_common.h +%{_includedir}/cxx_except.h +%{_includedir}/db_cxx.h +%{_libdir}/libdb_cxx-4.1.la +%{_libdir}/libdb_cxx.la +%{_libdir}/libdb_cxx.so + %if %{?_with_java:1}%{!?_with_java:0} %files java %defattr(644,root,root,755) @@ -280,17 +344,24 @@ rm -rf $RPM_BUILD_ROOT %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libdb_tcl-*.so -%files devel +%files tcl-devel %defattr(644,root,root,755) -%doc docs/{api*,ref,index.html,sleepycat,images} examples_c* -%attr(755,root,root) %{_libdir}/libdb*.la -#%attr(755,root,root) %{_libdir}/libdb.so -%attr(755,root,root) %{_libdir}/libdb*.so -#%attr(755,root,root) %{_libdir}/libndbm.so -#%attr(755,root,root) %{_libdir}/libdb_tcl.so -#%attr(755,root,root) %{_libdir}/libdb_cxx.so -%{_includedir}/* +%{_libdir}/libdb_tcl-4.1.la +%{_libdir}/libdb_tcl.la +%{_libdir}/libdb_tcl.so -%files static +%files utils %defattr(644,root,root,755) -%{_libdir}/lib*.a +%doc docs/utility/* +%attr(755,root,root) %{_bindir}/berkeley_db_svc +%attr(755,root,root) %{_bindir}/db*_archive +%attr(755,root,root) %{_bindir}/db*_checkpoint +%attr(755,root,root) %{_bindir}/db*_deadlock +%attr(755,root,root) %{_bindir}/db*_dump +#%attr(755,root,root) %{_bindir}/db*_dump185 +%attr(755,root,root) %{_bindir}/db*_load +%attr(755,root,root) %{_bindir}/db*_printlog +%attr(755,root,root) %{_bindir}/db*_recover +%attr(755,root,root) %{_bindir}/db*_stat +%attr(755,root,root) %{_bindir}/db*_upgrade +%attr(755,root,root) %{_bindir}/db*_verify