X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=db4.6.spec;h=eaf6ee9a752d5e990cb00800b10b79d0d29ae036;hb=caaf43e55db7381a9f2aa6f01be3fe42ce26b70d;hp=c0681d623f16b9d339e052e531ef6f9959274223;hpb=c7dc363442623c11a7b46d038d24bc05f1e480b2;p=packages%2Fdb4.6.git diff --git a/db4.6.spec b/db4.6.spec index c0681d6..eaf6ee9 100644 --- a/db4.6.spec +++ b/db4.6.spec @@ -1,41 +1,54 @@ # # Conditional build: -%bcond_without java # don't build java bindings +%bcond_without java # don't build Java library %bcond_without tcl # don't build Tcl bindings -%bcond_with pmutex # use POSIX mutexes (only process-private with linuxthreads) +%bcond_with pmutex # use process-shared POSIX mutexes (not available with linuxthreads) %bcond_without nptl # don't use process-shared POSIX mutexes (NPTL provides full interface) %bcond_without static_libs # don't build static libraries -# +%bcond_with default_db # use this db as default system db + +%define libver 4.6 +%define ver %{libver}.21 +%define patchlevel 4 %{?with_nptl:%define with_pmutex 1} %ifnarch i586 i686 athlon pentium3 pentium4 %{x8664} %undefine with_java %endif -%define mver 4.6 + Summary: Berkeley DB database library for C Summary(pl.UTF-8): Biblioteka C do obsługi baz Berkeley DB Name: db4.6 -Version: %{mver}.19 -Release: 2 +Version: %{ver}.%{patchlevel} +Release: 1 Epoch: 0 License: Sleepycat public license (GPL-like, see LICENSE) Group: Libraries -# alternative site (sometimes working): http://www.berkeleydb.com/ -Source0: http://download.oracle.com/berkeley-db/db-%{version}.tar.gz -# Source0-md5: 89c7390ff120d5ebf3eccc5f97249e79 -URL: http://www.oracle.com/technology/products/berkeley-db/index.html -BuildRequires: autoconf +#Source0Download: http://www.oracle.com/technetwork/database/berkeleydb/downloads/index-082944.html +Source0: http://download.oracle.com/berkeley-db/db-%{ver}.tar.gz +# Source0-md5: 718082e7e35fc48478a2334b0bc4cd11 +Patch0: openldap-format-security.patch +%patchset_source -f http://download.oracle.com/berkeley-db/patches/db/%{ver}/patch.%{ver}.%g 1 %{patchlevel} +URL: http://www.oracle.com/technetwork/database/berkeleydb/downloads/index.html +BuildRequires: autoconf >= 2.50 BuildRequires: automake BuildRequires: ed %{?with_java:BuildRequires: jdk} BuildRequires: libstdc++-devel -BuildRequires: libtool +BuildRequires: libtool >= 2:2.2 +BuildRequires: rpmbuild(macros) >= 1.426 BuildRequires: sed >= 4.0 %{?with_tcl:BuildRequires: tcl-devel >= 8.4.0} +%{?with_nptl:Requires: uname(release) >= 2.6.0} +%if %{with default_db} Provides: db = %{version}-%{release} -%{?with_rpm_robustness:Requires: uname(release) >= 2.6.17} Obsoletes: db4 +%endif BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) +%if %{without default_db} +%define _includedir %{_prefix}/include/db%{libver} +%endif + %description The Berkeley Database (Berkeley DB) is a programmatic toolkit that provides embedded database support for both traditional and @@ -53,10 +66,12 @@ Summary: Header files for Berkeley database library Summary(pl.UTF-8): Pliki nagłówkowe do biblioteki Berkeley Database Group: Development/Libraries Requires: %{name} = %{epoch}:%{version}-%{release} +%if %{with default_db} Provides: db-devel = %{version}-%{release} +Obsoletes: db-devel Obsoletes: db3-devel Obsoletes: db4-devel -Obsoletes: db4.5-devel +%endif %description devel The Berkeley Database (Berkeley DB) is a programmatic toolkit that @@ -85,9 +100,12 @@ Summary: Static libraries for Berkeley database library Summary(pl.UTF-8): Statyczne biblioteki Berkeley Database Group: Development/Libraries Requires: %{name}-devel = %{epoch}:%{version}-%{release} +%if %{with default_db} Provides: db-static = %{version}-%{release} +Obsoletes: db-static Obsoletes: db3-static Obsoletes: db4-static +%endif %description static The Berkeley Database (Berkeley DB) is a programmatic toolkit that @@ -115,8 +133,10 @@ używających Berkeley DB. Summary: Berkeley database library for C++ Summary(pl.UTF-8): Biblioteka baz danych Berkeley dla C++ Group: Libraries +%if %{with default_db} Provides: db-cxx = %{version}-%{release} Obsoletes: db4-cxx +%endif %description cxx Berkeley database library for C++. @@ -130,7 +150,10 @@ Summary(pl.UTF-8): Pliki nagłówkowe biblioteki db-cxx Group: Development/Libraries Requires: %{name}-cxx = %{epoch}:%{version}-%{release} Requires: %{name}-devel = %{epoch}:%{version}-%{release} +%if %{with default_db} Provides: db-cxx-devel = %{version}-%{release} +Obsoletes: db-cxx-devel +%endif Conflicts: db-devel < 4.1.25-3 %description cxx-devel @@ -144,7 +167,10 @@ Summary: Static version of db-cxx library Summary(pl.UTF-8): Statyczna wersja biblioteki db-cxx Group: Development/Libraries Requires: %{name}-cxx-devel = %{epoch}:%{version}-%{release} +%if %{with default_db} Provides: db-cxx-static = %{version}-%{release} +Obsoletes: db-cxx-static +%endif Conflicts: db-static < 4.2.50-1 %description cxx-static @@ -157,8 +183,11 @@ Statyczna wersja biblioteki db-cxx. Summary: Berkeley database library for Java Summary(pl.UTF-8): Biblioteka baz danych Berkeley dla Javy Group: Libraries -Requires: jre +Requires: jpackage-utils +%if %{with default_db} Provides: db-java = %{version}-%{release} +Obsoletes: db-java +%endif %description java Berkeley database library for Java. @@ -171,7 +200,10 @@ Summary: Development files for db-java library Summary(pl.UTF-8): Pliki programistyczne biblioteki db-java Group: Development/Languages/Java Requires: %{name}-java = %{epoch}:%{version}-%{release} +%if %{with default_db} Provides: db-java-devel = %{version}-%{release} +Obsoletes: db-java-devel +%endif Conflicts: db-devel < 4.1.25-3 %description java-devel @@ -185,8 +217,10 @@ Summary: Berkeley database library for Tcl Summary(pl.UTF-8): Biblioteka baz danych Berkeley dla Tcl Group: Development/Languages/Tcl Requires: tcl +%if %{with default_db} Provides: db-tcl = %{version}-%{release} Obsoletes: db4-tcl +%endif %description tcl Berkeley database library for Tcl. @@ -199,7 +233,10 @@ Summary: Development files for db-tcl library Summary(pl.UTF-8): Pliki programistyczne biblioteki db-tcl Group: Development/Languages/Tcl Requires: %{name}-tcl = %{epoch}:%{version}-%{release} +%if %{with default_db} Provides: db-tcl-devel = %{version}-%{release} +Obsoletes: db-tcl-devel +%endif Conflicts: db-devel < 4.1.25-3 %description tcl-devel @@ -213,10 +250,12 @@ Summary: Command line tools for managing Berkeley DB databases Summary(pl.UTF-8): Narzędzia do obsługi baz Berkeley DB z linii poleceń Group: Applications/Databases Requires: %{name} = %{epoch}:%{version}-%{release} +%if %{with default_db} Provides: db-utils = %{version}-%{release} -Obsoletes: db4-utils -# obsolete Ra package +Obsoletes: db-utils Obsoletes: db3-utils +Obsoletes: db4-utils +%endif %description utils The Berkeley Database (Berkeley DB) is a programmatic toolkit that @@ -241,17 +280,22 @@ Ten pakiet zawiera narzędzia do obsługi baz Berkeley DB z linii poleceń. %prep -%setup -q -n db-%{version} +%setup -q -n db-%{ver} +%patch0 -p1 +# official patches +%patchset_patch 1 %{patchlevel} -%if !%{with nptl} +%if %{without nptl} sed -i -e 's,AM_PTHREADS_SHARED("POSIX/.*,:,' dist/aclocal/mutex.ac %endif +sed -i -e '/AC_PROG_LIBTOOL/aLT_OUTPUT' dist/configure.ac + %build cd dist -cp -f /usr/share/aclocal/libtool.m4 aclocal/libtool.ac +cp -f /usr/share/aclocal/{libtool,ltoptions,ltsugar,ltversion,lt~obsolete}.m4 aclocal cp -f /usr/share/automake/config.sub . -cp -f /usr/share/libtool/ltmain.sh . +cp -f /usr/share/libtool/config/ltmain.sh . sh s_config cd .. @@ -268,12 +312,12 @@ LDFLAGS="%{rpmcflags} %{rpmldflags}" export CC CXX CFLAGS CXXFLAGS LDFLAGS ../dist/%configure \ - --enable-compat185 \ --disable-shared \ --enable-static \ - --enable-rpc \ + --enable-compat185 \ + --enable-cxx \ --%{?with_pmutex:en}%{!?with_pmutex:dis}able-posixmutexes \ - --enable-cxx + --enable-rpc # (temporarily?) disabled because of compilation errors: # --enable-dump185 \ @@ -287,15 +331,14 @@ cd build_unix ../dist/%configure \ --prefix=%{_prefix} \ --libdir=%{_libdir} \ + --enable-shared \ + --disable-static \ --enable-compat185 \ - --enable-rpc \ - --%{?with_pmutex:en}%{!?with_pmutex:dis}able-posixmutexes \ --enable-cxx \ - %{?with_tcl:--enable-tcl} \ - %{?with_tcl:--with-tcl=/usr/lib} \ + --%{?with_pmutex:en}%{!?with_pmutex:dis}able-posixmutexes \ + --enable-rpc \ %{?with_java:--enable-java} \ - --disable-static \ - --enable-shared + %{?with_tcl:--enable-tcl --with-tcl=/usr/lib} %{__make} library_build \ TCFLAGS='-I$(builddir) -I%{_includedir}' \ @@ -304,54 +347,76 @@ cd build_unix %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT{%{_includedir},%{_libdir},%{_bindir},/%{_lib}} +install -d $RPM_BUILD_ROOT{%{_includedir},%{_libdir},%{_bindir}} %if %{with java} install -d $RPM_BUILD_ROOT%{_javadir} %endif %if %{with static_libs} %{__make} -C build_unix.static library_install \ + DESTDIR=$RPM_BUILD_ROOT \ docdir=%{_docdir}/db-%{version}-docs \ - DESTDIR=$RPM_BUILD_ROOT + includedir=%{_includedir} %endif %{__make} -C build_unix library_install \ - docdir=%{_docdir}/db-%{version}-docs \ DESTDIR=$RPM_BUILD_ROOT \ - LIB_INSTALL_FILE_LIST="" + LIB_INSTALL_FILE_LIST="" \ + docdir=%{_docdir}/db-%{version}-docs \ + includedir=%{_includedir} -mv $RPM_BUILD_ROOT%{_libdir}/libdb-%{mver}.so $RPM_BUILD_ROOT/%{_lib} +%if %{with default_db} +install -d $RPM_BUILD_ROOT/%{_lib} +mv $RPM_BUILD_ROOT%{_libdir}/libdb-%{libver}.so $RPM_BUILD_ROOT/%{_lib} +%endif cd $RPM_BUILD_ROOT%{_libdir} -ln -sf /%{_lib}/libdb-%{mver}.so libdb.so -ln -sf /%{_lib}/libdb-%{mver}.so libdb4.so -ln -sf /%{_lib}/libdb-%{mver}.so libdb-%{mver}.so -ln -sf /%{_lib}/libdb-%{mver}.so libndbm.so -ln -sf libdb-%{mver}.la libdb.la -ln -sf libdb-%{mver}.la libdb4.la -ln -sf libdb-%{mver}.la libndbm.la +%if %{with static_libs} +mv -f libdb.a libdb-%{libver}.a +mv -f libdb_cxx.a libdb_cxx-%{libver}.a +%endif +%if %{with java} +mv -f $RPM_BUILD_ROOT%{_libdir}/db.jar $RPM_BUILD_ROOT%{_javadir}/db-%{libver}.jar +%endif +%if %{with default_db} +ln -sf /%{_lib}/libdb-%{libver}.so libdb.so +ln -sf /%{_lib}/libdb-%{libver}.so libdb4.so +ln -sf /%{_lib}/libdb-%{libver}.so libdb-%{libver}.so +ln -sf /%{_lib}/libdb-%{libver}.so libndbm.so +ln -sf libdb-%{libver}.la libdb.la +ln -sf libdb-%{libver}.la libdb4.la +ln -sf libdb-%{libver}.la libndbm.la +ln -sf libdb_cxx-%{libver}.so libdb_cxx.so +ln -sf libdb_cxx-%{libver}.la libdb_cxx.la %if %{with java} -ln -sf libdb_java-%{mver}.la libdb_java.la -mv -f $RPM_BUILD_ROOT%{_libdir}/*.jar $RPM_BUILD_ROOT%{_javadir} +ln -sf libdb_java-%{libver}.la libdb_java.la +ln -sf db-%{libver}.jar $RPM_BUILD_ROOT%{_javadir}/db.jar %endif %if %{with tcl} -ln -sf libdb_tcl-%{mver}.so libdb_tcl.so -ln -sf libdb_tcl-%{mver}.la libdb_tcl.la +ln -sf libdb_tcl-%{libver}.so libdb_tcl.so +ln -sf libdb_tcl-%{libver}.la libdb_tcl.la %endif -ln -sf libdb_cxx-%{mver}.la libdb_cxx.la %if %{with static_libs} -mv -f libdb.a libdb-%{mver}.a -ln -sf libdb-%{mver}.a libdb.a -ln -sf libdb-%{mver}.a libdb4.a -ln -sf libdb-%{mver}.a libndbm.a -mv -f libdb_cxx.a libdb_cxx-%{mver}.a -ln -sf libdb_cxx-%{mver}.a libdb_cxx.a +ln -sf libdb-%{libver}.a libdb.a +ln -sf libdb-%{libver}.a libdb4.a +ln -sf libdb-%{libver}.a libndbm.a +ln -sf libdb_cxx-%{libver}.a libdb_cxx.a %endif -ln -sf libdb_cxx-%{mver}.so libdb_cxx.so +%endif + +sed -i "s/old_library=''/old_library='libdb-%{libver}.a'/" libdb-%{libver}.la +sed -i "s/old_library=''/old_library='libdb_cxx-%{libver}.a'/" libdb_cxx-%{libver}.la -sed -i "s/old_library=''/old_library='libdb-%{mver}.a'/" libdb-%{mver}.la -sed -i "s/old_library=''/old_library='libdb_cxx-%{mver}.a'/" libdb_cxx-%{mver}.la +cd - +cd $RPM_BUILD_ROOT%{_bindir} +mv -f berkeley_db_svc berkeley_db_svc-%{libver} +%{?with_default_db:ln -sf berkeley_db_svc-%{libver} berkeley_db_svc} +for F in db_*; do + Fver=$(echo $F|sed 's/db_/db%{libver}_/') + mv $F $Fver + %{?with_default_db:ln -sf $Fver $F} +done cd - rm -f examples_c*/tags install -d $RPM_BUILD_ROOT%{_examplesdir}/db-%{version} @@ -380,21 +445,29 @@ rm -rf $RPM_BUILD_ROOT %files %defattr(644,root,root,755) %doc LICENSE README -%attr(755,root,root) /%{_lib}/libdb-%{mver}.so +%if %{with default_db} +%attr(755,root,root) /%{_lib}/libdb-%{libver}.so +%else +%attr(755,root,root) %{_libdir}/libdb-%{libver}.so +%endif %dir %{_docdir}/db-%{version}-docs %{_docdir}/db-%{version}-docs/index.html %{_docdir}/db-%{version}-docs/license %files devel %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/libdb-%{mver}.so +%{_libdir}/libdb-%{libver}.la +%if %{with default_db} +%attr(755,root,root) %{_libdir}/libdb-%{libver}.so %attr(755,root,root) %{_libdir}/libdb4.so %attr(755,root,root) %{_libdir}/libdb.so %attr(755,root,root) %{_libdir}/libndbm.so -%{_libdir}/libdb-%{mver}.la %{_libdir}/libdb4.la %{_libdir}/libdb.la %{_libdir}/libndbm.la +%else +%dir %{_includedir} +%endif %{_includedir}/db.h %{_includedir}/db_185.h %{_docdir}/db-%{version}-docs/api_c @@ -412,21 +485,25 @@ rm -rf $RPM_BUILD_ROOT %if %{with static_libs} %files static %defattr(644,root,root,755) -%{_libdir}/libdb-%{mver}.a +%{_libdir}/libdb-%{libver}.a +%if %{with default_db} %{_libdir}/libdb4.a %{_libdir}/libdb.a %{_libdir}/libndbm.a %endif +%endif %files cxx %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/libdb_cxx-%{mver}.so +%attr(755,root,root) %{_libdir}/libdb_cxx-%{libver}.so %files cxx-devel %defattr(644,root,root,755) +%{_libdir}/libdb_cxx-%{libver}.la +%if %{with default_db} %attr(755,root,root) %{_libdir}/libdb_cxx.so -%{_libdir}/libdb_cxx-%{mver}.la %{_libdir}/libdb_cxx.la +%endif %{_includedir}/db_cxx.h %{_docdir}/db-%{version}-docs/api_cxx %{_docdir}/db-%{version}-docs/gsg/CXX @@ -437,21 +514,28 @@ rm -rf $RPM_BUILD_ROOT %if %{with static_libs} %files cxx-static %defattr(644,root,root,755) -%{_libdir}/libdb_cxx-%{mver}.a +%{_libdir}/libdb_cxx-%{libver}.a +%if %{with default_db} %{_libdir}/libdb_cxx.a %endif +%endif %if %{with java} %files java %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/libdb_java-%{mver}.so +%attr(755,root,root) %{_libdir}/libdb_java-%{libver}.so +%{_javadir}/db-%{libver}.jar +%if %{with default_db} %{_javadir}/db.jar +%endif %files java-devel %defattr(644,root,root,755) +%{_libdir}/libdb_java-%{libver}.la +%if %{with default_db} %attr(755,root,root) %{_libdir}/libdb_java.so -%{_libdir}/libdb_java-%{mver}.la %{_libdir}/libdb_java.la +%endif %{_docdir}/db-%{version}-docs/collections %{_docdir}/db-%{version}-docs/gsg/JAVA %{_docdir}/db-%{version}-docs/gsg_txn/JAVA @@ -463,30 +547,48 @@ rm -rf $RPM_BUILD_ROOT %if %{with tcl} %files tcl %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/libdb_tcl-%{mver}.so +%attr(755,root,root) %{_libdir}/libdb_tcl-%{libver}.so %files tcl-devel %defattr(644,root,root,755) +%{_libdir}/libdb_tcl-%{libver}.la +%if %{with default_db} %attr(755,root,root) %{_libdir}/libdb_tcl.so -%{_libdir}/libdb_tcl-%{mver}.la %{_libdir}/libdb_tcl.la +%endif %{_docdir}/db-%{version}-docs/api_tcl %endif %files utils %defattr(644,root,root,755) +%attr(755,root,root) %{_bindir}/berkeley_db_svc-%{libver} +%attr(755,root,root) %{_bindir}/db%{libver}_archive +%attr(755,root,root) %{_bindir}/db%{libver}_checkpoint +%attr(755,root,root) %{_bindir}/db%{libver}_codegen +%attr(755,root,root) %{_bindir}/db%{libver}_deadlock +%attr(755,root,root) %{_bindir}/db%{libver}_dump +#%attr(755,root,root) %{_bindir}/db%{libver}_dump185 +%attr(755,root,root) %{_bindir}/db%{libver}_hotbackup +%attr(755,root,root) %{_bindir}/db%{libver}_load +%attr(755,root,root) %{_bindir}/db%{libver}_printlog +%attr(755,root,root) %{_bindir}/db%{libver}_recover +%attr(755,root,root) %{_bindir}/db%{libver}_stat +%attr(755,root,root) %{_bindir}/db%{libver}_upgrade +%attr(755,root,root) %{_bindir}/db%{libver}_verify +%if %{with default_db} %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*_codegen -%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*_hotbackup -%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 +%attr(755,root,root) %{_bindir}/db_archive +%attr(755,root,root) %{_bindir}/db_checkpoint +%attr(755,root,root) %{_bindir}/db_codegen +%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_hotbackup +%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 +%endif %{_docdir}/db-%{version}-docs/utility