]> git.pld-linux.org Git - packages/hdf5.git/blobdiff - hdf5.spec
- updated to 1.8.12
[packages/hdf5.git] / hdf5.spec
index c78130e4dbf71c564e73bfc13ceb0ab4b97cd89e..fa6c86ae40b1b8c458debd56ccb213ad3828748c 100644 (file)
--- a/hdf5.spec
+++ b/hdf5.spec
@@ -3,26 +3,28 @@
 # - check missing file
 #
 # Conditional build:
-%bcond_without szip    # build without SZIP support
+%bcond_without fortran2003     # Fortran 2003 interface
+%bcond_without szip            # build without SZIP support
 #
 Summary:       Hierarchical Data Format 5 library
 Summary(pl.UTF-8):     Biblioteka HDF5 (Hierarchical Data Format 5)
 Name:          hdf5
-Version:       1.8.5.patch1
+Version:       1.8.12
 Release:       1
 License:       Nearly BSD, but changed sources must be marked
 Group:         Libraries
-Source0:       ftp://ftp.hdfgroup.org/HDF5/current/src/%{name}-1.8.5-patch1.tar.gz
-# Source0-md5: d22a35a17877e369055ed50da5ba91fa
+Source0:       ftp://ftp.hdfgroup.org/HDF5/current/src/%{name}-%{version}.tar.bz2
+# Source0-md5: 75829af785e54332cdef6ad5a4a96607
 Patch0:                %{name}-config.patch
 Patch1:                %{name}-sig.patch
-Patch2:                %{name}-link.patch
+Patch2:                %{name}-cmake.patch
 URL:           http://www.hdfgroup.org/HDF5/
-BuildRequires: autoconf >= 2.53
-BuildRequires: automake
+BuildRequires: autoconf >= 2.69
+BuildRequires: automake >= 1:1.11
+BuildRequires: gcc-fortran >= %{?with_fortran2003:6:4.2}%{!?with_fortran2003:5:4.0}
 BuildRequires: libjpeg-devel >= 6b
 BuildRequires: libstdc++-devel
-BuildRequires: libtool >= 2:1.5
+BuildRequires: libtool >= 2:2.2
 %{?with_szip:BuildRequires:    szip-devel >= 2.0}
 BuildRequires: zlib-devel >= 1.1.3
 Obsoletes:     hdf5_hl
@@ -111,6 +113,48 @@ C++ APIs for HDF5 (both base hdf5 and hdf5_hl) - static libraries.
 API C++ dla bibliotek HDF5 (zarówno podstawowej hdf5, jak i hdf5_hl) -
 biblioteki statyczne.
 
+%package fortran
+Summary:       Fortran APIs for HDF5
+Summary(pl.UTF-8):     API Fortran bibliotek HDF5
+Group:         Libraries
+Requires:      %{name} = %{version}-%{release}
+
+%description fortran
+Fortran APIs for HDF5 (both base hdf5 and hdf5_hl).
+
+%description fortran -l pl.UTF-8
+API Fortran dla bibliotek HDF5 (zarówno podstawowej hdf5, jak i
+hdf5_hl).
+
+%package fortran-devel
+Summary:       Header files for HDF5 Fortran APIs
+Summary(pl.UTF-8):     Pliki nagłówkowe API Fortran bibliotek HDF5
+Group:         Development/Libraries
+Requires:      %{name}-devel = %{version}-%{release}
+Requires:      %{name}-fortran = %{version}-%{release}
+Requires:      gcc-fortran >= %{?with_fortran2003:6:4.2}%{!?with_fortran2003:5:4.0}
+
+%description fortran-devel
+Module and header files for HDF5 Fortran APIs (both base hdf5 and
+hdf5_hl).
+
+%description fortran-devel -l pl.UTF-8
+Moduły i pliki nagłówkowe API C++ bibliotek HDF5 (zarówno podstawowej
+hdf5, jak i hdf5_hl).
+
+%package fortran-static
+Summary:       Fortran APIs for HDF5 - static libraries
+Summary(pl.UTF-8):     API Fortran bibliotek HDF5 - biblioteki statyczne
+Group:         Development/Libraries
+Requires:      %{name}-fortran-devel = %{version}-%{release}
+
+%description fortran-static
+Fortran APIs for HDF5 (both base hdf5 and hdf5_hl) - static libraries.
+
+%description fortran-static -l pl.UTF-8
+API Fortran dla bibliotek HDF5 (zarówno podstawowej hdf5, jak i
+hdf5_hl) - biblioteki statyczne.
+
 %package progs
 Summary:       HDF5 utilities
 Summary(pl.UTF-8):     Narzędzia do plików HDF5
@@ -124,7 +168,7 @@ Utilities to convert from/to HDF5 format.
 Narzędzia do konwersji z i to formatu HDF5.
 
 %prep
-%setup -q -n %{name}-1.8.5-patch1
+%setup -q
 %patch0 -p1
 %patch1 -p1
 %patch2 -p1
@@ -137,14 +181,16 @@ Narzędzia do konwersji z i to formatu HDF5.
 %{__automake}
 %configure \
        --docdir=%{_docdir} \
