X-Git-Url: http://git.pld-linux.org/?p=packages%2Fdb4.7.git;a=blobdiff_plain;f=db4.7.spec;h=cc602bf5a475ae703ada95fe21bf393f8c33b8ee;hp=43a97d8eef10d94c8cd1f7330cdcdab04c142a80;hb=0db17e6af149a0907ab2df42905248513b5493ae;hpb=7a14dd65398b468d21b5e9657090d17bbe8d198e diff --git a/db4.7.spec b/db4.7.spec index 43a97d8..cc602bf 100644 --- a/db4.7.spec +++ b/db4.7.spec @@ -1,38 +1,32 @@ # # 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_without static_libs # don't build static libraries - -%if "%{pld_release}" == "ti" -%bcond_without java_sun # build with gcj -%else -%bcond_with java_sun # build with java-sun -%endif - -%include /usr/lib/rpm/macros.java +%bcond_with default_db # use this db as default system db [Th uses DB 5.3] %define libver 4.7 -%define ver %{libver}.25 +%define ver %{libver}.25 %define patchlevel 4 +%{?with_java:%include /usr/lib/rpm/macros.java} Summary: Berkeley DB database library for C Summary(pl.UTF-8): Biblioteka C do obsługi baz Berkeley DB Name: db4.7 Version: %{ver}.%{patchlevel} -Release: 3 -Epoch: 0 +Release: 8 License: GPL-like (see LICENSE) Group: Libraries +#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://www.oracle.com/technology/products/berkeley-db/db/update/%{ver}/patch.%{ver}.%g 1 %{patchlevel} -URL: http://www.oracle.com/technology/products/berkeley-db/index.html +%patchset_source -f http://download.oracle.com/berkeley-db/patches/db/%{ver}/patch.%{ver}.%g 1 %{patchlevel} +Patch0: %{name}-format-security.patch +URL: http://www.oracle.com/technetwork/database/berkeleydb/downloads/index.html BuildRequires: automake BuildRequires: ed %if %{with java} -%{!?with_java_sun:BuildRequires: java-gcj-compat-devel} -%{?with_java_sun:BuildRequires: java-sun} -BuildRequires: rpm >= 4.4.9-56 +BuildRequires: jdk BuildRequires: rpm-javaprov %endif BuildRequires: libstdc++-devel @@ -40,10 +34,17 @@ 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 = %{libver} Provides: db = %{version}-%{release} 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 @@ -60,12 +61,13 @@ Pythonie i Perlu. 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} +Requires: %{name} = %{version}-%{release} +%if %{with default_db} Provides: db-devel = %{version}-%{release} +Obsoletes: db-devel Obsoletes: db3-devel Obsoletes: db4-devel -Obsoletes: db4.5-devel -Obsoletes: db4.6-devel +%endif %description devel The Berkeley Database (Berkeley DB) is a programmatic toolkit that @@ -93,12 +95,13 @@ programów używających Berkeley DB. Summary: Static libraries for Berkeley database library Summary(pl.UTF-8): Statyczne biblioteki Berkeley Database Group: Development/Libraries -Requires: %{name}-devel = %{epoch}:%{version}-%{release} +Requires: %{name}-devel = %{version}-%{release} +%if %{with default_db} Provides: db-static = %{version}-%{release} +Obsoletes: db-static Obsoletes: db3-static Obsoletes: db4-static -Obsoletes: db4.5-static -Obsoletes: db4.6-static +%endif %description static The Berkeley Database (Berkeley DB) is a programmatic toolkit that @@ -122,12 +125,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++. @@ -139,9 +155,12 @@ Biblioteka baz danych Berkeley dla C++. Summary: Header files for db-cxx library 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} +Requires: %{name}-cxx = %{version}-%{release} +Requires: %{name}-devel = %{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 @@ -154,8 +173,11 @@ Pliki nagłówkowe biblioteki db-cxx. 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} +Requires: %{name}-cxx-devel = %{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 @@ -169,7 +191,10 @@ Summary: Berkeley database library for Java Summary(pl.UTF-8): Biblioteka baz danych Berkeley dla Javy Group: Libraries Requires: jpackage-utils +%if %{with default_db} Provides: db-java = %{version}-%{release} +Obsoletes: db-java +%endif %description java Berkeley database library for Java. @@ -181,8 +206,11 @@ Biblioteka baz danych Berkeley dla Javy. 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} +Requires: %{name}-java = %{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 @@ -196,8 +224,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. @@ -209,8 +239,11 @@ Biblioteka baz danych Berkeley dla Tcl. 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} +Requires: %{name}-tcl = %{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 @@ -223,10 +256,13 @@ Pliki programistyczne biblioteki db-tcl. 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} +Requires: %{name} = %{version}-%{release} +%if %{with default_db} Provides: db-utils = %{version}-%{release} +Obsoletes: db-utils Obsoletes: db3-utils Obsoletes: db4-utils +%endif %description utils The Berkeley Database (Berkeley DB) is a programmatic toolkit that @@ -252,10 +288,11 @@ poleceń. %prep %setup -q -n db-%{ver} - # official patches %patchset_patch 1 %{patchlevel} +%patch0 -p1 + %build cp -f /usr/share/automake/config.sub dist @@ -272,16 +309,15 @@ CXX="%{__cxx}" CFLAGS="%{rpmcflags}" CXXFLAGS="%{rpmcflags} -fno-implicit-templates" LDFLAGS="%{rpmcflags} %{rpmldflags}" - export CC CXX CFLAGS CXXFLAGS LDFLAGS ../dist/%configure \ - --enable-compat185 \ --disable-shared \ --enable-static \ - --enable-rpc \ + --enable-compat185 \ + --enable-cxx \ --enable-posixmutexes \ - --enable-cxx + --enable-rpc # (temporarily?) disabled because of compilation errors: # --enable-dump185 \ @@ -295,15 +331,14 @@ cd build_unix ../dist/%configure \ --prefix=%{_prefix} \ --libdir=%{_libdir} \ + --enable-shared \ + --disable-static \ --enable-compat185 \ - --enable-rpc \ - --enable-posixmutexes \ --enable-cxx \ - %{?with_tcl:--enable-tcl} \ - %{?with_tcl:--with-tcl=/usr/lib} \ + --enable-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}' \ @@ -312,25 +347,38 @@ 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} +%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} +%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 @@ -338,28 +386,37 @@ 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 -mv -f $RPM_BUILD_ROOT%{_libdir}/*.jar $RPM_BUILD_ROOT%{_javadir} +ln -sf db-%{libver}.jar $RPM_BUILD_ROOT%{_javadir}/db.jar %endif %if %{with tcl} ln -sf libdb_tcl-%{libver}.so libdb_tcl.so ln -sf libdb_tcl-%{libver}.la libdb_tcl.la %endif -ln -sf libdb_cxx-%{libver}.la libdb_cxx.la %if %{with static_libs} -mv -f libdb.a libdb-%{libver}.a ln -sf libdb-%{libver}.a libdb.a ln -sf libdb-%{libver}.a libdb4.a ln -sf libdb-%{libver}.a libndbm.a -mv -f libdb_cxx.a libdb_cxx-%{libver}.a ln -sf libdb_cxx-%{libver}.a libdb_cxx.a %endif -ln -sf libdb_cxx-%{libver}.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 +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} @@ -373,6 +430,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 @@ -387,24 +447,46 @@ rm -rf $RPM_BUILD_ROOT %files %defattr(644,root,root,755) -%doc LICENSE README +%doc LICENSE README docs/index.html docs/license +%if %{with default_db} %attr(755,root,root) /%{_lib}/libdb-%{libver}.so -%dir %{_docdir}/db-%{version}-docs -%{_docdir}/db-%{version}-docs/index.html -%{_docdir}/db-%{version}-docs/license +%else +%attr(755,root,root) %{_libdir}/libdb-%{libver}.so +%endif %files devel %defattr(644,root,root,755) +%{_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-%{libver}.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 @@ -414,16 +496,8 @@ 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-%{libver}.a -%{_libdir}/libdb4.a -%{_libdir}/libdb.a -%{_libdir}/libndbm.a %endif %files cxx @@ -432,9 +506,11 @@ rm -rf $RPM_BUILD_ROOT %files cxx-devel %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/libdb_cxx.so %{_libdir}/libdb_cxx-%{libver}.la +%if %{with default_db} +%attr(755,root,root) %{_libdir}/libdb_cxx.so %{_libdir}/libdb_cxx.la +%endif %{_includedir}/db_cxx.h %{_docdir}/db-%{version}-docs/api_cxx %{_docdir}/db-%{version}-docs/gsg/CXX @@ -446,20 +522,27 @@ rm -rf $RPM_BUILD_ROOT %files cxx-static %defattr(644,root,root,755) %{_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-%{libver}.so +%{_javadir}/db-%{libver}.jar +%if %{with default_db} %{_javadir}/db.jar +%endif %files java-devel %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/libdb_java.so %{_libdir}/libdb_java-%{libver}.la +%if %{with default_db} +%attr(755,root,root) %{_libdir}/libdb_java.so %{_libdir}/libdb_java.la +%endif %{_docdir}/db-%{version}-docs/collections %{_docdir}/db-%{version}-docs/gsg/JAVA %{_docdir}/db-%{version}-docs/gsg_txn/JAVA @@ -475,26 +558,45 @@ rm -rf $RPM_BUILD_ROOT %files tcl-devel %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/libdb_tcl.so %{_libdir}/libdb_tcl-%{libver}.la +%if %{with default_db} +%attr(755,root,root) %{_libdir}/libdb_tcl.so %{_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 +%dir %{_docdir}/db-%{version}-docs %{_docdir}/db-%{version}-docs/utility