diff options
-rw-r--r-- | .SRCINFO | 66 | ||||
-rw-r--r-- | PKGBUILD | 165 |
2 files changed, 181 insertions, 50 deletions
@@ -1,27 +1,67 @@ pkgbase = curl-git - pkgdesc = An URL retrieval utility and library - pkgver = 7.72.0 - pkgrel = 1 - url = https://curl.haxx.se + pkgdesc = A command line tool and library for transferring data with URLs + pkgver = 8.4.0.r38.gd31a8424e8 + pkgrel = 2 + url = https://curl.se/ + arch = i686 arch = x86_64 license = MIT + makedepends = git + makedepends = gnutls + makedepends = openssl + makedepends = patchelf + depends = glibc depends = ca-certificates + depends = brotli depends = krb5 + depends = libbrotlidec.so + depends = libgssapi_krb5.so + depends = libidn2 + depends = libidn2.so + depends = libnghttp2 + depends = libpsl + depends = libpsl.so depends = libssh2 depends = libssh2.so - depends = openssl + depends = libzstd.so depends = zlib - depends = libpsl - depends = libpsl.so - depends = libnghttp2 + depends = zstd + options = staticlibs + source = git+https://github.com/curl/curl.git + sha256sums = SKIP + +pkgname = curl-git + depends = glibc + depends = ca-certificates + depends = brotli + depends = krb5 + depends = libbrotlidec.so + depends = libgssapi_krb5.so depends = libidn2 depends = libidn2.so + depends = libnghttp2 + depends = libpsl + depends = libpsl.so + depends = libssh2 + depends = libssh2.so + depends = libzstd.so + depends = zlib depends = zstd - provides = libcurl.so - provides = curl + depends = openssl + provides = curl=8.4.0.r38.gd31a8424e8 conflicts = curl - source = git+https://github.com/curl/curl - sha512sums = SKIP -pkgname = curl-git +pkgname = libcurl-compat-git + pkgdesc = A command line tool and library for transferring data with URLs (no versioned symbols) + depends = curl + provides = libcurl-compat=8.4.0.r38.gd31a8424e8 + provides = libcurl-compat.so + conflicts = libcurl-compat +pkgname = libcurl-gnutls-git + pkgdesc = A command line tool and library for transferring data with URLs (no versioned symbols, linked against gnutls) + depends = curl + depends = gnutls + provides = libcurl-gnutls=8.4.0.r38.gd31a8424e8 + provides = libcurl-gnutls.so + conflicts = libcurl-gnutls @@ -1,56 +1,147 @@ -# Maintainer: Vincent Grande <shoober420@gmail.com> +# Maintainer: Chocobo1 <chocobo1 AT archlinux DOT net> +# Previous maintainer: Luis Martinez <luis dot martinez at disroot dot org> +# Contributor: Vincent Grande <shoober420@gmail.com> # Contributor: Dave Reisner <dreisner@archlinux.org> # Contributor: Angel Velasquez <angvp@archlinux.org> # Contributor: Eric Belanger <eric@archlinux.org> # Contributor: Lucien Immink <l.immink@student.fnt.hvu.nl> # Contributor: Daniel J Griffiths <ghost1227@archlinux.us> -pkgname=curl-git -pkgver=7.72.0 -pkgrel=1 -pkgdesc="An URL retrieval utility and library" -arch=('x86_64') -url="https://curl.haxx.se" +pkgbase=curl-git +pkgname=('curl-git' 'libcurl-compat-git' 'libcurl-gnutls-git') +pkgver=8.4.0.r38.gd31a8424e8 +pkgrel=2 +pkgdesc="A command line tool and library for transferring data with URLs" +arch=('i686' 'x86_64') +url="https://curl.se/" license=('MIT') -depends=('ca-certificates' 'krb5' 'libssh2' 'libssh2.so' 'openssl' 'zlib' - 'libpsl' 'libpsl.so' 'libnghttp2' 'libidn2' 'libidn2.so' 'zstd') -provides=('libcurl.so' curl) -conflicts=(curl) -source=("git+https://github.com/curl/curl") -sha512sums=('SKIP') +depends=('glibc' 'ca-certificates' 'brotli' 'krb5' 'libbrotlidec.so' 'libgssapi_krb5.so' + 'libidn2' 'libidn2.so' 'libnghttp2' 'libpsl' 'libpsl.so' 'libssh2' 'libssh2.so' + 'libzstd.so' 'zlib' 'zstd') +makedepends=('git' 'gnutls' 'openssl' 'patchelf') +options=('staticlibs') +source=("git+https://github.com/curl/curl.git") +sha256sums=('SKIP') + pkgver() { - cd curl - git describe --tags | sed 's/-/+/g' + cd "curl" + + _tag=$(git tag -l --sort -v:refname | grep -E '^curl-[0-9_]+$' | head -n1) + _rev=$(git rev-list --count $_tag..HEAD) + _hash=$(git rev-parse --short HEAD) + printf "%s.r%s.g%s" "$_tag" "$_rev" "$_hash" | sed 's/^curl-//;s/_/./g' } build() { - cd curl - - ./buildconf - ./configure \ - --prefix=/usr \ - --mandir=/usr/share/man \ - --disable-ldap \ - --disable-ldaps \ - --disable-manual \ - --enable-ipv6 \ - --enable-versioned-symbols \ - --enable-threaded-resolver \ - --with-gssapi \ - --with-libssh2 \ - --with-random=/dev/urandom \ - --with-ca-bundle=/etc/ssl/certs/ca-certificates.crt + cd "curl" + + local _configure_options=( + --prefix="/usr" + --disable-ldap + --disable-ldaps + --disable-manual + --enable-ipv6 + --enable-threaded-resolver + --with-ca-bundle="/etc/ssl/certs/ca-certificates.crt" + --with-gssapi + --with-libssh2 + ) + autoreconf -fi + + mkdir -p _build{-curl,-libcurl-compat,-libcurl-gnutls} + + # build curl + pushd "_build-curl" + ../configure \ + "${_configure_options[@]}" \ + --enable-versioned-symbols \ + --with-openssl make + popd + + # build libcurl-compat + pushd "_build-libcurl-compat" + ../configure \ + "${_configure_options[@]}" \ + --disable-versioned-symbols \ + --with-openssl + make -C "lib" + popd + + # build libcurl-gnutls + pushd "_build-libcurl-gnutls" + ../configure \ + "${_configure_options[@]}" \ + --disable-versioned-symbols \ + --with-gnutls \ + --without-openssl + make -C "lib" + patchelf --set-soname 'libcurl-gnutls.so.4' "lib/.libs/libcurl.so" + popd +} + +check() { + cd "curl" + + #make -C "_build-curl" check +} + +package_curl-git() { + depends+=('openssl') + provides=("curl=$pkgver") + conflicts=('curl') + + cd "curl" + + make -C "_build-curl" DESTDIR="$pkgdir" install + make -C "_build-curl/scripts" DESTDIR="$pkgdir" install + install -Dm644 "COPYING" -t "$pkgdir/usr/share/licenses/curl" +} + +package_libcurl-compat-git() { + pkgdesc='A command line tool and library for transferring data with URLs (no versioned symbols)' + depends=('curl') + provides=("libcurl-compat=$pkgver" 'libcurl-compat.so') + conflicts=('libcurl-compat') + + cd "curl" + + make -C "_build-libcurl-compat/lib" DESTDIR="$pkgdir" install + + mv "$pkgdir/usr/lib/libcurl.a" "$pkgdir/usr/lib/libcurl-compat.a" + + _version_full=$(find "$pkgdir/usr/lib" -type f | grep .so | tail -c 6) + _version_major=$(echo "$_version_full" | head -c 1) + rm "$pkgdir/usr/lib/libcurl.so" + rm "$pkgdir/usr/lib/libcurl.so.$_version_major" + mv "$pkgdir/usr/lib/libcurl.so.$_version_full" "$pkgdir/usr/lib/libcurl-compat.so.$_version_full" + ln -s "libcurl-compat.so.$_version_full" "$pkgdir/usr/lib/libcurl-compat.so" + ln -s "libcurl-compat.so.$_version_full" "$pkgdir/usr/lib/libcurl-compat.so.$_version_major" + + install -Dm644 "COPYING" -t "$pkgdir/usr/share/licenses/libcurl-compat" } -package() { - cd curl +package_libcurl-gnutls-git() { + pkgdesc="A command line tool and library for transferring data with URLs (no versioned symbols, linked against gnutls)" + depends=('curl' 'gnutls') + provides=("libcurl-gnutls=$pkgver" 'libcurl-gnutls.so') + conflicts=('libcurl-gnutls') + + cd "curl" + + make -C "_build-libcurl-gnutls/lib" DESTDIR="$pkgdir" install + + mv "$pkgdir/usr/lib/libcurl.a" "$pkgdir/usr/lib/libcurl-gnutls.a" - make DESTDIR="$pkgdir" install - make DESTDIR="$pkgdir" install -C scripts + _version_full=$(find "$pkgdir/usr/lib" -type f | grep .so | tail -c 6) + _version_major=$(echo "$_version_full" | head -c 1) + rm "$pkgdir/usr/lib/libcurl.so" + rm "$pkgdir/usr/lib/libcurl.so.$_version_major" + mv "$pkgdir/usr/lib/libcurl.so.$_version_full" "$pkgdir/usr/lib/libcurl-gnutls.so.$_version_full" + ln -s "libcurl-gnutls.so.$_version_full" "$pkgdir/usr/lib/libcurl-gnutls.so" + ln -s "libcurl-gnutls.so.$_version_full" "$pkgdir/usr/lib/libcurl-gnutls.so.$_version_major" - # license - install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 COPYING + install -Dm644 "COPYING" -t "$pkgdir/usr/share/licenses/libcurl-gnutls" } |