[arch-commits] Commit in (5 files)

Bartłomiej Piotrowski bpiotrowski at archlinux.org
Fri Aug 31 12:06:14 UTC 2018


    Date: Friday, August 31, 2018 @ 12:06:14
  Author: bpiotrowski
Revision: 375835

extra2community: Moving go from extra to community

Added:
  go/
  go/repos/
  go/trunk/
  go/trunk/PKGBUILD
  go/trunk/default-buildmode-pie.patch

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

Added: go/trunk/PKGBUILD
===================================================================
--- go/trunk/PKGBUILD	                        (rev 0)
+++ go/trunk/PKGBUILD	2018-08-31 12:06:14 UTC (rev 375835)
@@ -0,0 +1,92 @@
+# $Id$
+# Maintainer: Bartłomiej Piotrowski <bpiotrowski at archlinux.org>
+
+pkgbase=go
+pkgname=(go go-pie)
+epoch=2
+pkgver=1.10.3
+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=('567b1cc66c9704d1c019c50bef946272e911ec6baf244310f87f4e678be155f2'
+            '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"
+}
+
+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
+}


Property changes on: go/trunk/PKGBUILD
___________________________________________________________________
Added: svn:keywords
## -0,0 +1 ##
+Id
\ No newline at end of property
Added: go/trunk/default-buildmode-pie.patch
===================================================================
--- go/trunk/default-buildmode-pie.patch	                        (rev 0)
+++ go/trunk/default-buildmode-pie.patch	2018-08-31 12:06:14 UTC (rev 375835)
@@ -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