diff options
author | Carlos Aznarán Laos | 2022-12-07 00:22:33 -0500 |
---|---|---|
committer | Carlos Aznarán Laos | 2022-12-07 00:22:33 -0500 |
commit | e73114fa55d02e4f3eaa4e5381ba3f22ce50354e (patch) | |
tree | d72ee11a7fa5784f8531c42195e55b7b6f48c0aa | |
parent | 2769eef64f39a2623d9689d5961176586f8ca820 (diff) | |
download | aur-e73114fa55d02e4f3eaa4e5381ba3f22ce50354e.tar.gz |
Fix python bindings
-rw-r--r-- | .SRCINFO | 22 | ||||
-rw-r--r-- | PKGBUILD | 85 |
2 files changed, 51 insertions, 56 deletions
@@ -1,17 +1,17 @@ pkgbase = dumux pkgdesc = An open-source simulator and research code in modern C++ pkgver = 3.6.0 - pkgrel = 1 + pkgrel = 2 url = https://dumux.org arch = x86_64 - license = GPL3 - makedepends = dune-grid>=2.8.0 - makedepends = dune-istl>=2.8.0 - makedepends = dune-localfunctions>=2.8.0 makedepends = doxygen makedepends = graphviz - makedepends = python-setuptools - optdepends = dune-alugrid + makedepends = python-scikit-build + makedepends = python-ninja + depends = dune-grid>=2.9.0 + depends = dune-istl>=2.9.0 + depends = dune-localfunctions>=2.9.0 + optdepends = dune-alugrid: for grid manager ALUGrid support optdepends = dune-foamgrid: for grid manager FoamGrids support optdepends = dune-functions: for functions spaces support optdepends = opm-grid: for cornerpoint grid support @@ -22,11 +22,3 @@ pkgbase = dumux sha512sums = c47f478297865baddbf3a0770f92a035807f3b87e2ba4becbb03fcc08d073684973a621688c13750d3840fb34f83ad19a091018e5529382a1e049c68bee18d08 pkgname = dumux - depends = dune-grid>=2.8.0 - depends = dune-istl>=2.8.0 - depends = dune-localfunctions>=2.8.0 - -pkgname = python-dumux - pkgdesc = An open-source simulator and research code in modern C++ (python bindings) - depends = dumux>=3.6.0 - depends = python-dune-common>=2.8.0 @@ -1,68 +1,71 @@ # Maintainer: Carlos Aznarán <caznaranl@uni.pe> -pkgbase=dumux -pkgname=(${pkgbase} python-${pkgbase}) -pkgver=3.6.0 -_tar="${pkgver}/${pkgbase}-${pkgver}.tar.gz" -pkgrel=1 +pkgname=dumux +_dunever=2.9.0 +_tarver=3.6.0 +_tar="${_tarver}/${pkgname}-${_tarver}.tar.gz" +pkgver="${_tarver}" +pkgrel=2 pkgdesc="An open-source simulator and research code in modern C++" arch=(x86_64) -url="https://${pkgbase}.org" -license=(GPL3) -_dunever=2.8.0 -makedepends=("dune-grid>=${_dunever}" "dune-istl>=${_dunever}" "dune-localfunctions>=${_dunever}" doxygen graphviz python-setuptools) -optdepends=('dune-alugrid' +url="https://${pkgname}.org" +depends=("dune-grid>=${_dunever}" "dune-istl>=${_dunever}" "dune-localfunctions>=${_dunever}") +makedepends=(doxygen graphviz python-scikit-build python-ninja) +optdepends=('dune-alugrid: for grid manager ALUGrid support' 'dune-foamgrid: for grid manager FoamGrids support' 'dune-functions: for functions spaces support' 'opm-grid: for cornerpoint grid support' 'dune-subgrid: for grid manager SubGrid support' 'dune-spgrid: for grid manager SPGrid support' 'dune-mmesh: for grid manager MMesh support') -source=(https://git.iws.uni-stuttgart.de/${pkgbase}-repositories/${pkgbase}/-/archive/${_tar}) +source=(https://git.iws.uni-stuttgart.de/${pkgname}-repositories/${pkgname}/-/archive/${_tar}) sha512sums=('c47f478297865baddbf3a0770f92a035807f3b87e2ba4becbb03fcc08d073684973a621688c13750d3840fb34f83ad19a091018e5529382a1e049c68bee18d08') prepare() { - sed -i 's/#include <opm\/parser\/eclipse\/Parser\/Parser.hpp>/#include <opm\/input\/eclipse\/Parser\/Parser.hpp>/' ${pkgbase}-${pkgver}/dumux/io/grid/cpgridmanager.hh - sed -i 's/#include <opm\/parser\/eclipse\/Parser\/ParseContext.hpp>/#include <opm\/input\/eclipse\/Parser\/ParseContext.hpp>/' ${pkgbase}-${pkgver}/dumux/io/grid/cpgridmanager.hh - sed -i 's/#include <opm\/parser\/eclipse\/Deck\/Deck.hpp>/#include <opm\/input\/eclipse\/Deck\/Deck.hpp>/' ${pkgbase}-${pkgver}/dumux/io/grid/cpgridmanager.hh - sed -i 's/#include <opm\/parser\/eclipse\/EclipseState\/EclipseState.hpp>/#include <opm\/input\/eclipse\/EclipseState\/EclipseState.hpp>/' ${pkgbase}-${pkgver}/dumux/io/grid/cpgridmanager.hh + cd ${pkgname}-${pkgver} + export _pyversion=$(python -c "import sys; print(f'{sys.version_info.major}.{sys.version_info.minor}')") - sed -i 's/#include <opm\/parser\/eclipse\/Deck\/Deck.hpp>/#include <opm\/input\/eclipse\/Deck\/Deck.hpp>/' ${pkgbase}-${pkgver}/test/porousmediumflow/2p/cornerpoint/spatialparams.hh - sed -i 's/getKeyword("PORO").getRawDoubleData()/getKeywordList("PORO").back()->getRawDoubleData()/' ${pkgbase}-${pkgver}/test/porousmediumflow/2p/cornerpoint/spatialparams.hh - sed -i 's/getKeyword("PERMX").getRawDoubleData()/getKeywordList("PERMX").back()->getRawDoubleData()/' ${pkgbase}-${pkgver}/test/porousmediumflow/2p/cornerpoint/spatialparams.hh - sed -i 's/getKeyword("PERMZ").getRawDoubleData()/getKeywordList("PERMZ").back()->getRawDoubleData()/' ${pkgbase}-${pkgver}/test/porousmediumflow/2p/cornerpoint/spatialparams.hh - sed -i 's/^Version: '"${pkgver::3}"'-git/Version: '"${pkgver}"'/' ${pkgbase}-${pkgver}/dune.module + sed -i 's/#include <opm\/parser\/eclipse\/Parser\/Parser.hpp>/#include <opm\/input\/eclipse\/Parser\/Parser.hpp>/' dumux/io/grid/cpgridmanager.hh + sed -i 's/#include <opm\/parser\/eclipse\/Parser\/ParseContext.hpp>/#include <opm\/input\/eclipse\/Parser\/ParseContext.hpp>/' dumux/io/grid/cpgridmanager.hh + sed -i 's/#include <opm\/parser\/eclipse\/Deck\/Deck.hpp>/#include <opm\/input\/eclipse\/Deck\/Deck.hpp>/' dumux/io/grid/cpgridmanager.hh + sed -i 's/#include <opm\/parser\/eclipse\/EclipseState\/EclipseState.hpp>/#include <opm\/input\/eclipse\/EclipseState\/EclipseState.hpp>/' dumux/io/grid/cpgridmanager.hh + + sed -i 's/#include <opm\/parser\/eclipse\/Deck\/Deck.hpp>/#include <opm\/input\/eclipse\/Deck\/Deck.hpp>/' test/porousmediumflow/2p/cornerpoint/spatialparams.hh + sed -i 's/getKeyword("PORO").getRawDoubleData()/getKeywordList("PORO").back()->getRawDoubleData()/' test/porousmediumflow/2p/cornerpoint/spatialparams.hh + sed -i 's/getKeyword("PERMX").getRawDoubleData()/getKeywordList("PERMX").back()->getRawDoubleData()/' test/porousmediumflow/2p/cornerpoint/spatialparams.hh + sed -i 's/getKeyword("PERMZ").getRawDoubleData()/getKeywordList("PERMZ").back()->getRawDoubleData()/' test/porousmediumflow/2p/cornerpoint/spatialparams.hh + sed -i 's/^Version: '"${pkgver%%.0}"'-git/Version: '"${pkgver}"'/' dune.module + python -m venv --system-site-packages _skbuild/linux-${CARCH}-${_pyversion}/cmake-build/dune-env } build() { - cmake \ - -S ${pkgbase}-${pkgver} \ - -B build-cmake \ - -DCMAKE_BUILD_TYPE=None \ - -DCMAKE_INSTALL_PREFIX=/usr \ + cd ${pkgname}-${pkgver} + + XDG_CACHE_HOME="${PWD}" \ + python setup.py build \ + --build-type=None \ + -G 'Unix Makefiles' \ -DBUILD_SHARED_LIBS=TRUE \ -DCMAKE_CXX_STANDARD=17 \ -DCMAKE_C_COMPILER=gcc \ -DCMAKE_CXX_COMPILER=g++ \ + -DCMAKE_C_FLAGS='-Wall -fdiagnostics-color=always' \ + -DCMAKE_CXX_FLAGS="-O2 -Wall -fdiagnostics-color=always -mavx" \ + -DCMAKE_VERBOSE_MAKEFILE=ON \ -DCMAKE_POSITION_INDEPENDENT_CODE=TRUE \ + -DALLOW_CXXFLAGS_OVERWRITE=ON \ + -DCMAKE_DISABLE_FIND_PACKAGE_LATEX=FALSE \ + -DCMAKE_DISABLE_FIND_PACKAGE_Doxygen=FALSE \ -DENABLE_HEADERCHECK=ON \ -DDUNE_ENABLE_PYTHONBINDINGS=ON \ - -DCMAKE_DISABLE_FIND_PACKAGE_Vc=TRUE \ - -Wno-dev - cmake --build build-cmake --target all - cd build-cmake/python - python setup.py build + -DDUNE_PYTHON_INSTALL_LOCATION='none' \ + -DDUNE_PYTHON_WHEELHOUSE="dist" } -package_dumux() { - depends=("dune-grid>=${_dunever}" "dune-istl>=${_dunever}" "dune-localfunctions>=${_dunever}") - DESTDIR="${pkgdir}" cmake --build build-cmake --target install - install -Dm644 ${pkgbase}-${pkgver}/LICENSE.md "${pkgdir}/usr/share/licenses/${pkgbase}/LICENSE" +package() { + cd ${pkgname}-${pkgver} + PYTHONPYCACHEPREFIX="${PWD}/.cache/cpython/" python setup.py --skip-cmake install --prefix=/usr --root="${pkgdir}" --optimize=1 --skip-build + install -Dm 644 LICENSE.md -t "${pkgdir}/usr/share/licenses/${pkgname}" find "${pkgdir}" -type d -empty -delete -} - -package_python-dumux() { - depends=("dumux>=${pkgver}" "python-dune-common>=${_dunever}") - pkgdesc+=" (python bindings)" - cd build-cmake/python - PYTHONPYCACHEPREFIX="${PWD}/.cache/cpython/" python setup.py install --prefix=/usr --root="${pkgdir}" --optimize=1 --skip-build + cd "${pkgdir}" + rm -r usr/python } |