Christoph Reiter 62308009e7 Replace gcc-libs with cc-libs everywhere
Except the provides in libc++ for backwards compat.
No rebuilds now, as that's not worth the resources.
2025-05-31 13:56:27 +02:00

101 lines
3.1 KiB
Bash

# Maintainer: ImperatorS79 <fevrier.simon@gmail.com>
_realname=newton-dynamics
pkgbase=mingw-w64-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}")
pkgver=4.02
pkgrel=1
pkgdesc='Newton dynamics is a realistic, cross-platform physics simulation library (mingw-w64)'
arch=('any')
mingw_arch=('mingw64' 'ucrt64' 'clang64' 'clangarm64')
url='http://newtondynamics.com/'
msys2_repository_url='https://github.com/MADEAPPS/newton-dynamics'
msys2_references=(
'aur: newton-dynamics'
)
license=('spdx:Zlib')
depends=("${MINGW_PACKAGE_PREFIX}-cc-libs"
"${MINGW_PACKAGE_PREFIX}-tinyxml")
makedepends=("${MINGW_PACKAGE_PREFIX}-cc"
"${MINGW_PACKAGE_PREFIX}-cmake")
source=("https://github.com/MADEAPPS/newton-dynamics/archive/v${pkgver}/${_realname}-${pkgver}.tar.gz"
"001-fix-arch-detection.patch"
"002-fix-headers.patch"
"003-fix-mingw-debug-flags.patch"
"004-missing-ngBigVector-aarch64-ctor.patch")
sha256sums=('13050bc4eac34303ad3ff3bca104cc0ebfacc8551c98d02d4f8505cf9ecd9532'
'79eaa87af1d79a6f9e5578b8fb9d79d64f1d96429876abeb7bcafd8d7c3fe643'
'0206e659a021a44fa138b4ba29639f7cb2f220b092556c464f77e7350f887e22'
'28fa7a1aa14081332d67b48f2bbeabcb7e31e5a048d30f587a1f5a7f47103d77'
'fa7642c5859572c6732b0a778a595bbe0bedde6bee78a484354ec6707c95570f')
apply_patch_with_msg() {
for _patch in "$@"
do
msg2 "Applying ${_patch}"
patch -Nbp1 -i "${srcdir}/${_patch}"
done
}
prepare() {
cd "${srcdir}"/${_realname}-${pkgver}/newton-4.00
apply_patch_with_msg \
001-fix-arch-detection.patch \
002-fix-headers.patch \
003-fix-mingw-debug-flags.patch \
004-missing-ngBigVector-aarch64-ctor.patch
}
build() {
#Static Build
mkdir -p "${srcdir}/build-${MSYSTEM}-static" && cd "${srcdir}/build-${MSYSTEM}-static"
MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \
${MINGW_PREFIX}/bin/cmake \
-GNinja \
-DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \
-DCMAKE_BUILD_TYPE="Release"\
-DBUILD_64=ON \
-DNEWTON_BUILD_SHARED_LIBS=OFF \
-DNEWTON_EXCLUDE_TEST=ON \
-DNEWTON_DOUBLE_PRECISION=ON \
-DNEWTON_ENABLE_AVX2_SOLVER=OFF \
-DNEWTON_BUILD_SANDBOX_DEMOS=OFF \
../${_realname}-${pkgver}/newton-4.00
${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 \
-GNinja \
-DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \
-DCMAKE_BUILD_TYPE="Release"\
-DBUILD_64=ON \
-DNEWTON_BUILD_SHARED_LIBS=ON \
-DNEWTON_EXCLUDE_TEST=ON \
-DNEWTON_DOUBLE_PRECISION=ON \
-DNEWTON_ENABLE_AVX2_SOLVER=OFF \
-DNEWTON_BUILD_SANDBOX_DEMOS=OFF \
../${_realname}-${pkgver}/newton-4.00
${MINGW_PREFIX}/bin/cmake --build .
}
package() {
#Static Install
cd "${srcdir}/build-${MSYSTEM}-static"
DESTDIR="${pkgdir}" cmake --install .
#Shared Install
cd "${srcdir}/build-${MSYSTEM}-shared"
DESTDIR="${pkgdir}" cmake --install .
install -Dm644 "${srcdir}"/${_realname}-${pkgver}/newton-4.00/LICENSE \
"${pkgdir}"${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE
}