* [gentoo-commits] repo/gentoo:master commit in: dev-lang/go/files/, dev-lang/go/
@ 2015-11-27 20:39 William Hubbs
0 siblings, 0 replies; 8+ messages in thread
From: William Hubbs @ 2015-11-27 20:39 UTC (permalink / raw
To: gentoo-commits
commit: 2fe67f29b8e17de2dad0823ddf349a298e5960c2
Author: William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 27 19:56:23 2015 +0000
Commit: William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Fri Nov 27 20:39:09 2015 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2fe67f29
dev-lang/go: remove incorrect patch for #558368
dev-lang/go/files/go-1.5.1-darwin-sysctl.patch | 11 -----------
dev-lang/go/go-1.5.1-r1.ebuild | 1 -
dev-lang/go/go-1.5.1.ebuild | 1 -
3 files changed, 13 deletions(-)
diff --git a/dev-lang/go/files/go-1.5.1-darwin-sysctl.patch b/dev-lang/go/files/go-1.5.1-darwin-sysctl.patch
deleted file mode 100644
index 5cec4b6..0000000
--- a/dev-lang/go/files/go-1.5.1-darwin-sysctl.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/cmd/dist/util.go.
-+++ src/cmd/dist/util.go
-@@ -404,7 +404,7 @@
- switch gohostos {
- case "darwin":
- // Even on 64-bit platform, darwin uname -m prints i386.
-- if strings.Contains(run("", CheckExit, "sysctl", "machdep.cpu.extfeatures"), "EM64T") {
-+ if strings.Contains(run("", CheckExit, "/usr/sbin/sysctl", "machdep.cpu.extfeatures"), "EM64T") {
- gohostarch = "amd64"
- }
- case "solaris":
diff --git a/dev-lang/go/go-1.5.1-r1.ebuild b/dev-lang/go/go-1.5.1-r1.ebuild
index 23d3717..ed766ec 100644
--- a/dev-lang/go/go-1.5.1-r1.ebuild
+++ b/dev-lang/go/go-1.5.1-r1.ebuild
@@ -113,7 +113,6 @@ src_prepare()
sed -i -e 's/"-Werror",//g' src/cmd/dist/build.go ||
die 'sed failed'
fi
- epatch "${FILESDIR}"/${P}-darwin-sysctl.patch
epatch_user
}
diff --git a/dev-lang/go/go-1.5.1.ebuild b/dev-lang/go/go-1.5.1.ebuild
index 139b350..a69f787 100644
--- a/dev-lang/go/go-1.5.1.ebuild
+++ b/dev-lang/go/go-1.5.1.ebuild
@@ -113,7 +113,6 @@ src_prepare()
sed -i -e 's/"-Werror",//g' src/cmd/dist/build.go ||
die 'sed failed'
fi
- epatch "${FILESDIR}"/${P}-darwin-sysctl.patch
epatch_user
}
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-lang/go/files/, dev-lang/go/
@ 2016-01-15 18:42 William Hubbs
0 siblings, 0 replies; 8+ messages in thread
From: William Hubbs @ 2016-01-15 18:42 UTC (permalink / raw
To: gentoo-commits
commit: e02e97c7c537c534a8b7fed00f366f8991c1cd25
Author: William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 15 18:31:43 2016 +0000
Commit: William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Fri Jan 15 18:34:15 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e02e97c7
dev-lang/go: version bump
dev-lang/go/Manifest | 1 +
.../go/files/go-1.5.3-assume-amd64-on-osx.patch | 13 ++
dev-lang/go/go-1.5.3.ebuild | 213 +++++++++++++++++++++
3 files changed, 227 insertions(+)
diff --git a/dev-lang/go/Manifest b/dev-lang/go/Manifest
index e3b07a1..0bdca46 100644
--- a/dev-lang/go/Manifest
+++ b/dev-lang/go/Manifest
@@ -1,2 +1,3 @@
DIST go1.4.2.src.tar.gz 10921896 SHA256 299a6fd8f8adfdce15bc06bde926e7b252ae8e24dd5b16b7d8791ed79e7b5e9b SHA512 cda1a29d4418875dffaf3324004ddae8e1bbb573f7668e6e0c03d8b61284f4db7fca244c181f2859f8ccdd3db6391fb21e0d98a1a9fc15096c15883249d48a9c WHIRLPOOL d06c27f6ff3a6499a6c7cb3c5eccd53eb588896c4d837e1fe9855c22ee3caa5cc48fd68cbeceff105b7c47fafbbf0eb3dc28ee3af7196692c5bf18511c6760ef
DIST go1.5.1.src.tar.gz 12049701 SHA256 a889873e98d9a72ae396a9b7dd597c29dcd709cafa9097d9c4ba04cff0ec436b SHA512 a3e92058c79502cfcb7d67143db67fef97393a416322b6f8b6c52b70879e7ab56e3cec94a9ca8046cc13b134845cc1e4b53c70d7208850092bf4edf04bf439ff WHIRLPOOL 3e9941af9bb0717e0c4deae53a0290250da8f88962aef67b856baf089369fdff786aa95cec3564812dc2f48b8c388c810b7568c669ee8a1103e03c6ed0b75893
+DIST go1.5.3.src.tar.gz 12057623 SHA256 754e06dab1c31ab168fc9db9e32596734015ea9e24bc44cae7f237f417ce4efe SHA512 b348832ea7cb095cf793960cf9f4da5e9f6ca8de7b5262bb819de97efea4835643e30a18efd4a82d01ea3854a1905af9e134271716c4b68c9d2a8f6e15f65ff0 WHIRLPOOL aec869ec6af62601f6b83283417eef739141f99be938d419ef4a553028141e05ded7777fdff2a2d1a3e35e4976e4ec96a301b4875c509a370848d0df5dc9e0c8
diff --git a/dev-lang/go/files/go-1.5.3-assume-amd64-on-osx.patch b/dev-lang/go/files/go-1.5.3-assume-amd64-on-osx.patch
new file mode 100644
index 0000000..d568889
--- /dev/null
+++ b/dev-lang/go/files/go-1.5.3-assume-amd64-on-osx.patch
@@ -0,0 +1,13 @@
+--- src/cmd/dist/util.go 2016-01-15 11:27:49.092713185 -0600
++++ src/cmd/dist/util.go 2016-01-15 11:29:50.616721387 -0600
+@@ -404,9 +404,7 @@
+ switch gohostos {
+ case "darwin":
+ // Even on 64-bit platform, darwin uname -m prints i386.
+- if strings.Contains(run("", CheckExit, "sysctl", "machdep.cpu.extfeatures"), "EM64T") {
+- gohostarch = "amd64"
+- }
++ gohostarch = "amd64"
+ case "solaris":
+ // Even on 64-bit platform, solaris uname -m prints i86pc.
+ out := run("", CheckExit, "isainfo", "-n")
diff --git a/dev-lang/go/go-1.5.3.ebuild b/dev-lang/go/go-1.5.3.ebuild
new file mode 100644
index 0000000..de05f52
--- /dev/null
+++ b/dev-lang/go/go-1.5.3.ebuild
@@ -0,0 +1,213 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+
+inherit eutils toolchain-funcs
+
+if [[ ${PV} = 9999 ]]; then
+ EGIT_REPO_URI="git://github.com/golang/go.git"
+ inherit git-r3
+else
+ SRC_URI="https://storage.googleapis.com/golang/go${PV}.src.tar.gz"
+ # go-bootstrap-1.4 only supports go on amd64, arm and x86 architectures.
+ # Allowing other bootstrap options would enable arm64 and ppc64 builds.
+ KEYWORDS="-* ~amd64 ~arm ~x86 ~amd64-fbsd ~x86-fbsd ~x64-macos ~x86-macos"
+fi
+
+DESCRIPTION="A concurrent garbage collected and typesafe programming language"
+HOMEPAGE="http://www.golang.org"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+IUSE=""
+
+DEPEND=">=dev-lang/go-bootstrap-1.4.1"
+RDEPEND="!<dev-go/go-tools-0_pre20150902"
+
+# These test data objects have writable/executable stacks.
+QA_EXECSTACK="usr/lib/go/src/debug/elf/testdata/*.obj"
+
+REQUIRES_EXCLUDE="/usr/lib/go/src/debug/elf/testdata/*"
+
+# The tools in /usr/lib/go should not cause the multilib-strict check to fail.
+QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*"
+
+# The go language uses *.a files which are _NOT_ libraries and should not be
+# stripped. The test data objects should also be left alone and unstripped.
+STRIP_MASK="/usr/lib/go/pkg/*.a
+ /usr/lib/go/src/debug/elf/testdata/*
+ /usr/lib/go/src/debug/dwarf/testdata/*
+ /usr/lib/go/src/runtime/race/*.syso"
+
+if [[ ${PV} != 9999 ]]; then
+ S="${WORKDIR}"/go
+fi
+
+go_arch()
+{
+ # By chance most portage arch names match Go
+ local portage_arch=$(tc-arch $@)
+ case "${portage_arch}" in
+ x86) echo 386;;
+ x64-*) echo amd64;;
+ *) echo "${portage_arch}";;
+ esac
+}
+
+go_arm()
+{
+ case "${1:-${CHOST}}" in
+ armv5*) echo 5;;
+ armv6*) echo 6;;
+ armv7*) echo 7;;
+ *)
+ die "unknown GOARM for ${1:-${CHOST}}"
+ ;;
+ esac
+}
+
+go_os()
+{
+ case "${1:-${CHOST}}" in
+ *-linux*) echo linux;;
+ *-darwin*) echo darwin;;
+ *-freebsd*) echo freebsd;;
+ *-netbsd*) echo netbsd;;
+ *-openbsd*) echo openbsd;;
+ *-solaris*) echo solaris;;
+ *-cygwin*|*-interix*|*-winnt*)
+ echo windows
+ ;;
+ *)
+ die "unknown GOOS for ${1:-${CHOST}}"
+ ;;
+ esac
+}
+
+go_tuple()
+{
+ echo "$(go_os $@)_$(go_arch $@)"
+}
+
+go_cross_compile()
+{
+ [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]]
+}
+
+pkg_pretend()
+{
+ # make.bash does not understand cross-compiling a cross-compiler
+ if [[ $(go_tuple) != $(go_tuple ${CTARGET}) ]]; then
+ die "CHOST CTARGET pair unsupported: CHOST=${CHOST} CTARGET=${CTARGET}"
+ fi
+}
+
+src_prepare()
+{
+ epatch "${FILESDIR}"/${P}-assume-amd64-on-osx.patch
+ epatch_user
+}
+
+src_compile()
+{
+ export GOROOT_BOOTSTRAP="${EPREFIX}"/usr/lib/go1.4
+ export GOROOT_FINAL="${EPREFIX}"/usr/lib/go
+ export GOROOT="$(pwd)"
+ export GOBIN="${GOROOT}/bin"
+
+ # Go's build script does not use BUILD/HOST/TARGET consistently. :(
+ export GOHOSTARCH=$(go_arch ${CBUILD})
+ export GOHOSTOS=$(go_os ${CBUILD})
+ export CC=$(tc-getBUILD_CC)
+
+ export GOARCH=$(go_arch)
+ export GOOS=$(go_os)
+ export CC_FOR_TARGET=$(tc-getCC)
+ export CXX_FOR_TARGET=$(tc-getCXX)
+ if [[ ${ARCH} == arm ]]; then
+ export GOARM=$(go_arm)
+ fi
+
+ cd src
+ ./make.bash || die "build failed"
+}
+
+src_test()
+{
+ go_cross_compile && return 0
+
+ cd src
+ PATH="${GOBIN}:${PATH}" \
+ ./run.bash -no-rebuild || die "tests failed"
+}
+
+src_install()
+{
+ local bin_path f x
+
+ dodir /usr/lib/go
+ insinto /usr/lib/go
+
+ # There is a known issue which requires the source tree to be installed [1].
+ # Once this is fixed, we can consider using the doc use flag to control
+ # installing the doc and src directories.
+ # [1] https://golang.org/issue/2775
+ doins -r bin doc lib pkg src
+ fperms -R +x /usr/lib/go/bin /usr/lib/go/pkg/tool
+
+ if go_cross_compile; then
+ bin_path="bin/$(go_tuple)"
+ else
+ bin_path=bin
+ fi
+ for x in ${bin_path}/*; do
+ f=${x##*/}
+ dosym ../lib/go/${bin_path}/${f} /usr/bin/${f}
+ done
+
+ dodir /usr/lib/go/misc
+ insinto /usr/lib/go/misc
+ doins -r misc/trace
+
+ dodoc AUTHORS CONTRIBUTORS PATENTS README.md
+}
+
+pkg_preinst()
+{
+ has_version '<dev-lang/go-1.4' &&
+ export had_support_files=true ||
+ export had_support_files=false
+}
+
+pkg_postinst()
+{
+ # If the go tool sees a package file timestamped older than a dependancy it
+ # will rebuild that file. So, in order to stop go from rebuilding lots of
+ # packages for every build we need to fix the timestamps. The compiler and
+ # linker are also checked - so we need to fix them too.
+ ebegin "fixing timestamps to avoid unnecessary rebuilds"
+ tref="usr/lib/go/pkg/*/runtime.a"
+ find "${EROOT}"usr/lib/go -type f \
+ -exec touch -r "${EROOT}"${tref} {} \;
+ eend $?
+
+ if [[ ${PV} != 9999 && -n ${REPLACING_VERSIONS} &&
+ ${REPLACING_VERSIONS} != ${PV} ]]; then
+ elog "Release notes are located at http://golang.org/doc/go${PV}"
+ fi
+
+ if $had_support_files; then
+ ewarn
+ ewarn "All editor support, IDE support, shell completion"
+ ewarn "support, etc has been removed from the go package"
+ ewarn "upstream."
+ ewarn "For more information on which support is available, see"
+ ewarn "the following URL:"
+ ewarn "https://github.com/golang/go/wiki/IDEsAndTextEditorPlugins"
+ fi
+}
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-lang/go/files/, dev-lang/go/
@ 2016-04-02 18:36 William Hubbs
0 siblings, 0 replies; 8+ messages in thread
From: William Hubbs @ 2016-04-02 18:36 UTC (permalink / raw
To: gentoo-commits
commit: 7d3cd7df5783c2496b67ef9cda77009aa560e61f
Author: William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 2 18:35:36 2016 +0000
Commit: William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Sat Apr 2 18:36:15 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7d3cd7df
dev-lang/go: remove old versions
Package-Manager: portage-2.2.26
dev-lang/go/Manifest | 1 -
.../go/files/go-1.5.3-assume-amd64-on-osx.patch | 13 --
dev-lang/go/go-1.5.3.ebuild | 213 ---------------------
dev-lang/go/go-1.6-r1.ebuild | 211 --------------------
dev-lang/go/go-1.6.ebuild | 207 --------------------
5 files changed, 645 deletions(-)
diff --git a/dev-lang/go/Manifest b/dev-lang/go/Manifest
index c295cf1..992d461 100644
--- a/dev-lang/go/Manifest
+++ b/dev-lang/go/Manifest
@@ -7,5 +7,4 @@ DIST go-linux-arm-bootstrap.tbz 46055976 SHA256 a44e33b95046e01fd7125c3cc3c34b13
DIST go-linux-arm64-bootstrap.tbz 45369354 SHA256 810c998e6701580fe0f26d46c5796eefce648e252ff9d6d761304e60556b7fc0 SHA512 3f64869430c03efa77796ed74d07a337e2a205802485605cbdd67778a08e5ce041ce3925b7a5cca0a6b4ad24ab70e07ee54091b010f67ec7370a985022f5a21e WHIRLPOOL f6f470081d5f23c190310280aaf7454a4f58fe4e7545bbd219046711f8d27ce97cc5f5f1c207e777067d1f6332e4b3f2c819b178e899d21c2d5d1d466a42cc37
DIST go-linux-ppc64-bootstrap.tbz 45266082 SHA256 89902cebaf93b95dea225b7304eedcae101d6fb83bba0fcdfee001361b4868c0 SHA512 d013a1a5953207505a9f7e0c5cfdc7f463d4669fd18b36cf1df10126e9d4c012252bc4d207dd4503c34301e76197d8e89a9ed9d9d0b8a3b54b62e782b4c39d7b WHIRLPOOL 3ec868d94e8452a3cdb49a1292f9f32ebeb813ea297e419849cdee28c8d952887feb70e1095ce109ff6b8bb81dee47b7eb6f275b15bb6f46422095c3b260f968
DIST go-solaris-amd64-bootstrap.tbz 48367195 SHA256 92ebdbf001f243a78a6c2d8ee30e929ba2cecbedf8e0fc07e129b04b107453ad SHA512 cf8725db0d001d61badee71624799a3c9e75f61f77ab090c1f6c490d694c4be367019b28d88306045d877ab5a324a1f9b0674293caf3acb19c193fc3746a48f2 WHIRLPOOL 672c6642e340b6d4f38b633f67fdc3202e3725022a8a61e2129276fccd6c42ddc24ed06c1d57eb31a25ea8056b79686619cbb36431b9c23b6d4be5bcb715bd89
-DIST go1.5.3.src.tar.gz 12057623 SHA256 754e06dab1c31ab168fc9db9e32596734015ea9e24bc44cae7f237f417ce4efe SHA512 b348832ea7cb095cf793960cf9f4da5e9f6ca8de7b5262bb819de97efea4835643e30a18efd4a82d01ea3854a1905af9e134271716c4b68c9d2a8f6e15f65ff0 WHIRLPOOL aec869ec6af62601f6b83283417eef739141f99be938d419ef4a553028141e05ded7777fdff2a2d1a3e35e4976e4ec96a301b4875c509a370848d0df5dc9e0c8
DIST go1.6.src.tar.gz 12613308 SHA256 a96cce8ce43a9bf9b2a4c7d470bc7ee0cb00410da815980681c8353218dcf146 SHA512 59e9d72a80558fd5e3f176e068897a45333b36e35f6c00393647941a70e741168e65941b6059397378020c3b78ec3471a48809682f7efd97cf33eec6325fc3e8 WHIRLPOOL c6debe1a5039f0ca34c29b4a53f958503a724cae13715ea14f0237b5faacd26e09eb6405462e22abd6806540dd8fb9eb2fa08ff6e8676b0f6dffa267210f5eac
diff --git a/dev-lang/go/files/go-1.5.3-assume-amd64-on-osx.patch b/dev-lang/go/files/go-1.5.3-assume-amd64-on-osx.patch
deleted file mode 100644
index d568889..0000000
--- a/dev-lang/go/files/go-1.5.3-assume-amd64-on-osx.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- src/cmd/dist/util.go 2016-01-15 11:27:49.092713185 -0600
-+++ src/cmd/dist/util.go 2016-01-15 11:29:50.616721387 -0600
-@@ -404,9 +404,7 @@
- switch gohostos {
- case "darwin":
- // Even on 64-bit platform, darwin uname -m prints i386.
-- if strings.Contains(run("", CheckExit, "sysctl", "machdep.cpu.extfeatures"), "EM64T") {
-- gohostarch = "amd64"
-- }
-+ gohostarch = "amd64"
- case "solaris":
- // Even on 64-bit platform, solaris uname -m prints i86pc.
- out := run("", CheckExit, "isainfo", "-n")
diff --git a/dev-lang/go/go-1.5.3.ebuild b/dev-lang/go/go-1.5.3.ebuild
deleted file mode 100644
index 1c26f96..0000000
--- a/dev-lang/go/go-1.5.3.ebuild
+++ /dev/null
@@ -1,213 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-
-inherit eutils toolchain-funcs
-
-if [[ ${PV} = 9999 ]]; then
- EGIT_REPO_URI="git://github.com/golang/go.git"
- inherit git-r3
-else
- SRC_URI="https://storage.googleapis.com/golang/go${PV}.src.tar.gz"
- # go-bootstrap-1.4 only supports go on amd64, arm and x86 architectures.
- # Allowing other bootstrap options would enable arm64 and ppc64 builds.
- KEYWORDS="-* amd64 arm x86 ~amd64-fbsd ~x86-fbsd ~x64-macos ~x86-macos ~x64-solaris"
-fi
-
-DESCRIPTION="A concurrent garbage collected and typesafe programming language"
-HOMEPAGE="http://www.golang.org"
-
-LICENSE="BSD"
-SLOT="0/${PV}"
-IUSE=""
-
-DEPEND=">=dev-lang/go-bootstrap-1.4.1"
-RDEPEND="!<dev-go/go-tools-0_pre20150902"
-
-# These test data objects have writable/executable stacks.
-QA_EXECSTACK="usr/lib/go/src/debug/elf/testdata/*.obj"
-
-REQUIRES_EXCLUDE="/usr/lib/go/src/debug/elf/testdata/*"
-
-# The tools in /usr/lib/go should not cause the multilib-strict check to fail.
-QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*"
-
-# The go language uses *.a files which are _NOT_ libraries and should not be
-# stripped. The test data objects should also be left alone and unstripped.
-STRIP_MASK="/usr/lib/go/pkg/*.a
- /usr/lib/go/src/debug/elf/testdata/*
- /usr/lib/go/src/debug/dwarf/testdata/*
- /usr/lib/go/src/runtime/race/*.syso"
-
-if [[ ${PV} != 9999 ]]; then
- S="${WORKDIR}"/go
-fi
-
-go_arch()
-{
- # By chance most portage arch names match Go
- local portage_arch=$(tc-arch $@)
- case "${portage_arch}" in
- x86) echo 386;;
- x64-*) echo amd64;;
- *) echo "${portage_arch}";;
- esac
-}
-
-go_arm()
-{
- case "${1:-${CHOST}}" in
- armv5*) echo 5;;
- armv6*) echo 6;;
- armv7*) echo 7;;
- *)
- die "unknown GOARM for ${1:-${CHOST}}"
- ;;
- esac
-}
-
-go_os()
-{
- case "${1:-${CHOST}}" in
- *-linux*) echo linux;;
- *-darwin*) echo darwin;;
- *-freebsd*) echo freebsd;;
- *-netbsd*) echo netbsd;;
- *-openbsd*) echo openbsd;;
- *-solaris*) echo solaris;;
- *-cygwin*|*-interix*|*-winnt*)
- echo windows
- ;;
- *)
- die "unknown GOOS for ${1:-${CHOST}}"
- ;;
- esac
-}
-
-go_tuple()
-{
- echo "$(go_os $@)_$(go_arch $@)"
-}
-
-go_cross_compile()
-{
- [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]]
-}
-
-pkg_pretend()
-{
- # make.bash does not understand cross-compiling a cross-compiler
- if [[ $(go_tuple) != $(go_tuple ${CTARGET}) ]]; then
- die "CHOST CTARGET pair unsupported: CHOST=${CHOST} CTARGET=${CTARGET}"
- fi
-}
-
-src_prepare()
-{
- epatch "${FILESDIR}"/${P}-assume-amd64-on-osx.patch
- epatch_user
-}
-
-src_compile()
-{
- export GOROOT_BOOTSTRAP="${EPREFIX}"/usr/lib/go1.4
- export GOROOT_FINAL="${EPREFIX}"/usr/lib/go
- export GOROOT="$(pwd)"
- export GOBIN="${GOROOT}/bin"
-
- # Go's build script does not use BUILD/HOST/TARGET consistently. :(
- export GOHOSTARCH=$(go_arch ${CBUILD})
- export GOHOSTOS=$(go_os ${CBUILD})
- export CC=$(tc-getBUILD_CC)
-
- export GOARCH=$(go_arch)
- export GOOS=$(go_os)
- export CC_FOR_TARGET=$(tc-getCC)
- export CXX_FOR_TARGET=$(tc-getCXX)
- if [[ ${ARCH} == arm ]]; then
- export GOARM=$(go_arm)
- fi
-
- cd src
- ./make.bash || die "build failed"
-}
-
-src_test()
-{
- go_cross_compile && return 0
-
- cd src
- PATH="${GOBIN}:${PATH}" \
- ./run.bash -no-rebuild || die "tests failed"
-}
-
-src_install()
-{
- local bin_path f x
-
- dodir /usr/lib/go
- insinto /usr/lib/go
-
- # There is a known issue which requires the source tree to be installed [1].
- # Once this is fixed, we can consider using the doc use flag to control
- # installing the doc and src directories.
- # [1] https://golang.org/issue/2775
- doins -r bin doc lib pkg src
- fperms -R +x /usr/lib/go/bin /usr/lib/go/pkg/tool
-
- if go_cross_compile; then
- bin_path="bin/$(go_tuple)"
- else
- bin_path=bin
- fi
- for x in ${bin_path}/*; do
- f=${x##*/}
- dosym ../lib/go/${bin_path}/${f} /usr/bin/${f}
- done
-
- dodir /usr/lib/go/misc
- insinto /usr/lib/go/misc
- doins -r misc/trace
-
- dodoc AUTHORS CONTRIBUTORS PATENTS README.md
-}
-
-pkg_preinst()
-{
- has_version '<dev-lang/go-1.4' &&
- export had_support_files=true ||
- export had_support_files=false
-}
-
-pkg_postinst()
-{
- # If the go tool sees a package file timestamped older than a dependancy it
- # will rebuild that file. So, in order to stop go from rebuilding lots of
- # packages for every build we need to fix the timestamps. The compiler and
- # linker are also checked - so we need to fix them too.
- ebegin "fixing timestamps to avoid unnecessary rebuilds"
- tref="usr/lib/go/pkg/*/runtime.a"
- find "${EROOT}"usr/lib/go -type f \
- -exec touch -r "${EROOT}"${tref} {} \;
- eend $?
-
- if [[ ${PV} != 9999 && -n ${REPLACING_VERSIONS} &&
- ${REPLACING_VERSIONS} != ${PV} ]]; then
- elog "Release notes are located at http://golang.org/doc/go${PV}"
- fi
-
- if $had_support_files; then
- ewarn
- ewarn "All editor support, IDE support, shell completion"
- ewarn "support, etc has been removed from the go package"
- ewarn "upstream."
- ewarn "For more information on which support is available, see"
- ewarn "the following URL:"
- ewarn "https://github.com/golang/go/wiki/IDEsAndTextEditorPlugins"
- fi
-}
diff --git a/dev-lang/go/go-1.6-r1.ebuild b/dev-lang/go/go-1.6-r1.ebuild
deleted file mode 100644
index 25fbae1..0000000
--- a/dev-lang/go/go-1.6-r1.ebuild
+++ /dev/null
@@ -1,211 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=6
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-
-MY_PV=${PV/_/}
-
-inherit toolchain-funcs
-
-if [[ ${PV} = 9999 ]]; then
- EGIT_REPO_URI="git://github.com/golang/go.git"
- inherit git-r3
-else
- SRC_URI="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz"
- # go-bootstrap-1.4 only supports go on amd64, arm and x86 architectures.
- # Allowing other bootstrap options would enable arm64 and ppc64 builds.
- case ${PV} in
- *9999*|*_rc*) ;;
- *)
- KEYWORDS="-* ~amd64 ~arm ~x86 ~amd64-fbsd ~x86-fbsd ~x64-macos ~x86-macos"
- ;;
- esac
-fi
-
-DESCRIPTION="A concurrent garbage collected and typesafe programming language"
-HOMEPAGE="http://www.golang.org"
-
-LICENSE="BSD"
-SLOT="0/${PV}"
-IUSE=""
-
-DEPEND=">=dev-lang/go-bootstrap-1.4.1"
-RDEPEND="!<dev-go/go-tools-0_pre20150902"
-
-# These test data objects have writable/executable stacks.
-QA_EXECSTACK="usr/lib/go/src/debug/elf/testdata/*.obj"
-
-REQUIRES_EXCLUDE="/usr/lib/go/src/debug/elf/testdata/*"
-
-# The tools in /usr/lib/go should not cause the multilib-strict check to fail.
-QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*"
-
-# The go language uses *.a files which are _NOT_ libraries and should not be
-# stripped. The test data objects should also be left alone and unstripped.
-STRIP_MASK="/usr/lib/go/pkg/*.a
- /usr/lib/go/src/debug/elf/testdata/*
- /usr/lib/go/src/debug/dwarf/testdata/*
- /usr/lib/go/src/runtime/race/*.syso"
-
-if [[ ${PV} != 9999 ]]; then
- S="${WORKDIR}"/go
-fi
-
-go_arch()
-{
- # By chance most portage arch names match Go
- local portage_arch=$(tc-arch $@)
- case "${portage_arch}" in
- x86) echo 386;;
- x64-*) echo amd64;;
- *) echo "${portage_arch}";;
- esac
-}
-
-go_arm()
-{
- case "${1:-${CHOST}}" in
- armv5*) echo 5;;
- armv6*) echo 6;;
- armv7*) echo 7;;
- *)
- die "unknown GOARM for ${1:-${CHOST}}"
- ;;
- esac
-}
-
-go_os()
-{
- case "${1:-${CHOST}}" in
- *-linux*) echo linux;;
- *-darwin*) echo darwin;;
- *-freebsd*) echo freebsd;;
- *-netbsd*) echo netbsd;;
- *-openbsd*) echo openbsd;;
- *-solaris*) echo solaris;;
- *-cygwin*|*-interix*|*-winnt*)
- echo windows
- ;;
- *)
- die "unknown GOOS for ${1:-${CHOST}}"
- ;;
- esac
-}
-
-go_tuple()
-{
- echo "$(go_os $@)_$(go_arch $@)"
-}
-
-go_cross_compile()
-{
- [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]]
-}
-
-pkg_pretend()
-{
- # make.bash does not understand cross-compiling a cross-compiler
- if [[ $(go_tuple) != $(go_tuple ${CTARGET}) ]]; then
- die "CHOST CTARGET pair unsupported: CHOST=${CHOST} CTARGET=${CTARGET}"
- fi
-}
-
-src_compile()
-{
- export GOROOT_BOOTSTRAP="${EPREFIX}"/usr/lib/go1.4
- export GOROOT_FINAL="${EPREFIX}"/usr/lib/go
- export GOROOT="$(pwd)"
- export GOBIN="${GOROOT}/bin"
-
- # Go's build script does not use BUILD/HOST/TARGET consistently. :(
- export GOHOSTARCH=$(go_arch ${CBUILD})
- export GOHOSTOS=$(go_os ${CBUILD})
- export CC=$(tc-getBUILD_CC)
-
- export GOARCH=$(go_arch)
- export GOOS=$(go_os)
- export CC_FOR_TARGET=$(tc-getCC)
- export CXX_FOR_TARGET=$(tc-getCXX)
- if [[ ${ARCH} == arm ]]; then
- export GOARM=$(go_arm)
- fi
-
- cd src
- ./make.bash || die "build failed"
-}
-
-src_test()
-{
- go_cross_compile && return 0
-
- cd src
- PATH="${GOBIN}:${PATH}" \
- ./run.bash -no-rebuild || die "tests failed"
-}
-
-src_install()
-{
- local bin_path f x
-
- dodir /usr/lib/go
- insinto /usr/lib/go
-
- # There is a known issue which requires the source tree to be installed [1].
- # Once this is fixed, we can consider using the doc use flag to control
- # installing the doc and src directories.
- # [1] https://golang.org/issue/2775
- doins -r bin doc lib pkg src
- fperms -R +x /usr/lib/go/bin /usr/lib/go/pkg/tool
-
- cp -a misc "${D}"/usr/lib/go/misc
-
- if go_cross_compile; then
- bin_path="bin/$(go_tuple)"
- else
- bin_path=bin
- fi
- for x in ${bin_path}/*; do
- f=${x##*/}
- dosym ../lib/go/${bin_path}/${f} /usr/bin/${f}
- done
- dodoc AUTHORS CONTRIBUTORS PATENTS README.md
-}
-
-pkg_preinst()
-{
- has_version '<dev-lang/go-1.4' &&
- export had_support_files=true ||
- export had_support_files=false
-}
-
-pkg_postinst()
-{
- # If the go tool sees a package file timestamped older than a dependancy it
- # will rebuild that file. So, in order to stop go from rebuilding lots of
- # packages for every build we need to fix the timestamps. The compiler and
- # linker are also checked - so we need to fix them too.
- ebegin "fixing timestamps to avoid unnecessary rebuilds"
- tref="usr/lib/go/pkg/*/runtime.a"
- find "${EROOT}"usr/lib/go -type f \
- -exec touch -r "${EROOT}"${tref} {} \;
- eend $?
-
- if [[ ${PV} != 9999 && -n ${REPLACING_VERSIONS} &&
- ${REPLACING_VERSIONS} != ${PV} ]]; then
- elog "Release notes are located at http://golang.org/doc/go${PV}"
- fi
-
- if $had_support_files; then
- ewarn
- ewarn "All editor support, IDE support, shell completion"
- ewarn "support, etc has been removed from the go package"
- ewarn "upstream."
- ewarn "For more information on which support is available, see"
- ewarn "the following URL:"
- ewarn "https://github.com/golang/go/wiki/IDEsAndTextEditorPlugins"
- fi
-}
diff --git a/dev-lang/go/go-1.6.ebuild b/dev-lang/go/go-1.6.ebuild
deleted file mode 100644
index c57298b..0000000
--- a/dev-lang/go/go-1.6.ebuild
+++ /dev/null
@@ -1,207 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-
-inherit eutils toolchain-funcs
-
-if [[ ${PV} = 9999 ]]; then
- EGIT_REPO_URI="git://github.com/golang/go.git"
- inherit git-r3
-else
- SRC_URI="https://storage.googleapis.com/golang/go${PV}.src.tar.gz"
- # go-bootstrap-1.4 only supports go on amd64, arm and x86 architectures.
- # Allowing other bootstrap options would enable arm64 and ppc64 builds.
- KEYWORDS="-* ~amd64 ~arm ~x86 ~amd64-fbsd ~x86-fbsd ~x64-macos ~x86-macos ~x64-solaris"
-fi
-
-DESCRIPTION="A concurrent garbage collected and typesafe programming language"
-HOMEPAGE="http://www.golang.org"
-
-LICENSE="BSD"
-SLOT="0/${PV}"
-IUSE=""
-
-DEPEND=">=dev-lang/go-bootstrap-1.4.1"
-RDEPEND="!<dev-go/go-tools-0_pre20150902"
-
-# These test data objects have writable/executable stacks.
-QA_EXECSTACK="usr/lib/go/src/debug/elf/testdata/*.obj"
-
-REQUIRES_EXCLUDE="/usr/lib/go/src/debug/elf/testdata/*"
-
-# The tools in /usr/lib/go should not cause the multilib-strict check to fail.
-QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*"
-
-# The go language uses *.a files which are _NOT_ libraries and should not be
-# stripped. The test data objects should also be left alone and unstripped.
-STRIP_MASK="/usr/lib/go/pkg/*.a
- /usr/lib/go/src/debug/elf/testdata/*
- /usr/lib/go/src/debug/dwarf/testdata/*
- /usr/lib/go/src/runtime/race/*.syso"
-
-if [[ ${PV} != 9999 ]]; then
- S="${WORKDIR}"/go
-fi
-
-go_arch()
-{
- # By chance most portage arch names match Go
- local portage_arch=$(tc-arch $@)
- case "${portage_arch}" in
- x86) echo 386;;
- x64-*) echo amd64;;
- *) echo "${portage_arch}";;
- esac
-}
-
-go_arm()
-{
- case "${1:-${CHOST}}" in
- armv5*) echo 5;;
- armv6*) echo 6;;
- armv7*) echo 7;;
- *)
- die "unknown GOARM for ${1:-${CHOST}}"
- ;;
- esac
-}
-
-go_os()
-{
- case "${1:-${CHOST}}" in
- *-linux*) echo linux;;
- *-darwin*) echo darwin;;
- *-freebsd*) echo freebsd;;
- *-netbsd*) echo netbsd;;
- *-openbsd*) echo openbsd;;
- *-solaris*) echo solaris;;
- *-cygwin*|*-interix*|*-winnt*)
- echo windows
- ;;
- *)
- die "unknown GOOS for ${1:-${CHOST}}"
- ;;
- esac
-}
-
-go_tuple()
-{
- echo "$(go_os $@)_$(go_arch $@)"
-}
-
-go_cross_compile()
-{
- [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]]
-}
-
-pkg_pretend()
-{
- # make.bash does not understand cross-compiling a cross-compiler
- if [[ $(go_tuple) != $(go_tuple ${CTARGET}) ]]; then
- die "CHOST CTARGET pair unsupported: CHOST=${CHOST} CTARGET=${CTARGET}"
- fi
-}
-
-src_compile()
-{
- export GOROOT_BOOTSTRAP="${EPREFIX}"/usr/lib/go1.4
- export GOROOT_FINAL="${EPREFIX}"/usr/lib/go
- export GOROOT="$(pwd)"
- export GOBIN="${GOROOT}/bin"
-
- # Go's build script does not use BUILD/HOST/TARGET consistently. :(
- export GOHOSTARCH=$(go_arch ${CBUILD})
- export GOHOSTOS=$(go_os ${CBUILD})
- export CC=$(tc-getBUILD_CC)
-
- export GOARCH=$(go_arch)
- export GOOS=$(go_os)
- export CC_FOR_TARGET=$(tc-getCC)
- export CXX_FOR_TARGET=$(tc-getCXX)
- if [[ ${ARCH} == arm ]]; then
- export GOARM=$(go_arm)
- fi
-
- cd src
- ./make.bash || die "build failed"
-}
-
-src_test()
-{
- go_cross_compile && return 0
-
- cd src
- PATH="${GOBIN}:${PATH}" \
- ./run.bash -no-rebuild || die "tests failed"
-}
-
-src_install()
-{
- local bin_path f x
-
- dodir /usr/lib/go
- insinto /usr/lib/go
-
- # There is a known issue which requires the source tree to be installed [1].
- # Once this is fixed, we can consider using the doc use flag to control
- # installing the doc and src directories.
- # [1] https://golang.org/issue/2775
- doins -r bin doc lib pkg src
- fperms -R +x /usr/lib/go/bin /usr/lib/go/pkg/tool
-
- if go_cross_compile; then
- bin_path="bin/$(go_tuple)"
- else
- bin_path=bin
- fi
- for x in ${bin_path}/*; do
- f=${x##*/}
- dosym ../lib/go/${bin_path}/${f} /usr/bin/${f}
- done
-
- dodir /usr/lib/go/misc
- insinto /usr/lib/go/misc
- doins -r misc/trace
-
- dodoc AUTHORS CONTRIBUTORS PATENTS README.md
-}
-
-pkg_preinst()
-{
- has_version '<dev-lang/go-1.4' &&
- export had_support_files=true ||
- export had_support_files=false
-}
-
-pkg_postinst()
-{
- # If the go tool sees a package file timestamped older than a dependancy it
- # will rebuild that file. So, in order to stop go from rebuilding lots of
- # packages for every build we need to fix the timestamps. The compiler and
- # linker are also checked - so we need to fix them too.
- ebegin "fixing timestamps to avoid unnecessary rebuilds"
- tref="usr/lib/go/pkg/*/runtime.a"
- find "${EROOT}"usr/lib/go -type f \
- -exec touch -r "${EROOT}"${tref} {} \;
- eend $?
-
- if [[ ${PV} != 9999 && -n ${REPLACING_VERSIONS} &&
- ${REPLACING_VERSIONS} != ${PV} ]]; then
- elog "Release notes are located at http://golang.org/doc/go${PV}"
- fi
-
- if $had_support_files; then
- ewarn
- ewarn "All editor support, IDE support, shell completion"
- ewarn "support, etc has been removed from the go package"
- ewarn "upstream."
- ewarn "For more information on which support is available, see"
- ewarn "the following URL:"
- ewarn "https://github.com/golang/go/wiki/IDEsAndTextEditorPlugins"
- fi
-}
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-lang/go/files/, dev-lang/go/
@ 2016-05-18 17:30 William Hubbs
0 siblings, 0 replies; 8+ messages in thread
From: William Hubbs @ 2016-05-18 17:30 UTC (permalink / raw
To: gentoo-commits
commit: 39807b1e2e146b4599f68d07a9fd41bad7f62404
Author: William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Wed May 18 17:22:40 2016 +0000
Commit: William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Wed May 18 17:23:02 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=39807b1e
dev-lang/go: apply patch for #581072
Gdb was starting by spawning a shell and this was causing issues for the tests.
Package-Manager: portage-2.2.28
dev-lang/go/files/go-1.6.1-gdb-no-shell.patch | 12 ++++++++++++
dev-lang/go/files/go-1.6.2-gdb-no-shell.patch | 12 ++++++++++++
dev-lang/go/go-1.6.1.ebuild | 5 +++++
dev-lang/go/go-1.6.2.ebuild | 5 +++++
4 files changed, 34 insertions(+)
diff --git a/dev-lang/go/files/go-1.6.1-gdb-no-shell.patch b/dev-lang/go/files/go-1.6.1-gdb-no-shell.patch
new file mode 100644
index 0000000..ccce6f0
--- /dev/null
+++ b/dev-lang/go/files/go-1.6.1-gdb-no-shell.patch
@@ -0,0 +1,12 @@
+diff --git a/src/runtime/runtime-gdb_test.go b/src/runtime/runtime-gdb_test.go
+index 6ebc69a..648092a 100644
+--- a/src/runtime/runtime-gdb_test.go
++++ b/src/runtime/runtime-gdb_test.go
+@@ -87,6 +87,7 @@ func TestGdbPython(t *testing.T) {
+
+ args := []string{"-nx", "-q", "--batch", "-iex",
+ fmt.Sprintf("add-auto-load-safe-path %s/src/runtime", runtime.GOROOT()),
++ "-ex", "set startup-with-shell off",
+ "-ex", "info auto-load python-scripts",
+ "-ex", "br main.go:10",
+ "-ex", "run",
diff --git a/dev-lang/go/files/go-1.6.2-gdb-no-shell.patch b/dev-lang/go/files/go-1.6.2-gdb-no-shell.patch
new file mode 100644
index 0000000..ccce6f0
--- /dev/null
+++ b/dev-lang/go/files/go-1.6.2-gdb-no-shell.patch
@@ -0,0 +1,12 @@
+diff --git a/src/runtime/runtime-gdb_test.go b/src/runtime/runtime-gdb_test.go
+index 6ebc69a..648092a 100644
+--- a/src/runtime/runtime-gdb_test.go
++++ b/src/runtime/runtime-gdb_test.go
+@@ -87,6 +87,7 @@ func TestGdbPython(t *testing.T) {
+
+ args := []string{"-nx", "-q", "--batch", "-iex",
+ fmt.Sprintf("add-auto-load-safe-path %s/src/runtime", runtime.GOROOT()),
++ "-ex", "set startup-with-shell off",
+ "-ex", "info auto-load python-scripts",
+ "-ex", "br main.go:10",
+ "-ex", "run",
diff --git a/dev-lang/go/go-1.6.1.ebuild b/dev-lang/go/go-1.6.1.ebuild
index c70fc26..4fce12b 100644
--- a/dev-lang/go/go-1.6.1.ebuild
+++ b/dev-lang/go/go-1.6.1.ebuild
@@ -80,6 +80,11 @@ if [[ ${PV} != 9999 ]]; then
S="${WORKDIR}"/go
fi
+PATCHES=(
+# patch for #581072
+ "${FILESDIR}"/${P}-gdb-no-shell.patch
+)
+
go_arch()
{
# By chance most portage arch names match Go
diff --git a/dev-lang/go/go-1.6.2.ebuild b/dev-lang/go/go-1.6.2.ebuild
index 9a52b39..ddf85db 100644
--- a/dev-lang/go/go-1.6.2.ebuild
+++ b/dev-lang/go/go-1.6.2.ebuild
@@ -81,6 +81,11 @@ if [[ ${PV} != 9999 ]]; then
S="${WORKDIR}"/go
fi
+PATCHES=(
+# patch for #581072
+ "${FILESDIR}"/${P}-gdb-no-shell.patch
+)
+
go_arch()
{
# By chance most portage arch names match Go
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-lang/go/files/, dev-lang/go/
@ 2016-07-28 15:59 William Hubbs
0 siblings, 0 replies; 8+ messages in thread
From: William Hubbs @ 2016-07-28 15:59 UTC (permalink / raw
To: gentoo-commits
commit: 4f7551b6501bd3c169e2548c87db577c5b14b604
Author: William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 28 15:58:30 2016 +0000
Commit: William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Thu Jul 28 15:58:30 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4f7551b6
dev-lang/go: cleanup for #589230
Package-Manager: portage-2.2.28
dev-lang/go/Manifest | 3 -
dev-lang/go/files/go-1.6.1-gdb-no-shell.patch | 12 --
dev-lang/go/files/go-1.6.2-gdb-no-shell.patch | 12 --
dev-lang/go/go-1.6-r2.ebuild | 243 ------------------------
dev-lang/go/go-1.6.1.ebuild | 257 -------------------------
dev-lang/go/go-1.6.2.ebuild | 260 --------------------------
6 files changed, 787 deletions(-)
diff --git a/dev-lang/go/Manifest b/dev-lang/go/Manifest
index a1e0299..7f2ddff 100644
--- a/dev-lang/go/Manifest
+++ b/dev-lang/go/Manifest
@@ -8,7 +8,4 @@ DIST go-linux-arm64-bootstrap.tbz 45369354 SHA256 810c998e6701580fe0f26d46c5796e
DIST go-linux-ppc64-bootstrap.tbz 45266082 SHA256 89902cebaf93b95dea225b7304eedcae101d6fb83bba0fcdfee001361b4868c0 SHA512 d013a1a5953207505a9f7e0c5cfdc7f463d4669fd18b36cf1df10126e9d4c012252bc4d207dd4503c34301e76197d8e89a9ed9d9d0b8a3b54b62e782b4c39d7b WHIRLPOOL 3ec868d94e8452a3cdb49a1292f9f32ebeb813ea297e419849cdee28c8d952887feb70e1095ce109ff6b8bb81dee47b7eb6f275b15bb6f46422095c3b260f968
DIST go-linux-ppc64le-bootstrap.tbz 50134685 SHA256 ca816a3e3cbd7721200522fa39843de0bf546d0ac18e0d550e64b7cc33bea4f2 SHA512 da718166febe77b57f2f2edb18c921501a0eb7184a7e6f18411b5cba95fe0de185ef9d5e85be3632c5829e66008912d12b5259ca7fc330ad28026e53bb658e7f WHIRLPOOL 0d7875146f1bdc8f6af089f7f4b003d952419c51be7d519ca3474b39f67dbc88c6caa515f707ad9e6fac345e8a78f42d13eb794485ce18b6d90f7331ee16686c
DIST go-solaris-amd64-bootstrap.tbz 48367195 SHA256 92ebdbf001f243a78a6c2d8ee30e929ba2cecbedf8e0fc07e129b04b107453ad SHA512 cf8725db0d001d61badee71624799a3c9e75f61f77ab090c1f6c490d694c4be367019b28d88306045d877ab5a324a1f9b0674293caf3acb19c193fc3746a48f2 WHIRLPOOL 672c6642e340b6d4f38b633f67fdc3202e3725022a8a61e2129276fccd6c42ddc24ed06c1d57eb31a25ea8056b79686619cbb36431b9c23b6d4be5bcb715bd89
-DIST go1.6.1.src.tar.gz 12615799 SHA256 1d4b53cdee51b2298afcf50926a7fa44b286f0bf24ff8323ce690a66daa7193f SHA512 31ea2504f8ab0fd709005275d0c2129b6cdb4e5d34d6e2b435b23480674b135d1bff8de863b1e01201e757523f4dc28b6ebefeb87d7e855f2509a6837e436fab WHIRLPOOL 6589f311fc3893775352a3c5d6409933397215389f2b25d3b61370acde35ead374403dfdd1dd58962b5066acd61c4acd85cf9c556d05b099e7fec6d23d6daca0
-DIST go1.6.2.src.tar.gz 12617724 SHA256 787b0b750d037016a30c6ed05a8a70a91b2e9db4bd9b1a2453aa502a63f1bccc SHA512 e148022f9e18b5d5b05744f1aa9fa3ef82e255752179545711ade077e271216aa5b450859a764fdfb028ae4faa26adad8d0a0a5268b31396ab9d14de3cb2f20a WHIRLPOOL bbd04cc0b18768b9dcf3b1d3614d2a263d2314ca811e03b390bafeafc7ea4d2aa650a34901da75e55ca58bf9c00601d9924152228ed0d57bbc4b5dbdc081e8a9
DIST go1.6.3.src.tar.gz 12617426 SHA256 6326aeed5f86cf18f16d6dc831405614f855e2d416a91fd3fdc334f772345b00 SHA512 43e9b01220788112a185500bd53f091e7a0023a790092f428e2f40fc1a334dd148558b99d2a1c871b8cc79ad7d2d87a092b93eee7b5a27c2ee675c494de35306 WHIRLPOOL 0a22dc08b89ddfaccf1e871037e7ad6cdbf36f914de527011813d57a2d857478278202314b185e26aa905cb135d13cbea490d03337b42148c6fc2ef93a8cd9fe
-DIST go1.6.src.tar.gz 12613308 SHA256 a96cce8ce43a9bf9b2a4c7d470bc7ee0cb00410da815980681c8353218dcf146 SHA512 59e9d72a80558fd5e3f176e068897a45333b36e35f6c00393647941a70e741168e65941b6059397378020c3b78ec3471a48809682f7efd97cf33eec6325fc3e8 WHIRLPOOL c6debe1a5039f0ca34c29b4a53f958503a724cae13715ea14f0237b5faacd26e09eb6405462e22abd6806540dd8fb9eb2fa08ff6e8676b0f6dffa267210f5eac
diff --git a/dev-lang/go/files/go-1.6.1-gdb-no-shell.patch b/dev-lang/go/files/go-1.6.1-gdb-no-shell.patch
deleted file mode 100644
index ccce6f0..0000000
--- a/dev-lang/go/files/go-1.6.1-gdb-no-shell.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/src/runtime/runtime-gdb_test.go b/src/runtime/runtime-gdb_test.go
-index 6ebc69a..648092a 100644
---- a/src/runtime/runtime-gdb_test.go
-+++ b/src/runtime/runtime-gdb_test.go
-@@ -87,6 +87,7 @@ func TestGdbPython(t *testing.T) {
-
- args := []string{"-nx", "-q", "--batch", "-iex",
- fmt.Sprintf("add-auto-load-safe-path %s/src/runtime", runtime.GOROOT()),
-+ "-ex", "set startup-with-shell off",
- "-ex", "info auto-load python-scripts",
- "-ex", "br main.go:10",
- "-ex", "run",
diff --git a/dev-lang/go/files/go-1.6.2-gdb-no-shell.patch b/dev-lang/go/files/go-1.6.2-gdb-no-shell.patch
deleted file mode 100644
index ccce6f0..0000000
--- a/dev-lang/go/files/go-1.6.2-gdb-no-shell.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/src/runtime/runtime-gdb_test.go b/src/runtime/runtime-gdb_test.go
-index 6ebc69a..648092a 100644
---- a/src/runtime/runtime-gdb_test.go
-+++ b/src/runtime/runtime-gdb_test.go
-@@ -87,6 +87,7 @@ func TestGdbPython(t *testing.T) {
-
- args := []string{"-nx", "-q", "--batch", "-iex",
- fmt.Sprintf("add-auto-load-safe-path %s/src/runtime", runtime.GOROOT()),
-+ "-ex", "set startup-with-shell off",
- "-ex", "info auto-load python-scripts",
- "-ex", "br main.go:10",
- "-ex", "run",
diff --git a/dev-lang/go/go-1.6-r2.ebuild b/dev-lang/go/go-1.6-r2.ebuild
deleted file mode 100644
index 5689900..0000000
--- a/dev-lang/go/go-1.6-r2.ebuild
+++ /dev/null
@@ -1,243 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=6
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-
-MY_PV=${PV/_/}
-
-inherit toolchain-funcs
-
-BOOTSTRAP_DIST="https://dev.gentoo.org/~williamh/dist"
-SRC_URI="
-kernel_Darwin? (
- x64-macos? ( ${BOOTSTRAP_DIST}/go-darwin-amd64-bootstrap.tbz )
-)
-kernel_FreeBSD? (
-amd64-fbsd? ( ${BOOTSTRAP_DIST}/go-freebsd-amd64-bootstrap.tbz )
-x86-fbsd? ( ${BOOTSTRAP_DIST}/go-freebsd-386-bootstrap-1.tbz )
-)
-kernel_linux? (
- amd64? ( ${BOOTSTRAP_DIST}/go-linux-amd64-bootstrap.tbz )
- arm? ( ${BOOTSTRAP_DIST}/go-linux-arm-bootstrap.tbz )
- arm64? ( ${BOOTSTRAP_DIST}/go-linux-arm64-bootstrap.tbz )
- ppc64? ( ${BOOTSTRAP_DIST}/go-linux-ppc64-bootstrap.tbz )
- x86? ( ${BOOTSTRAP_DIST}/go-linux-386-bootstrap-1.tbz )
-)
-kernel_SunOS? (
- x64-solaris? ( ${BOOTSTRAP_DIST}/go-solaris-amd64-bootstrap.tbz )
-)
-"
-
-if [[ ${PV} = 9999 ]]; then
- EGIT_REPO_URI="git://github.com/golang/go.git"
- inherit git-r3
-else
- SRC_URI+="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz"
- # go-bootstrap-1.4 only supports go on amd64, arm and x86 architectures.
- # Allowing other bootstrap options would enable arm64 and ppc64 builds.
- case ${PV} in
- *9999*|*_rc*) ;;
- *)
- KEYWORDS="-* amd64 arm ~arm64 ~ppc64 x86 ~amd64-fbsd ~x86-fbsd ~x64-macos ~x64-solaris"
- ;;
- esac
-fi
-
-DESCRIPTION="A concurrent garbage collected and typesafe programming language"
-HOMEPAGE="http://www.golang.org"
-
-LICENSE="BSD"
-SLOT="0/${PV}"
-IUSE=""
-
-DEPEND=""
-RDEPEND="!<dev-go/go-tools-0_pre20150902"
-
-# These test data objects have writable/executable stacks.
-QA_EXECSTACK="usr/lib/go/src/debug/elf/testdata/*.obj"
-
-# Do not complain about CFLAGS, etc, since Go doesn't use them.
-QA_FLAGS_IGNORED='.*'
-
-REQUIRES_EXCLUDE="/usr/lib/go/src/debug/elf/testdata/*"
-
-# The tools in /usr/lib/go should not cause the multilib-strict check to fail.
-QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*"
-
-# The go language uses *.a files which are _NOT_ libraries and should not be
-# stripped. The test data objects should also be left alone and unstripped.
-STRIP_MASK="/usr/lib/go/pkg/*.a
- /usr/lib/go/src/debug/elf/testdata/*
- /usr/lib/go/src/debug/dwarf/testdata/*
- /usr/lib/go/src/runtime/race/*.syso"
-
-if [[ ${PV} != 9999 ]]; then
- S="${WORKDIR}"/go
-fi
-
-go_arch()
-{
- # By chance most portage arch names match Go
- local portage_arch=$(tc-arch $@)
- case "${portage_arch}" in
- x86) echo 386;;
- x64-*) echo amd64;;
- *) echo "${portage_arch}";;
- esac
-}
-
-go_arm()
-{
- case "${1:-${CHOST}}" in
- armv5*) echo 5;;
- armv6*) echo 6;;
- armv7*) echo 7;;
- *)
- die "unknown GOARM for ${1:-${CHOST}}"
- ;;
- esac
-}
-
-go_os()
-{
- case "${1:-${CHOST}}" in
- *-linux*) echo linux;;
- *-darwin*) echo darwin;;
- *-freebsd*) echo freebsd;;
- *-netbsd*) echo netbsd;;
- *-openbsd*) echo openbsd;;
- *-solaris*) echo solaris;;
- *-cygwin*|*-interix*|*-winnt*)
- echo windows
- ;;
- *)
- die "unknown GOOS for ${1:-${CHOST}}"
- ;;
- esac
-}
-
-go_tuple()
-{
- echo "$(go_os $@)_$(go_arch $@)"
-}
-
-go_cross_compile()
-{
- [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]]
-}
-
-pkg_pretend()
-{
- # make.bash does not understand cross-compiling a cross-compiler
- if [[ $(go_tuple) != $(go_tuple ${CTARGET}) ]]; then
- die "CHOST CTARGET pair unsupported: CHOST=${CHOST} CTARGET=${CTARGET}"
- fi
-}
-
-src_unpack()
-{
- if [[ ${PV} = 9999 ]]; then
- git-r3_src_unpack
- fi
- default
-}
-
-src_compile()
-{
- export GOROOT_BOOTSTRAP="${WORKDIR}"/go-$(go_os)-$(go_arch)-bootstrap
- export GOROOT_FINAL="${EPREFIX}"/usr/lib/go
- export GOROOT="$(pwd)"
- export GOBIN="${GOROOT}/bin"
-
- # Go's build script does not use BUILD/HOST/TARGET consistently. :(
- export GOHOSTARCH=$(go_arch ${CBUILD})
- export GOHOSTOS=$(go_os ${CBUILD})
- export CC=$(tc-getBUILD_CC)
-
- export GOARCH=$(go_arch)
- export GOOS=$(go_os)
- export CC_FOR_TARGET=$(tc-getCC)
- export CXX_FOR_TARGET=$(tc-getCXX)
- if [[ ${ARCH} == arm ]]; then
- export GOARM=$(go_arm)
- fi
-
- cd src
- ./make.bash || die "build failed"
-}
-
-src_test()
-{
- go_cross_compile && return 0
-
- cd src
- PATH="${GOBIN}:${PATH}" \
- ./run.bash -no-rebuild || die "tests failed"
-}
-
-src_install()
-{
- local bin_path f x
-
- dodir /usr/lib/go
- insinto /usr/lib/go
-
- # There is a known issue which requires the source tree to be installed [1].
- # Once this is fixed, we can consider using the doc use flag to control
- # installing the doc and src directories.
- # [1] https://golang.org/issue/2775
- doins -r bin doc lib pkg src
- fperms -R +x /usr/lib/go/bin /usr/lib/go/pkg/tool
-
- cp -a misc "${D}"/usr/lib/go/misc
-
- if go_cross_compile; then
- bin_path="bin/$(go_tuple)"
- else
- bin_path=bin
- fi
- for x in ${bin_path}/*; do
- f=${x##*/}
- dosym ../lib/go/${bin_path}/${f} /usr/bin/${f}
- done
- dodoc AUTHORS CONTRIBUTORS PATENTS README.md
-}
-
-pkg_preinst()
-{
- has_version '<dev-lang/go-1.4' &&
- export had_support_files=true ||
- export had_support_files=false
-}
-
-pkg_postinst()
-{
- # If the go tool sees a package file timestamped older than a dependancy it
- # will rebuild that file. So, in order to stop go from rebuilding lots of
- # packages for every build we need to fix the timestamps. The compiler and
- # linker are also checked - so we need to fix them too.
- ebegin "fixing timestamps to avoid unnecessary rebuilds"
- tref="usr/lib/go/pkg/*/runtime.a"
- find "${EROOT}"usr/lib/go -type f \
- -exec touch -r "${EROOT}"${tref} {} \;
- eend $?
-
- if [[ ${PV} != 9999 && -n ${REPLACING_VERSIONS} &&
- ${REPLACING_VERSIONS} != ${PV} ]]; then
- elog "Release notes are located at http://golang.org/doc/go${PV}"
- fi
-
- if $had_support_files; then
- ewarn
- ewarn "All editor support, IDE support, shell completion"
- ewarn "support, etc has been removed from the go package"
- ewarn "upstream."
- ewarn "For more information on which support is available, see"
- ewarn "the following URL:"
- ewarn "https://github.com/golang/go/wiki/IDEsAndTextEditorPlugins"
- fi
-}
diff --git a/dev-lang/go/go-1.6.1.ebuild b/dev-lang/go/go-1.6.1.ebuild
deleted file mode 100644
index 4fce12b..0000000
--- a/dev-lang/go/go-1.6.1.ebuild
+++ /dev/null
@@ -1,257 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=6
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-
-MY_PV=${PV/_/}
-
-inherit toolchain-funcs
-
-BOOTSTRAP_DIST="https://dev.gentoo.org/~williamh/dist"
-SRC_URI="!gccgo? (
-kernel_Darwin? (
- x64-macos? ( ${BOOTSTRAP_DIST}/go-darwin-amd64-bootstrap.tbz )
-)
-kernel_FreeBSD? (
-amd64-fbsd? ( ${BOOTSTRAP_DIST}/go-freebsd-amd64-bootstrap.tbz )
-x86-fbsd? ( ${BOOTSTRAP_DIST}/go-freebsd-386-bootstrap-1.tbz )
-)
-kernel_linux? (
- amd64? ( ${BOOTSTRAP_DIST}/go-linux-amd64-bootstrap.tbz )
- arm? ( ${BOOTSTRAP_DIST}/go-linux-arm-bootstrap.tbz )
- arm64? ( ${BOOTSTRAP_DIST}/go-linux-arm64-bootstrap.tbz )
- ppc64? ( ${BOOTSTRAP_DIST}/go-linux-ppc64-bootstrap.tbz )
- x86? ( ${BOOTSTRAP_DIST}/go-linux-386-bootstrap-1.tbz )
-)
-kernel_SunOS? (
- x64-solaris? ( ${BOOTSTRAP_DIST}/go-solaris-amd64-bootstrap.tbz )
-)
-)
-"
-
-if [[ ${PV} = 9999 ]]; then
- EGIT_REPO_URI="git://github.com/golang/go.git"
- inherit git-r3
-else
- SRC_URI+="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz"
- # go-bootstrap-1.4 only supports go on amd64, arm and x86 architectures.
- # Allowing other bootstrap options would enable arm64 and ppc64 builds.
- case ${PV} in
- *9999*|*_rc*) ;;
- *)
- KEYWORDS="-* amd64 ~arm ~arm64 ~ppc64 x86 ~amd64-fbsd ~x86-fbsd ~x64-macos ~x64-solaris"
- ;;
- esac
-fi
-
-DESCRIPTION="A concurrent garbage collected and typesafe programming language"
-HOMEPAGE="http://www.golang.org"
-
-LICENSE="BSD"
-SLOT="0/${PV}"
-IUSE="gccgo"
-
-DEPEND="gccgo? ( >=sys-devel/gcc-5[go] )"
-RDEPEND="!<dev-go/go-tools-0_pre20150902"
-
-# These test data objects have writable/executable stacks.
-QA_EXECSTACK="usr/lib/go/src/debug/elf/testdata/*.obj"
-
-# Do not complain about CFLAGS, etc, since Go doesn't use them.
-QA_FLAGS_IGNORED='.*'
-
-REQUIRES_EXCLUDE="/usr/lib/go/src/debug/elf/testdata/*"
-
-# The tools in /usr/lib/go should not cause the multilib-strict check to fail.
-QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*"
-
-# The go language uses *.a files which are _NOT_ libraries and should not be
-# stripped. The test data objects should also be left alone and unstripped.
-STRIP_MASK="/usr/lib/go/pkg/*.a
- /usr/lib/go/src/debug/elf/testdata/*
- /usr/lib/go/src/debug/dwarf/testdata/*
- /usr/lib/go/src/runtime/race/*.syso"
-
-if [[ ${PV} != 9999 ]]; then
- S="${WORKDIR}"/go
-fi
-
-PATCHES=(
-# patch for #581072
- "${FILESDIR}"/${P}-gdb-no-shell.patch
-)
-
-go_arch()
-{
- # By chance most portage arch names match Go
- local portage_arch=$(tc-arch $@)
- case "${portage_arch}" in
- x86) echo 386;;
- x64-*) echo amd64;;
- *) echo "${portage_arch}";;
- esac
-}
-
-go_arm()
-{
- case "${1:-${CHOST}}" in
- armv5*) echo 5;;
- armv6*) echo 6;;
- armv7*) echo 7;;
- *)
- die "unknown GOARM for ${1:-${CHOST}}"
- ;;
- esac
-}
-
-go_os()
-{
- case "${1:-${CHOST}}" in
- *-linux*) echo linux;;
- *-darwin*) echo darwin;;
- *-freebsd*) echo freebsd;;
- *-netbsd*) echo netbsd;;
- *-openbsd*) echo openbsd;;
- *-solaris*) echo solaris;;
- *-cygwin*|*-interix*|*-winnt*)
- echo windows
- ;;
- *)
- die "unknown GOOS for ${1:-${CHOST}}"
- ;;
- esac
-}
-
-go_tuple()
-{
- echo "$(go_os $@)_$(go_arch $@)"
-}
-
-go_cross_compile()
-{
- [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]]
-}
-
-pkg_pretend()
-{
- # make.bash does not understand cross-compiling a cross-compiler
- if [[ $(go_tuple) != $(go_tuple ${CTARGET}) ]]; then
- die "CHOST CTARGET pair unsupported: CHOST=${CHOST} CTARGET=${CTARGET}"
- fi
-}
-
-src_unpack()
-{
- if [[ ${PV} = 9999 ]]; then
- git-r3_src_unpack
- fi
- default
-}
-
-src_compile()
-{
- export GOROOT_BOOTSTRAP="${WORKDIR}"/go-$(go_os)-$(go_arch)-bootstrap
- if use gccgo; then
- mkdir -p "${GOROOT_BOOTSTRAP}/bin" || die
- local go_binary=$(gcc-config --get-bin-path)/go-5
- [[ -x ${go_binary} ]] || go_binary=$(
- find "${EPREFIX}"/usr/${CHOST}/gcc-bin/*/go-5 | sort -V | tail -n1)
- [[ -x ${go_binary} ]] || die "go-5: command not found"
- ln -s "${go_binary}" "${GOROOT_BOOTSTRAP}/bin/go" || die
- fi
- export GOROOT_FINAL="${EPREFIX}"/usr/lib/go
- export GOROOT="$(pwd)"
- export GOBIN="${GOROOT}/bin"
-
- # Go's build script does not use BUILD/HOST/TARGET consistently. :(
- export GOHOSTARCH=$(go_arch ${CBUILD})
- export GOHOSTOS=$(go_os ${CBUILD})
- export CC=$(tc-getBUILD_CC)
-
- export GOARCH=$(go_arch)
- export GOOS=$(go_os)
- export CC_FOR_TARGET=$(tc-getCC)
- export CXX_FOR_TARGET=$(tc-getCXX)
- if [[ ${ARCH} == arm ]]; then
- export GOARM=$(go_arm)
- fi
-
- cd src
- ./make.bash || die "build failed"
-}
-
-src_test()
-{
- go_cross_compile && return 0
-
- cd src
- PATH="${GOBIN}:${PATH}" \
- ./run.bash -no-rebuild || die "tests failed"
-}
-
-src_install()
-{
- local bin_path f x
-
- dodir /usr/lib/go
- insinto /usr/lib/go
-
- # There is a known issue which requires the source tree to be installed [1].
- # Once this is fixed, we can consider using the doc use flag to control
- # installing the doc and src directories.
- # [1] https://golang.org/issue/2775
- doins -r bin doc lib pkg src
- fperms -R +x /usr/lib/go/bin /usr/lib/go/pkg/tool
-
- cp -a misc "${D}"/usr/lib/go/misc
-
- if go_cross_compile; then
- bin_path="bin/$(go_tuple)"
- else
- bin_path=bin
- fi
- for x in ${bin_path}/*; do
- f=${x##*/}
- dosym ../lib/go/${bin_path}/${f} /usr/bin/${f}
- done
- dodoc AUTHORS CONTRIBUTORS PATENTS README.md
-}
-
-pkg_preinst()
-{
- has_version '<dev-lang/go-1.4' &&
- export had_support_files=true ||
- export had_support_files=false
-}
-
-pkg_postinst()
-{
- # If the go tool sees a package file timestamped older than a dependancy it
- # will rebuild that file. So, in order to stop go from rebuilding lots of
- # packages for every build we need to fix the timestamps. The compiler and
- # linker are also checked - so we need to fix them too.
- ebegin "fixing timestamps to avoid unnecessary rebuilds"
- tref="usr/lib/go/pkg/*/runtime.a"
- find "${EROOT}"usr/lib/go -type f \
- -exec touch -r "${EROOT}"${tref} {} \;
- eend $?
-
- if [[ ${PV} != 9999 && -n ${REPLACING_VERSIONS} &&
- ${REPLACING_VERSIONS} != ${PV} ]]; then
- elog "Release notes are located at http://golang.org/doc/go${PV}"
- fi
-
- if $had_support_files; then
- ewarn
- ewarn "All editor support, IDE support, shell completion"
- ewarn "support, etc has been removed from the go package"
- ewarn "upstream."
- ewarn "For more information on which support is available, see"
- ewarn "the following URL:"
- ewarn "https://github.com/golang/go/wiki/IDEsAndTextEditorPlugins"
- fi
-}
diff --git a/dev-lang/go/go-1.6.2.ebuild b/dev-lang/go/go-1.6.2.ebuild
deleted file mode 100644
index ddf85db..0000000
--- a/dev-lang/go/go-1.6.2.ebuild
+++ /dev/null
@@ -1,260 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=6
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-
-MY_PV=${PV/_/}
-
-inherit toolchain-funcs
-
-BOOTSTRAP_DIST="https://dev.gentoo.org/~williamh/dist"
-SRC_URI="!gccgo? (
-kernel_Darwin? (
- x64-macos? ( ${BOOTSTRAP_DIST}/go-darwin-amd64-bootstrap.tbz )
-)
-kernel_FreeBSD? (
-amd64-fbsd? ( ${BOOTSTRAP_DIST}/go-freebsd-amd64-bootstrap.tbz )
-x86-fbsd? ( ${BOOTSTRAP_DIST}/go-freebsd-386-bootstrap-1.tbz )
-)
-kernel_linux? (
- amd64? ( ${BOOTSTRAP_DIST}/go-linux-amd64-bootstrap.tbz )
- arm? ( ${BOOTSTRAP_DIST}/go-linux-arm-bootstrap.tbz )
- arm64? ( ${BOOTSTRAP_DIST}/go-linux-arm64-bootstrap.tbz )
- ppc64? (
- ${BOOTSTRAP_DIST}/go-linux-ppc64-bootstrap.tbz
- ${BOOTSTRAP_DIST}/go-linux-ppc64le-bootstrap.tbz
- )
- x86? ( ${BOOTSTRAP_DIST}/go-linux-386-bootstrap-1.tbz )
-)
-kernel_SunOS? (
- x64-solaris? ( ${BOOTSTRAP_DIST}/go-solaris-amd64-bootstrap.tbz )
-)
-)
-"
-
-if [[ ${PV} = 9999 ]]; then
- EGIT_REPO_URI="git://github.com/golang/go.git"
- inherit git-r3
-else
- SRC_URI+="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz"
- case ${PV} in
- *9999*|*_rc*) ;;
- *)
- KEYWORDS="-* ~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-fbsd ~x86-fbsd ~x64-macos ~x64-solaris"
- ;;
- esac
-fi
-
-DESCRIPTION="A concurrent garbage collected and typesafe programming language"
-HOMEPAGE="http://www.golang.org"
-
-LICENSE="BSD"
-SLOT="0/${PV}"
-IUSE="gccgo"
-
-DEPEND="gccgo? ( >=sys-devel/gcc-5[go] )"
-RDEPEND="!<dev-go/go-tools-0_pre20150902"
-
-# These test data objects have writable/executable stacks.
-QA_EXECSTACK="usr/lib/go/src/debug/elf/testdata/*.obj"
-
-# Do not complain about CFLAGS, etc, since Go doesn't use them.
-QA_FLAGS_IGNORED='.*'
-
-REQUIRES_EXCLUDE="/usr/lib/go/src/debug/elf/testdata/*"
-
-# The tools in /usr/lib/go should not cause the multilib-strict check to fail.
-QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*"
-
-# The go language uses *.a files which are _NOT_ libraries and should not be
-# stripped. The test data objects should also be left alone and unstripped.
-STRIP_MASK="/usr/lib/go/pkg/*.a
- /usr/lib/go/src/debug/elf/testdata/*
- /usr/lib/go/src/debug/dwarf/testdata/*
- /usr/lib/go/src/runtime/race/*.syso"
-
-if [[ ${PV} != 9999 ]]; then
- S="${WORKDIR}"/go
-fi
-
-PATCHES=(
-# patch for #581072
- "${FILESDIR}"/${P}-gdb-no-shell.patch
-)
-
-go_arch()
-{
- # By chance most portage arch names match Go
- local portage_arch=$(tc-arch $@)
- case "${portage_arch}" in
- x86) echo 386;;
- x64-*) echo amd64;;
- ppc64) [[ $(tc-endian $@) = big ]] && echo ppc64 || echo ppc64le ;;
- *) echo "${portage_arch}";;
- esac
-}
-
-go_arm()
-{
- case "${1:-${CHOST}}" in
- armv5*) echo 5;;
- armv6*) echo 6;;
- armv7*) echo 7;;
- *)
- die "unknown GOARM for ${1:-${CHOST}}"
- ;;
- esac
-}
-
-go_os()
-{
- case "${1:-${CHOST}}" in
- *-linux*) echo linux;;
- *-darwin*) echo darwin;;
- *-freebsd*) echo freebsd;;
- *-netbsd*) echo netbsd;;
- *-openbsd*) echo openbsd;;
- *-solaris*) echo solaris;;
- *-cygwin*|*-interix*|*-winnt*)
- echo windows
- ;;
- *)
- die "unknown GOOS for ${1:-${CHOST}}"
- ;;
- esac
-}
-
-go_tuple()
-{
- echo "$(go_os $@)_$(go_arch $@)"
-}
-
-go_cross_compile()
-{
- [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]]
-}
-
-pkg_pretend()
-{
- # make.bash does not understand cross-compiling a cross-compiler
- if [[ $(go_tuple) != $(go_tuple ${CTARGET}) ]]; then
- die "CHOST CTARGET pair unsupported: CHOST=${CHOST} CTARGET=${CTARGET}"
- fi
-}
-
-src_unpack()
-{
- if [[ ${PV} = 9999 ]]; then
- git-r3_src_unpack
- fi
- default
-}
-
-src_compile()
-{
- export GOROOT_BOOTSTRAP="${WORKDIR}"/go-$(go_os)-$(go_arch)-bootstrap
- if use gccgo; then
- mkdir -p "${GOROOT_BOOTSTRAP}/bin" || die
- local go_binary=$(gcc-config --get-bin-path)/go-5
- [[ -x ${go_binary} ]] || go_binary=$(
- find "${EPREFIX}"/usr/${CHOST}/gcc-bin/*/go-5 | sort -V | tail -n1)
- [[ -x ${go_binary} ]] || die "go-5: command not found"
- ln -s "${go_binary}" "${GOROOT_BOOTSTRAP}/bin/go" || die
- fi
- export GOROOT_FINAL="${EPREFIX}"/usr/lib/go
- export GOROOT="$(pwd)"
- export GOBIN="${GOROOT}/bin"
-
- # Go's build script does not use BUILD/HOST/TARGET consistently. :(
- export GOHOSTARCH=$(go_arch ${CBUILD})
- export GOHOSTOS=$(go_os ${CBUILD})
- export CC=$(tc-getBUILD_CC)
-
- export GOARCH=$(go_arch)
- export GOOS=$(go_os)
- export CC_FOR_TARGET=$(tc-getCC)
- export CXX_FOR_TARGET=$(tc-getCXX)
- if [[ ${ARCH} == arm ]]; then
- export GOARM=$(go_arm)
- fi
- elog "GOROOT_BOOTSTRAP is ${GOROOT_BOOTSTRAP}"
-
- cd src
- ./make.bash || die "build failed"
-}
-
-src_test()
-{
- go_cross_compile && return 0
-
- cd src
- PATH="${GOBIN}:${PATH}" \
- ./run.bash -no-rebuild || die "tests failed"
-}
-
-src_install()
-{
- local bin_path f x
-
- dodir /usr/lib/go
- insinto /usr/lib/go
-
- # There is a known issue which requires the source tree to be installed [1].
- # Once this is fixed, we can consider using the doc use flag to control
- # installing the doc and src directories.
- # [1] https://golang.org/issue/2775
- doins -r bin doc lib pkg src
- fperms -R +x /usr/lib/go/bin /usr/lib/go/pkg/tool
-
- cp -a misc "${D}"/usr/lib/go/misc
-
- if go_cross_compile; then
- bin_path="bin/$(go_tuple)"
- else
- bin_path=bin
- fi
- for x in ${bin_path}/*; do
- f=${x##*/}
- dosym ../lib/go/${bin_path}/${f} /usr/bin/${f}
- done
- dodoc AUTHORS CONTRIBUTORS PATENTS README.md
-}
-
-pkg_preinst()
-{
- has_version '<dev-lang/go-1.4' &&
- export had_support_files=true ||
- export had_support_files=false
-}
-
-pkg_postinst()
-{
- # If the go tool sees a package file timestamped older than a dependancy it
- # will rebuild that file. So, in order to stop go from rebuilding lots of
- # packages for every build we need to fix the timestamps. The compiler and
- # linker are also checked - so we need to fix them too.
- ebegin "fixing timestamps to avoid unnecessary rebuilds"
- tref="usr/lib/go/pkg/*/runtime.a"
- find "${EROOT}"usr/lib/go -type f \
- -exec touch -r "${EROOT}"${tref} {} \;
- eend $?
-
- if [[ ${PV} != 9999 && -n ${REPLACING_VERSIONS} &&
- ${REPLACING_VERSIONS} != ${PV} ]]; then
- elog "Release notes are located at http://golang.org/doc/go${PV}"
- fi
-
- if $had_support_files; then
- ewarn
- ewarn "All editor support, IDE support, shell completion"
- ewarn "support, etc has been removed from the go package"
- ewarn "upstream."
- ewarn "For more information on which support is available, see"
- ewarn "the following URL:"
- ewarn "https://github.com/golang/go/wiki/IDEsAndTextEditorPlugins"
- fi
-}
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-lang/go/files/, dev-lang/go/
@ 2017-01-12 21:35 William Hubbs
0 siblings, 0 replies; 8+ messages in thread
From: William Hubbs @ 2017-01-12 21:35 UTC (permalink / raw
To: gentoo-commits
commit: dde9819d818d5cd97036443d0272e4c96b76ddb3
Author: William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Thu Jan 12 20:26:05 2017 +0000
Commit: William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Thu Jan 12 21:35:06 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dde9819d
dev-lang/go: remove old versions for #602766
Package-Manager: portage-2.3.0
dev-lang/go/Manifest | 1 -
dev-lang/go/files/go-1.6.3-gdb-no-shell.patch | 12 --
dev-lang/go/go-1.6.3.ebuild | 255 --------------------------
3 files changed, 268 deletions(-)
diff --git a/dev-lang/go/Manifest b/dev-lang/go/Manifest
index ff24f34..3ba43f4 100644
--- a/dev-lang/go/Manifest
+++ b/dev-lang/go/Manifest
@@ -9,5 +9,4 @@ DIST go-linux-ppc64-bootstrap.tbz 45266082 SHA256 89902cebaf93b95dea225b7304eedc
DIST go-linux-ppc64le-bootstrap.tbz 50134685 SHA256 ca816a3e3cbd7721200522fa39843de0bf546d0ac18e0d550e64b7cc33bea4f2 SHA512 da718166febe77b57f2f2edb18c921501a0eb7184a7e6f18411b5cba95fe0de185ef9d5e85be3632c5829e66008912d12b5259ca7fc330ad28026e53bb658e7f WHIRLPOOL 0d7875146f1bdc8f6af089f7f4b003d952419c51be7d519ca3474b39f67dbc88c6caa515f707ad9e6fac345e8a78f42d13eb794485ce18b6d90f7331ee16686c
DIST go-linux-s390x-bootstrap.tbz 49809007 SHA256 80a87bc5ac2239c99f8d7425fbc6f4fefba63f549b0835505c25378c08114656 SHA512 1b7500e6c42508b6cb07214620070065262349d2cd3698deeac0638d0bf0bfeb89c59c2d72a284af34f3071b4cfb9ce543c5fdec7add4a46adc9580295909439 WHIRLPOOL d3782cb515ab67720105224e02d96ab1ca86518db661719b2d0f7c48aa1f4f896a7cc5fed5b6ddc032c8206e8a10c6262646be0e59def61723936044d6ceb143
DIST go-solaris-amd64-bootstrap.tbz 48367195 SHA256 92ebdbf001f243a78a6c2d8ee30e929ba2cecbedf8e0fc07e129b04b107453ad SHA512 cf8725db0d001d61badee71624799a3c9e75f61f77ab090c1f6c490d694c4be367019b28d88306045d877ab5a324a1f9b0674293caf3acb19c193fc3746a48f2 WHIRLPOOL 672c6642e340b6d4f38b633f67fdc3202e3725022a8a61e2129276fccd6c42ddc24ed06c1d57eb31a25ea8056b79686619cbb36431b9c23b6d4be5bcb715bd89
-DIST go1.6.3.src.tar.gz 12617426 SHA256 6326aeed5f86cf18f16d6dc831405614f855e2d416a91fd3fdc334f772345b00 SHA512 43e9b01220788112a185500bd53f091e7a0023a790092f428e2f40fc1a334dd148558b99d2a1c871b8cc79ad7d2d87a092b93eee7b5a27c2ee675c494de35306 WHIRLPOOL 0a22dc08b89ddfaccf1e871037e7ad6cdbf36f914de527011813d57a2d857478278202314b185e26aa905cb135d13cbea490d03337b42148c6fc2ef93a8cd9fe
DIST go1.7.4.src.tar.gz 14198817 SHA256 4c189111e9ba651a2bb3ee868aa881fab36b2f2da3409e80885ca758a6b614cc SHA512 dc9950c3ea7100e536ad58fd93505d584276b7c50d4b8fe2ba7f20fd043dcf0d315b735c48945302055e91517594cc2b0061ccec9478a8ab48f1f2836c20afb3 WHIRLPOOL 054f496555dd30e0ba6a3c449b915ea048d5f85f1cf6d2ef6e8aa84939b6e9674b30cfccee99d050c5d75d028cf43d83bf0267703ffb02dfc5bc780fd0a1706f
diff --git a/dev-lang/go/files/go-1.6.3-gdb-no-shell.patch b/dev-lang/go/files/go-1.6.3-gdb-no-shell.patch
deleted file mode 100644
index ccce6f0..00000000
--- a/dev-lang/go/files/go-1.6.3-gdb-no-shell.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/src/runtime/runtime-gdb_test.go b/src/runtime/runtime-gdb_test.go
-index 6ebc69a..648092a 100644
---- a/src/runtime/runtime-gdb_test.go
-+++ b/src/runtime/runtime-gdb_test.go
-@@ -87,6 +87,7 @@ func TestGdbPython(t *testing.T) {
-
- args := []string{"-nx", "-q", "--batch", "-iex",
- fmt.Sprintf("add-auto-load-safe-path %s/src/runtime", runtime.GOROOT()),
-+ "-ex", "set startup-with-shell off",
- "-ex", "info auto-load python-scripts",
- "-ex", "br main.go:10",
- "-ex", "run",
diff --git a/dev-lang/go/go-1.6.3.ebuild b/dev-lang/go/go-1.6.3.ebuild
deleted file mode 100644
index de2822d..00000000
--- a/dev-lang/go/go-1.6.3.ebuild
+++ /dev/null
@@ -1,255 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=6
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-
-MY_PV=${PV/_/}
-
-inherit toolchain-funcs
-
-BOOTSTRAP_DIST="https://dev.gentoo.org/~williamh/dist"
-SRC_URI="!gccgo? (
-kernel_Darwin? (
- x64-macos? ( ${BOOTSTRAP_DIST}/go-darwin-amd64-bootstrap.tbz )
-)
-kernel_FreeBSD? (
-amd64-fbsd? ( ${BOOTSTRAP_DIST}/go-freebsd-amd64-bootstrap.tbz )
-x86-fbsd? ( ${BOOTSTRAP_DIST}/go-freebsd-386-bootstrap-1.tbz )
-)
-kernel_linux? (
- amd64? ( ${BOOTSTRAP_DIST}/go-linux-amd64-bootstrap.tbz )
- arm? ( ${BOOTSTRAP_DIST}/go-linux-arm-bootstrap.tbz )
- arm64? ( ${BOOTSTRAP_DIST}/go-linux-arm64-bootstrap.tbz )
- ppc64? (
- ${BOOTSTRAP_DIST}/go-linux-ppc64-bootstrap.tbz
- ${BOOTSTRAP_DIST}/go-linux-ppc64le-bootstrap.tbz
- )
- x86? ( ${BOOTSTRAP_DIST}/go-linux-386-bootstrap-1.tbz )
-)
-kernel_SunOS? (
- x64-solaris? ( ${BOOTSTRAP_DIST}/go-solaris-amd64-bootstrap.tbz )
-)
-)
-"
-
-if [[ ${PV} = 9999 ]]; then
- EGIT_REPO_URI="git://github.com/golang/go.git"
- inherit git-r3
-else
- SRC_URI+="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz"
- case ${PV} in
- *9999*|*_rc*) ;;
- *)
- KEYWORDS="-* amd64 arm ~arm64 ~ppc64 x86 ~amd64-fbsd ~x86-fbsd ~x64-macos ~x64-solaris"
- ;;
- esac
-fi
-
-DESCRIPTION="A concurrent garbage collected and typesafe programming language"
-HOMEPAGE="http://www.golang.org"
-
-LICENSE="BSD"
-SLOT="0/${PV}"
-IUSE="gccgo"
-
-DEPEND="gccgo? ( >=sys-devel/gcc-5[go] )"
-RDEPEND="!<dev-go/go-tools-0_pre20150902"
-
-# These test data objects have writable/executable stacks.
-QA_EXECSTACK="usr/lib/go/src/debug/elf/testdata/*.obj"
-
-# Do not complain about CFLAGS, etc, since Go doesn't use them.
-QA_FLAGS_IGNORED='.*'
-
-REQUIRES_EXCLUDE="/usr/lib/go/src/debug/elf/testdata/*"
-
-# The tools in /usr/lib/go should not cause the multilib-strict check to fail.
-QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*"
-
-# The go language uses *.a files which are _NOT_ libraries and should not be
-# stripped. The test data objects should also be left alone and unstripped.
-STRIP_MASK="/usr/lib/go/pkg/*.a
- /usr/lib/go/src/debug/elf/testdata/*
- /usr/lib/go/src/debug/dwarf/testdata/*
- /usr/lib/go/src/runtime/race/*.syso"
-
-if [[ ${PV} != 9999 ]]; then
- S="${WORKDIR}"/go
-fi
-
-PATCHES=(
-# patch for #581072
- "${FILESDIR}"/${P}-gdb-no-shell.patch
-)
-
-go_arch()
-{
- # By chance most portage arch names match Go
- local portage_arch=$(tc-arch $@)
- case "${portage_arch}" in
- x86) echo 386;;
- x64-*) echo amd64;;
- ppc64) [[ $(tc-endian $@) = big ]] && echo ppc64 || echo ppc64le ;;
- *) echo "${portage_arch}";;
- esac
-}
-
-go_arm()
-{
- case "${1:-${CHOST}}" in
- armv5*) echo 5;;
- armv6*) echo 6;;
- armv7*) echo 7;;
- *)
- die "unknown GOARM for ${1:-${CHOST}}"
- ;;
- esac
-}
-
-go_os()
-{
- case "${1:-${CHOST}}" in
- *-linux*) echo linux;;
- *-darwin*) echo darwin;;
- *-freebsd*) echo freebsd;;
- *-netbsd*) echo netbsd;;
- *-openbsd*) echo openbsd;;
- *-solaris*) echo solaris;;
- *-cygwin*|*-interix*|*-winnt*)
- echo windows
- ;;
- *)
- die "unknown GOOS for ${1:-${CHOST}}"
- ;;
- esac
-}
-
-go_tuple()
-{
- echo "$(go_os $@)_$(go_arch $@)"
-}
-
-go_cross_compile()
-{
- [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]]
-}
-
-pkg_pretend()
-{
- # make.bash does not understand cross-compiling a cross-compiler
- if [[ $(go_tuple) != $(go_tuple ${CTARGET}) ]]; then
- die "CHOST CTARGET pair unsupported: CHOST=${CHOST} CTARGET=${CTARGET}"
- fi
-}
-
-src_unpack()
-{
- if [[ ${PV} = 9999 ]]; then
- git-r3_src_unpack
- fi
- default
-}
-
-src_compile()
-{
- export GOROOT_BOOTSTRAP="${WORKDIR}"/go-$(go_os)-$(go_arch)-bootstrap
- if use gccgo; then
- mkdir -p "${GOROOT_BOOTSTRAP}/bin" || die
- local go_binary=$(gcc-config --get-bin-path)/go-5
- [[ -x ${go_binary} ]] || go_binary=$(
- find "${EPREFIX}"/usr/${CHOST}/gcc-bin/*/go-5 | sort -V | tail -n1)
- [[ -x ${go_binary} ]] || die "go-5: command not found"
- ln -s "${go_binary}" "${GOROOT_BOOTSTRAP}/bin/go" || die
- fi
- export GOROOT_FINAL="${EPREFIX}"/usr/lib/go
- export GOROOT="$(pwd)"
- export GOBIN="${GOROOT}/bin"
-
- # Go's build script does not use BUILD/HOST/TARGET consistently. :(
- export GOHOSTARCH=$(go_arch ${CBUILD})
- export GOHOSTOS=$(go_os ${CBUILD})
- export CC=$(tc-getBUILD_CC)
-
- export GOARCH=$(go_arch)
- export GOOS=$(go_os)
- export CC_FOR_TARGET=$(tc-getCC)
- export CXX_FOR_TARGET=$(tc-getCXX)
- if [[ ${ARCH} == arm ]]; then
- export GOARM=$(go_arm)
- fi
- elog "GOROOT_BOOTSTRAP is ${GOROOT_BOOTSTRAP}"
-
- cd src
- ./make.bash || die "build failed"
-}
-
-src_test()
-{
- go_cross_compile && return 0
-
- cd src
- PATH="${GOBIN}:${PATH}" \
- ./run.bash -no-rebuild || die "tests failed"
-}
-
-src_install()
-{
- local bin_path f x
-
- dodir /usr/lib/go
- insinto /usr/lib/go
-
- # There is a known issue which requires the source tree to be installed [1].
- # Once this is fixed, we can consider using the doc use flag to control
- # installing the doc and src directories.
- # [1] https://golang.org/issue/2775
- doins -r bin doc lib pkg src
- fperms -R +x /usr/lib/go/bin /usr/lib/go/pkg/tool
-
- cp -a misc "${D}"/usr/lib/go/misc
-
- if go_cross_compile; then
- bin_path="bin/$(go_tuple)"
- else
- bin_path=bin
- fi
- for x in ${bin_path}/*; do
- f=${x##*/}
- dosym ../lib/go/${bin_path}/${f} /usr/bin/${f}
- done
- dodoc AUTHORS CONTRIBUTORS PATENTS README.md
-}
-
-pkg_preinst()
-{
- has_version '<dev-lang/go-1.4' &&
- export had_support_files=true ||
- export had_support_files=false
-}
-
-pkg_postinst()
-{
- # If the go tool sees a package file timestamped older than a dependancy it
- # will rebuild that file. So, in order to stop go from rebuilding lots of
- # packages for every build we need to fix the timestamps. The compiler and
- # linker are also checked - so we need to fix them too.
- ebegin "fixing timestamps to avoid unnecessary rebuilds"
- tref="usr/lib/go/pkg/*/runtime.a"
- find "${EROOT}"usr/lib/go -type f \
- -exec touch -r "${EROOT}"${tref} {} \;
- eend $?
-
- if $had_support_files; then
- ewarn
- ewarn "All editor support, IDE support, shell completion"
- ewarn "support, etc has been removed from the go package"
- ewarn "upstream."
- ewarn "For more information on which support is available, see"
- ewarn "the following URL:"
- ewarn "https://github.com/golang/go/wiki/IDEsAndTextEditorPlugins"
- fi
-}
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-lang/go/files/, dev-lang/go/
@ 2020-12-07 1:44 William Hubbs
0 siblings, 0 replies; 8+ messages in thread
From: William Hubbs @ 2020-12-07 1:44 UTC (permalink / raw
To: gentoo-commits
commit: 3262576e57dc88108b7ce603a2e575c6fdf89e9b
Author: William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Mon Dec 7 01:41:03 2020 +0000
Commit: William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Mon Dec 7 01:43:50 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3262576e
dev-lang/go: add way to have portage rebuild software written in Go
This adds the @golang-rebuild set to portage to allow rebuilding all
known Go software in the tree.
This change only affects the live ebuild, but I will be adding it to
other versions.
Signed-off-by: William Hubbs <williamh <AT> gentoo.org>
dev-lang/go/files/go-sets.conf | 7 +++++++
dev-lang/go/go-9999.ebuild | 6 ++++--
2 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/dev-lang/go/files/go-sets.conf b/dev-lang/go/files/go-sets.conf
new file mode 100644
index 00000000000..01ad4a8b3d4
--- /dev/null
+++ b/dev-lang/go/files/go-sets.conf
@@ -0,0 +1,7 @@
+# Installed packages that inherit from known Go related eclasses.
+# This is useful after a dev-lang/go version change to rebuild all
+# software written in Go.
+[golang-rebuild]
+class = portage.sets.dbapi.VariableSet
+variable = INHERITED
+includes = golang-base golang-build golang-vcs golang-vcs-snapshot go-module
diff --git a/dev-lang/go/go-9999.ebuild b/dev-lang/go/go-9999.ebuild
index c81e94e1235..1157708bdb5 100644
--- a/dev-lang/go/go-9999.ebuild
+++ b/dev-lang/go/go-9999.ebuild
@@ -178,6 +178,10 @@ src_install()
done
einstalldocs
+ # install the @golang-rebuild set for Portage
+ insinto /usr/share/portage/config/sets
+ newins "${FILESDIR}"/go-sets.conf go.conf
+
if [[ ${CHOST} == *-darwin* ]] ; then
# fix install_name for test object (binutils_test) on Darwin, it
# is never used in real circumstances
@@ -189,8 +193,6 @@ src_install()
pkg_postinst() {
[[ -z ${REPLACING_VERSIONS} ]] && return
- has_version "<sys-apps/portage-3.0.9" && return
-
einfo "After ${CATEGORY}/${PN} is updated it is recommended to rebuild"
einfo "all packages compiled with previous versions of ${CATEGORY}/${PN}"
einfo "due to the static linking nature of go."
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-lang/go/files/, dev-lang/go/
@ 2024-01-10 20:46 William Hubbs
0 siblings, 0 replies; 8+ messages in thread
From: William Hubbs @ 2024-01-10 20:46 UTC (permalink / raw
To: gentoo-commits
commit: 24228f0576765cb52ed0431bf66e30628f40b3b0
Author: William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 10 20:33:40 2024 +0000
Commit: William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Wed Jan 10 20:43:30 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=24228f05
dev-lang/go: add 1.20.13, 1.21.6
Bug: https://bugs.gentoo.org/919751
Signed-off-by: William Hubbs <williamh <AT> gentoo.org>
dev-lang/go/Manifest | 2 +
dev-lang/go/files/go-sets.conf | 6 +-
dev-lang/go/go-1.20.13.ebuild | 210 +++++++++++++++++++++++++++++++++++++++++
dev-lang/go/go-1.21.6.ebuild | 210 +++++++++++++++++++++++++++++++++++++++++
4 files changed, 425 insertions(+), 3 deletions(-)
diff --git a/dev-lang/go/Manifest b/dev-lang/go/Manifest
index da0eed5ff18a..a7c4d99981ef 100644
--- a/dev-lang/go/Manifest
+++ b/dev-lang/go/Manifest
@@ -1,2 +1,4 @@
DIST go1.20.12.src.tar.gz 26200362 BLAKE2B f33dc8c1ce565443c2cd975db493998bf921eb9734b5e58f7200d6ddfd9c076cabcab105cb3d335c2dabff6a3d01a6fa52e597357e8bd616c8a7462aa5fb89d7 SHA512 3f4d1a22a0f1dd7e8feb008517e43b32c3600ce77168e5edfb75b4060577362ae62f28c9891de0f7bf553407bd8e09efc1563d34ee8af5285b3c80b3946f4b65
+DIST go1.20.13.src.tar.gz 26287815 BLAKE2B fbcb52039785d4d030d626768dee914e4c27e0be942740230618589708721246e8708f198e04812cfc41165cec49bbb0e92d380b4bff39924fe8f99fea736a40 SHA512 87cf8c5e201526c3f44a6b1845a7de3f8a02d054f8689d10c84d5da0d286390b54dc23fc22f82e050d792e1d10c69049691a0d46b198b3fdd2e80087b38f5f06
DIST go1.21.5.src.tar.gz 26986890 BLAKE2B a57550a3f586060d8efa93b6c8d9bf3f87d791ebf66767c9a3344983111aa14ed88c71fe44aabe79b64dcdad85426de647eaf5845d9a5cac082b42969f9a27cb SHA512 c064b7cb3c47d8fb99fc181a3cddf327a4b7a8c6af39a8ac568e9d74cd44903141680903ca48673bb02a7a159cce4f32a94f3b37fc65a9549d3518ad7c731fa3
+DIST go1.21.6.src.tar.gz 27058459 BLAKE2B 04909d067f8dc1c1bb45d9d0a87f9d0fedb69b42a4eb89ddb24d19df7c0f77c86c6283b579f3b3f9caa3ffba6ab5f325a71552e37b38ba4082e878bd0bc942a3 SHA512 8472c1c6c3fae9fecfb512a16f18ed531c04c087429a75086b9999069330c1b1e4a01a30c6561b5092169144cbc0d787ec2f5f4a50dfc4f79e74398f16423cfd
diff --git a/dev-lang/go/files/go-sets.conf b/dev-lang/go/files/go-sets.conf
index 01ad4a8b3d4f..f38edb71a6fc 100644
--- a/dev-lang/go/files/go-sets.conf
+++ b/dev-lang/go/files/go-sets.conf
@@ -1,7 +1,7 @@
-# Installed packages that inherit from known Go related eclasses.
+# Installed packages for which vdb *DEPEND includes dev-lang/go.
# This is useful after a dev-lang/go version change to rebuild all
# software written in Go.
[golang-rebuild]
class = portage.sets.dbapi.VariableSet
-variable = INHERITED
-includes = golang-base golang-build golang-vcs golang-vcs-snapshot go-module
+variable = BDEPEND
+includes = dev-lang/go
diff --git a/dev-lang/go/go-1.20.13.ebuild b/dev-lang/go/go-1.20.13.ebuild
new file mode 100644
index 000000000000..7be92a4a1aaa
--- /dev/null
+++ b/dev-lang/go/go-1.20.13.ebuild
@@ -0,0 +1,210 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+
+# See "Bootstrap" in release notes
+GO_BOOTSTRAP_MIN=1.17.13
+MY_PV=${PV/_/}
+
+inherit toolchain-funcs
+
+case ${PV} in
+*9999*)
+ EGIT_REPO_URI="https://github.com/golang/go.git"
+ inherit git-r3
+ ;;
+*)
+ SRC_URI="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz "
+ S="${WORKDIR}"/go
+ case ${PV} in
+ *_beta*|*_rc*) ;;
+ *)
+ KEYWORDS="-* ~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~s390 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
+ ;;
+ esac
+esac
+
+DESCRIPTION="A concurrent garbage collected and typesafe programming language"
+HOMEPAGE="https://go.dev"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+IUSE="abi_mips_o32 abi_mips_n64 cpu_flags_x86_sse2"
+
+RDEPEND="
+arm? ( sys-devel/binutils[gold] )
+arm64? ( sys-devel/binutils[gold] )"
+BDEPEND="|| (
+ >=dev-lang/go-${GO_BOOTSTRAP_MIN}
+ >=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN} )"
+
+# the *.syso files have writable/executable stacks
+QA_EXECSTACK='*.syso'
+
+# Do not complain about CFLAGS, etc, since Go doesn't use them.
+QA_FLAGS_IGNORED='.*'
+
+# The tools in /usr/lib/go should not cause the multilib-strict check to fail.
+QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*"
+
+# This package triggers "unrecognized elf file(s)" notices on riscv.
+# https://bugs.gentoo.org/794046
+QA_PREBUILT='.*'
+
+# Do not strip this package. Stripping is unsupported upstream and may
+# fail.
+RESTRICT+=" strip"
+
+DOCS=(
+ CONTRIBUTING.md
+ PATENTS
+ README.md
+ SECURITY.md
+)
+
+go_arch() {
+ # By chance most portage arch names match Go
+ local tc_arch=$(tc-arch $@)
+ case "${tc_arch}" in
+ x86) echo 386;;
+ x64-*) echo amd64;;
+ loong) echo loong64;;
+ mips) if use abi_mips_o32; then
+ [[ $(tc-endian $@) = big ]] && echo mips || echo mipsle
+ elif use abi_mips_n64; then
+ [[ $(tc-endian $@) = big ]] && echo mips64 || echo mips64le
+ fi ;;
+ ppc64) [[ $(tc-endian $@) = big ]] && echo ppc64 || echo ppc64le ;;
+ riscv) echo riscv64 ;;
+ s390) echo s390x ;;
+ *) echo "${tc_arch}";;
+ esac
+}
+
+go_arm() {
+ case "${1:-${CHOST}}" in
+ armv5*) echo 5;;
+ armv6*) echo 6;;
+ armv7*) echo 7;;
+ *)
+ die "unknown GOARM for ${1:-${CHOST}}"
+ ;;
+ esac
+}
+
+go_os() {
+ case "${1:-${CHOST}}" in
+ *-linux*) echo linux;;
+ *-darwin*) echo darwin;;
+ *-freebsd*) echo freebsd;;
+ *-netbsd*) echo netbsd;;
+ *-openbsd*) echo openbsd;;
+ *-solaris*) echo solaris;;
+ *-cygwin*|*-interix*|*-winnt*)
+ echo windows
+ ;;
+ *)
+ die "unknown GOOS for ${1:-${CHOST}}"
+ ;;
+ esac
+}
+
+go_tuple() {
+ echo "$(go_os $@)_$(go_arch $@)"
+}
+
+go_cross_compile() {
+ [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]]
+}
+
+src_compile() {
+ if has_version -b ">=dev-lang/go-${GO_BOOTSTRAP_MIN}"; then
+ export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go"
+ elif has_version -b ">=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN}"; then
+ export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go-bootstrap"
+ else
+ eerror "Go cannot be built without go or go-bootstrap installed"
+ die "Should not be here, please report a bug"
+ fi
+
+ export GOROOT_FINAL="${EPREFIX}"/usr/lib/go
+ export GOROOT="${PWD}"
+ export GOBIN="${GOROOT}/bin"
+
+ # Go's build script does not use BUILD/HOST/TARGET consistently. :(
+ export GOHOSTARCH=$(go_arch ${CBUILD})
+ export GOHOSTOS=$(go_os ${CBUILD})
+ export CC=$(tc-getBUILD_CC)
+
+ export GOARCH=$(go_arch)
+ export GOOS=$(go_os)
+ export CC_FOR_TARGET=$(tc-getCC)
+ export CXX_FOR_TARGET=$(tc-getCXX)
+ use arm && export GOARM=$(go_arm)
+ use x86 && export GO386=$(usex cpu_flags_x86_sse2 '' 'softfloat')
+
+ cd src
+ bash -x ./make.bash || die "build failed"
+}
+
+src_test() {
+ go_cross_compile && return 0
+
+ cd src
+
+ # https://github.com/golang/go/issues/42005
+ rm cmd/link/internal/ld/fallocate_test.go || true
+
+ PATH="${GOBIN}:${PATH}" \
+ ./run.bash -no-rebuild || die "tests failed"
+ cd ..
+ rm -fr pkg/*_race || die
+ rm -fr pkg/obj/go-build || die
+}
+
+src_install() {
+ # There is a known issue which requires the source tree to be installed [1].
+ # Once this is fixed, we can consider using the doc use flag to control
+ # installing the doc and src directories.
+ # The use of cp is deliberate in order to retain permissions
+ # [1] https://golang.org/issue/2775
+ dodir /usr/lib/go
+ cp -R api bin doc lib pkg misc src test "${ED}"/usr/lib/go
+ einstalldocs
+
+ # testdata directories are not needed on the installed system
+ rm -fr $(find "${ED}"/usr/lib/go -iname testdata -type d -print)
+
+ local bin_path
+ if go_cross_compile; then
+ bin_path="bin/$(go_tuple)"
+ else
+ bin_path=bin
+ fi
+ local f x
+ for x in ${bin_path}/*; do
+ f=${x##*/}
+ dosym ../lib/go/${bin_path}/${f} /usr/bin/${f}
+ done
+
+ # install the @golang-rebuild set for Portage
+ insinto /usr/share/portage/config/sets
+ newins "${FILESDIR}"/go-sets.conf go.conf
+}
+
+pkg_postinst() {
+ [[ -z ${REPLACING_VERSIONS} ]] && return
+ elog "After ${CATEGORY}/${PN} is updated it is recommended to rebuild"
+ elog "all packages compiled with previous versions of ${CATEGORY}/${PN}"
+ elog "due to the static linking nature of go."
+ elog "If this is not done, the packages compiled with the older"
+ elog "version of the compiler will not be updated until they are"
+ elog "updated individually, which could mean they will have"
+ elog "vulnerabilities."
+ elog "Run 'emerge @golang-rebuild' to rebuild all 'go' packages"
+ elog "See https://bugs.gentoo.org/752153 for more info"
+}
diff --git a/dev-lang/go/go-1.21.6.ebuild b/dev-lang/go/go-1.21.6.ebuild
new file mode 100644
index 000000000000..6060e4160e11
--- /dev/null
+++ b/dev-lang/go/go-1.21.6.ebuild
@@ -0,0 +1,210 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+
+# See "Bootstrap" in release notes
+GO_BOOTSTRAP_MIN=1.17.13
+MY_PV=${PV/_/}
+
+inherit toolchain-funcs
+
+case ${PV} in
+*9999*)
+ EGIT_REPO_URI="https://github.com/golang/go.git"
+ inherit git-r3
+ ;;
+*)
+ SRC_URI="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz "
+ S="${WORKDIR}"/go
+ case ${PV} in
+ *_beta*|*_rc*) ;;
+ *)
+ KEYWORDS="-* ~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~s390 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
+ ;;
+ esac
+esac
+
+DESCRIPTION="A concurrent garbage collected and typesafe programming language"
+HOMEPAGE="https://go.dev"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+IUSE="abi_mips_o32 abi_mips_n64 cpu_flags_x86_sse2"
+
+RDEPEND="
+arm? ( sys-devel/binutils[gold] )
+arm64? ( sys-devel/binutils[gold] )"
+BDEPEND="|| (
+ >=dev-lang/go-${GO_BOOTSTRAP_MIN}
+ >=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN} )"
+
+# the *.syso files have writable/executable stacks
+QA_EXECSTACK='*.syso'
+
+# Do not complain about CFLAGS, etc, since Go doesn't use them.
+QA_FLAGS_IGNORED='.*'
+
+# The tools in /usr/lib/go should not cause the multilib-strict check to fail.
+QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*"
+
+# This package triggers "unrecognized elf file(s)" notices on riscv.
+# https://bugs.gentoo.org/794046
+QA_PREBUILT='.*'
+
+# Do not strip this package. Stripping is unsupported upstream and may
+# fail.
+RESTRICT+=" strip"
+
+DOCS=(
+ CONTRIBUTING.md
+ PATENTS
+ README.md
+ SECURITY.md
+)
+
+go_arch() {
+ # By chance most portage arch names match Go
+ local tc_arch=$(tc-arch $@)
+ case "${tc_arch}" in
+ x86) echo 386;;
+ x64-*) echo amd64;;
+ loong) echo loong64;;
+ mips) if use abi_mips_o32; then
+ [[ $(tc-endian $@) = big ]] && echo mips || echo mipsle
+ elif use abi_mips_n64; then
+ [[ $(tc-endian $@) = big ]] && echo mips64 || echo mips64le
+ fi ;;
+ ppc64) [[ $(tc-endian $@) = big ]] && echo ppc64 || echo ppc64le ;;
+ riscv) echo riscv64 ;;
+ s390) echo s390x ;;
+ *) echo "${tc_arch}";;
+ esac
+}
+
+go_arm() {
+ case "${1:-${CHOST}}" in
+ armv5*) echo 5;;
+ armv6*) echo 6;;
+ armv7*) echo 7;;
+ *)
+ die "unknown GOARM for ${1:-${CHOST}}"
+ ;;
+ esac
+}
+
+go_os() {
+ case "${1:-${CHOST}}" in
+ *-linux*) echo linux;;
+ *-darwin*) echo darwin;;
+ *-freebsd*) echo freebsd;;
+ *-netbsd*) echo netbsd;;
+ *-openbsd*) echo openbsd;;
+ *-solaris*) echo solaris;;
+ *-cygwin*|*-interix*|*-winnt*)
+ echo windows
+ ;;
+ *)
+ die "unknown GOOS for ${1:-${CHOST}}"
+ ;;
+ esac
+}
+
+go_tuple() {
+ echo "$(go_os $@)_$(go_arch $@)"
+}
+
+go_cross_compile() {
+ [[ $(go_tuple ${CBUILD}) != $(go_tuple) ]]
+}
+
+PATCHES=(
+ "${FILESDIR}"/go-never-download-newer-toolchains.patch
+)
+
+src_compile() {
+ if has_version -b ">=dev-lang/go-${GO_BOOTSTRAP_MIN}"; then
+ export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go"
+ elif has_version -b ">=dev-lang/go-bootstrap-${GO_BOOTSTRAP_MIN}"; then
+ export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go-bootstrap"
+ else
+ eerror "Go cannot be built without go or go-bootstrap installed"
+ die "Should not be here, please report a bug"
+ fi
+
+ export GOROOT_FINAL="${EPREFIX}"/usr/lib/go
+ export GOROOT="${PWD}"
+ export GOBIN="${GOROOT}/bin"
+
+ # Go's build script does not use BUILD/HOST/TARGET consistently. :(
+ export GOHOSTARCH=$(go_arch ${CBUILD})
+ export GOHOSTOS=$(go_os ${CBUILD})
+ export CC=$(tc-getBUILD_CC)
+
+ export GOARCH=$(go_arch)
+ export GOOS=$(go_os)
+ export CC_FOR_TARGET=$(tc-getCC)
+ export CXX_FOR_TARGET=$(tc-getCXX)
+ use arm && export GOARM=$(go_arm)
+ use x86 && export GO386=$(usex cpu_flags_x86_sse2 '' 'softfloat')
+
+ cd src
+ bash -x ./make.bash || die "build failed"
+}
+
+src_test() {
+ go_cross_compile && return 0
+
+ cd src
+
+ # https://github.com/golang/go/issues/42005
+ rm cmd/link/internal/ld/fallocate_test.go || die
+
+ PATH="${GOBIN}:${PATH}" \
+ ./run.bash -no-rebuild -k || die "tests failed"
+}
+
+src_install() {
+ dodir /usr/lib/go
+ # The use of cp is deliberate in order to retain permissions
+ cp -R api bin doc lib pkg misc src test "${ED}"/usr/lib/go
+ einstalldocs
+
+ insinto /usr/lib/go
+ doins go.env VERSION
+
+ # testdata directories are not needed on the installed system
+ rm -fr $(find "${ED}"/usr/lib/go -iname testdata -type d -print)
+
+ local bin_path
+ if go_cross_compile; then
+ bin_path="bin/$(go_tuple)"
+ else
+ bin_path=bin
+ fi
+ local f x
+ for x in ${bin_path}/*; do
+ f=${x##*/}
+ dosym ../lib/go/${bin_path}/${f} /usr/bin/${f}
+ done
+
+ # install the @golang-rebuild set for Portage
+ insinto /usr/share/portage/config/sets
+ newins "${FILESDIR}"/go-sets.conf go.conf
+}
+
+pkg_postinst() {
+ [[ -z ${REPLACING_VERSIONS} ]] && return
+ elog "After ${CATEGORY}/${PN} is updated it is recommended to rebuild"
+ elog "all packages compiled with previous versions of ${CATEGORY}/${PN}"
+ elog "due to the static linking nature of go."
+ elog "If this is not done, the packages compiled with the older"
+ elog "version of the compiler will not be updated until they are"
+ elog "updated individually, which could mean they will have"
+ elog "vulnerabilities."
+ elog "Run 'emerge @golang-rebuild' to rebuild all 'go' packages"
+ elog "See https://bugs.gentoo.org/752153 for more info"
+}
^ permalink raw reply related [flat|nested] 8+ messages in thread
end of thread, other threads:[~2024-01-10 20:46 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-11-27 20:39 [gentoo-commits] repo/gentoo:master commit in: dev-lang/go/files/, dev-lang/go/ William Hubbs
-- strict thread matches above, loose matches on Subject: below --
2016-01-15 18:42 William Hubbs
2016-04-02 18:36 William Hubbs
2016-05-18 17:30 William Hubbs
2016-07-28 15:59 William Hubbs
2017-01-12 21:35 William Hubbs
2020-12-07 1:44 William Hubbs
2024-01-10 20:46 William Hubbs
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox