[oe-commits] [openembedded-core] 23/24: go.bbclass: set TMPDIR during compilation

git at git.openembedded.org git at git.openembedded.org
Thu Sep 21 08:06:57 UTC 2017


This is an automated email from the git hooks/post-receive script.

rpurdie pushed a commit to branch master
in repository openembedded-core.

commit 5de3de12c70f01753491c46b5622b0d273c3257b
Author: Matt Madison <matt at madison.systems>
AuthorDate: Thu Sep 14 16:22:30 2017 -0300

    go.bbclass: set TMPDIR during compilation
    
    The go build tool creates working directories under
    $TMPDIR for all of its processing.  Create a directory
    under ${WORKDIR} for this and point TMPDIR at it during
    compilation, so that systems that have a relatively
    small /tmp filesystems can still compile larger Go
    packages.
    
    Signed-off-by: Matt Madison <matt at madison.systems>
    Signed-off-by: Otavio Salvador <otavio at ossystems.com.br>
    Signed-off-by: Ross Burton <ross.burton at intel.com>
---
 meta/classes/go.bbclass | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/meta/classes/go.bbclass b/meta/classes/go.bbclass
index 863b578..e167c94 100644
--- a/meta/classes/go.bbclass
+++ b/meta/classes/go.bbclass
@@ -61,6 +61,8 @@ GO_INSTALL_FILTEROUT ?= "${GO_IMPORT}/vendor/"
 
 B = "${WORKDIR}/build"
 export GOPATH = "${B}"
+GO_TMPDIR ?= "${WORKDIR}/go-tmp"
+GO_TMPDIR[vardepvalue] = ""
 
 python go_do_unpack() {
     src_uri = (d.getVar('SRC_URI') or "").split()
@@ -97,14 +99,17 @@ go_do_configure() {
 }
 
 go_do_compile() {
+	export TMPDIR="${GO_TMPDIR}"
 	${GO} env
 	if [ -n "${GO_INSTALL}" ]; then
 		${GO} install ${GO_LINKSHARED} ${GOBUILDFLAGS} `go_list_packages`
 	fi
 }
+do_compile[dirs] =+ "${GO_TMPDIR}"
 do_compile[cleandirs] = "${B}/bin ${B}/pkg"
 
 do_compile_ptest() {
+    export TMPDIR="${GO_TMPDIR}"
     rm -f ${B}/.go_compiled_tests.list
 	go_list_package_tests | while read pkg; do
 		cd ${B}/src/$pkg
@@ -113,6 +118,7 @@ do_compile_ptest() {
 			sed -e's,/\./,/,'>> ${B}/.go_compiled_tests.list
 	done
 }
+do_compile_ptest_base[dirs] =+ "${GO_TMPDIR}"
 
 go_do_install() {
 	install -d ${D}${libdir}/go/src/${GO_IMPORT}

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list