summaryrefslogtreecommitdiffstats
path: root/meta/classes/go.bbclass
diff options
context:
space:
mode:
Diffstat (limited to 'meta/classes/go.bbclass')
-rw-r--r--meta/classes/go.bbclass8
1 files changed, 7 insertions, 1 deletions
diff --git a/meta/classes/go.bbclass b/meta/classes/go.bbclass
index c1ef01fafe..cb1e96d88b 100644
--- a/meta/classes/go.bbclass
+++ b/meta/classes/go.bbclass
@@ -52,6 +52,7 @@ FILES_${PN}-staticdev += "${GOSRC_FINAL}/${GO_IMPORT}"
52FILES_${PN}-staticdev += "${GOPKG_FINAL}/${GO_IMPORT}*" 52FILES_${PN}-staticdev += "${GOPKG_FINAL}/${GO_IMPORT}*"
53 53
54GO_INSTALL ?= "${GO_IMPORT}/..." 54GO_INSTALL ?= "${GO_IMPORT}/..."
55GO_INSTALL_FILTEROUT ?= "${GO_IMPORT}/vendor/"
55 56
56B = "${WORKDIR}/build" 57B = "${WORKDIR}/build"
57 58
@@ -73,6 +74,11 @@ python go_do_unpack() {
73 raise bb.build.FuncFailed(e) 74 raise bb.build.FuncFailed(e)
74} 75}
75 76
77go_list_packages() {
78 GOPATH=${B}:${STAGING_LIBDIR}/${TARGET_SYS}/go go list -f '{{.ImportPath}}' ${GOBUILDFLAGS} ${GO_INSTALL} | \
79 egrep -v '${GO_INSTALL_FILTEROUT}'
80}
81
76go_do_configure() { 82go_do_configure() {
77 ln -snf ${S}/src ${B}/ 83 ln -snf ${S}/src ${B}/
78} 84}
@@ -80,7 +86,7 @@ go_do_configure() {
80go_do_compile() { 86go_do_compile() {
81 GOPATH=${B}:${STAGING_LIBDIR}/${TARGET_SYS}/go go env 87 GOPATH=${B}:${STAGING_LIBDIR}/${TARGET_SYS}/go go env
82 if [ -n "${GO_INSTALL}" ]; then 88 if [ -n "${GO_INSTALL}" ]; then
83 GOPATH=${B}:${STAGING_LIBDIR}/${TARGET_SYS}/go go install ${GOBUILDFLAGS} ${GO_INSTALL} 89 GOPATH=${B}:${STAGING_LIBDIR}/${TARGET_SYS}/go go install ${GOBUILDFLAGS} `go_list_packages`
84 fi 90 fi
85} 91}
86do_compile[cleandirs] = "${B}/bin ${B}/pkg" 92do_compile[cleandirs] = "${B}/bin ${B}/pkg"