dev-ruby/rex-text: cleanup
[gentoo.git] / dev-go / go-oauth2 / go-oauth2-0_pre20150701.ebuild
1 # Copyright 1999-2016 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3
4 EAPI=5
5
6 inherit eutils golang-base
7
8 MY_PN=${PN##*-}
9 GO_PN=golang.org/x/${MY_PN}
10 EGIT_COMMIT="8914e5017ca260f2a3a1575b1e6868874050d95e"
11
12 HOMEPAGE="https://godoc.org/${GO_PN}"
13 DESCRIPTION="Go client implementation for OAuth 2.0 spec"
14 SRC_URI="
15         https://github.com/golang/${MY_PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz
16         https://github.com/GoogleCloudPlatform/gcloud-golang/archive/e34a32f9b0ecbc0784865fb2d47f3818c09521d4.tar.gz -> gcloud-golang-e34a32f9b0ecbc0784865fb2d47f3818c09521d4.tar.gz"
17
18 SLOT="0"
19 LICENSE="BSD"
20 KEYWORDS="~amd64"
21 IUSE=""
22
23 DEPEND="
24         dev-go/go-net:=
25         dev-go/go-tools:="
26 RDEPEND=""
27
28 S="${WORKDIR}/src/${GO_PN}"
29
30 EGIT_CHECKOUT_DIR="${S}"
31 STRIP_MASK="*.a"
32
33 src_unpack() {
34         default
35         mkdir -p src/${GO_PN%/*} || die
36         mv ${MY_PN}-${EGIT_COMMIT} src/${GO_PN} || die
37
38         # Create a writable GOROOT in order to avoid sandbox violations.
39         export GOROOT="${WORKDIR}/goroot" GOPATH="${WORKDIR}/:$(get_golibdir_gopath)"
40         cp -sR "${EPREFIX}"/usr/lib/go "${GOROOT}" || die
41         rm -rf "${GOROOT}/src/${GO_PN}" || die
42
43         mkdir -p "${GOROOT}/src/google.golang.org" || die
44         rm -rf "${GOROOT}/src/google.golang.org"/* || die
45         rm -rf "${GOROOT}/pkg/${KERNEL}_${ARCH}/google.golang.org" || die
46         mv gcloud-golang-e34a32f9b0ecbc0784865fb2d47f3818c09521d4 "${GOROOT}/src/google.golang.org/cloud" || die
47 }
48
49 src_compile() {
50         go install -v -x -work google.golang.org/cloud/compute/metadata || die
51         go install -v -x -work ${GO_PN}/... || die
52 }
53
54 src_test() {
55         # google/example_test.go imports appengine, introducing a circular dep
56         mv google/example_test.go{,_}
57         go test -x -v ${GO_PN}/... || die $?
58         mv google/example_test.go{_,}
59 }
60
61 src_install() {
62         insinto "$(get_golibdir)"
63         egit_clean "${WORKDIR}"/{pkg,src}
64         insopts -m0644 -p # preserve timestamps for bug 551486
65         doins -r "${WORKDIR}"/{pkg,src}
66 }