X-Original-To: alpine-aports@mail.alpinelinux.org Delivered-To: alpine-aports@mail.alpinelinux.org Received: from mail.alpinelinux.org (dallas-a1.alpinelinux.org [127.0.0.1]) by mail.alpinelinux.org (Postfix) with ESMTP id 31C39DC0225 for ; Fri, 14 Aug 2015 22:51:30 +0000 (UTC) Received: from lithium.8pit.net (lithium.8pit.net [141.101.32.65]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.alpinelinux.org (Postfix) with ESMTPS id 7B076DC0175; Fri, 14 Aug 2015 22:51:26 +0000 (UTC) Received: from localhost (ip5f5ac946.dynamic.kabel-deutschland.de [95.90.201.70]); by lithium.8pit.net (OpenSMTPD) with ESMTPSA id 04508bf3; TLS version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO; Sat, 15 Aug 2015 00:51:24 +0200 (CEST) From: =?UTF-8?q?S=C3=B6ren=20Tempel?= To: alpine-aports@lists.alpinelinux.org Subject: [alpine-aports] [PATCH] main/go: major cleanup Date: Sat, 15 Aug 2015 00:51:18 +0200 Message-Id: <1439592678-12290-1-git-send-email-soeren+git@soeren-tempel.net> X-Mailer: git-send-email 2.5.0 In-Reply-To: <1439585491-27955-1-git-send-email-soeren+git@soeren-tempel.net> References: <1439585491-27955-1-git-send-email-soeren+git@soeren-tempel.net> X-Virus-Scanned: ClamAV using ClamSMTP X-Mailinglist: alpine-aports Precedence: list List-Id: Alpine Development List-Unsubscribe: List-Post: List-Help: List-Subscribe: --- main/go/APKBUILD | 84 ++++++++++++++++++++++---------------------------------- 1 file changed, 33 insertions(+), 51 deletions(-) diff --git a/main/go/APKBUILD b/main/go/APKBUILD index 46a829c..62d891b 100644 --- a/main/go/APKBUILD +++ b/main/go/APKBUILD @@ -4,7 +4,7 @@ pkgname=go pkgver=1.4.2 # This should be the latest commit on the corresponding release branch _toolsver="abf43428cc239218424c7a44dc9b5987cd351c3e" -pkgrel=2 +pkgrel=3 pkgdesc="Go programming language compiler" url="http://www.golang.org/" arch="x86 x86_64 armhf" @@ -14,7 +14,7 @@ depends_dev="" makedepends="bash perl" options="!strip" install="" -subpackages="$pkgname-tools:tools $pkgname-cross:cross" +subpackages="$pkgname-doc $pkgname-tools $pkgname-cross" source=" http://golang.org/dl/go${pkgver}.src.tar.gz tools.tar.gz::https://github.com/golang/tools/archive/${_toolsver}.tar.gz @@ -26,44 +26,39 @@ source=" default-sc-getpw-r-size-max.patch " +_gotools="cover vet godoc" +_gocross="darwin freebsd openbsd windows" + _builddir="$srcdir"/$pkgname _tooldir="$srcdir"/tools-${_toolsver} prepare() { - local i cd "$_builddir" for i in $source; do case $i in - *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;; + *.patch) patch -p1 -i "$srcdir"/$i || return 1 ;; esac done } build() { + cd "$_builddir/src" + unset CC # ccache breaks build for some reason + export GOPATH="$srcdir" export GOROOT="$_builddir" export GOBIN="$GOROOT"/bin export GOROOT_FINAL=/usr/lib/go - # ccache breaks build for some reason - unset CC - case "$CARCH" in - x86) - export GOARCH="386" ;; - x86_64) - export GOARCH="amd64" ;; - arm*) - export GOARCH="arm" - export GOARM="6" ;; - *) - return 1 ;; + x86) export GOARCH="386" ;; + x86_64) export GOARCH="amd64" ;; + arm*) export GOARCH="arm" ;; + *) return 1 ;; esac - cd "$_builddir/src" - ./make.bash || return 1 - - for os in darwin freebsd openbsd windows; do + ./make.bash --no-clean || return 1 + for os in $_gocross; do for arch in "386" "amd64"; do GOARCH=$arch GOOS=$os ./make.bash --no-clean || return 1 done @@ -75,55 +70,43 @@ build() { mkdir -p "$GOPATH"/src/golang.org/x/tools cp -r "$_tooldir"/* "$GOPATH"/src/golang.org/x/tools - local tool= - for tool in cover vet godoc; do - "$GOROOT"/bin/go install golang.org/x/tools/cmd/$tool + for tool in $_gotools; do + "$GOROOT"/bin/go install \ + golang.org/x/tools/cmd/$tool || return 1 done } package() { - local f= d= cd "$_builddir" + mkdir -p "$pkgdir"/usr/bin "$pkgdir"/usr/lib/go "$pkgdir"/usr/share/doc/go - install -dm755 "$pkgdir"/usr/bin - for f in go gofmt; do - install -m755 bin/$f "$pkgdir"/usr/bin - done - - install -dm755 "$pkgdir"/usr/lib/go - cp -a pkg "$pkgdir"/usr/lib/go + install -Dm755 bin/go "$pkgdir"/usr/bin || return 1 + install -Dm755 bin/gofmt "$pkgdir"/usr/bin || return 1 # The source needs to be installed due to an upstream # bug (https://github.com/golang/go/issues/2775). # When this is resolved we can split out the source to a # go-doc sub package. - install -dm755 "$pkgdir"/usr/lib/go/src - for p in src/*; do - if [ -d "$p" ]; then - cp -r $p "$pkgdir"/usr/lib/go/src - fi - done + cp -a pkg src "$pkgdir"/usr/lib/go || return 1 + cp -r doc misc "$pkgdir"/usr/share/doc/go || return 1 + + # Remove tests from /usr/lib/go/src. + # Those shouldn't be affacted by the upstream bug (see above). + find "$pkgdir"/usr/lib/go \( -type f -a -iname '*_test*' \) \ + -o \( -type d -name 'testdata' \) -exec rm -rf \{\} \+ } tools() { pkgdesc="Go programming language tools" depends="$pkgname" - install -Dm755 "$_builddir"/bin/godoc "$subpkgdir"/usr/bin/godoc install -dm755 "$subpkgdir"/usr/lib/go/pkg/tool/linux_$GOARCH + install -Dm755 "$_builddir"/bin/godoc \ + "$pkgdir"/usr/lib/go/pkg/tool/linux_$GOARCH/$tool - local tool= - for tool in cover vet; do + for tool in $_gotools; do mv "$pkgdir"/usr/lib/go/pkg/tool/linux_$GOARCH/$tool \ - "$subpkgdir"/usr/lib/go/pkg/tool/linux_$GOARCH/$tool - done - - # Make documentation for tools available through godoc: - for tool in cover vet godoc; do - install -dm755 "$subpkgdir"/usr/lib/go/src/pkg/$tool - sed -e 's/^package main$/package documentation/' \ - "$srcdir"/src/golang.org/x/tools/cmd/$tool/doc.go > \ - "$subpkgdir"/usr/lib/go/src/pkg/$tool/doc.go + "$subpkgdir"/usr/lib/go/pkg/tool/linux_$GOARCH/$tool || return 1 done } @@ -134,7 +117,7 @@ cross() { mkdir -p "$subpkgdir"/usr/lib/go/pkg/tool \ "$subpkgdir"/usr/lib/go/src/runtime - for os in darwin freebsd openbsd windows; do + for os in $_gocross; do mv "$pkgdir"/usr/lib/go/pkg/tool/${os}_* \ "$subpkgdir"/usr/lib/go/pkg/tool || return 1 mv "$pkgdir"/usr/lib/go/pkg/${os}_* \ @@ -142,7 +125,6 @@ cross() { mv "$pkgdir"/usr/lib/go/src/runtime/zasm_${os}*.h \ "$subpkgdir"/usr/lib/go/src/runtime || return 1 done - } md5sums="907f85c8fa765d31f7f955836fec4049 go1.4.2.src.tar.gz -- 2.5.0 --- Unsubscribe: alpine-aports+unsubscribe@lists.alpinelinux.org Help: alpine-aports+help@lists.alpinelinux.org ---