From 40d1e2d0273648632f1f02d3ca5e748db96de502 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20A=C3=9Fhauer?= Date: Tue, 17 Jun 2025 09:01:38 +0000 Subject: [PATCH] mingw-w64-llvm: update to 20.1.7 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Matthias Aßhauer --- mingw-w64-llvm/PKGBUILD | 78 +++++++++++++++++++++++++---------------- 1 file changed, 48 insertions(+), 30 deletions(-) diff --git a/mingw-w64-llvm/PKGBUILD b/mingw-w64-llvm/PKGBUILD index 2650aa3926418..905e2d4599667 100644 --- a/mingw-w64-llvm/PKGBUILD +++ b/mingw-w64-llvm/PKGBUILD @@ -10,9 +10,7 @@ if [[ $MINGW_PACKAGE_PREFIX == *-clang-* ]]; then _clangprefix=1 _compiler=clang - if [[ ${CARCH} != i686 ]]; then - _pgo=1 - fi + _pgo=1 else _compiler=clang fi @@ -20,6 +18,7 @@ fi _realname=llvm pkgbase=mingw-w64-${_realname} pkgname=("${MINGW_PACKAGE_PREFIX}-llvm" + "${MINGW_PACKAGE_PREFIX}-llvm-tools" "${MINGW_PACKAGE_PREFIX}-llvm-libs" "${MINGW_PACKAGE_PREFIX}-clang" "${MINGW_PACKAGE_PREFIX}-clang-libs" @@ -28,13 +27,14 @@ pkgname=("${MINGW_PACKAGE_PREFIX}-llvm" "${MINGW_PACKAGE_PREFIX}-compiler-rt" $( (( _clangprefix )) && echo "${MINGW_PACKAGE_PREFIX}-gcc-compat" ) "${MINGW_PACKAGE_PREFIX}-lld") -_pkgver=20.1.5 +_pkgver=20.1.7 pkgver=${_pkgver/-/} pkgrel=2 pkgdesc="C language family frontend for LLVM (mingw-w64)" arch=('any') mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clangarm64') url="https://llvm.org/" +msys2_repository_url="https://github.com/llvm/llvm-project" msys2_references=( "cpe: cpe:/a:llvm:llvm" ) @@ -76,19 +76,19 @@ source=("${_url}/llvm-${_pkgver}.src.tar.xz"{,.sig} # 0401-0499 -> clang-tools-extra # 0901-0999 -> whole tree ) -sha256sums=('9a9a80ca4c0d902531f2b43e9e4d6c36b57cdd5702430e0b54567bf273bd32c1' +sha256sums=('10b62d003f16afbd1a5ee0aa6397704c13d9a12a2562103998a8c1eff4a0f1ea' 'SKIP' - '97025772b25c6694db049d3c4be5a72d926299aa1a9b861f490d66750e31c9dd' + 'cb74965a2481008ae405419357a55fda2df6fa3aee262a0a9293a558532a29ae' 'SKIP' - 'fe412adf2320bac69b612f755771ef16f7d263ba20ca1f374d5b50a2873b1591' + '0e1c675cf36bc5625514bf0dc582d39cb9b1cd0909601a46a2190f3afbc95633' 'SKIP' - 'bdcebca627f377ffcff5405cd5694efbddb14c89ad7d0ea481b1646a42bfeca3' + '326d6deb8eaf60bc4a66a1cbab20409f328bdddcafe77207c6bcd88d768076e3' 'SKIP' - '058c3cc029036899fcdfbeebec10f6ca170dc9f0c3314576405072a77340c029' + '9cb94dac7db0e1f2b664469e1574c0b350bec3eacd0cbc524481a6f65fc0f185' 'SKIP' - '1b5abaa2686c6c0e1f394113d0b2e026ff3cb9e11b6a2294c4f3883f1b02c89c' + 'afdab526c9b337a4eacbb401685beb98a18fb576037ecfaa93171d4c644fe791' 'SKIP' - '8667f47185bee07f7c7988ead7161b0d9e41a1a01d5d7afd8f325c607641470c' + '592019ad4d17ffa6e0162c7584474b2ae8883a61bbfade5f15382ed26b7ce52a' 'SKIP' 'eb03df53671df6627768141b3aaa76abe176a14e5e47911c97bec544387c4aff' '7cdf15c7e9c13ab99c42b4fafb15d871b22558f751729bb7173ce3edeffc8db8' @@ -300,15 +300,17 @@ build() { package_clang() { pkgdesc="C language family frontend for LLVM (mingw-w64)" url="https://clang.llvm.org/" - depends=("${MINGW_PACKAGE_PREFIX}-llvm=${pkgver}" - "${MINGW_PACKAGE_PREFIX}-clang-libs=${pkgver}" + depends=("${MINGW_PACKAGE_PREFIX}-clang-libs=${pkgver}" $( ((_clangprefix)) && echo \ "${MINGW_PACKAGE_PREFIX}-compiler-rt=${pkgver}" \ + "${MINGW_PACKAGE_PREFIX}-llvm-tools=${pkgver}" \ "${MINGW_PACKAGE_PREFIX}-crt" \ "${MINGW_PACKAGE_PREFIX}-headers" \ "${MINGW_PACKAGE_PREFIX}-lld=${pkgver}" \ - "${MINGW_PACKAGE_PREFIX}-winpthreads" \ - || echo "${MINGW_PACKAGE_PREFIX}-gcc")) + "${MINGW_PACKAGE_PREFIX}-winpthreads" || echo \ + "${MINGW_PACKAGE_PREFIX}-llvm-libs=${pkgver}" \ + "${MINGW_PACKAGE_PREFIX}-gcc")) + optdepends=("${MINGW_PACKAGE_PREFIX}-llvm=${pkgver}") provides=($( (( _clangprefix )) && echo \ "${MINGW_PACKAGE_PREFIX}-cc" \ || true )) @@ -336,7 +338,7 @@ package_clang() { package_clang-libs() { pkgdesc="Clang runtime libraries (mingw-w64)" url="https://clang.llvm.org/" - depends=("${MINGW_PACKAGE_PREFIX}-gcc-libs" + depends=("${MINGW_PACKAGE_PREFIX}-cc-libs" "${MINGW_PACKAGE_PREFIX}-llvm-libs=${pkgver}") conflicts=("${MINGW_PACKAGE_PREFIX}-clang<17.0.6") @@ -375,7 +377,7 @@ package_clang-tools-extra() { package_compiler-rt() { pkgdesc="Runtime libraries for Clang and LLVM (mingw-w64)" url="https://compiler-rt.llvm.org/" - depends=($( (( _clangprefix )) || echo "${MINGW_PACKAGE_PREFIX}-gcc-libs")) + depends=($( (( _clangprefix )) || echo "${MINGW_PACKAGE_PREFIX}-cc-libs")) DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/cmake --install "${srcdir}"/build-${MSYSTEM}/projects/compiler-rt mkdir -p "${pkgdir}"${MINGW_PREFIX}/bin/ @@ -405,7 +407,7 @@ package_gcc-compat() { package_lld() { pkgdesc="Linker tools for LLVM (mingw-w64)" url="https://lld.llvm.org/" - depends=("${MINGW_PACKAGE_PREFIX}-gcc-libs" + depends=("${MINGW_PACKAGE_PREFIX}-cc-libs" "${MINGW_PACKAGE_PREFIX}-llvm-libs=${pkgver}" "${MINGW_PACKAGE_PREFIX}-zlib" "${MINGW_PACKAGE_PREFIX}-zstd") @@ -423,39 +425,55 @@ package_lld() { package_llvm() { pkgdesc="Low Level Virtual Machine (mingw-w64)" - depends=("${MINGW_PACKAGE_PREFIX}-llvm-libs=${pkgver}") + depends=("${MINGW_PACKAGE_PREFIX}-llvm-libs=${pkgver}" + "${MINGW_PACKAGE_PREFIX}-llvm-tools=${pkgver}") # Disable automatic installation of components that go into subpackages # -i.orig to check what has been removed in-case it starts dropping more than it should - sed -i.orig '/\(clang\|lld\)\/cmake_install.cmake/d' build-${MSYSTEM}/tools/cmake_install.cmake + sed -i.orig '/tools\/cmake_install.cmake/d' build-${MSYSTEM}/cmake_install.cmake sed -i.orig '/compiler-rt\/cmake_install.cmake/d' build-${MSYSTEM}/projects/cmake_install.cmake DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/cmake --install build-${MSYSTEM} install -Dm644 "${srcdir}"/llvm/LICENSE.TXT "${pkgdir}"${MINGW_PREFIX}/share/licenses/llvm/LICENSE + # Install CMake stuff + install -d "${pkgdir}"${MINGW_PREFIX}/share/llvm/cmake/{modules,platforms} + install -Dm644 "${srcdir}"/llvm/cmake/modules/*.cmake "${pkgdir}"${MINGW_PREFIX}/share/llvm/cmake/modules/ + install -Dm644 "${srcdir}"/llvm/cmake/platforms/*.cmake "${pkgdir}"${MINGW_PREFIX}/share/llvm/cmake/platforms/ + + # fix cmake files. + local PREFIX_WIN=$(cygpath -wm ${MINGW_PREFIX}) + sed -e "s|${PREFIX_WIN}|${MINGW_PREFIX}|g" -i "${pkgdir}"/${MINGW_PREFIX}/lib/cmake/llvm/LLVMExports.cmake +} + +package_llvm-tools() { + pkgdesc="Low Level Virtual Machine - Tools (mingw-w64)" + depends=("${MINGW_PACKAGE_PREFIX}-llvm-libs=${pkgver}") + conflicts=("${MINGW_PACKAGE_PREFIX}-llvm<20.1.5-2") + + # Disable automatic installation of components that go into subpackages + # -i.orig to check what has been removed in-case it starts dropping more than it should + sed -i.orig '/\(clang\|lld\)\/cmake_install.cmake/d' build-${MSYSTEM}/tools/cmake_install.cmake + DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/cmake --install build-${MSYSTEM}/tools + # Runtime libraries rm -rf "${srcdir}"/llvm-libs mkdir -p "${srcdir}"/llvm-libs/${MINGW_PREFIX}/bin mv -f "${pkgdir}"${MINGW_PREFIX}/bin/lib{LLVM-*,LTO,Remarks}.dll "${srcdir}"/llvm-libs/${MINGW_PREFIX}/bin + # remove duplicate headers already in llvm package + rm -r "${pkgdir}"${MINGW_PREFIX}/include/llvm-c + + install -Dm644 "${srcdir}"/llvm/LICENSE.TXT "${pkgdir}"${MINGW_PREFIX}/share/licenses/llvm-tools/LICENSE # Provide gcov on CLANG* if [[ ${MINGW_PACKAGE_PREFIX} == *-clang-* ]]; then cp "${pkgdir}"${MINGW_PREFIX}/bin/llvm-cov.exe "${pkgdir}"${MINGW_PREFIX}/bin/gcov.exe fi - - # Install CMake stuff - install -d "${pkgdir}"${MINGW_PREFIX}/share/llvm/cmake/{modules,platforms} - install -Dm644 "${srcdir}"/llvm/cmake/modules/*.cmake "${pkgdir}"${MINGW_PREFIX}/share/llvm/cmake/modules/ - install -Dm644 "${srcdir}"/llvm/cmake/platforms/*.cmake "${pkgdir}"${MINGW_PREFIX}/share/llvm/cmake/platforms/ - - # fix cmake files. - local PREFIX_WIN=$(cygpath -wm ${MINGW_PREFIX}) - sed -e "s|${PREFIX_WIN}|${MINGW_PREFIX}|g" -i "${pkgdir}"/${MINGW_PREFIX}/lib/cmake/llvm/LLVMExports.cmake } package_llvm-libs() { pkgdesc="Low Level Virtual Machine Runtime Libraries (mingw-w64)" - depends=("${MINGW_PACKAGE_PREFIX}-gcc-libs" + depends=("${MINGW_PACKAGE_PREFIX}-cc-libs" "${MINGW_PACKAGE_PREFIX}-libffi" "${MINGW_PACKAGE_PREFIX}-libxml2" "${MINGW_PACKAGE_PREFIX}-zlib"