X-Git-Url: http://git.pld-linux.org/?p=packages%2Fdb4.7.git;a=blobdiff_plain;f=db4.7.spec;h=6eb61687c80348fcd0568783a788143d75e0b057;hp=dc0d0db8e28a2362595d3ba38a453241b1a3e9ab;hb=554ba8b924d5f1910dbaa0fd1af228e909891226;hpb=1a8b93d02143583331d100cfd89b2cfc009c67f0 diff --git a/db4.7.spec b/db4.7.spec index dc0d0db..6eb6168 100644 --- a/db4.7.spec +++ b/db4.7.spec @@ -1,41 +1,51 @@ # # Conditional build: -%bcond_without java # don't build java bindings +%bcond_without apidocs # do not build and package API docs +%bcond_without java # don't build Java bindings %bcond_without tcl # don't build Tcl bindings -%bcond_with pmutex # use POSIX mutexes (only process-private 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 -# -%{?with_nptl:%define with_pmutex 1} -%ifnarch i586 i686 athlon pentium3 pentium4 %{x8664} -%undefine with_java -%endif -%define mver 4.6 +%bcond_without default_db # don't use this db as default system db [Th uses DB 4.7] + +%{?with_java:%include /usr/lib/rpm/macros.java} + +%define libver 4.7 +%define ver %{libver}.25 +%define patchlevel 4 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: 1 +Name: db4.7 +Version: %{ver}.%{patchlevel} +Release: 7 Epoch: 0 -License: Sleepycat public license (GPL-like, see LICENSE) +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: ec2b87e833779681a0c3a814aa71359e +%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: automake BuildRequires: ed -%{?with_java:BuildRequires: jdk} +%if %{with java} +BuildRequires: jdk +BuildRequires: rpm-javaprov +%endif BuildRequires: libstdc++-devel -BuildRequires: libtool +BuildRequires: rpmbuild(macros) >= 1.426 BuildRequires: sed >= 4.0 %{?with_tcl:BuildRequires: tcl-devel >= 8.4.0} +Requires: uname(release) >= 2.6.0 +%if %{with default_db} Provides: db = %{version}-%{release} -%{?with_rpm_robustness:Requires: uname(release) >= 2.6.17} +Provides: db = %{libver} 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,9 +63,11 @@ 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: db3-devel Obsoletes: db4-devel +%endif %description devel The Berkeley Database (Berkeley DB) is a programmatic toolkit that @@ -84,9 +96,11 @@ 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: db3-static Obsoletes: db4-static +%endif %description static The Berkeley Database (Berkeley DB) is a programmatic toolkit that @@ -110,12 +124,25 @@ dla C, C++, Javy i Perla. Ten pakiet zawiera statyczne biblioteki do budowania programów używających Berkeley DB. +%package apidocs +Summary: Berkeley database library API documentation +Summary(pl.UTF-8): Dokumentacja API biblioteki baz danych Berkeley +Group: Documentation + +%description apidocs +API and internal documentation for Berkeley database library. + +%description apidocs -l pl.UTF-8 +Dokumentacja API i wewnętrzna do biblioteki baz danych Berkeley. + %package cxx 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++. @@ -129,7 +156,9 @@ 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} +%endif Conflicts: db-devel < 4.1.25-3 %description cxx-devel @@ -143,7 +172,9 @@ 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} +%endif Conflicts: db-static < 4.2.50-1 %description cxx-static @@ -156,8 +187,10 @@ 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} +%endif %description java Berkeley database library for Java. @@ -170,7 +203,9 @@ 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} +%endif Conflicts: db-devel < 4.1.25-3 %description java-devel @@ -184,8 +219,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. @@ -198,7 +235,9 @@ 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} +%endif Conflicts: db-devel < 4.1.25-3 %description tcl-devel @@ -212,10 +251,11 @@ 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: db3-utils +Obsoletes: db4-utils +%endif %description utils The Berkeley Database (Berkeley DB) is a programmatic toolkit that @@ -240,19 +280,15 @@ Ten pakiet zawiera narzędzia do obsługi baz Berkeley DB z linii poleceń. %prep -%setup -q -n db-%{version} - -%if !%{with nptl} -sed -i -e 's,AM_PTHREADS_SHARED("POSIX/.*,:,' dist/aclocal/mutex.ac -%endif +%setup -q -n db-%{ver} +# official patches +%patchset_patch 1 %{patchlevel} %build -cd dist -cp -f /usr/share/aclocal/libtool.m4 aclocal/libtool.ac -cp -f /usr/share/automake/config.sub . -cp -f /usr/share/libtool/ltmain.sh . -sh s_config -cd .. +cp -f /usr/share/automake/config.sub dist + +JAVACFLAGS="-source 1.5 -target 1.5" +export JAVACFLAGS %if %{with static_libs} cp -a build_unix build_unix.static @@ -271,7 +307,7 @@ export CC CXX CFLAGS CXXFLAGS LDFLAGS --disable-shared \ --enable-static \ --enable-rpc \ - --%{?with_pmutex:en}%{!?with_pmutex:dis}able-posixmutexes \ + --enable-posixmutexes \ --enable-cxx # (temporarily?) disabled because of compilation errors: @@ -288,7 +324,7 @@ cd build_unix --libdir=%{_libdir} \ --enable-compat185 \ --enable-rpc \ - --%{?with_pmutex:en}%{!?with_pmutex:dis}able-posixmutexes \ + --enable-posixmutexes \ --enable-cxx \ %{?with_tcl:--enable-tcl} \ %{?with_tcl:--with-tcl=/usr/lib} \ @@ -303,53 +339,64 @@ 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} -ln -sf libdb_java-%{mver}.la libdb_java.la mv -f $RPM_BUILD_ROOT%{_libdir}/*.jar $RPM_BUILD_ROOT%{_javadir} %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-%{libver}.la libdb_java.la +%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 %endif -ln -sf libdb_cxx-%{mver}.so libdb_cxx.so -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 +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 cd - rm -f examples_c*/tags @@ -364,6 +411,9 @@ install -d $RPM_BUILD_ROOT%{_examplesdir}/db-java-%{version} cp -rf examples_java/* $RPM_BUILD_ROOT%{_examplesdir}/db-java-%{version} %endif +# in %doc +%{__rm} $RPM_BUILD_ROOT%{_docdir}/db-%{version}-docs/{index.html,license/license_db.html} + %clean rm -rf $RPM_BUILD_ROOT @@ -378,24 +428,46 @@ rm -rf $RPM_BUILD_ROOT %files %defattr(644,root,root,755) -%doc LICENSE README -%attr(755,root,root) /%{_lib}/libdb-%{mver}.so -%dir %{_docdir}/db-%{version}-docs -%{_docdir}/db-%{version}-docs/index.html -%{_docdir}/db-%{version}-docs/license +%doc LICENSE README docs/index.html docs/license +%if %{with default_db} +%attr(755,root,root) /%{_lib}/libdb-%{libver}.so +%else +%attr(755,root,root) %{_libdir}/libdb-%{libver}.so +%endif %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 +%{_examplesdir}/db-%{version} + +%if %{with static_libs} +%files static +%defattr(644,root,root,755) +%{_libdir}/libdb-%{libver}.a +%if %{with default_db} +%{_libdir}/libdb4.a +%{_libdir}/libdb.a +%{_libdir}/libndbm.a +%endif +%endif + +%if %{with apidocs} +%files apidocs +%defattr(644,root,root,755) +%dir %{_docdir}/db-%{version}-docs %{_docdir}/db-%{version}-docs/api_c %{_docdir}/db-%{version}-docs/articles %dir %{_docdir}/db-%{version}-docs/gsg @@ -405,27 +477,21 @@ rm -rf $RPM_BUILD_ROOT %dir %{_docdir}/db-%{version}-docs/gsg_db_rep %{_docdir}/db-%{version}-docs/gsg_db_rep/C %{_docdir}/db-%{version}-docs/images +%{_docdir}/db-%{version}-docs/porting %{_docdir}/db-%{version}-docs/ref -%{_examplesdir}/db-%{version} - -%if %{with static_libs} -%files static -%defattr(644,root,root,755) -%{_libdir}/libdb-%{mver}.a -%{_libdir}/libdb4.a -%{_libdir}/libdb.a -%{_libdir}/libndbm.a %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 @@ -436,21 +502,25 @@ 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.jar %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 @@ -462,13 +532,15 @@ 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 @@ -488,4 +560,5 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{_bindir}/db*_stat %attr(755,root,root) %{_bindir}/db*_upgrade %attr(755,root,root) %{_bindir}/db*_verify +%dir %{_docdir}/db-%{version}-docs %{_docdir}/db-%{version}-docs/utility