This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

LINUXSDK-AM35X: Overwriting TOOLCHAIN_TARGET_TASK has no effect

Part Number: LINUXSDK-AM35X

I'm trying to make to a custom SDK image based on arago-core-tisdk-image.inc for my Beaglebone Green, I have overwritten the TISDK_TOOLCHAIN var with a meta package that looks like this:

require recipes-core/meta/meta-toolchain-arago-tisdk.inc
require recipes-core/meta/meta-toolchain-arago.bb
TOOLCHAIN_TARGET_TASK = " \
packagegroup-arago-tisdk-addons-sdk-target \
packagegroup-cmPTP-standalone-sdk-target \
"

My packagegroup file is very simple:

PACKAGE_ARCH = "${MACHINE_ARCH}"
inherit packagegroup
RDEPENDS_${PN} = "\
libgcc \
libgcc-dev \
libstdc++-dev \
${LIBC_DEPENDENCIES} \
glibc-staticdev \
linux-libc-headers-dev \
gdbserver \
i2c-tools-dev \
opkg-dev \
util-linux-dev \
${@base_conditional('TCMODE', 'external-linaro', 'libgomp-dev', '', d)} \
boost-dev \
"

During bitbake however I get this error:

ERROR: meta-toolchain-cmPTP-tisdk-1.0-r5.0 do_populate_sdk: Unable to install packages. Command '/home/cmannett85/workspace/tisdk/build/arago-tmp-external-linaro-toolchain/sysroots/x86_64-linux/usr/bin/opkg --volatile-cache -f /home/cmannett85/workspace/tisdk/build/arago-tmp-external-linaro-toolchain/work/armv7ahf-neon-linux-gnueabi/meta-toolchain-cmPTP-tisdk/1.0-r5.0/opkg.conf -t /home/cmannett85/workspace/tisdk/build/arago-tmp-external-linaro-toolchain/work/armv7ahf-neon-linux-gnueabi/meta-toolchain-cmPTP-tisdk/1.0-r5.0/temp/ipktemp/ -o /home/cmannett85/workspace/tisdk/build/arago-tmp-external-linaro-toolchain/work/armv7ahf-neon-linux-gnueabi/meta-toolchain-cmPTP-tisdk/1.0-r5.0/sdk/image/tmp/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy/sysroots/armv7ahf-neon-linux-gnueabi --force_postinstall install packagegroup-cmPTP-standalone-sdk-target packagegroup-arago-tisdk-addons-sdk-target' returned 255:
Collected errors:
* opkg_prepare_url_for_install: Couldn't find anything to satisfy 'packagegroup-cmPTP-standalone-sdk-target'.
* rm_r: Failed to open dir /home/cmannett85/workspace/tisdk/build/arago-tmp-external-linaro-toolchain/work/armv7ahf-neon-linux-gnueabi/meta-toolchain-cmPTP-tisdk/1.0-r5.0/temp/ipktemp//opkg-iGR9Pa: No such file or directory.

There is indeed no packagegroup-cmPTP-standalone-sdk-target IPK file in build/arago-tmp-external-linaro-toolchain/deploy/ipk/cmPTP_bbg - why does Yocto build one for packagegroup-arago-tisdk-addons-sdk-target, but not mine?

Doing a bitbake -e (outputting to a text file), I can't see my TOOLCHAIN_TARGET_TASK entries at all:

[cmannett85 at camslaptopbuild]$ cat bbeoutput.txt | grep -n "TOOLCHAIN_TARGET_TASK"
958:# $TOOLCHAIN_TARGET_TASK [4 operations]
969:TOOLCHAIN_TARGET_TASK=" packagegroup-core-standalone-sdk-target packagegroup-core-standalone-sdk-target-dbg opkg packagegroup-arago-tisdk-addons-sdk-host packagegroup-arago-tisdk-amsdk-sdk-host"
2951:# $TOOLCHAIN_TARGET_TASK_task-populate-sdk-ext
2954:TOOLCHAIN_TARGET_TASK_task-populate-sdk-ext=""
7308:# $TOOLCHAIN_TARGET_TASK_ATTEMPTONLY [2 operations]
7315:TOOLCHAIN_TARGET_TASK_ATTEMPTONLY=" "
9266:# "${TOOLCHAIN_TARGET_TASK} ${TOOLCHAIN_HOST_TASK}"
9270:# "${TOOLCHAIN_TARGET_TASK} ${TOOLCHAIN_HOST_TASK}"
16552: runtime_mapping_rename("TOOLCHAIN_TARGET_TASK", pn, d)
16553: runtime_mapping_rename("TOOLCHAIN_TARGET_TASK_ATTEMPTONLY", pn, d)

