|
|
@ -4,7 +4,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
Name: hdf
|
|
|
|
Name: hdf
|
|
|
|
Version: 4.2.14
|
|
|
|
Version: 4.2.14
|
|
|
|
Release: 2%{?dist}
|
|
|
|
Release: 3%{?dist}
|
|
|
|
Summary: A general purpose library and file format for storing scientific data
|
|
|
|
Summary: A general purpose library and file format for storing scientific data
|
|
|
|
License: BSD
|
|
|
|
License: BSD
|
|
|
|
URL: https://portal.hdfgroup.org/
|
|
|
|
URL: https://portal.hdfgroup.org/
|
|
|
@ -28,23 +28,34 @@ Patch9: hdf-ppc64le.patch
|
|
|
|
# Use only if java is disabled
|
|
|
|
# Use only if java is disabled
|
|
|
|
Patch10: hdf-avoid_syntax_error_el6.patch
|
|
|
|
Patch10: hdf-avoid_syntax_error_el6.patch
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Fix java build
|
|
|
|
|
|
|
|
Patch11: hdf-build.patch
|
|
|
|
|
|
|
|
|
|
|
|
# For destdir/examplesdir patches
|
|
|
|
# For destdir/examplesdir patches
|
|
|
|
BuildRequires: automake, libtool, gcc, gcc-c++
|
|
|
|
BuildRequires: automake, libtool, gcc, gcc-c++
|
|
|
|
|
|
|
|
BuildRequires: chrpath
|
|
|
|
BuildRequires: flex byacc libjpeg-devel zlib-devel %{!?el6:libaec-devel}
|
|
|
|
BuildRequires: flex byacc libjpeg-devel zlib-devel %{!?el6:libaec-devel}
|
|
|
|
BuildRequires: libtirpc-devel
|
|
|
|
BuildRequires: libtirpc-devel
|
|
|
|
BuildRequires: gcc-gfortran, gcc
|
|
|
|
BuildRequires: gcc-gfortran, gcc
|
|
|
|
|
|
|
|
BuildRequires: java-devel
|
|
|
|
|
|
|
|
BuildRequires: javapackages-tools
|
|
|
|
|
|
|
|
BuildRequires: hamcrest
|
|
|
|
|
|
|
|
BuildRequires: junit
|
|
|
|
|
|
|
|
BuildRequires: slf4j
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%description
|
|
|
|
%description
|
|
|
|
HDF is a general purpose library and file format for storing scientific data.
|
|
|
|
HDF4 is a general purpose library and file format for storing scientific data.
|
|
|
|
HDF can store two primary objects: datasets and groups. A dataset is
|
|
|
|
HDF4 can store two primary objects: datasets and groups. A dataset is
|
|
|
|
essentially a multidimensional array of data elements, and a group is a
|
|
|
|
essentially a multidimensional array of data elements, and a group is a
|
|
|
|
structure for organizing objects in an HDF file. Using these two basic
|
|
|
|
structure for organizing objects in an HDF4 file. Using these two basic
|
|
|
|
objects, one can create and store almost any kind of scientific data
|
|
|
|
objects, one can create and store almost any kind of scientific data
|
|
|
|
structure, such as images, arrays of vectors, and structured and unstructured
|
|
|
|
structure, such as images, arrays of vectors, and structured and unstructured
|
|
|
|
grids. You can also mix and match them in HDF files according to your needs.
|
|
|
|
grids. You can also mix and match them in HDF4 files according to your needs.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%package devel
|
|
|
|
%package devel
|
|
|
|
Summary: HDF development files
|
|
|
|
Summary: HDF4 development files
|
|
|
|
Provides: %{name}-static = %{version}-%{release}
|
|
|
|
Provides: %{name}-static = %{version}-%{release}
|
|
|
|
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
|
|
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
|
|
Requires: libjpeg-devel%{?_isa}
|
|
|
|
Requires: libjpeg-devel%{?_isa}
|
|
|
@ -52,7 +63,25 @@ Requires: libtirpc-devel%{?_isa}
|
|
|
|
Requires: zlib-devel%{?_isa}
|
|
|
|
Requires: zlib-devel%{?_isa}
|
|
|
|
|
|
|
|
|
|
|
|
%description devel
|
|
|
|
%description devel
|
|
|
|
HDF development headers and libraries.
|
|
|
|
HDF4 development headers and libraries.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%package static
|
|
|
|
|
|
|
|
Summary: HDF4 static libraries
|
|
|
|
|
|
|
|
Requires: %{name}-devel = %{version}-%{release}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%description static
|
|
|
|
|
|
|
|
HDF4 static libraries.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%package -n java-hdf
|
|
|
|
|
|
|
|
Summary: HDF4 java library
|
|
|
|
|
|
|
|
Requires: slf4j
|
|
|
|
|
|
|
|
Obsoletes: jhdf < 3.3.1-2
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%description -n java-hdf
|
|
|
|
|
|
|
|
HDF4 java library
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%prep
|
|
|
|
%prep
|
|
|
|
%setup -q
|
|
|
|
%setup -q
|
|
|
@ -66,6 +95,19 @@ HDF development headers and libraries.
|
|
|
|
%patch6 -p1 -b .examplesdir
|
|
|
|
%patch6 -p1 -b .examplesdir
|
|
|
|
%patch8 -p1 -b .aarch64
|
|
|
|
%patch8 -p1 -b .aarch64
|
|
|
|
%patch9 -p1 -b .ppc64le
|
|
|
|
%patch9 -p1 -b .ppc64le
|
|
|
|
|
|
|
|
%patch11 -p1 -b .build
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Replace jars with system versions
|
|
|
|
|
|
|
|
find -name \*.jar -delete
|
|
|
|
|
|
|
|
ln -s %{_javadir}/hamcrest/core.jar java/lib/hamcrest-core.jar
|
|
|
|
|
|
|
|
ln -s %{_javadir}/junit.jar java/lib/junit.jar
|
|
|
|
|
|
|
|
ln -s %{_javadir}/slf4j/api.jar java/lib/slf4j-api-1.7.5.jar
|
|
|
|
|
|
|
|
ln -s %{_javadir}/slf4j/nop.jar java/lib/ext/slf4j-nop-1.7.5.jar
|
|
|
|
|
|
|
|
ln -s %{_javadir}/slf4j/simple.jar java/lib/ext/slf4j-simple-1.7.5.jar
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Fix test output
|
|
|
|
|
|
|
|
junit_ver=$(sed -n '/<version>/{s/^.*>\([0-9]\.[0-9]*\)<.*/\1/;p;q}' /usr/share/maven-poms/junit.pom)
|
|
|
|
|
|
|
|
sed -i -e "s/JUnit version .*/JUnit version $junit_ver/" java/test/testfiles/JUnit-*.txt
|
|
|
|
|
|
|
|
|
|
|
|
## Fix syntax error bacause 'CLASSPATH_ENV=$H4_CLASSPATH' line on epel6 builds
|
|
|
|
## Fix syntax error bacause 'CLASSPATH_ENV=$H4_CLASSPATH' line on epel6 builds
|
|
|
|
# Use only if java is disabled
|
|
|
|
# Use only if java is disabled
|
|
|
@ -79,6 +121,7 @@ find . -type f -name "*.c" -exec chmod 0644 '{}' \;
|
|
|
|
# restore include file timestamps modified by patching
|
|
|
|
# restore include file timestamps modified by patching
|
|
|
|
touch -c -r ./hdf/src/hdfi.h.ppc ./hdf/src/hdfi.h
|
|
|
|
touch -c -r ./hdf/src/hdfi.h.ppc ./hdf/src/hdfi.h
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%build
|
|
|
|
%build
|
|
|
|
|
|
|
|
|
|
|
|
# For destdir/examplesdir patches
|
|
|
|
# For destdir/examplesdir patches
|
|
|
@ -86,15 +129,27 @@ autoreconf -vif
|
|
|
|
# avoid upstream compiler flags settings
|
|
|
|
# avoid upstream compiler flags settings
|
|
|
|
rm config/*linux-gnu
|
|
|
|
rm config/*linux-gnu
|
|
|
|
# TODO: upstream fix
|
|
|
|
# TODO: upstream fix
|
|
|
|
# Shared libraries disabled: libmfhdf.so is not correctly compiled
|
|
|
|
# libmfhdf.so is link to libdf.so
|
|
|
|
# for missing link to libdf.so
|
|
|
|
export CFLAGS="%{optflags} -I%{_includedir}/tirpc"
|
|
|
|
export CFLAGS="%{optflags} -fPIC -I%{_includedir}/tirpc"
|
|
|
|
|
|
|
|
export LIBS="-ltirpc"
|
|
|
|
export LIBS="-ltirpc"
|
|
|
|
export FFLAGS="%{optflags} -fPIC -ffixed-line-length-none"
|
|
|
|
%global _configure ../configure
|
|
|
|
|
|
|
|
# Java test needs this but doesn't create it
|
|
|
|
|
|
|
|
mkdir -p build-shared/java/lib
|
|
|
|
|
|
|
|
cd build-shared
|
|
|
|
|
|
|
|
# Java requires shared libraries, fortran requires static
|
|
|
|
|
|
|
|
%configure --disable-production --enable-java --disable-netcdf \
|
|
|
|
|
|
|
|
--enable-shared=yes --enable-static=no --disable-fortran %{!?el6:--with-szlib} \
|
|
|
|
|
|
|
|
--includedir=%{_includedir}/%{name} --libdir=%{_libdir}/%{name}
|
|
|
|
|
|
|
|
%make_build
|
|
|
|
|
|
|
|
cd -
|
|
|
|
|
|
|
|
mkdir build-static
|
|
|
|
|
|
|
|
cd build-static
|
|
|
|
|
|
|
|
# Java requires shared libraries, fortran requires static
|
|
|
|
%configure --disable-production --disable-java --disable-netcdf \
|
|
|
|
%configure --disable-production --disable-java --disable-netcdf \
|
|
|
|
--enable-shared=no --enable-static=yes --enable-fortran %{!?el6:--with-szlib} \
|
|
|
|
--enable-shared=no --enable-static=yes --enable-fortran %{!?el6:--with-szlib} \
|
|
|
|
--includedir=%{_includedir}/%{name} --libdir=%{_libdir}/%{name}
|
|
|
|
--includedir=%{_includedir}/%{name} --libdir=%{_libdir}/%{name}
|
|
|
|
%make_build
|
|
|
|
%make_build
|
|
|
|
|
|
|
|
cd -
|
|
|
|
|
|
|
|
|
|
|
|
# correct the timestamps based on files used to generate the header files
|
|
|
|
# correct the timestamps based on files used to generate the header files
|
|
|
|
touch -c -r hdf/src/hdf.inc hdf/src/hdf.f90
|
|
|
|
touch -c -r hdf/src/hdf.inc hdf/src/hdf.f90
|
|
|
@ -102,8 +157,11 @@ touch -c -r hdf/src/dffunc.inc hdf/src/dffunc.f90
|
|
|
|
touch -c -r mfhdf/fortran/mffunc.inc mfhdf/fortran/mffunc.f90
|
|
|
|
touch -c -r mfhdf/fortran/mffunc.inc mfhdf/fortran/mffunc.f90
|
|
|
|
# netcdf fortran include need same treatement, but they are not shipped
|
|
|
|
# netcdf fortran include need same treatement, but they are not shipped
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%install
|
|
|
|
%install
|
|
|
|
%make_install
|
|
|
|
%make_install -C build-static
|
|
|
|
|
|
|
|
%make_install -C build-shared
|
|
|
|
|
|
|
|
chrpath --delete --keepgoing %{buildroot}%{_bindir}/* %{buildroot}%{_libdir}/%{name}/*.so.* || :
|
|
|
|
|
|
|
|
|
|
|
|
install -pm 644 MANIFEST README.txt release_notes/*.txt %{buildroot}%{_pkgdocdir}/
|
|
|
|
install -pm 644 MANIFEST README.txt release_notes/*.txt %{buildroot}%{_pkgdocdir}/
|
|
|
|
|
|
|
|
|
|
|
@ -128,22 +186,40 @@ touch -c -r h4config.h h4config.h.tmp
|
|
|
|
mv h4config.h.tmp h4config.h
|
|
|
|
mv h4config.h.tmp h4config.h
|
|
|
|
popd
|
|
|
|
popd
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%check
|
|
|
|
%check
|
|
|
|
make -j1 check
|
|
|
|
make -j1 -C build-shared check
|
|
|
|
|
|
|
|
make -j1 -C build-static check
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%files
|
|
|
|
%files
|
|
|
|
%license COPYING
|
|
|
|
%license COPYING
|
|
|
|
%{_pkgdocdir}/
|
|
|
|
%{_pkgdocdir}/
|
|
|
|
%exclude %{_pkgdocdir}/examples
|
|
|
|
%exclude %{_pkgdocdir}/examples
|
|
|
|
%{_bindir}/*
|
|
|
|
%{_bindir}/*
|
|
|
|
|
|
|
|
%dir %{_libdir}/%{name}
|
|
|
|
|
|
|
|
%{_libdir}/%{name}/*.so.0*
|
|
|
|
%{_mandir}/man1/*.gz
|
|
|
|
%{_mandir}/man1/*.gz
|
|
|
|
|
|
|
|
|
|
|
|
%files devel
|
|
|
|
%files devel
|
|
|
|
%{_includedir}/%{name}/
|
|
|
|
%{_includedir}/%{name}/
|
|
|
|
%{_libdir}/%{name}/
|
|
|
|
%{_libdir}/%{name}/*.so
|
|
|
|
|
|
|
|
%{_libdir}/%{name}/*.settings
|
|
|
|
%{_pkgdocdir}/examples/
|
|
|
|
%{_pkgdocdir}/examples/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%files static
|
|
|
|
|
|
|
|
%{_libdir}/%{name}/*.a
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%files -n java-hdf
|
|
|
|
|
|
|
|
%{_jnidir}/hdf.jar
|
|
|
|
|
|
|
|
%{_libdir}/%{name}/libhdf_java.so
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%changelog
|
|
|
|
%changelog
|
|
|
|
|
|
|
|
* Tue Apr 9 2019 Orion Poplawski <orion@nwra.com> - 4.2.14-3
|
|
|
|
|
|
|
|
- Build shared libraries
|
|
|
|
|
|
|
|
- Enable java
|
|
|
|
|
|
|
|
|
|
|
|
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 4.2.14-2
|
|
|
|
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 4.2.14-2
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
|
|
|
|
|
|
|
|
|
|
|