diff --git a/mingw-w64-blosc2/0001-blosc2-cmake-fix-install.patch b/mingw-w64-blosc2/0001-blosc2-cmake-fix-install.patch new file mode 100644 index 0000000000..bcb9bd6e03 --- /dev/null +++ b/mingw-w64-blosc2/0001-blosc2-cmake-fix-install.patch @@ -0,0 +1,11 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -474,7 +474,7 @@ + if(CMAKE_INSTALL_CMAKEDIR) + set(Blosc2_INSTALL_CMAKEDIR "${CMAKE_INSTALL_CMAKEDIR}/Blosc2") + else() +- if(WIN32) ++ if(WIN32 AND NOT MINGW) + set(Blosc2_INSTALL_CMAKEDIR "cmake") + else() + set(Blosc2_INSTALL_CMAKEDIR "${CMAKE_INSTALL_LIBDIR}/cmake/Blosc2") diff --git a/mingw-w64-blosc2/PKGBUILD b/mingw-w64-blosc2/PKGBUILD index b2603923b0..edbe17f784 100644 --- a/mingw-w64-blosc2/PKGBUILD +++ b/mingw-w64-blosc2/PKGBUILD @@ -5,7 +5,7 @@ _srcname=c-blosc2 pkgbase=mingw-w64-${_realname} pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}") pkgver=2.10.1 -pkgrel=1 +pkgrel=2 pkgdesc="A blocking, shuffling and lossless compression library (mingw-w64)" arch=('any') mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32' 'clangarm64') @@ -18,11 +18,16 @@ depends=("${MINGW_PACKAGE_PREFIX}-lz4" makedepends=("${MINGW_PACKAGE_PREFIX}-cmake" "${MINGW_PACKAGE_PREFIX}-cc" "${MINGW_PACKAGE_PREFIX}-ninja") -source=("${_realname}-${pkgver}.tar.gz"::"https://github.com/Blosc/c-blosc2/archive/v${pkgver}.tar.gz") -sha256sums=('1dd65be2d76eee205c06e8812cc1360448620eee5e368b25ade4ea310654cd01') +source=("${_realname}-${pkgver}.tar.gz"::"https://github.com/Blosc/c-blosc2/archive/v${pkgver}.tar.gz" + 0001-blosc2-cmake-fix-install.patch) +sha256sums=('1dd65be2d76eee205c06e8812cc1360448620eee5e368b25ade4ea310654cd01' + 'ebdbb81368a33170f6556a5c3e342b3641bdc9804b091148d6c9d9a942eaab4c') prepare() { cd "${srcdir}"/${_srcname}-${pkgver} + + # https://github.com/Blosc/c-blosc2/pull/540 + patch -p1 -i "${srcdir}/0001-blosc2-cmake-fix-install.patch" } build() { @@ -58,5 +63,12 @@ package() { DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/cmake --install . +# remove path reference in cmake + local PREFIX_WIN=$(cygpath -wm ${MINGW_PREFIX}) + for _f in "${pkgdir}${MINGW_PREFIX}"/lib/cmake/Blosc2/*.cmake; do + sed -e "s|${PREFIX_WIN}|\$\{_IMPORT_PREFIX\}|g" -i ${_f} + sed -e "s|${MINGW_PREFIX}|\$\{_IMPORT_PREFIX\}|g" -i ${_f} + done + install -Dm644 "${srcdir}"/${_srcname}-${pkgver}/LICENSE.txt "${pkgdir}"${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE }