summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorGoliathLabs2020-06-28 17:37:22 +0200
committerGoliathLabs2020-06-28 17:37:22 +0200
commit1f948d90f1dc5f98182df0b84115c13bfbdf9bb6 (patch)
tree88d04b9f09ad4d4ab52796336cda686fd872c093
parentc87e2d4feab7c52c4e1c05ddbfa73826d7eaa144 (diff)
downloadaur-1f948d90f1dc5f98182df0b84115c13bfbdf9bb6.tar.gz
Updated: 1.12.0
-rw-r--r--.SRCINFO10
-rw-r--r--PKGBUILD70
-rw-r--r--hdf5-1.12.0-compat-1.6.patch89
3 files changed, 137 insertions, 32 deletions
diff --git a/.SRCINFO b/.SRCINFO
index ec0df3c0054c..c248882aff35 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,16 +1,20 @@
pkgbase = lib32-hdf5
pkgdesc = General purpose library and file format for storing scientific data (32-bit)
- pkgver = 1.10.4
+ pkgver = 1.12.0
pkgrel = 1
url = https://portal.hdfgroup.org/display/support
arch = x86_64
license = custom
+ makedepends = cmake
makedepends = time
makedepends = gcc-fortran-multilib
depends = lib32-zlib
depends = lib32-libaec
- source = https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.10/hdf5-1.10.4/src/hdf5-1.10.4.tar.bz2
- md5sums = 886148d0cc9ffd3c8e1fce0bd75ed07b
+ depends = bash
+ source = https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.12/hdf5-1.12.0/src/hdf5-1.12.0.tar.bz2
+ source = hdf5-1.12.0-compat-1.6.patch
+ sha256sums = 97906268640a6e9ce0cde703d5a71c9ac3092eded729591279bf2e3ca9765f61
+ sha256sums = 72ad497c56760bb3af8193c88d3fa264125829850b843697de55d934c56f7f44
pkgname = lib32-hdf5
diff --git a/PKGBUILD b/PKGBUILD
index b33998652830..de7e79bd6ae3 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,27 +1,40 @@
-# Maintainer : George Eleftheriou <eleftg>
+# Maintainer:
+# Contributor: Felix Golatofski <contact@xdfr.de>
+# Contributor: George Eleftheriou <eleftg>
# Contributor: orumin <dev at orum.in>
_pkgname=hdf5
pkgname=lib32-${_pkgname}
-pkgver=1.10.4
+pkgver=1.12.0
pkgrel=1
pkgdesc="General purpose library and file format for storing scientific data (32-bit)"
arch=('x86_64')
url="https://portal.hdfgroup.org/display/support"
-license=('custom')
-depends=('lib32-zlib' 'lib32-libaec')
-makedepends=('time' 'gcc-fortran-multilib')
-source=("https://support.hdfgroup.org/ftp/HDF5/releases/${_pkgname}-${pkgver:0:4}/${_pkgname}-${pkgver}/src/${_pkgname}-${pkgver}.tar.bz2")
-md5sums=('886148d0cc9ffd3c8e1fce0bd75ed07b')
-
-prepare() {
- mkdir -p build
-}
+license=(custom)
+depends=(lib32-zlib lib32-libaec bash)
+makedepends=(cmake time gcc-fortran-multilib)
+source=("https://support.hdfgroup.org/ftp/HDF5/releases/${_pkgname}-${pkgver:0:4}/${_pkgname}-${pkgver}/src/${_pkgname}-${pkgver}.tar.bz2"
+ hdf5-1.12.0-compat-1.6.patch)
+sha256sums=('97906268640a6e9ce0cde703d5a71c9ac3092eded729591279bf2e3ca9765f61'
+ '72ad497c56760bb3af8193c88d3fa264125829850b843697de55d934c56f7f44')
build() {
- cd build
+ # Crazy workaround: run CMake to generate pkg-config file
+ mkdir -p build && cd build
+ cmake ../${_pkgname}-${pkgver/_/-} \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DHDF5_BUILD_HL_LIB=ON \
+ -DHDF5_BUILD_CPP_LIB=ON \
+ -DHDF5_BUILD_FORTRAN=ON \
+ -DHDF5_ENABLE_Z_LIB_SUPPORT=ON \
+ -DHDF5_ENABLE_SZIP_SUPPORT=ON \
+ -DHDF5_ENABLE_SZIP_ENCODING=ON
+ # But dont build with it, its quite broken
- "${srcdir}/${_pkgname}-${pkgver}"/configure \
+ cd ${srcdir}/${_pkgname}-${pkgver}
+ ./configure \
CFLAGS="-m32 ${CFLAGS}" \
CXXFLAGS="-m32 ${CXXFLAGS}" \
FCFLAGS="-m32 ${FCFLAGS}" \
@@ -40,29 +53,28 @@ build() {
--with-pic \
--with-zlib \
--with-szlib
-
make
}
check() {
- cd build
-
- # Without exporting LD_LIBRARY_PATH, tests fail being unable to
- # locate the newly built (not installed yet) hdf5 runtime
- export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${srcdir}/build/src/.libs"
- export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${srcdir}/build/c++/src/.libs"
- export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${srcdir}/build/fortran/src/.libs"
- export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${srcdir}/build/hl/src/.libs"
- export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${srcdir}/build/hl/c++/src/.libs"
- export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${srcdir}/build/hl/fortran/src/.libs"
-
+ 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/
make check
}
package() {
- cd build
-
+ cd ${_pkgname}-${pkgver/_/-}
make DESTDIR="${pkgdir}" install
-
- rm -rf "${pkgdir}"/usr/{include,share,bin}
+ install -Dm644 COPYING -t "${pkgdir}"/usr/share/licenses/${_pkgname}
+ # Install pkg-config files from CMake tree
+ install -Dm644 ../build/CMakeFiles/hdf5{,_hl}{,_cpp}-${pkgver}.pc -t "${pkgdir}"/usr/lib/pkgconfig/
+ # Fix 1.6 compatibility for h5py
+ cd "${pkgdir}"/usr/include/
+ patch -p1 -i "${srcdir}"/hdf5-1.12.0-compat-1.6.patch
}
diff --git a/hdf5-1.12.0-compat-1.6.patch b/hdf5-1.12.0-compat-1.6.patch
new file mode 100644
index 000000000000..eda1919dc94b
--- /dev/null
+++ b/hdf5-1.12.0-compat-1.6.patch
@@ -0,0 +1,89 @@
+--- a/H5version.h
++++ b/H5version.h
+@@ -97,6 +97,10 @@
+ #define H5Ewalk_vers 1
+ #endif /* !defined(H5Ewalk_vers) */
+
++#if !defined(H5Fget_info_vers)
++ #define H5Fget_info_vers 1
++#endif /* !defined(H5Fget_info_vers) */
++
+ #if !defined(H5Gcreate_vers)
+ #define H5Gcreate_vers 1
+ #endif /* !defined(H5Gcreate_vers) */
+@@ -105,6 +109,38 @@
+ #define H5Gopen_vers 1
+ #endif /* !defined(H5Gopen_vers) */
+
++#if !defined(H5Lget_info_vers)
++ #define H5Lget_info_vers 1
++#endif /* !defined(H5Lget_info_vers) */
++
++#if !defined(H5Lget_info_by_idx_vers)
++ #define H5Lget_info_by_idx_vers 1
++#endif /* !defined(H5Lget_info_by_idx_vers) */
++
++#if !defined(H5Oget_info_vers)
++ #define H5Oget_info_vers 1
++#endif /* !defined(H5Oget_info_vers) */
++
++#if !defined(H5Oget_info_by_idx_vers)
++ #define H5Oget_info_by_idx_vers 1
++#endif /* !defined(H5Oget_info_by_idx_vers) */
++
++#if !defined(H5Oget_info_by_name_vers)
++ #define H5Oget_info_by_name_vers 1
++#endif /* !defined(H5Oget_info_by_name_vers) */
++
++#if !defined(H5Ovisit_vers)
++ #define H5Ovisit_vers 1
++#endif /* !defined(H5Ovisit_vers) */
++
++#if !defined(H5Ovisit_by_name_vers)
++ #define H5Ovisit_by_name_vers 1
++#endif /* !defined(H5Ovisit_by_name_vers) */
++
++#if !defined(H5Pencode_vers)
++ #define H5Pencode_vers 1
++#endif /* !defined(H5Pencode_vers) */
++
+ #if !defined(H5Pget_filter_vers)
+ #define H5Pget_filter_vers 1
+ #endif /* !defined(H5Pget_filter_vers) */
+@@ -133,6 +169,10 @@
+ #define H5Tarray_create_vers 1
+ #endif /* !defined(H5Tarray_create_vers) */
+
++#if !defined(H5Sencode_vers)
++ #define H5Sencode_vers 1
++#endif /* !defined(H5Sencode_vers) */
++
+ #if !defined(H5Tcommit_vers)
+ #define H5Tcommit_vers 1
+ #endif /* !defined(H5Tcommit_vers) */
+@@ -153,6 +193,14 @@
+ #define H5E_auto_t_vers 1
+ #endif /* !defined(H5E_auto_t_vers) */
+
++#if !defined(H5O_info_t_vers)
++ #define H5O_info_t_vers 1
++#endif /* !defined(H5O_info_t_vers) */
++
++#if !defined(H5O_iterate_t_vers)
++ #define H5O_iterate_t_vers 1
++#endif /* !defined(H5O_iterate_t_vers) */
++
+ #if !defined(H5Z_class_t_vers)
+ #define H5Z_class_t_vers 1
+ #endif /* !defined(H5Z_class_t_vers) */
+@@ -261,6 +309,10 @@
+ #define H5Ovisit_by_name_vers 1
+ #endif /* !defined(H5Ovisit_by_name_vers) */
+
++#if !defined(H5Pencode_vers)
++ #define H5Pencode_vers 1
++#endif /* !defined(H5Pencode_vers) */
++
+ #if !defined(H5Pget_filter_vers)
+ #define H5Pget_filter_vers 2
+ #endif /* !defined(H5Pget_filter_vers) */