# Maintainer: Alexander F. Rødseth <xyproto@archlinux.org>
# Contributor: Guilhem Saurel <guilhem@saurel.me>
# Contributor: Michel Zou
# Contributor: Oliver Goethel
# Contributor: Gustavo Alvarez <sl1pkn07@gmail.com>
#
# Upstream disappeared:
#     https://www.salome-platform.org/downloads
#     https://files.salome-platform.org/Salome/other/med-4.1.1.tar.gz
#
# Using a fork on GitHub by one of the FreeCAD developers instead.

pkgname=med-openmpi
pkgver=5.0.0
pkgrel=3
pkgdesc='Library for reading and writing MED files'
url='https://github.com/chennes/med'
license=(LGPL)
arch=(x86_64)
provides=(med)
conflicts=(med)
depends=(hdf5-openmpi python tk)
makedepends=(cmake gcc-fortran git openmpi swig)
source=(git+https://github.com/chennes/med#tag=v$pkgver
        https://src.fedoraproject.org/rpms/med/raw/rawhide/f/hdf5-1.14.patch
        https://src.fedoraproject.org/rpms/med/raw/rawhide/f/med-swig-4.3.0.patch
        https://src.fedoraproject.org/rpms/med/raw/rawhide/f/med-py3.13.patch)
b2sums=('4e37307328cb65124f78566364847d15a2a925cc3aab79d9d269bd2dde9e6b49e1fa30aea8ccf4a36d7307ba61536858a64b7df4827a7f7f9407547cacc394e6'
        '9b4604f62a73e3b70734dbafe21f74f67c9c86da394ed4341b364a703637a2a3c846f35e8c7794bf42378e00ab4f96cdde183d763168cbb7d6d97ca10213a61c'
        '4af313c4b9e867f67c2cb4a91c48922fdf9c678158dd815f76232076c519783f3960e88d44a1f47e3b452b08e897da085813354b94400bfbc4052d29bee09c61'
        'd9f156d822a4ff07d1634cb03dd88ae12d3c174903babdf190f6ccaed6252aeab905df1689351dc2ec8d7e9b04b3974dd05b00b6ea83ffb8396fb5766a33152e')

prepare() {
  cd med
  patch -p1 -i ../hdf5-1.14.patch # Fix build with hdf5 1.14 (Fedora)
  patch -p1 -i ../med-swig-4.3.0.patch
  patch -p1 -i ../med-py3.13.patch
  # install cmake files to /usr/lib${LIB_SUFFIX}/cmake
  sed -i 's,share/cmake,lib${LIB_SUFFIX}/cmake,g' CMakeLists.txt
}

build() {
  cmake \
    -B build \
    -D CMAKE_BUILD_TYPE=Release \
    -D CMAKE_INSTALL_PREFIX=/usr \
    -D CMAKE_SKIP_RPATH=ON \
    -D MEDFILE_BUILD_PYTHON=ON \
    -D MEDFILE_BUILD_TESTS=OFF \
    -D MEDFILE_INSTALL_DOC=OFF \
    -D MEDFILE_USE_MPI=ON \
    -S med
  cmake --build build
}

check() {
  cd build
  LD_LIBRARY_PATH="$srcdir/build/src" ctest -E '._Python' --output-on-failure
}

package() {
  DESTDIR="$pkgdir" cmake --install build
}