It has been suggested that I should define TOOLCHAIN_TARGET_TASK before I perform the 'requires', but it makes no difference to the variable: 

[cmannett85 at camslaptop build]$ cat bbeoutput.txt | grep -n "TOOLCHAIN_TARGET_TASK"
1230:# $TOOLCHAIN_TARGET_TASK_ATTEMPTONLY [2 operations]
1237:TOOLCHAIN_TARGET_TASK_ATTEMPTONLY=" "
3223:# $TOOLCHAIN_TARGET_TASK [4 operations]
3234:TOOLCHAIN_TARGET_TASK=" packagegroup-core-standalone-sdk-target packagegroup-core-standalone-sdk-target-dbg opkg packagegroup-arago-tisdk-addons-sdk-host packagegroup-arago-tisdk-amsdk-sdk-host"
6266:# $TOOLCHAIN_TARGET_TASK_task-populate-sdk-ext
6269:TOOLCHAIN_TARGET_TASK_task-populate-sdk-ext=""
9555:# "${TOOLCHAIN_TARGET_TASK} ${TOOLCHAIN_HOST_TASK}"
9559:# "${TOOLCHAIN_TARGET_TASK} ${TOOLCHAIN_HOST_TASK}"
20942: runtime_mapping_rename("TOOLCHAIN_TARGET_TASK", pn, d)
20943: runtime_mapping_rename("TOOLCHAIN_TARGET_TASK_ATTEMPTONLY", pn, d)

Removing my changes out for a moment:

[cmannett85 at camslaptop build]$ MACHINE="beaglebone" bitbake -e arago-core-tisdk-image | grep -n "TOOLCHAIN_TARGET_TASK"
2504:# "${TOOLCHAIN_TARGET_TASK} ${TOOLCHAIN_HOST_TASK}"
2508:# "${TOOLCHAIN_TARGET_TASK} ${TOOLCHAIN_HOST_TASK}"
2974:# $TOOLCHAIN_TARGET_TASK [4 operations]
2985:TOOLCHAIN_TARGET_TASK=" packagegroup-core-standalone-sdk-target packagegroup-core-standalone-sdk-target-dbg opkg packagegroup-arago-tisdk-addons-sdk-host packagegroup-arago-tisdk-crypto-sdk-host packagegroup-arago-tisdk-matrix-sdk-host packagegroup-arago-tisdk-multimedia-sdk-host packagegroup-arago-tisdk-amsdk-sdk-host packagegroup-arago-tisdk-qte-sdk-host"
5619:# $TOOLCHAIN_TARGET_TASK_ATTEMPTONLY [2 operations]
5626:TOOLCHAIN_TARGET_TASK_ATTEMPTONLY=" "
5720:# $TOOLCHAIN_TARGET_TASK_task-populate-sdk-ext
5723:TOOLCHAIN_TARGET_TASK_task-populate-sdk-ext=""
16142: runtime_mapping_rename("TOOLCHAIN_TARGET_TASK", pn, d)
16143: runtime_mapping_rename("TOOLCHAIN_TARGET_TASK_ATTEMPTONLY", pn, d)

It looks like packagegroup-arago-toolchain-tisdk-target in TOOLCHAIN_TARGET_TASK isn't being set by meta-toolchain-arago-tisdk.inc even when parsing a pure Arago image. Just to clarify, I'm assuming the BB chain runs like this:

arago-core-tisdk-image.bb -> arago-core-tisdk-image.inc -> (TISDK_TOOLCHAIN) -> meta-toolchain-arago-tisdk.bb -> meta-toolchain-arago-tisdk.inc