mirror of
https://git.yoctoproject.org/poky
synced 2026-02-20 08:29:42 +01:00
By default GOCACHE is set to $HOME/.cache. Same issue for all other go recipes had been fixed by commit 9a6d208b: [ go: avoid host contamination by GOCACHE ] but that commit missed go-crosssdk recipe. (From OE-Core rev: 22fef4e278beae60d1a6afbe4645fb36732bc736) Signed-off-by: Robert Andersson <robert.m.andersson@atlascopco.com> Signed-off-by: Ming Liu <liu.ming50@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> (cherry picked from commit e5fd10c647ac4baad65f9efa964c3380aad7dd10) Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
46 lines
1.3 KiB
PHP
46 lines
1.3 KiB
PHP
inherit crosssdk
|
|
|
|
DEPENDS = "go-native virtual/${TARGET_PREFIX}gcc-crosssdk virtual/nativesdk-${TARGET_PREFIX}compilerlibs virtual/${TARGET_PREFIX}binutils-crosssdk"
|
|
PN = "go-crosssdk-${SDK_SYS}"
|
|
PROVIDES = "virtual/${TARGET_PREFIX}go-crosssdk"
|
|
|
|
export GOCACHE = "${B}/.cache"
|
|
|
|
do_configure[noexec] = "1"
|
|
|
|
do_compile() {
|
|
export CC_FOR_${TARGET_GOTUPLE}="${TARGET_PREFIX}gcc ${TARGET_CC_ARCH} --sysroot=${STAGING_DIR_TARGET}${SDKPATHNATIVE}"
|
|
export CXX_FOR_${TARGET_GOTUPLE}="${TARGET_PREFIX}g++ ${TARGET_CC_ARCH} --sysroot=${STAGING_DIR_TARGET}${SDKPATHNATIVE}"
|
|
cd src
|
|
./make.bash --host-only --no-banner
|
|
cd ${B}
|
|
}
|
|
do_compile[dirs] =+ "${GOTMPDIR} ${B}/bin ${B}/pkg"
|
|
do_compile[cleandirs] += "${GOTMPDIR} ${B}/bin ${B}/pkg"
|
|
|
|
make_wrapper() {
|
|
rm -f ${D}${bindir}/$2
|
|
cat <<END >${D}${bindir}/$2
|
|
#!/bin/bash
|
|
here=\`dirname \$0\`
|
|
export GOARCH="${TARGET_GOARCH}"
|
|
export GOOS="${TARGET_GOOS}"
|
|
\$here/../../lib/${CROSS_TARGET_SYS_DIR}/go/bin/$1 "\$@"
|
|
END
|
|
chmod +x ${D}${bindir}/$2
|
|
}
|
|
|
|
do_install() {
|
|
install -d ${D}${libdir}/go
|
|
install -d ${D}${libdir}/go/bin
|
|
install -d ${D}${libdir}/go/pkg/tool
|
|
install -d ${D}${bindir}
|
|
cp --preserve=mode,timestamps -R ${S}/pkg/tool/${BUILD_GOTUPLE} ${D}${libdir}/go/pkg/tool/
|
|
for f in ${B}/bin/*
|
|
do
|
|
base=`basename $f`
|
|
install -m755 $f ${D}${libdir}/go/bin
|
|
make_wrapper $base ${TARGET_PREFIX}$base
|
|
done
|
|
}
|