[arch-commits] Commit in go/repos (3 files)

Morten Linderud foxboron at archlinux.org
Tue Oct 2 20:53:44 UTC 2018


    Date: Tuesday, October 2, 2018 @ 20:53:43
  Author: foxboron
Revision: 389089

archrelease: copy trunk to community-testing-x86_64

Added:
  go/repos/community-testing-x86_64/
  go/repos/community-testing-x86_64/PKGBUILD
    (from rev 389088, go/trunk/PKGBUILD)
  go/repos/community-testing-x86_64/default-buildmode-pie.patch
    (from rev 389088, go/trunk/default-buildmode-pie.patch)

-----------------------------+
 PKGBUILD                    |   95 ++++++++++++++++++++++++++++++++++++++++++
 default-buildmode-pie.patch |   14 ++++++
 2 files changed, 109 insertions(+)

Copied: go/repos/community-testing-x86_64/PKGBUILD (from rev 389088, go/trunk/PKGBUILD)
===================================================================
--- community-testing-x86_64/PKGBUILD	                        (rev 0)
+++ community-testing-x86_64/PKGBUILD	2018-10-02 20:53:43 UTC (rev 389089)
@@ -0,0 +1,95 @@
+# Maintainer: Bartłomiej Piotrowski <bpiotrowski at archlinux.org>
+# Maintainer: Morten Linderud <foxboron at archlinux.org>
+
+pkgbase=go
+pkgname=(go go-pie)
+epoch=2
+pkgver=1.11.1
+pkgrel=1
+arch=(x86_64)
+url='http://golang.org/'
+license=(BSD)
+makedepends=(git go)
+source=(https://storage.googleapis.com/golang/go$pkgver.src.tar.gz
+        default-buildmode-pie.patch)
+sha256sums=('558f8c169ae215e25b81421596e8de7572bd3ba824b79add22fba6e284db1117'
+            '9d2f0d201d4e002d74f548cc82bd131139bab5dd62191004c71dd430fdc1666d')
+
+export GOOS=linux
+case "$CARCH" in
+  x86_64) export GOARCH=amd64 ;;
+esac
+export GOROOT_FINAL=/usr/lib/go
+export GOROOT_BOOTSTRAP=/usr/lib/go
+export GOCACHE=off
+
+prepare() {
+  cp -r $pkgbase ${pkgbase}-pie
+
+  cd ${pkgbase}-pie
+  patch -p1 -i "$srcdir"/default-buildmode-pie.patch
+}
+
+build() {
+  export GOPATH="$srcdir/"
+
+  for _pkgname in ${pkgname[@]}; do
+    export GOROOT="$srcdir/$_pkgname"
+    export GOBIN="$GOROOT/bin"
+
+    cd "$srcdir/$_pkgname/src"
+    ./make.bash --no-clean -v
+
+    PATH="$GOBIN:$PATH" go install -v -buildmode=shared std
+    PATH="$GOBIN:$PATH" go install -v -race std
+  done
+}
+
+check() {
+  # Run test suite only for unpatched Go as it expects non-PIE ldBuildmode
+  export GOROOT="$srcdir/$pkgbase"
+  export GOBIN="$GOROOT/bin"
+  export PATH="$srcdir/$pkgbase/bin:$PATH"
+  export GO_TEST_TIMEOUT_SCALE=2
+
+  cd $pkgbase/src
+  ./run.bash --no-rebuild -v -v -v -k 
+}
+
+_package() {
+  options=(!strip staticlibs)
+  cd "$srcdir/$1"
+
+  install -d "$pkgdir/usr/bin" "$pkgdir/usr/lib/go" "$pkgdir/usr/share/doc/go"
+  cp -a bin pkg src lib misc api "$pkgdir/usr/lib/go"
+  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 LICENSE "$pkgdir/usr/share/licenses/go/LICENSE"
+  install -Dm644 VERSION "$pkgdir/usr/lib/go/VERSION"
+
+  rm -rf "$pkgdir/usr/lib/go/pkg/bootstrap"
+  rm -rf "$pkgdir/usr/lib/go/pkg/tool/*/api"
+
+  # TODO: Figure out if really needed
+  rm -rf "$pkgdir"/usr/lib/go/pkg/obj/go-build/*
+}
+
+package_go() {
+  pkgdesc='Core compiler tools for the Go programming language'
+  provides=(go-pie)
+  conflicts=(go-pie)
+
+  _package $pkgname
+}
+
+package_go-pie() {
+  pkgdesc='Core compiler tools for the Go programming language (with PIE enabled by default)'
+  provides=(go)
+  conflicts=(go)
+
+  _package $pkgname
+}

Copied: go/repos/community-testing-x86_64/default-buildmode-pie.patch (from rev 389088, go/trunk/default-buildmode-pie.patch)
===================================================================
--- community-testing-x86_64/default-buildmode-pie.patch	                        (rev 0)
+++ community-testing-x86_64/default-buildmode-pie.patch	2018-10-02 20:53:43 UTC (rev 389089)
@@ -0,0 +1,14 @@
+diff --git a/src/cmd/go/internal/work/init.go b/src/cmd/go/internal/work/init.go
+index 7f894f5..a517887 100644
+--- a/src/cmd/go/internal/work/init.go
++++ b/src/cmd/go/internal/work/init.go
+@@ -111,7 +111,8 @@ func buildModeInit() {
+ 		ldBuildmode = "c-shared"
+ 	case "default":
+ 		switch platform {
+-		case "android/arm", "android/arm64", "android/amd64", "android/386":
++		case "linux/amd64", "linux/arm", "linux/arm64", "linux/386", "linux/ppc64le",
++			"android/arm", "android/arm64", "android/amd64", "android/386":
+ 			codegenArg = "-shared"
+ 			ldBuildmode = "pie"
+ 		case "darwin/arm", "darwin/arm64":



More information about the arch-commits mailing list