diff options
author | Adrian Freihofer <adrian.freihofer@siemens.com> | 2025-10-06 21:10:55 +0200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2025-10-09 10:58:07 +0100 |
commit | ff0911b191eed695d2214d9892a1bde528b8c9f9 (patch) | |
tree | d19c241e0f9a34d1138469bf250fec8fbda74483 | |
parent | 57d97d5970ffbfb726f9510f62b334db3cd8ee5b (diff) | |
download | poky-ff0911b191eed695d2214d9892a1bde528b8c9f9.tar.gz |
toolchain-scripts.bbclass: fix bitbake-setup compatibility
Pass the BITBAKEDIR parameter to oe-init-build-env when called from the
environment-setup script. This fixes compatibility with bitbake-setup,
which places bitbake in a different directory structure than the
standard poky repository layout where bitbake is located alongside
oe-init-build-env.
The issue was discovered when running the oe-selftest test
DevtoolIdeSdkTests.test_devtool_ide_sdk_shared_sysroots, which failed
because the environment-setup script was not able to find bitbake.
File ".../openembedded-core/meta/lib/oeqa/selftest/cases/devtool.py",
line 2955, in test_devtool_ide_sdk_shared_sysroots
self.assertExists(cmake_native)
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
File ".../openembedded-core/meta/lib/oeqa/selftest/case.py", line 251,
in assertExists
raise self.failureException(msg)
AssertionError: 'Error: The bitbake directory (/tmp/devtoolqah9ndff2x/bitbake)
does not exist! Please ensure a copy of bitbake exists at this location or
specify an alternative path on the command line\n
.../build-st/tmp/sysroots/x86_64/usr/bin/cmake' does not exist
(From OE-Core rev: f31903ca484bad68708ec510e25ea33234f5c0ce)
Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/classes-recipe/toolchain-scripts.bbclass | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/meta/classes-recipe/toolchain-scripts.bbclass b/meta/classes-recipe/toolchain-scripts.bbclass index 5d28df845b..ec040b5ebb 100644 --- a/meta/classes-recipe/toolchain-scripts.bbclass +++ b/meta/classes-recipe/toolchain-scripts.bbclass | |||
@@ -87,11 +87,12 @@ toolchain_create_sdk_env_script () { | |||
87 | # Caller must ensure CONFIG_SITE is setup | 87 | # Caller must ensure CONFIG_SITE is setup |
88 | toolchain_create_tree_env_script () { | 88 | toolchain_create_tree_env_script () { |
89 | script=${B}/environment-setup-${REAL_MULTIMACH_TARGET_SYS} | 89 | script=${B}/environment-setup-${REAL_MULTIMACH_TARGET_SYS} |
90 | bitbakedir=$(readlink -f ${BITBAKEPATH}/..) | ||
90 | rm -f $script | 91 | rm -f $script |
91 | touch $script | 92 | touch $script |
92 | echo 'standalone_sysroot_target="${STAGING_DIR}/${MACHINE}"' >> $script | 93 | echo 'standalone_sysroot_target="${STAGING_DIR}/${MACHINE}"' >> $script |
93 | echo 'standalone_sysroot_native="${STAGING_DIR}/${BUILD_ARCH}"' >> $script | 94 | echo 'standalone_sysroot_native="${STAGING_DIR}/${BUILD_ARCH}"' >> $script |
94 | echo 'orig=`pwd`; cd ${COREBASE}; . ./oe-init-build-env ${TOPDIR}; cd $orig' >> $script | 95 | echo "orig=`pwd`; cd ${COREBASE}; . ./oe-init-build-env ${TOPDIR} $bitbakedir; cd \$orig" >> $script |
95 | echo 'export PATH=$standalone_sysroot_native/${bindir_native}:$standalone_sysroot_native/${bindir_native}/${TARGET_SYS}:$PATH' >> $script | 96 | echo 'export PATH=$standalone_sysroot_native/${bindir_native}:$standalone_sysroot_native/${bindir_native}/${TARGET_SYS}:$PATH' >> $script |
96 | echo 'export PKG_CONFIG_SYSROOT_DIR=$standalone_sysroot_target' >> $script | 97 | echo 'export PKG_CONFIG_SYSROOT_DIR=$standalone_sysroot_target' >> $script |
97 | echo 'export PKG_CONFIG_PATH=$standalone_sysroot_target'"$libdir"'/pkgconfig:$standalone_sysroot_target'"$prefix"'/share/pkgconfig' >> $script | 98 | echo 'export PKG_CONFIG_PATH=$standalone_sysroot_target'"$libdir"'/pkgconfig:$standalone_sysroot_target'"$prefix"'/share/pkgconfig' >> $script |