[arch-commits] Commit in python-h5py-openmpi/repos (4 files)
Bruno Pagani
archange at archlinux.org
Fri Apr 24 22:29:45 UTC 2020
Date: Friday, April 24, 2020 @ 22:29:45
Author: archange
Revision: 619605
archrelease: copy trunk to community-staging-x86_64
Added:
python-h5py-openmpi/repos/community-staging-x86_64/
python-h5py-openmpi/repos/community-staging-x86_64/PKGBUILD
(from rev 619604, python-h5py-openmpi/trunk/PKGBUILD)
python-h5py-openmpi/repos/community-staging-x86_64/h5py-2.10.0-hdf5-v1.12-h5i.patch
(from rev 619604, python-h5py-openmpi/trunk/h5py-2.10.0-hdf5-v1.12-h5i.patch)
python-h5py-openmpi/repos/community-staging-x86_64/python-h5py-hd5-1.12.patch
(from rev 619604, python-h5py-openmpi/trunk/python-h5py-hd5-1.12.patch)
----------------------------------+
PKGBUILD | 54 +++++++++++++++++++++++++++++++++++++
h5py-2.10.0-hdf5-v1.12-h5i.patch | 23 +++++++++++++++
python-h5py-hd5-1.12.patch | 37 +++++++++++++++++++++++++
3 files changed, 114 insertions(+)
Copied: python-h5py-openmpi/repos/community-staging-x86_64/PKGBUILD (from rev 619604, python-h5py-openmpi/trunk/PKGBUILD)
===================================================================
--- community-staging-x86_64/PKGBUILD (rev 0)
+++ community-staging-x86_64/PKGBUILD 2020-04-24 22:29:45 UTC (rev 619605)
@@ -0,0 +1,54 @@
+# Maintainer: Bruno Pagani <archange at archlinux.org>
+# Contributor: Joey Dumont <joey.dumont at gmail.com>
+
+_pkg=h5py
+_mpi=openmpi
+pkgname=python-${_pkg}-${_mpi}
+pkgver=2.10.0
+pkgrel=2
+pkgdesc="General-purpose Python bindings for the HDF5 library (${_mpi} version)"
+arch=(x86_64)
+url="https://www.h5py.org/"
+license=(BSD)
+depends=(hdf5-${_mpi} python-numpy python-six python-mpi4py)
+makedepends=(cython python-pkgconfig)
+checkdepends=(inetutils python-pytest)
+conflicts=(python-h5py)
+provides=(python-h5py)
+source=(https://files.pythonhosted.org/packages/source/h/${_pkg}/${_pkg}-${pkgver}.tar.gz
+ python-h5py-hd5-1.12.patch
+ h5py-2.10.0-hdf5-v1.12-h5i.patch)
+sha256sums=('84412798925dc870ffd7107f045d7659e60f5d46d1c70c700375248bf6bf512d'
+ '0533a13f65de73ea9b61220cdb367038b441a61ac7468ebcda549a15c47f879b'
+ 'b8686225d69b3bb103b5153a4783569eec98ca49be136623bcad18d140427e64')
+validpgpkeys=(AC47F71DB275ECD0B3DA46E857FA4540DD4EFCF7 # Thomas A Caswell (Brookhaven National Lab) <tcaswell at bnl.gov>
+ 96B7334D7610EE3E68AFFE589E027116943D6A8B) # Thomas A Caswell <tcaswell at bnl.gov> (new key)
+# See https://github.com/h5py/h5py/issues/1299 about lack of GPG sigs for recent releases
+
+prepare() {
+ # Remove RPATH
+ sed -i "s/settings\\['runtime_library_dirs'\\] = settings\\['library_dirs'\\]/pass/" ${_pkg}-${pkgver}/setup_build.py
+ cd ${_pkg}-${pkgver}
+ patch -p1 -i ../h5py-2.10.0-hdf5-v1.12-h5i.patch
+ patch -p1 -i ../python-h5py-hd5-1.12.patch
+}
+
+build() {
+ export CC=mpicc
+ cd ${_pkg}-${pkgver}
+ python setup.py configure --mpi
+ python setup.py build
+}
+
+check() {
+ cd ${_pkg}-${pkgver}
+ # Ongoing issues with hdf5 1.12 https://github.com/h5py/h5py/pull/1536
+ python setup.py test || warning "Tests failed"
+}
+
+package() {
+ cd ${_pkg}-${pkgver}
+ python setup.py install --root="${pkgdir}" --skip-build --optimize=1
+
+ install -Dm644 licenses/license.txt -t "${pkgdir}"/usr/share/licenses/${pkgname}/
+}
Copied: python-h5py-openmpi/repos/community-staging-x86_64/h5py-2.10.0-hdf5-v1.12-h5i.patch (from rev 619604, python-h5py-openmpi/trunk/h5py-2.10.0-hdf5-v1.12-h5i.patch)
===================================================================
--- community-staging-x86_64/h5py-2.10.0-hdf5-v1.12-h5i.patch (rev 0)
+++ community-staging-x86_64/h5py-2.10.0-hdf5-v1.12-h5i.patch 2020-04-24 22:29:45 UTC (rev 619605)
@@ -0,0 +1,23 @@
+diff --git a/h5py/api_types_hdf5.pxd b/h5py/api_types_hdf5.pxd
+index a282ecc..5bc76fa 100644
+--- a/h5py/api_types_hdf5.pxd
++++ b/h5py/api_types_hdf5.pxd
+@@ -297,7 +297,6 @@ cdef extern from "hdf5.h":
+ H5I_DATASPACE, # group ID for Dataspace objects
+ H5I_DATASET, # group ID for Dataset objects
+ H5I_ATTR, # group ID for Attribute objects
+- H5I_REFERENCE, # group ID for Reference objects
+ H5I_VFL, # group ID for virtual file layer
+ H5I_GENPROP_CLS, # group ID for generic property list classes
+ H5I_GENPROP_LST, # group ID for generic property lists
+diff --git a/h5py/h5i.pyx b/h5py/h5i.pyx
+index 9033d50..bb5867c 100644
+--- a/h5py/h5i.pyx
++++ b/h5py/h5i.pyx
+@@ -23,6 +23,5 @@ DATASPACE = H5I_DATASPACE
+ DATASET = H5I_DATASET
+ ATTR = H5I_ATTR
+-REFERENCE = H5I_REFERENCE
+ GENPROP_CLS = H5I_GENPROP_CLS
+ GENPROP_LST = H5I_GENPROP_LST
+ DATATYPE = H5I_DATATYPE
Copied: python-h5py-openmpi/repos/community-staging-x86_64/python-h5py-hd5-1.12.patch (from rev 619604, python-h5py-openmpi/trunk/python-h5py-hd5-1.12.patch)
===================================================================
--- community-staging-x86_64/python-h5py-hd5-1.12.patch (rev 0)
+++ community-staging-x86_64/python-h5py-hd5-1.12.patch 2020-04-24 22:29:45 UTC (rev 619605)
@@ -0,0 +1,37 @@
+diff --git a/h5py/_conv.pyx b/h5py/_conv.pyx
+index 9bc8f5cf8..93cc6fdf4 100644
+--- a/h5py/_conv.pyx
++++ b/h5py/_conv.pyx
+@@ -400,7 +400,7 @@ cdef int conv_regref2pyref(void* ipt, void* opt, void* bkg, void* priv) except -
+ cdef PyObject* bkg_obj0
+
+ memcpy(&bkg_obj0, bkg_obj, sizeof(bkg_obj0));
+- memcpy(ref.ref.reg_ref, buf_ref, sizeof(hdset_reg_ref_t))
++ memcpy(ref.ref.reg_ref.data, buf_ref, sizeof(hdset_reg_ref_t))
+
+ ref.typecode = H5R_DATASET_REGION
+
+@@ -430,7 +430,7 @@ cdef int conv_pyref2regref(void* ipt, void* opt, void* bkg, void* priv) except -
+ if not isinstance(obj, RegionReference):
+ raise TypeError("Can't convert incompatible object to HDF5 region reference")
+ ref = <RegionReference>(buf_obj0)
+- memcpy(buf_ref, ref.ref.reg_ref, sizeof(hdset_reg_ref_t))
++ memcpy(buf_ref, ref.ref.reg_ref.data, sizeof(hdset_reg_ref_t))
+ else:
+ memset(buf_ref, c'\0', sizeof(hdset_reg_ref_t))
+
+diff --git a/h5py/h5r.pxd b/h5py/h5r.pxd
+index 53bbaf496..825b798fa 100644
+--- a/h5py/h5r.pxd
++++ b/h5py/h5r.pxd
+@@ -13,7 +13,9 @@ from .defs cimport *
+ cdef extern from "hdf5.h":
+
+ ctypedef haddr_t hobj_ref_t
+- ctypedef unsigned char hdset_reg_ref_t[12]
++
++cdef struct hdset_reg_ref_t:
++ uint8_t data[12] # sizeof(haddr_t) + 4 == sizeof(signed long long) + 4
+
+ cdef union ref_u:
+ hobj_ref_t obj_ref
More information about the arch-commits
mailing list