Date: Thursday, August 23, 2018 @ 20:42:22 Author: archange Revision: 373479
upgpkg: hdf5-openmpi 1.10.3-1 Modified: hdf5-openmpi/trunk/PKGBUILD ----------+ PKGBUILD | 84 +++++++++++++++++++++++++++---------------------------------- 1 file changed, 38 insertions(+), 46 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2018-08-23 20:36:20 UTC (rev 373478) +++ PKGBUILD 2018-08-23 20:42:22 UTC (rev 373479) @@ -10,78 +10,70 @@ _pkgname=hdf5 _mpi=openmpi pkgname=${_pkgname}-${_mpi} -pkgver=1.10.2 -pkgrel=2 +pkgver=1.10.3 +pkgrel=1 pkgdesc="General purpose library and file format for storing scientific data (${_mpi} version)" arch=('x86_64') -url="https://www.hdfgroup.org/HDF5/" +url="https://www.hdfgroup.org/hdf5" license=('custom') depends=('zlib' 'libaec' 'bash' 'openmpi') -makedepends=('time' 'gcc-fortran') +makedepends=('cmake' 'time' 'gcc-fortran') provides=('hdf5' 'hdf5-cpp-fortran' "hdf5-fortran-${_mpi}") conflicts=('hdf5') replaces=("hdf5-fortran-${_mpi}") source=("https://support.hdfgroup.org/ftp/HDF5/releases/${_pkgname}-${pkgver:0:4}/${_pkgname}-${pkgver/_/-}/src/${_pkgname}-${pkgver/_/-}.tar.bz2" 'mpi.patch') -md5sums=('41fb9347801b546fba323523a1c1af51' +md5sums=('56c5039103c51a40e493b43c504ce982' 'dfa8dd50b8a7ebb3ad7249c627156cf9') -sha256sums=('1cad5b7bfdf128dfc53cd16fba48f6e7ae4e93c75c371d9ec8dfc4df0c1fcb71' +sha256sums=('c65cdcce4724a57fd3f8da9f0d109b497be30092acb9fac634d1291190d905a9' '603006358175b7a8b35fa44c484cddf45c0381cf50db4fb7c50ea5969d361eca') prepare() { + mkdir -p build + cd ${_pkgname}-${pkgver/_/-} - # Fix building with GCC 8.1 - sed 's/\(.*\)(void) HDF_NO_UBSAN/HDF_NO_UBSAN \1(void)/' -i src/H5detect.c - # FS#33343 patch -p1 -i ../mpi.patch } build() { - cd ${_pkgname}-${pkgver/_/-} - ./configure \ - CXX="mpicxx" \ - CC="mpicc" \ - FC="mpif90" \ - F9X="mpif90" \ - RUNPARALLEL="mpirun" \ - OMPI_MCA_disable_memory_allocator=1 \ - --prefix=/usr \ - --docdir=/usr/share/doc/hdf5/ \ - --disable-static \ - --disable-sharedlib-rpath \ - --enable-build-mode=production \ - --enable-hl \ - --enable-cxx \ - --enable-fortran \ - --enable-parallel \ - --enable-unsupported \ - --with-pic \ - --with-zlib \ - --with-szlib - make + cd build + CXX="mpicxx" \ + CC="mpicc" \ + FC="mpif90" \ + F9X="mpif90" \ + RUNPARALLEL="mpirun" \ + OMPI_MCA_disable_memory_allocator=1 \ + cmake ../${_pkgname}-${pkgver/_/-} \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DBUILD_SHARED_LIBS=ON \ + -DCMAKE_BUILD_TYPE=Release \ + -DALLOW_UNSUPPORTED=ON \ + -DHDF5_BUILD_HL_LIB=ON \ + -DHDF5_BUILD_CPP_LIB=ON \ + -DHDF5_BUILD_FORTRAN=ON \ + -DHDF5_ENABLE_PARALLEL=ON \ + -DHDF5_ENABLE_Z_LIB_SUPPORT=ON \ + -DHDF5_ENABLE_SZIP_SUPPORT=ON \ + -DHDF5_ENABLE_SZIP_ENCODING=ON + cmake --build . --config Release } check() { - cd ${_pkgname}-${pkgver/_/-} - # Without this, checks are failing with messages like “error while loading shared libraries: libhdf5.so.101: cannot open shared object file: No such file or directory” - export LD_LIBRARY_PATH="${srcdir}"/${pkgname}-${pkgver/_/-}/src/.libs/ - export LD_LIBRARY_PATH="$LD_LIBRARY_PATH":"${srcdir}"/${pkgname}-${pkgver/_/-}/c++/src/.libs/ - export LD_LIBRARY_PATH="$LD_LIBRARY_PATH":"${srcdir}"/${pkgname}-${pkgver/_/-}/fortran/src/.libs/ - export LD_LIBRARY_PATH="$LD_LIBRARY_PATH":"${srcdir}"/${pkgname}-${pkgver/_/-}/hl/src/.libs/ - export LD_LIBRARY_PATH="$LD_LIBRARY_PATH":"${srcdir}"/${pkgname}-${pkgver/_/-}/hl/c++/src/.libs/ - export LD_LIBRARY_PATH="$LD_LIBRARY_PATH":"${srcdir}"/${pkgname}-${pkgver/_/-}/hl/fortran/src/.libs/ - # This is a parallel build, they are always OpenMPI bugs - make check || warning "Tests failed" + cd build + # Three expected test failures (https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.10/hdf5-1.10.3/src/hdf5-1.10.3-RELEASE.txt, Known Problems): + # 142 - TEST_PAR_testphdf5 (Failed) + # 146 - TEST_PAR_t_cache_image (Timeout) + # 153 - TEST_PAR_t_shapesame (Failed) + ctest . -C Release || warning "Tests failed" } package() { - cd ${_pkgname}-${pkgver/_/-} + cd build make DESTDIR="${pkgdir}" install - install -dm755 "${pkgdir}"/usr/share/doc/${_pkgname} - mv "${pkgdir}"/usr/share/{hdf5_examples,doc/${_pkgname}/examples} - - install -Dm644 COPYING "${pkgdir}"/usr/share/licenses/${_pkgname}/LICENSE + install -d "${pkgdir}"/usr/share/licenses/${pkgname} + mv "${pkgdir}"/usr/share/COPYING "${pkgdir}"/usr/share/licenses/${pkgname}/ + rm "${pkgdir}"/usr/share/{RELEASE,USING_HDF5_CMake}.txt }