Date: Thursday, August 23, 2018 @ 20:42:29 Author: archange Revision: 373480
archrelease: copy trunk to community-staging-x86_64 Added: hdf5-openmpi/repos/community-staging-x86_64/ hdf5-openmpi/repos/community-staging-x86_64/PKGBUILD (from rev 373479, hdf5-openmpi/trunk/PKGBUILD) hdf5-openmpi/repos/community-staging-x86_64/mpi.patch (from rev 373479, hdf5-openmpi/trunk/mpi.patch) -----------+ PKGBUILD | 79 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ mpi.patch | 18 +++++++++++++ 2 files changed, 97 insertions(+) Copied: hdf5-openmpi/repos/community-staging-x86_64/PKGBUILD (from rev 373479, hdf5-openmpi/trunk/PKGBUILD) =================================================================== --- community-staging-x86_64/PKGBUILD (rev 0) +++ community-staging-x86_64/PKGBUILD 2018-08-23 20:42:29 UTC (rev 373480) @@ -0,0 +1,79 @@ +# $Id$ +# Maintainer: Ronald van Haren <ronald.archlinux.org> +# Maintainer: Bruno Pagani <archa...@archlinux.org> +# Contributor: Stefan Husmann <stefan-husm...@t-online.de> +# Contributor: damir <da...@archlinux.org> +# Contributor: Tom K <t...@runbox.com> +# Contributor: Jed Brown <j...@59a2.org> +# Contributor: Simone Pezzuto <junki....@gmail.com> + +_pkgname=hdf5 +_mpi=openmpi +pkgname=${_pkgname}-${_mpi} +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" +license=('custom') +depends=('zlib' 'libaec' 'bash' 'openmpi') +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=('56c5039103c51a40e493b43c504ce982' + 'dfa8dd50b8a7ebb3ad7249c627156cf9') +sha256sums=('c65cdcce4724a57fd3f8da9f0d109b497be30092acb9fac634d1291190d905a9' + '603006358175b7a8b35fa44c484cddf45c0381cf50db4fb7c50ea5969d361eca') + +prepare() { + mkdir -p build + + cd ${_pkgname}-${pkgver/_/-} + # FS#33343 + patch -p1 -i ../mpi.patch +} + +build() { + 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 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 build + + make DESTDIR="${pkgdir}" install + + 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 +} Copied: hdf5-openmpi/repos/community-staging-x86_64/mpi.patch (from rev 373479, hdf5-openmpi/trunk/mpi.patch) =================================================================== --- community-staging-x86_64/mpi.patch (rev 0) +++ community-staging-x86_64/mpi.patch 2018-08-23 20:42:29 UTC (rev 373480) @@ -0,0 +1,18 @@ +Prevent accidental inclusion of mpi c++ headers +when hdf5.h is included third party library + +https://bugs.gentoo.org/show_bug.cgi?id=420777 +https://bugs.archlinux.org/task/33343 + +--- a/src/H5public.h ++++ b/src/H5public.h +@@ -58,6 +58,8 @@ + # include <stddef.h> + #endif + #ifdef H5_HAVE_PARALLEL ++# define OMPI_SKIP_MPICXX /* Make sure that cxx specific headers are not included */ ++# define MPICH_SKIP_MPICXX + # include <mpi.h> + #ifndef MPI_FILE_NULL /*MPIO may be defined in mpi.h already */ + # include <mpio.h> +