We have moved to Git. This repository is only provided for compatibility with old installations. Learn how to migrate your installation here.

annotate eclass/x-mgcf-golang-live.eclass @ 249:0685ed0fb913

[sync] imported 2c6bf87..18f98a6 from upstream commit 18f98a6f47cd77c1007b60dbfc7a838ffa99df0c Author: Daniel Neugebauer <dneuge@energiequant.de> Date: Mon Mar 27 21:11:43 2023 +0200 app-crypt/acmetool: version bump to 0.2.2 commit ee2df4ec1deab61cd7bb7de2cd13ffdd066cc41a Author: Daniel Neugebauer <dneuge@energiequant.de> Date: Mon Mar 27 19:30:58 2023 +0200 app-crypt/acmetool: split 0.2.1 from 9999, changed dependencies commit f3c9cf1c7a24619446390b0b71bf5bc090dfce77 Author: Daniel Neugebauer <dneuge@energiequant.de> Date: Mon Mar 27 19:29:33 2023 +0200 removed dependency to go-overlay commit b2057a9b0ba65917f3840a6b121c1e78397c4723 Author: Daniel Neugebauer <dneuge@energiequant.de> Date: Mon Mar 27 19:27:28 2023 +0200 golang eclasses: prefixed exported functions x-mgcf- commit e8d02d1edc997fec9e0b1e5d053a5b82ca4accf2 Author: Daniel Neugebauer <dneuge@energiequant.de> Date: Mon Mar 27 19:08:52 2023 +0200 renamed golang eclasses, updated maintainer, added disclaimer commit 748ea4be8ee777bc788cb2a8801b118b41e6f8aa Author: Daniel Neugebauer <dneuge@energiequant.de> Date: Mon Mar 27 18:43:56 2023 +0200 copied eclasses for Go from go-overlay Reason: These eclasses are used to build app-crypt/acmetool. We previously imported go-overlay as a master repository to use the eclasses defined there but the overlay has been removed from official Gentoo overlay index due to inactivity. The removal broke new initial checkouts for this repository as go-overlay can no longer be found. Gentoo bug for MegaCoffee: https://bugs.gentoo.org/903167 Gentoo bug that caused removal: https://bugs.gentoo.org/864653 Original repository: https://github.com/Dr-Terrible/go-overlay
author Migration Sync <gentoo-overlay@megacoffee.net>
date Mon, 27 Mar 2023 19:15:01 +0000
parents
children 0ad22bd2bcb5
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
249
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
1 # Copyright 1999-2017 Gentoo Foundation
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
2 # Distributed under the terms of the GNU General Public License v2
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
3 # $Id$
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
4
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
5 # @ECLASS: x-mgcf-golang-live.eclass
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
6 # @MAINTAINER:
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
7 # MegaCoffee Overlay <gentoo-overlay@megacoffee.net>
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
8 # @AUTHOR:
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
9 # Mauro Toffanin <toffanin.mauro@gmail.com>
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
10 # @BLURB: Eclass for fetching and unpacking HEAD shapshot of go repositories
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
11 # @DESCRIPTION:
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
12 # This eclass is written to ease the maintenance of live ebuilds
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
13 # of software written in the Go programming language.
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
14
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
15 inherit x-mgcf-golang-common
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
16
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
17 # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
18 # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
19 # !!! !!!
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
20 # !!! L E G A C Y E C L A S S !!!
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
21 # !!! !!!
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
22 # !!! DO NOT USE OUTSIDE OF MEGACOFFEE OVERLAY !!!
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
23 # !!! !!!
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
24 # !!! DO NOT USE FOR NEW EBUILDS !!!
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
25 # !!! !!!
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
26 # !!! This eclass has only been copied to megacoffee overlay from !!!
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
27 # !!! go-overlay: https://github.com/Dr-Terrible/go-overlay !!!
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
28 # !!! !!!
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
29 # !!! The only purpose is to keep currently depending ebuilds !!!
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
30 # !!! until they could be migrated to standard eclasses for Go, !!!
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
31 # !!! if suitable. !!!
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
32 # !!! !!!
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
33 # !!! go-overlay was previously imported by megacoffee until it !!!
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
34 # !!! got removed from Gentoo overlay index in March 2023, !!!
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
35 # !!! rendering megacoffee overlay unreachable as a result. !!!
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
36 # !!! !!!
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
37 # !!! Related bugs: https://bugs.gentoo.org/864653 !!!
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
38 # !!! https://bugs.gentoo.org/903167 !!!
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
39 # !!! !!!
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
40 # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
41 # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
42
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
43
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
44 EXPORT_FUNCTIONS src_prepare src_unpack src_configure src_compile src_install src_test
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
45
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
46 if [[ -z ${_GOLANG_LIVE_ECLASS} ]]; then
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
47 _GOLANG_LIVE_ECLASS=1
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
48
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
49
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
50 # @ECLASS-VARIABLE: EGO_LIVESTORE_DIR
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
51 # @INTERNAL
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
52 # @DESCRIPTION:
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
53 # Storage directory for Go sources.
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
54 # Ebuilds must not set it.
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
55
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
56 # @ECLASS-VARIABLE: EVCS_UMASK
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
57 # @DEFAULT_UNSET
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
58 # @DESCRIPTION:
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
59 # Set this variable to a custom umask. This is intended to be set by
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
60 # users. By setting this to something like 002, it can make life easier
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
61 # for people who do development as non-root (but are in the portage
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
62 # group), and then switch over to building with FEATURES=userpriv.
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
63 # Or vice-versa. Shouldn't be a security issue here as anyone who has
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
64 # portage group write access already can screw the system over in more
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
65 # creative ways.
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
66
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
67
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
68 # Validates use of GOLANG_PKG_DEPENDENCIES.
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
69 # NOTE: a live ebuild should not have go dependencies.
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
70 # TODO: check also if GOLANG_PKG_DEPENDENCIES is an array
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
71 if [[ -n ${GOLANG_PKG_DEPENDENCIES} ]]; then
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
72 eerror "Ebuild ${CATEGORY}/${PF} specifies GOLANG_PKG_DEPENDENCIES."
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
73 eerror "Please, fix it by removing GOLANG_PKG_DEPENDENCIES entirely."
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
74 die "Banned variable GOLANG_PKG_DEPENDENCIES is set"
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
75 fi
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
76
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
77
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
78 # @FUNCTION: x-mgcf-golang-live_src_fetch
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
79 # @DESCRIPTION:
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
80 # Fetch a go package along with its dependencies.
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
81 x-mgcf-golang-live_src_fetch() {
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
82 debug-print-function ${FUNCTION} "$@"
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
83
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
84 [[ -z ${EGO_LIVESTORE_DIR} ]] && die "No EGO_LIVESTORE_DIR set (x-mgcf-golang-live_src_unpack not called?)."
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
85
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
86 # Fetch the go package
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
87 [[ -n ${EVCS_UMASK} ]] && eumask_push ${EVCS_UMASK}
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
88
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
89 set -- env \
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
90 GOPATH="${EGO_LIVESTORE_DIR}" \
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
91 go get -d -u -v -t -tags="${GOLANG_PKG_TAGS}" ${@}
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
92 echo "$@"
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
93 "$@" || die
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
94
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
95 [[ -n ${EVCS_UMASK} ]] && eumask_pop
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
96 }
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
97
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
98 # @FUNCTION: x-mgcf-golang-live_src_unpack
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
99 # @DESCRIPTION:
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
100 # Unpack the source archive.
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
101 x-mgcf-golang-live_src_unpack() {
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
102 debug-print-function ${FUNCNAME} "$@"
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
103
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
104 # Creates EGO_LIVESTORE_DIR if necessary.
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
105 local distdir=${PORTAGE_ACTUAL_DISTDIR:-${DISTDIR}}
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
106 : EGO_LIVESTORE_DIR=${EGO_LIVESTORE_DIR:=${distdir}/go-${PN}-livesrc}
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
107
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
108 [[ -n ${EVCS_UMASK} ]] && eumask_push ${EVCS_UMASK}
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
109
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
110 if [[ ! -d ${EGO_LIVESTORE_DIR} ]]; then
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
111 (
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
112 addwrite /
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
113 mkdir -p "${EGO_LIVESTORE_DIR}"
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
114 ) || die "${ECLASS}: unable to create ${EGO_LIVESTORE_DIR}"
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
115 fi
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
116
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
117 addwrite "${EGO_LIVESTORE_DIR}"
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
118
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
119 [[ -n ${EVCS_UMASK} ]] && eumask_pop
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
120
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
121 # Retrieves the GOLANG_PKG_IMPORTPATH go package.
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
122 x-mgcf-golang-live_src_fetch "${GOLANG_PKG_IMPORTPATH}/${GOLANG_PKG_NAME}"/...
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
123
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
124 # Creates SOURCE directory.
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
125 mkdir -p "${S}" || die
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
126 }
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
127
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
128
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
129 # @FUNCTION: x-mgcf-golang-live_src_prepare
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
130 # @DESCRIPTION:
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
131 # Prepare source code.
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
132 x-mgcf-golang-live_src_prepare() {
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
133 debug-print-function ${FUNCNAME} "${@}"
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
134
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
135 # Sets up GoLang build environment.
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
136 x-mgcf-golang_setup
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
137
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
138 # Imports all go dependencies
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
139 ebegin "Importing all the sources in ${GOPATH}"
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
140 cp -r "${EGO_LIVESTORE_DIR}/src" "${GOPATH}" || die "Unable to copy sources to ${GOPATH}"
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
141 eend
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
142
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
143 x-mgcf-golang-common_src_prepare
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
144 }
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
145
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
146
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
147 # @FUNCTION: x-mgcf-golang-live_src_configure
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
148 # @DESCRIPTION:
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
149 # Configure the package.
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
150 x-mgcf-golang-live_src_configure() {
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
151 debug-print-function ${FUNCNAME} "$@"
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
152
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
153 x-mgcf-golang-common_src_configure
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
154 }
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
155
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
156 # @FUNCTION: x-mgcf-golang-live_src_compile
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
157 # @DESCRIPTION:
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
158 # Compiles the package.
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
159 x-mgcf-golang-live_src_compile() {
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
160 debug-print-function ${FUNCNAME} "$@"
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
161
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
162 x-mgcf-golang-common_src_compile
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
163 }
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
164
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
165 # @FUNCTION: x-mgcf-golang-live_src_install
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
166 # @DESCRIPTION:
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
167 # Installs binaries and documents from DOCS or HTML_DOCS arrays.
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
168 x-mgcf-golang-live_src_install() {
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
169 debug-print-function ${FUNCNAME} "$@"
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
170
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
171 x-mgcf-golang-common_src_install
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
172 }
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
173
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
174 # @FUNCTION: x-mgcf-golang-live_src_test
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
175 # @DESCRIPTION:
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
176 # Runs the unit tests for the main package.
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
177 x-mgcf-golang-live_src_test() {
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
178 debug-print-function ${FUNCNAME} "$@"
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
179
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
180 x-mgcf-golang-common_src_test
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
181 }
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
182
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
183
0685ed0fb913 [sync] imported 2c6bf87..18f98a6 from upstream
Migration Sync <gentoo-overlay@megacoffee.net>
parents:
diff changeset
184 fi