# Contributor: Jakub Jirutka # Maintainer: Jakub Jirutka pkgname=git-lfs pkgver=2.4.0 pkgrel=0 pkgdesc="Git extension for versioning large files" url="https://git-lfs.github.io/" arch="all" license="MIT" depends="git" checkdepends="bash coreutils git-daemon perl-utils" makedepends="go ronn" # Go doesn't play well with strip tool. http://bit.ly/2jlJsSU options="!strip" subpackages="$pkgname-doc" install="$pkgname.post-install $pkgname.pre-deinstall" source="$pkgname-$pkgver.tar.gz::https://github.com/git-lfs/$pkgname/archive/v$pkgver.tar.gz fix-test-locks.patch fix-test-credentials.patch" builddir="$srcdir/src/github.com/git-lfs/$pkgname" export GOPATH="$srcdir:$builddir" prepare() { mkdir -p "${builddir%/*}" ln -s "$srcdir"/$pkgname-$pkgver "$builddir" default_prepare } build() { cd "$builddir" # Build manpages first (some embedding in the executable is done). cd docs ronn man/*.ronn go run man/mangen.go cd - # Build git-lfs executable. _gobuild -o bin/$pkgname # Build test executables. local file; for file in test/cmd/*.go; do _gobuild -o bin/$(basename $file .go) $file done _gobuild -o bin/git-lfs-test-server-api \ test/git-lfs-test-server-api/*.go } check() { cd "$builddir" GIT_LFS_TEST_MAXPROCS=$JOBS SKIPCOMPILE=1 ./script/integration } package() { local docdir="$pkgdir/usr/share/doc/$pkgname" local mandir="$pkgdir/usr/share/man" cd "$builddir" install -Dm755 bin/$pkgname "$pkgdir"/usr/bin/$pkgname mkdir -p "$mandir"/man1 "$mandir"/man5 install -m 644 docs/man/*.1 "$mandir"/man1/ install -m 644 docs/man/*.5 "$mandir"/man5/ mkdir -p "$docdir" cp -r docs/*.md docs/api "$docdir"/ rm -r "$docdir"/api/schemas } _gobuild() { # -tags netcgo - use system's DNS resolver by default. Go's built-in DNS # resolver is buggy; it resolved localhost to totally wrong IP # address on ARM builders and so caused test failures. # -ldflags - omit symbol and debug tables (strip). go build -tags netcgo -ldflags='-s -w' -v "$@" } sha512sums="1f16d60e54d17bf5829317e95823c4f223510aab3cdd6980e5eac3165bd0b4a98f0cca10fcc43459a42d1c6097f04884fc36bb72ee57c10759d359008fb853a1 git-lfs-2.4.0.tar.gz 66927aa462cb7b5061442e5ffaf7c9e4a5d97179482dc00de3f4abfad5959a9c55df3e88c211067bf15b5b0ea3ef29b249ca32290cc9839280266de5c6854b3f fix-test-locks.patch f7885b9e668ac9ffcce9d2e447064b4bae970c637f696d1e409b393adcca0d5224bfe95ae57eea0d9db1e194343e3d6ea83fcb9e213c78f9fc834f5afe667021 fix-test-credentials.patch"