# Maintainer: David Runge # Maintainer: Lukas Fleischer # Contributor: Hilton Medeiros # Contributor: Dave Reisner pkgname=libgit2 # NOTE: add the following packages to rebuild TODOs on soname change (although they do not link against libgit2.so): # julia pkgver=1.7.1 pkgrel=1 epoch=1 pkgdesc="A linkable library for Git" arch=(x86_64) url="https://github.com/libgit2/libgit2" license=(GPL2) depends=( gcc-libs glibc http-parser zlib ) makedepends=( cmake libssh2 openssl pcre2 python ) provides=(libgit2.so) source=($url/archive/v$pkgver/$pkgname-v$pkgver.tar.gz) sha512sums=('08e60dde0cdf57006cf0c5f27a82220aba8d701bf7d6d709ffe312975ffa5dbef009ccb1e7cbe570b9502f4361d06ace44dbfd9a5f5f8ad08e9b0ca05bef765e') b2sums=('9c50d3c25d1cc58e5fab60b4c438c91479dd57138a14a48a8b692bb6b43733f59759172043c94198df63fa1e4eb40c548bb78c94bc57fb99682059be57a5c3e2') build() { local cmake_options=( -B build -DCMAKE_BUILD_TYPE=None -DCMAKE_INSTALL_PREFIX=/usr -DREGEX_BACKEND=pcre2 -DUSE_HTTP_PARSER=system -DUSE_SSH=ON -S $pkgname-$pkgver -Wno-dev ) cmake "${cmake_options[@]}" cmake --build build --verbose } check() { local ignored_tests=( 'invasive|' 'online|' 'ssh|' 'network_url_parse__hostname_implied_root_empty_port|' 'network_url_parse__hostname_empty_port|' 'network_url_parse__ipv4_implied_root_empty_port|' 'network_url_parse__ipv4_empty_port|' 'network_url_parse__ipv6_implied_root_empty_port|' 'network_url_parse__ipv6_empty_port' ) local ifs="$IFS" IFS= # NOTE: disable tests requiring the internet, relying on non-existent # resources, or those that are only compatible with the (modified) vendored # version of http-parser, but not with upstream http-parser ctest --test-dir build --output-on-failure -E "${ignored_tests[*]}" IFS="$ifs" } package() { depends+=( libssh2 libssh2.so openssl libcrypto.so libssl.so pcre2 libpcre2-8.so ) DESTDIR="$pkgdir" cmake --install build install -vDm 644 $pkgname-$pkgver/{AUTHORS,README.md} -t "$pkgdir/usr/share/doc/$pkgname/" }