From c8654fbdd76b7763a3d2acc5ae3b60a9d2095f4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D9=85=D9=87=D8=AF=D9=8A=20=D8=B4=D9=8A=D9=86=D9=88=D9=86?= =?UTF-8?q?=20=28Mehdi=20Chinoune=29?= Date: Thu, 30 Jan 2025 12:30:30 +0100 Subject: [PATCH] [new-package] superlu_mt 4.0.1 --- .../0001-fix-install-library.patch | 14 ++++ mingw-w64-superlu_mt/PKGBUILD | 74 +++++++++++++++++++ 2 files changed, 88 insertions(+) create mode 100644 mingw-w64-superlu_mt/0001-fix-install-library.patch create mode 100644 mingw-w64-superlu_mt/PKGBUILD diff --git a/mingw-w64-superlu_mt/0001-fix-install-library.patch b/mingw-w64-superlu_mt/0001-fix-install-library.patch new file mode 100644 index 0000000000..4bf9fc5cfd --- /dev/null +++ b/mingw-w64-superlu_mt/0001-fix-install-library.patch @@ -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 (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}) diff --git a/mingw-w64-superlu_mt/PKGBUILD b/mingw-w64-superlu_mt/PKGBUILD new file mode 100644 index 0000000000..91d1ba6a17 --- /dev/null +++ b/mingw-w64-superlu_mt/PKGBUILD @@ -0,0 +1,74 @@ +# Contributor: Mehdi Chinoune + +_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" +}