From 734d2b569dd8e092458f8b4a0721d678bc2e3955 Mon Sep 17 00:00:00 2001 From: Andreas Baumann Date: Tue, 4 Apr 2023 18:45:45 +0200 Subject: added go15 to build-support --- build-support/go15/PKGBUILD | 98 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 build-support/go15/PKGBUILD diff --git a/build-support/go15/PKGBUILD b/build-support/go15/PKGBUILD new file mode 100644 index 00000000..6dd0dfde --- /dev/null +++ b/build-support/go15/PKGBUILD @@ -0,0 +1,98 @@ +# Maintainer: Morten Linderud +# Contributor: Daniel Martí +# Contributor: Bartłomiej Piotrowski +# Contributor: Alexander F. Rødseth +# Contributor: Pierre Neidhardt +# Contributor: Vesa Kaihlavirta +# Contributor: Rémy Oudompheng +# Contributor: Andres Perera +# Contributor: Matthew Bauer +# Contributor: Christian Himpel +# Contributor: Mike Rosset +# Contributor: Daniel YC Lin +# Contributor: John Luebs + +pkgname=go15 +_pkgname=go +epoch=2 +pkgver=1.15 +pkgrel=1 +pkgdesc='Core compiler tools for the Go programming language' +arch=(i486 i686 pentium4 x86_64) +url='https://golang.org/' +license=(BSD) +makedepends=(git go) +replaces=(go-pie) +provides=(go-pie) +options=(!strip staticlibs) +source=(https://go.dev/dl/go${pkgver}.src.tar.gz{,.asc}) +validpgpkeys=('EB4C1BFD4F042F6DDDCCEC917721F63BD38B4796') +sha256sums=('69438f7ed4f532154ffaf878f3dfd83747e7a00b70b3556eddabf7aaee28ac3a' + 'SKIP') + +build() { + export GOARCH=amd64 + export GOAMD64=v1 # make sure we're building for the right x86-64 version + export GOROOT_FINAL=/usr/lib/go + export GOROOT_BOOTSTRAP=/usr/lib/go + + cd "$_pkgname/src" + ./make.bash -v +} + +check() { + export GO_TEST_TIMEOUT_SCALE=3 + + cd $_pkgname/src + ./run.bash --no-rebuild -v -v -v -k +} + +package() { + cd "$_pkgname" + + install -d "$pkgdir/usr/bin" "$pkgdir/usr/lib/go" "$pkgdir/usr/share/doc/go" \ + "$pkgdir/usr/lib/go/pkg/linux_amd64_"{dynlink,race} + + cp -a bin pkg src lib misc api test "$pkgdir/usr/lib/go" + # We can't strip all binaries and libraries, + # as that also strips some testdata directories and breaks the tests. + # Just strip the packaged binaries as a compromise. + strip $STRIP_BINARIES "$pkgdir/usr/lib/go"{/bin/*,/pkg/tool/*/*} + + cp -r doc/* "$pkgdir/usr/share/doc/go" + + ln -sf /usr/lib/go/bin/go "$pkgdir/usr/bin/go" + ln -sf /usr/lib/go/bin/gofmt "$pkgdir/usr/bin/gofmt" + ln -sf /usr/share/doc/go "$pkgdir/usr/lib/go/doc" + + install -Dm644 VERSION "$pkgdir/usr/lib/go/VERSION" + + rm -rf "$pkgdir/usr/lib/go/pkg/bootstrap" "$pkgdir/usr/lib/go/pkg/tool/*/api" + + # TODO: Figure out if really needed + rm -rf "$pkgdir"/usr/lib/go/pkg/obj/go-build + + install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +# vim: ts=2 sw=2 et +eval "$( + declare -f build | \ + sed ' + /install\( .*\)\? -race /d + ' + declare -f package_go-pie package | \ + sed ' + s,\(/linux_\)amd64\([_/]\),\1386\2,g + ' +)" + +eval "$( + declare -f build check _package \ + | sed ' + s/\(export GOARCH=\)amd64/\1386 / + ' +)" + +# tests are failing, ignore them +unset check -- cgit v1.2.3-70-g09d2