[new-package] superlu_mt 4.0.1

This commit is contained in:
مهدي شينون (Mehdi Chinoune) 2025-01-30 12:30:30 +01:00
parent 22f3910905
commit c8654fbdd7
2 changed files with 88 additions and 0 deletions

View File

@ -0,0 +1,14 @@
--- a/SRC/CMakeLists.txt
+++ b/SRC/CMakeLists.txt
@@ -22,7 +21,10 @@
target_include_directories (superlu_mt${PLAT} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories (superlu_mt${PLAT} INTERFACE $<INSTALL_INTERFACE:include>)
-install (TARGETS superlu_mt${PLAT} DESTINATION ${CMAKE_INSTALL_LIBDIR})
+install (TARGETS superlu_mt${PLAT}
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
file (GLOB headers "*.h")
install (FILES ${headers} DESTINATION ${SUPERLUMT_INSTALL_INCLUDEDIR})

View File

@ -0,0 +1,74 @@
# Contributor: Mehdi Chinoune <mehdi.chinoune@hotmail.com>
_realname=superlu_mt
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=4.0.1
pkgrel=1
pkgdesc="Sparse direct linear solver - MT (MultiThreading) (mingw-w64)"
arch=('any')
mingw_arch=('ucrt64' 'clang64' 'clangarm64')
url='https://github.com/xiaoyeli/superlu_mt'
msys2_references=(
'aur: superlu_mt'
)
license=('spdx:BSD-3-Clause')
depends=("${MINGW_PACKAGE_PREFIX}-omp"
"${MINGW_PACKAGE_PREFIX}-openblas")
makedepends=("${MINGW_PACKAGE_PREFIX}-cc"
"${MINGW_PACKAGE_PREFIX}-cmake"
"${MINGW_PACKAGE_PREFIX}-ninja")
#"${MINGW_PACKAGE_PREFIX}-fc")
source=("https://github.com/xiaoyeli/${_realname}/archive/v${pkgver}/${_realname}-${pkgver}.tar.gz"
"0001-fix-install-library.patch")
sha256sums=('b6de5c8ebf8fa6c7c0d607f0607f522454315632ae55b70babf908b94e9602cb'
'c1b0630bdfe39f0c322edc34189145ab851eda9cfc68eb0a50efc206aaf5749e')
prepare() {
cd "${srcdir}/${_realname}-${pkgver}"
patch -p1 -i "${srcdir}"/0001-fix-install-library.patch
}
build() {
declare -a _extra_config
if check_option "debug" "n"; then
_extra_config+=("-DCMAKE_BUILD_TYPE=Release")
else
_extra_config+=("-DCMAKE_BUILD_TYPE=Debug")
fi
mkdir -p "${srcdir}/build-${MSYSTEM}" && cd "${srcdir}/build-${MSYSTEM}"
MSYS2_ARG_CONV_EXCL='-DCMAKE_INSTALL_PREFIX=' \
${MINGW_PREFIX}/bin/cmake.exe \
-G "Ninja" \
-DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \
"${_extra_config[@]}" \
-DBUILD_SHARED_LIBS=ON \
-DCMAKE_DLL_NAME_WITH_SOVERSION=ON \
-DPLAT=_OPENMP \
-Denable_fortran=OFF \
-Denable_tests=OFF \
-Denable_examples=OFF \
-Denable_internal_blaslib=OFF \
../${_realname}-${pkgver}
${MINGW_PREFIX}/bin/cmake.exe --build .
}
check() {
cd "${srcdir}/build-${MSYSTEM}"
${MINGW_PREFIX}/bin/cmake -Denable_tests=ON ../${_realname}-${pkgver}
${MINGW_PREFIX}/bin/cmake --build .
${MINGW_PREFIX}/bin/ctest.exe . || true
}
package() {
cd "${srcdir}/build-${MSYSTEM}"
DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/cmake.exe --install .
install -Dm644 "${srcdir}/${_realname}-${pkgver}/License.txt" \
"${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE"
}