From b97e02fa390b19510d3aee5c28f30bd5951c41e3 Mon Sep 17 00:00:00 2001 From: Viktor Szakats Date: Tue, 11 Jun 2024 00:15:55 +0200 Subject: [PATCH 1/5] curl: update homepage Cherry-picked from a31a085db0 (curl: update homepage, 2024-06-11) and amended with the `license` update that slipped into 24ece8b2a4 (curl: Update to 7.87.0, 2022-12-21). Signed-off-by: Johannes Schindelin --- curl/PKGBUILD | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/curl/PKGBUILD b/curl/PKGBUILD index 105774fc828..a28bc76fe1d 100644 --- a/curl/PKGBUILD +++ b/curl/PKGBUILD @@ -6,8 +6,8 @@ pkgver=8.11.0 pkgrel=1 pkgdesc="Multi-protocol file transfer utility" arch=('i686' 'x86_64') -url="https://curl.haxx.se" -license=('MIT') +url="https://curl.se/" +license=('spdx:MIT') depends=('ca-certificates') makedepends=('heimdal-devel' 'libcrypt-devel' 'libidn2-devel' 'libnghttp2-devel' 'libpsl-devel' 'libssh2-devel' 'openssl-devel' 'zlib-devel') # 'libcares-devel' From 700ac77a7fd48d1fd2dd3352dcde23103f0db07b Mon Sep 17 00:00:00 2001 From: Johannes Schindelin Date: Thu, 14 Nov 2024 09:04:08 +0100 Subject: [PATCH 2/5] curl: configure with libidn2 For some reason, 43cf4620be (curl: Fix dependencies, 2017-09-07) forgot to adjust the `--with-libidn` option in the `./configure` call. This was fixed in 14e490a607 (curl: update to 7.77.0, 2021-07-20), as well as other adjustments to the `./configure` options. Let's cherry-pick these particular changes. Signed-off-by: Johannes Schindelin --- curl/PKGBUILD | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/curl/PKGBUILD b/curl/PKGBUILD index a28bc76fe1d..792597d66de 100644 --- a/curl/PKGBUILD +++ b/curl/PKGBUILD @@ -37,15 +37,13 @@ build() { --enable-debug \ --enable-optimize \ --enable-ipv6 \ - --disable-hidden-symbols \ + --disable-symbol-hiding \ --disable-ares \ --with-gssapi \ - --with-libidn \ + --with-libidn2 \ --without-librtmp \ --with-libssh2 \ - --without-spnego \ - --with-ssl \ - --without-gnutls \ + --with-openssl \ --with-zlib \ --with-libpsl \ --with-ca-bundle=/usr/ssl/certs/ca-bundle.crt \ From 6260e624a8176c8cb69451f71d53e460ed51d918 Mon Sep 17 00:00:00 2001 From: Johannes Schindelin Date: Thu, 14 Nov 2024 10:15:24 +0100 Subject: [PATCH 3/5] curl: align a bit more with MSYS2's `master` branch They dropped the old GPG key of Daniel's, and they use `-v` with `autoreconf`; Let's do that, too. Signed-off-by: Johannes Schindelin --- curl/PKGBUILD | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/curl/PKGBUILD b/curl/PKGBUILD index 792597d66de..46d6d6d8206 100644 --- a/curl/PKGBUILD +++ b/curl/PKGBUILD @@ -17,13 +17,12 @@ source=("https://github.com/curl/curl/releases/download/${pkgbase}-${pkgver//./_ sha256sums=('c95d5a1368803729345a632ce42cceeefd5f09c3b4d9582f858f6779f4b8b254' 'SKIP' 'f3d1ff0ca77636323ee5156c14275cb6cec98021aa0ad1b30735dbc4c3b619fd') -validpgpkeys=('27EDEAF22F3ABCEB50DB9A125CC908FDB71E12C2' # Daniel Stenberg - '914C533DF9B2ADA2204F586D78E11C6B279D5C91') # Daniel Stenberg (old key) +validpgpkeys=('27EDEAF22F3ABCEB50DB9A125CC908FDB71E12C2') # Daniel Stenberg prepare() { cd "${pkgname}-${pkgver}" patch -p1 -i ${srcdir}/curl-8.10.0-msys2.patch - autoreconf -fi + autoreconf -fiv } build() { From 47b8964948984256566982e5e6e4c0f239dcff4b Mon Sep 17 00:00:00 2001 From: Christoph Reiter Date: Wed, 13 Nov 2024 18:10:29 +0100 Subject: [PATCH 4/5] curl: backport netrc regression fixes same as https://github.com/msys2/MINGW-packages/pull/22490 --- curl/PKGBUILD | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/curl/PKGBUILD b/curl/PKGBUILD index 46d6d6d8206..cb5e26c0e09 100644 --- a/curl/PKGBUILD +++ b/curl/PKGBUILD @@ -3,7 +3,7 @@ pkgbase=curl pkgname=('curl' 'libcurl' 'libcurl-devel') pkgver=8.11.0 -pkgrel=1 +pkgrel=2 pkgdesc="Multi-protocol file transfer utility" arch=('i686' 'x86_64') url="https://curl.se/" @@ -13,15 +13,21 @@ makedepends=('heimdal-devel' 'libcrypt-devel' 'libidn2-devel' 'libnghttp2-devel' 'libpsl-devel' 'libssh2-devel' 'openssl-devel' 'zlib-devel') # 'libcares-devel' options=('!libtool' 'strip' '!debug') source=("https://github.com/curl/curl/releases/download/${pkgbase}-${pkgver//./_}/${pkgbase}-${pkgver}.tar.bz2"{,.asc} - curl-8.10.0-msys2.patch) + curl-8.10.0-msys2.patch + "netrc-regression-1.patch::https://github.com/curl/curl/commit/f5c616930b5cf148b1b2632da4f5963ff48bdf88.patch" + "netrc-regression-2.patch::https://github.com/curl/curl/commit/0cdde0fdfbeb8c35420f6d03fa4b77ed73497694.patch") sha256sums=('c95d5a1368803729345a632ce42cceeefd5f09c3b4d9582f858f6779f4b8b254' 'SKIP' - 'f3d1ff0ca77636323ee5156c14275cb6cec98021aa0ad1b30735dbc4c3b619fd') + 'f3d1ff0ca77636323ee5156c14275cb6cec98021aa0ad1b30735dbc4c3b619fd' + '708429a4e0b387dc9addc1f9166e07e5db22da42221887ddab9533c9e2bd1ca8' + 'd817dd3746476bc513edd24a4f9a32674c3d5a04484bf80d894c1d2add67e8e2') validpgpkeys=('27EDEAF22F3ABCEB50DB9A125CC908FDB71E12C2') # Daniel Stenberg prepare() { cd "${pkgname}-${pkgver}" patch -p1 -i ${srcdir}/curl-8.10.0-msys2.patch + patch -p1 -i ${srcdir}/netrc-regression-1.patch + patch -p1 -i ${srcdir}/netrc-regression-2.patch autoreconf -fiv } From d58b04ae4163fe6c6c25b330bea0930d7bb627ac Mon Sep 17 00:00:00 2001 From: Johannes Schindelin Date: Thu, 14 Nov 2024 10:32:38 +0100 Subject: [PATCH 5/5] ci: work around libcurl v8.11.0 problem With libcurl v8.11.0, `git fetch` fails (curiously only with the MSYS version, the MINGW version seems to have no problems in Git for Windows' CI builds). This would cause problems e.g. in the `CI-Build` step of the PR builds in MSYS2-packages, which by itself would prevent an upgrade of libcurl to a working version! Catch 22. Work around that by detecting the situation and force-downgrading in that case. Signed-off-by: Johannes Schindelin --- .github/workflows/main.yml | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 4aeeb1fecdd..35bc9e1b016 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -17,6 +17,26 @@ jobs: - name: install pactoys (needed for `saneman`) shell: bash run: bash -lc "pacman -S --noconfirm pactoys" + - name: work around curl v8.11.0-1 problem + shell: bash + run: | + # `git fetch` does not work with that libcurl version. For details, + # see https://github.com/git-for-windows/MSYS2-packages/pull/199 + test ! -f /var/lib/pacman/local/libcurl-8.11.0-1/desc || + for pkg in libcurl curl + do + for suffix in '' .sig + do + curl --retry 5 -fLO \ + https://wingit.blob.core.windows.net/x86-64/$pkg-8.10.1-1-x86_64.pkg.tar.xz$suffix || + exit 1 + done + pacman -U --noconfirm $pkg-8.10.1-1-x86_64.pkg.tar.xz || exit 1 + done + + # Sadly, this does not work because the Pacman repository's index only + # ever lists the latest package version: + # pacman -S --noconfirm libcurl=8.10.1-1 curl=8.10.1-1 - name: CI-Build shell: bash run: bash -l .ci/ci-build.sh