+       --disable-silent-rules \
        --enable-cxx \
+       --enable-fortran \
+       %{?with_fortran2003:--enable-fortran2003} \
        --enable-linux-lfs \
        --enable-production \
        --with-pthread \
        %{?with_szip:--with-szlib}
 
 #      --enable-threadsafe is incompatible with cxx/fortran
-#      --enable-fortran  - requires Fortran90 compiler
 
 %{__make}
 
@@ -167,6 +213,40 @@ install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}/hl
 %{__make} -C hl/c++/examples install-examples \
        EXAMPLEDIR=$RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}/hl/c++
 
+install -d $RPM_BUILD_ROOT%{_datadir}/cmake/hdf5
+vmajor=$(sed -ne 's/^#define H5_VERS_MAJOR\s*\([0-9]\+\).*/\1/p' src/H5public.h)
+vminor=$(sed -ne 's/^#define H5_VERS_MINOR\s*\([0-9]\+\).*/\1/p' src/H5public.h)
+vrel=$(sed -ne 's/^#define H5_VERS_RELEASE\s*\([0-9]\+\).*/\1/p' src/H5public.h)
+vsubr=$(sed -ne 's/^#define H5_VERS_SUBRELEASE\s*\([^ \t]\+\).*/\1/p' src/H5public.h)
+for f in FindHDF5.cmake hdf5-config-version.cmake hdf5-config.cmake.install hdf5-targets.cmake hdf5-targets-noconfig.cmake ; do
+       sed -e 's,@HDF5_PACKAGE@,hdf5,' \
+           -e 's,@HDF_PACKAGE_EXT@,,' \
+           -e "s,@HDF5_VERSION_STRING@,%{version}," \
+           -e "s,@HDF5_VERSION_MAJOR@,1.8," \
+           -e "s,@HDF5_VERSION_MINOR@,$vrel," \
+           -e "s,@H5_VERS_MAJOR@,$vmajor," \
+           -e "s,@H5_VERS_MINOR@,$vminor," \
+           -e "s,@H5_VERS_RELEASE@,$vrel," \
+           -e "s,@H5_VERS_SUBRELEASE@,$vsubr," \
+           -e 's,@HDF5_ENABLE_PARALLEL@,OFF,' \
+           -e 's,@HDF5_BUILD_FORTRAN@,ON,' \
+           -e 's,@HDF5_ENABLE_F2003@,%{?with_fortran2003:ON}%{!?with_fortran2003:OFF},' \
+           -e 's,@HDF5_BUILD_CPP_LIB@,ON,' \
+           -e 's,@HDF5_BUILD_TOOLS@,ON,' \
+           -e 's,@HDF5_BUILD_HL_LIB@,ON,' \
+           -e 's,@HDF5_ENABLE_Z_LIB_SUPPORT@,ON,' \
+           -e 's,@HDF5_ENABLE_SZIP_SUPPORT@,%{?with_szip:ON}%{!?with_szip:OFF},' \
+           -e 's,@HDF5_ENABLE_SZIP_ENCODING@,%{?with_szip:ON}%{!?with_szip:OFF},' \
+           -e 's,@BUILD_SHARED_LIBS@,ON,' \
+           -e 's,@HDF5_PACKAGE_EXTLIBS@,OFF,' \
+           -e 's,@ZLIB_PACKAGE_NAME@,zlib,' \
+           -e 's,@SZIP_PACKAGE_NAME@,szip,' \
+           -e 's,@HDF5_LIBRARIES_TO_EXPORT@,hdf5,' \
+           -e "s,@lib@,%{_lib}," \
+               config/cmake/${f}.in > $RPM_BUILD_ROOT%{_datadir}/cmake/hdf5/$f
+done
+mv $RPM_BUILD_ROOT%{_datadir}/cmake/hdf5/hdf5-config.cmake{.install,}
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
@@ -176,13 +256,16 @@ rm -rf $RPM_BUILD_ROOT
 %post  c++ -p /sbin/ldconfig
 %postun        c++ -p /sbin/ldconfig
 
+%post  fortran -p /sbin/ldconfig
+%postun        fortran -p /sbin/ldconfig
+
 %files
 %defattr(644,root,root,755)
 %doc COPYING README.txt release_docs/{HISTORY*.txt,RELEASE.txt}
 %attr(755,root,root) %{_libdir}/libhdf5.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libhdf5.so.6
+%attr(755,root,root) %ghost %{_libdir}/libhdf5.so.8
 %attr(755,root,root) %{_libdir}/libhdf5_hl.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libhdf5_hl.so.6
+%attr(755,root,root) %ghost %{_libdir}/libhdf5_hl.so.8
 # used to show configuration at runtime
 %{_libdir}/libhdf5.settings
 
@@ -196,6 +279,7 @@ rm -rf $RPM_BUILD_ROOT
 %{_includedir}/H5ACpublic.h
 %{_includedir}/H5Apublic.h
 %{_includedir}/H5Cpublic.h
