precice: Update to 3.2.0 and enable aarch64 builds (#24179)
This commit is contained in:
@@ -1,11 +0,0 @@
|
||||
--- a/src/xml/ConfigParser.cpp
|
||||
+++ b/src/xml/ConfigParser.cpp
|
||||
@@ -82,7 +82,7 @@
|
||||
pParser->OnTextSection(std::string(reinterpret_cast<const char *>(ch), len));
|
||||
}
|
||||
|
||||
-void OnStructuredErrorFunc(void *userData, xmlError *error)
|
||||
+void OnStructuredErrorFunc(void *userData, const xmlError *error)
|
||||
{
|
||||
const std::string message{error->message};
|
||||
|
||||
@@ -4,11 +4,11 @@
|
||||
_realname=precice
|
||||
pkgbase=mingw-w64-${_realname}
|
||||
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}")
|
||||
pkgver=2.5.0
|
||||
pkgrel=10
|
||||
pkgver=3.2.0
|
||||
pkgrel=1
|
||||
pkgdesc='A Coupling Library for Partitioned Multi-Physics Simulations on Massively Parallel Systems (mingw-w64)'
|
||||
arch=('any')
|
||||
mingw_arch=('mingw64' 'ucrt64' 'clang64')
|
||||
mingw_arch=('mingw64' 'ucrt64' 'clang64' 'clangarm64')
|
||||
url='https://www.precice.org'
|
||||
msys2_repository_url='https://github.com/precice/precice'
|
||||
license=('spdx:LGPL-3.0-or-later')
|
||||
@@ -20,7 +20,7 @@ depends=("${MINGW_PACKAGE_PREFIX}-gcc-libs"
|
||||
"${MINGW_PACKAGE_PREFIX}-python-numpy")
|
||||
makedepends=("${MINGW_PACKAGE_PREFIX}-cc"
|
||||
"${MINGW_PACKAGE_PREFIX}-cmake"
|
||||
"${MINGW_PACKAGE_PREFIX}-msmpi"
|
||||
$([[ ${CARCH} == aarch64 ]] || echo "${MINGW_PACKAGE_PREFIX}-msmpi")
|
||||
#"${MINGW_PACKAGE_PREFIX}-ninja"
|
||||
#"${MINGW_PACKAGE_PREFIX}-petsc-build"
|
||||
"${MINGW_PACKAGE_PREFIX}-boost"
|
||||
@@ -28,10 +28,12 @@ makedepends=("${MINGW_PACKAGE_PREFIX}-cc"
|
||||
"git")
|
||||
source=(https://github.com/precice/precice/archive/v${pkgver}/${_realname}-${pkgver}.tar.gz
|
||||
001-fix-libprecice-dll-installation.patch
|
||||
002-fix-build-with-libxml2-2.12.patch)
|
||||
sha256sums=('76ec6ee0d1a66f6f3d3d2d11f03cfc5aa7ef4d9e5deb9b7a4b4455ec7f796c00'
|
||||
002-fix-export-defs.patch::https://github.com/precice/precice/commit/f7a4723827bbf20062fe004322b837f348374af3.patch
|
||||
003-add-win32-deps.patch::https://github.com/precice/precice/commit/2d08cf23abe81490f11c2be0e00afd43648ee504.patch)
|
||||
sha256sums=('93523f1a56e0cfd338d8e190baa06129ee811acdb1c697468a3c85c516d63464'
|
||||
'49fe04f9e72d1034b8909a7b593ccf42eeaf5203d9188f71706260948a0fb566'
|
||||
'9704b031c26f5be50a2ba08b3757f26d5c661e707145c1a5b170704002019480')
|
||||
'8efe809bf94f93d2fa0bcdf6cc95cda4028a469b5bd88c5a1a7b0738e615e05a'
|
||||
'786d2f0be4e6131192501bf81d574ca5b3839e6de95a78de3ceea0738c7fa81a')
|
||||
|
||||
apply_patch_with_msg() {
|
||||
for _patch in "$@"
|
||||
@@ -45,7 +47,8 @@ prepare() {
|
||||
cd ${_realname}-${pkgver}
|
||||
apply_patch_with_msg \
|
||||
001-fix-libprecice-dll-installation.patch \
|
||||
002-fix-build-with-libxml2-2.12.patch
|
||||
002-fix-export-defs.patch \
|
||||
003-add-win32-deps.patch
|
||||
}
|
||||
|
||||
build() {
|
||||
@@ -64,50 +67,31 @@ build() {
|
||||
extra_config+=("-DCMAKE_BUILD_TYPE=Debug")
|
||||
fi
|
||||
|
||||
if [[ ${CARCH} == aarch64 ]]; then
|
||||
extra_config+=("-DPRECICE_FEATURE_MPI_COMMUNICATION=OFF")
|
||||
else
|
||||
extra_config+=("-DPRECICE_FEATURE_MPI_COMMUNICATION=ON")
|
||||
fi
|
||||
|
||||
if [[ ${MINGW_PACKAGE_PREFIX} == *-clang-* ]]; then
|
||||
CXXFLAGS+=" -Wno-c++11-narrowing"
|
||||
else
|
||||
CXXFLAGS+=" -Wno-narrowing"
|
||||
fi
|
||||
|
||||
#Static Build
|
||||
mkdir -p "${srcdir}/build-${MSYSTEM}-static" && cd "${srcdir}/build-${MSYSTEM}-static"
|
||||
mkdir -p "${srcdir}/build-${MSYSTEM}" && cd "${srcdir}/build-${MSYSTEM}"
|
||||
|
||||
MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \
|
||||
${MINGW_PREFIX}/bin/cmake \
|
||||
-G"MSYS Makefiles" \
|
||||
-G"Ninja" \
|
||||
-DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \
|
||||
-DCMAKE_CXX_STANDARD_LIBRARIES=-lws2_32 \
|
||||
-DBUILD_SHARED_LIBS=OFF \
|
||||
-DBUILD_TESTING=OFF \
|
||||
"${extra_config[@]}" \
|
||||
-DPython3_EXECUTABLE=${MINGW_PREFIX}/bin/python.exe \
|
||||
-DPRECICE_MPICommunication=ON \
|
||||
-DPRECICE_PETScMapping=OFF \
|
||||
-DPRECICE_PythonActions=ON \
|
||||
-DPRECICE_BUILD_TOOLS=OFF \
|
||||
-DPC_PETSc_INCLUDE_DIRS="$PREFIX_WIN/src/petsc/include;$PREFIX_WIN/src/petsc/$PETSC_ARCH/include" \
|
||||
-Wno-dev \
|
||||
../${_realname}-${pkgver}
|
||||
|
||||
${MINGW_PREFIX}/bin/cmake --build .
|
||||
|
||||
#Shared Build
|
||||
mkdir -p "${srcdir}/build-${MSYSTEM}-shared" && cd "${srcdir}/build-${MSYSTEM}-shared"
|
||||
|
||||
MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \
|
||||
${MINGW_PREFIX}/bin/cmake \
|
||||
-G"MSYS Makefiles" \
|
||||
-DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \
|
||||
-DCMAKE_CXX_STANDARD_LIBRARIES=-lws2_32 \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
-DBUILD_TESTING=OFF \
|
||||
${extra_config[@]} \
|
||||
-DPython3_EXECUTABLE=${MINGW_PREFIX}/bin/python.exe \
|
||||
-DPRECICE_MPICommunication=ON \
|
||||
-DPRECICE_PETScMapping=OFF \
|
||||
-DPRECICE_PythonActions=ON \
|
||||
-DPC_PETSc_INCLUDE_DIRS="$PREFIX_WIN/src/petsc/include;$PREFIX_WIN/src/petsc/$PETSC_ARCH/include" \
|
||||
-DPRECICE_FEATURE_PETSC_MAPPING=OFF \
|
||||
-DPRECICE_FEATURE_PYTHON_ACTIONS=ON \
|
||||
-DPRECICE_BUILD_TOOLS=ON \
|
||||
-Wno-dev \
|
||||
../${_realname}-${pkgver}
|
||||
|
||||
@@ -115,16 +99,8 @@ build() {
|
||||
}
|
||||
|
||||
package() {
|
||||
#Static Install
|
||||
cd "${srcdir}/build-${MSYSTEM}-static"
|
||||
cd "${srcdir}/build-${MSYSTEM}"
|
||||
DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/cmake --install .
|
||||
|
||||
#Shared Install
|
||||
cd "${srcdir}/build-${MSYSTEM}-shared"
|
||||
DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/cmake --install .
|
||||
|
||||
# add ".exe" extension to binprecice
|
||||
mv "${pkgdir}"${MINGW_PREFIX}/bin/binprecice{,.exe}
|
||||
|
||||
install -Dm644 "${srcdir}"/${_realname}-${pkgver}/LICENSE "${pkgdir}"${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user