summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWilliam Hubbs <williamh@gentoo.org>2013-12-14 19:43:33 +0000
committerWilliam Hubbs <williamh@gentoo.org>2013-12-14 19:43:33 +0000
commit59f788edb3c2fedec0069665dc67d356cb66436b (patch)
tree5efd10dbe929cbd96a81f2ceb8331601ca86f3f4
parentConvert to distutils-r1. (diff)
downloadgentoo-2-59f788edb3c2fedec0069665dc67d356cb66436b.tar.gz
gentoo-2-59f788edb3c2fedec0069665dc67d356cb66436b.tar.bz2
gentoo-2-59f788edb3c2fedec0069665dc67d356cb66436b.zip
version bump for #490388.
(Portage version: 2.2.7/cvs/Linux i686, signed Manifest commit with key 0x30C46538)
-rw-r--r--dev-lang/go/ChangeLog8
-rw-r--r--dev-lang/go/files/go-1.2-no-Werror.patch10
-rw-r--r--dev-lang/go/go-1.2.ebuild144
3 files changed, 161 insertions, 1 deletions
diff --git a/dev-lang/go/ChangeLog b/dev-lang/go/ChangeLog
index 04ee50db9696..89befc1b9845 100644
--- a/dev-lang/go/ChangeLog
+++ b/dev-lang/go/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for dev-lang/go
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/go/ChangeLog,v 1.23 2013/10/28 22:17:03 williamh Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/go/ChangeLog,v 1.24 2013/12/14 19:43:33 williamh Exp $
+
+*go-1.2 (14 Dec 2013)
+
+ 14 Dec 2013; William Hubbs <williamh@gentoo.org>
+ +files/go-1.2-no-Werror.patch, +go-1.2.ebuild:
+ version bump for #490388.
28 Oct 2013; William Hubbs <williamh@gentoo.org> -go-1.1.1.ebuild:
remove old version
diff --git a/dev-lang/go/files/go-1.2-no-Werror.patch b/dev-lang/go/files/go-1.2-no-Werror.patch
new file mode 100644
index 000000000000..01f183edb078
--- /dev/null
+++ b/dev-lang/go/files/go-1.2-no-Werror.patch
@@ -0,0 +1,10 @@
+--- a/src/cmd/dist/build.c
++++ b/src/cmd/dist/build.c
+@@ -384,7 +384,6 @@ static char *proto_gccargs[] = {
+ "-Wno-switch",
+ "-Wno-comment",
+ "-Wno-missing-field-initializers",
+- "-Werror",
+ "-fno-common",
+ "-ggdb",
+ "-pipe",
diff --git a/dev-lang/go/go-1.2.ebuild b/dev-lang/go/go-1.2.ebuild
new file mode 100644
index 000000000000..5b07eb83f907
--- /dev/null
+++ b/dev-lang/go/go-1.2.ebuild
@@ -0,0 +1,144 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/go/go-1.2.ebuild,v 1.1 2013/12/14 19:43:33 williamh Exp $
+
+EAPI=5
+
+export CTARGET=${CTARGET:-${CHOST}}
+
+inherit bash-completion-r1 elisp-common eutils
+
+if [[ ${PV} = 9999 ]]; then
+ EHG_REPO_URI="https://go.googlecode.com/hg"
+ inherit mercurial
+else
+ SRC_URI="http://go.googlecode.com/files/go${PV}.src.tar.gz"
+ # Upstream only supports go on amd64, arm and x86 architectures.
+ KEYWORDS="-* ~amd64 ~arm ~x86"
+fi
+
+DESCRIPTION="A concurrent garbage collected and typesafe programming language"
+HOMEPAGE="http://www.golang.org"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="bash-completion emacs vim-syntax zsh-completion"
+
+DEPEND=""
+RDEPEND="bash-completion? ( app-shells/bash-completion )
+ emacs? ( virtual/emacs )
+ vim-syntax? ( || ( app-editors/vim app-editors/gvim ) )
+ zsh-completion? ( app-shells/zsh-completion )"
+
+# 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.
+STRIP_MASK="/usr/lib/go/pkg/linux*/*.a"
+
+if [[ ${PV} != 9999 ]]; then
+ S="${WORKDIR}"/go
+fi
+
+src_prepare()
+{
+ if [[ ${PV} != 9999 ]]; then
+ epatch "${FILESDIR}"/${P}-no-Werror.patch
+ fi
+ epatch_user
+}
+
+src_compile()
+{
+ export GOROOT_FINAL=/usr/lib/go
+ export GOROOT="$(pwd)"
+ export GOBIN="${GOROOT}/bin"
+ if [[ $CTARGET = armv5* ]]
+ then
+ export GOARM=5
+ fi
+
+ cd src
+ ./make.bash || die "build failed"
+ cd ..
+
+ if use emacs; then
+ elisp-compile misc/emacs/*.el
+ fi
+}
+
+src_test()
+{
+ cd src
+ PATH="${GOBIN}:${PATH}" \
+ ./run.bash --no-rebuild --banner || die "tests failed"
+}
+
+src_install()
+{
+ dobin bin/*
+ dodoc AUTHORS CONTRIBUTORS PATENTS README
+
+ 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] http://code.google.com/p/go/issues/detail?id=2775
+ doins -r doc include lib pkg src
+
+ if use bash-completion; then
+ dobashcomp misc/bash/go
+ fi
+
+ if use emacs; then
+ elisp-install ${PN} misc/emacs/*.el misc/emacs/*.elc
+ fi
+
+ if use vim-syntax; then
+ insinto /usr/share/vim/vimfiles
+ doins -r misc/vim/ftdetect
+ doins -r misc/vim/ftplugin
+ doins -r misc/vim/syntax
+ doins -r misc/vim/plugin
+ doins -r misc/vim/indent
+ fi
+
+ if use zsh-completion; then
+ insinto /usr/share/zsh/site-functions
+ doins misc/zsh/go
+ fi
+
+ fperms -R +x /usr/lib/go/pkg/tool
+}
+
+pkg_postinst()
+{
+ if use emacs; then
+ elisp-site-regen
+ fi
+
+ # 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 "${ROOT}"usr/lib/go -type f \
+ -exec touch -r "${ROOT}"${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
+}
+
+pkg_postrm()
+{
+ if use emacs; then
+ elisp-site-regen
+ fi
+}