Issues with DEPENDS

"Jared Weyer" <[email protected]>
Newsgroups org.yoctoproject.lists.yocto
Message-ID <[email protected]>
Hi,


Hoping to get some help with an issue I have been having with DEPENDS. I'm sure I am missing something obvious, but I can't seem to figure out what is going on. Essentially, I have two recipes, I will call them recipe A and recipe B; recipe A has a build time dependency on recipe B. To troubleshoot the issue, I've reduced recipe A and B to very contrived examples, but the issue still persists.


Below is recipe B:

SUMMARY = "TI ARM-CGT-CLANG compiler tools"
HOMEPAGE = "https://www-a.ti.com/downloads/sds_support/TICodegenerationTools/download.htm"
LICENSE = "CLOSED"

BBCLASSEXTEND = "native nativesdk"

# I don't believe I need this... but just in case
SYSROOT_DIRS_NATIVE += " \
    /usr/share/ti \
    /usr
"

FILES:${PN} += " \
   /usr \
"

do_install() {
?    install -d ${D}/usr/share/ti
    install -d ${D}/usr/

    echo test > ${S}/test.txt
    echo test2 > ${S}/test2.txt

    install -m 0755 ${S}/test.txt ${D}/usr/share/ti
    install -m 0755 ${S}/test2.txt ${D}/usr
}

INHIBIT_PACKAGE_STRIP = "1"
INHIBIT_SYSROOT_STRIP = "1"
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"

?Below is recipe A:
??
SUMMARY = "TI MCU+ SDK for AM263Px"
HOMEPAGE = "https://www.ti.com/tool/MCU-PLUS-SDK-AM263PX"
LICENSE = "CLOSED"

BBCLASSEXTEND = "nativesdk native"

DEPENDS = " \
    ti-cgt-armllvm-native \ ### RECIPE B ###
    sysconfig-native \
"

FILES:${PN} += " \
    /usr/share \
"

do_install() {
    install -d ${D}/usr/share
    cp -r ${STAGING_DIR_NATIVE}/. ${D}/usr/share
}

My understanding is that adding the DEPENDS = "ti-cgt-armllvm-native" should install all files installed by ti-cgt-armllvm (recipe B) into the STAGING_DIR_NATIVE directory of recipe A; however, this is not occurring as there is no 'recipe-sysroot-native/usr/test2.txt' or 'recipe-sysroot-native/usr/share/ti/test.txt' file in recipe A staging directory.

The issue does seem to be with DEPENDS because recipe B does install the test files correctly when run independently. When looking into this further, I found that 'sysroot-components/x86_64/ti-cgt-armllvm-native' (recipe B sysroot components is empty):

tmp-aec/sysroots-components/x86_64/ti-cgt-armllvm-native/
??? sysroot-providers
    ??? ti-cgt-armllvm-native


My understanding is that this directory should contain the test files; however, I cannot figure out why it does not.

Does anyone see any obvious mistakes that I am making?

Apologies for the extensive email and thank you to anyone willing to help with this!!!

- Jared Weyer
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.