+%{_includedir}/H5DOpublic.h
 %{_includedir}/H5DSpublic.h
 %{_includedir}/H5Dpublic.h
 %{_includedir}/H5Epubgen.h
@@ -222,6 +306,7 @@ rm -rf $RPM_BUILD_ROOT
 %{_includedir}/H5Opublic.h
 %{_includedir}/H5PTpublic.h
 %{_includedir}/H5Ppublic.h
+%{_includedir}/H5PLextern.h
 %{_includedir}/H5Rpublic.h
 %{_includedir}/H5Spublic.h
 %{_includedir}/H5TBpublic.h
@@ -234,7 +319,10 @@ rm -rf $RPM_BUILD_ROOT
 %{_includedir}/H5version.h
 %{_includedir}/hdf5.h
 %{_includedir}/hdf5_hl.h
+
+%{_datadir}/cmake/hdf5
 %dir %{_examplesdir}/%{name}-%{version}
+%{_examplesdir}/%{name}-%{version}/README
 %{_examplesdir}/%{name}-%{version}/run-all-ex.sh
 %{_examplesdir}/%{name}-%{version}/c
 %dir %{_examplesdir}/%{name}-%{version}/hl
@@ -244,16 +332,14 @@ rm -rf $RPM_BUILD_ROOT
 %files static
 %defattr(644,root,root,755)
 %{_libdir}/libhdf5.a
-%{_libdir}/libhdf5_cpp.a
 %{_libdir}/libhdf5_hl.a
-%{_libdir}/libhdf5_hl_cpp.a
 
 %files c++
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libhdf5_cpp.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libhdf5_cpp.so.6
+%attr(755,root,root) %ghost %{_libdir}/libhdf5_cpp.so.8
 %attr(755,root,root) %{_libdir}/libhdf5_hl_cpp.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libhdf5_hl_cpp.so.6
+%attr(755,root,root) %ghost %{_libdir}/libhdf5_hl_cpp.so.8
 
 %files c++-devel
 %defattr(644,root,root,755)
@@ -286,6 +372,7 @@ rm -rf $RPM_BUILD_ROOT
 %{_includedir}/H5IdComponent.h
 %{_includedir}/H5IntType.h
 %{_includedir}/H5Library.h
+%{_includedir}/H5Location.h
 %{_includedir}/H5Object.h
 %{_includedir}/H5PacketTable.h
 %{_includedir}/H5PredType.h
@@ -295,6 +382,65 @@ rm -rf $RPM_BUILD_ROOT
 %{_examplesdir}/%{name}-%{version}/c++
 %{_examplesdir}/%{name}-%{version}/hl/c++
 
+%files c++-static
+%defattr(644,root,root,755)
+%{_libdir}/libhdf5_cpp.a
+%{_libdir}/libhdf5_hl_cpp.a
+
+%files fortran
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libhdf5_fortran.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libhdf5_fortran.so.8
+%attr(755,root,root) %{_libdir}/libhdf5hl_fortran.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libhdf5hl_fortran.so.8
+
+%files fortran-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/h5fc
+%attr(755,root,root) %{_libdir}/libhdf5_fortran.so
+%attr(755,root,root) %{_libdir}/libhdf5hl_fortran.so
+%{_libdir}/libhdf5_fortran.la
+%{_libdir}/libhdf5hl_fortran.la
+%{_includedir}/H5f90i.h
+%{_includedir}/H5f90i_gen.h
+%{_includedir}/h5_dble_interface.mod
+%{_includedir}/h5a.mod
+%{_includedir}/h5a_provisional.mod
+%{_includedir}/h5d.mod
+%{_includedir}/h5d_provisional.mod
+%{_includedir}/h5ds.mod
+%{_includedir}/h5e.mod
+%{_includedir}/h5e_provisional.mod
+%{_includedir}/h5f.mod
+%{_includedir}/h5f_provisional.mod
+%{_includedir}/h5fortran_types.mod
+%{_includedir}/h5g.mod
+%{_includedir}/h5global.mod
+%{_includedir}/h5i.mod
+%{_includedir}/h5im.mod
+%{_includedir}/h5l.mod
+%{_includedir}/h5l_provisional.mod
+%{_includedir}/h5lib.mod
+%{_includedir}/h5lib_provisional.mod
+%{_includedir}/h5lt.mod
+%{_includedir}/h5o.mod
+%{_includedir}/h5o_provisional.mod
+%{_includedir}/h5p.mod
+%{_includedir}/h5p_provisional.mod
+%{_includedir}/h5r.mod
+%{_includedir}/h5r_provisional.mod
+%{_includedir}/h5s.mod
+%{_includedir}/h5t.mod
+%{_includedir}/h5t_provisional.mod
+%{_includedir}/h5tb.mod
+%{_includedir}/h5z.mod
+%{_includedir}/hdf5.mod
+
+%files fortran-static
+%defattr(644,root,root,755)
+%{_libdir}/libhdf5_fortran.a
+%{_libdir}/libhdf5hl_fortran.a
+
 %files progs
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/gif2h5
This page took 1.131486 seconds and 4 git commands to generate.