diff options
Diffstat (limited to 'meta/recipes-core/meta/buildtools-tarball.bb')
-rw-r--r-- | meta/recipes-core/meta/buildtools-tarball.bb | 53 |
1 files changed, 42 insertions, 11 deletions
diff --git a/meta/recipes-core/meta/buildtools-tarball.bb b/meta/recipes-core/meta/buildtools-tarball.bb index d98a9c901c..60f6aac837 100644 --- a/meta/recipes-core/meta/buildtools-tarball.bb +++ b/meta/recipes-core/meta/buildtools-tarball.bb @@ -6,10 +6,14 @@ LICENSE = "MIT" TOOLCHAIN_TARGET_TASK ?= "" TOOLCHAIN_HOST_TASK ?= "\ + nativesdk-sdk-provides-dummy \ nativesdk-python3-core \ nativesdk-python3-modules \ nativesdk-python3-misc \ nativesdk-python3-git \ + nativesdk-python3-jinja2 \ + nativesdk-python3-testtools \ + nativesdk-python3-subunit \ nativesdk-ncurses-terminfo-base \ nativesdk-chrpath \ nativesdk-tar \ @@ -21,6 +25,12 @@ TOOLCHAIN_HOST_TASK ?= "\ nativesdk-wget \ nativesdk-ca-certificates \ nativesdk-texinfo \ + nativesdk-libnss-nis \ + nativesdk-rpcsvc-proto \ + nativesdk-patch \ + nativesdk-mtools \ + nativesdk-zstd \ + nativesdk-lz4 \ " MULTIMACH_TARGET_SYS = "${SDK_ARCH}-nativesdk${SDK_VENDOR}-${SDK_OS}" @@ -39,7 +49,6 @@ RDEPENDS = "${TOOLCHAIN_HOST_TASK}" EXCLUDE_FROM_WORLD = "1" -inherit meta inherit populate_sdk inherit toolchain-scripts-base inherit nopackages @@ -51,7 +60,7 @@ do_populate_sdk[stamp-extra-info] = "${PACKAGE_ARCH}" REAL_MULTIMACH_TARGET_SYS = "none" -create_sdk_files_append () { +create_sdk_files:append () { rm -f ${SDK_OUTPUT}/${SDKPATH}/site-config-* rm -f ${SDK_OUTPUT}/${SDKPATH}/environment-setup-* rm -f ${SDK_OUTPUT}/${SDKPATH}/version-* @@ -59,20 +68,28 @@ create_sdk_files_append () { # Generate new (mini) sdk-environment-setup file script=${1:-${SDK_OUTPUT}/${SDKPATH}/environment-setup-${SDK_SYS}} touch $script - echo 'export PATH=${SDKPATHNATIVE}${bindir_nativesdk}:$PATH' >> $script - # In order for the self-extraction script to correctly extract and set up things, - # we need a 'OECORE_NATIVE_SYSROOT=xxx' line in environment setup script. - # However, buildtools-tarball is inherently a tool set instead of a fully functional SDK, - # so instead of exporting the variable, we use a comment here. - echo '#OECORE_NATIVE_SYSROOT="${SDKPATHNATIVE}"' >> $script + echo 'export PATH=${SDKPATHNATIVE}${bindir_nativesdk}:${SDKPATHNATIVE}${sbindir_nativesdk}:${SDKPATHNATIVE}${base_bindir_nativesdk}:${SDKPATHNATIVE}${base_sbindir_nativesdk}:$PATH' >> $script + echo 'export OECORE_NATIVE_SYSROOT="${SDKPATHNATIVE}"' >> $script + echo 'export GIT_SSL_CAINFO="${SDKPATHNATIVE}${sysconfdir}/ssl/certs/ca-certificates.crt"' >>$script + echo 'export SSL_CERT_FILE="${SDKPATHNATIVE}${sysconfdir}/ssl/certs/ca-certificates.crt"' >>$script + toolchain_create_sdk_version ${SDK_OUTPUT}/${SDKPATH}/version-${SDK_SYS} - echo 'export GIT_SSL_CAINFO="${SDKPATHNATIVE}${sysconfdir}/ssl/certs/ca-certificates.crt"' >>$script + cat >> $script <<EOF +if [ -d "\$OECORE_NATIVE_SYSROOT/environment-setup.d" ]; then + for envfile in \$OECORE_NATIVE_SYSROOT/environment-setup.d/*.sh; do + . \$envfile + done +fi +# We have to unset this else it can confuse oe-selftest and other tools +# which may also use the overlapping namespace. +unset OECORE_NATIVE_SYSROOT +EOF if [ "${SDKMACHINE}" = "i686" ]; then echo 'export NO32LIBS="0"' >>$script - echo 'echo "$BB_ENV_EXTRAWHITE" | grep -q "NO32LIBS"' >>$script - echo '[ $? != 0 ] && export BB_ENV_EXTRAWHITE="NO32LIBS $BB_ENV_EXTRAWHITE"' >>$script + echo 'echo "$BB_ENV_PASSTHROUGH_ADDITIONS" | grep -q "NO32LIBS"' >>$script + echo '[ $? != 0 ] && export BB_ENV_PASSTHROUGH_ADDITIONS="NO32LIBS $BB_ENV_PASSTHROUGH_ADDITIONS"' >>$script fi } @@ -81,3 +98,17 @@ TOOLCHAIN_NEED_CONFIGSITE_CACHE = "" # The recipe doesn't need any default deps INHIBIT_DEFAULT_DEPS = "1" + +python do_testsdk() { + import oeqa.sdk.testsdk + testsdk = oeqa.sdk.testsdk.TestSDK() + + cases_path = os.path.join(os.path.abspath(os.path.dirname(oeqa.sdk.testsdk.__file__)), "buildtools-cases") + testsdk.context_executor_class.default_cases = cases_path + + testsdk.run(d) +} +addtask testsdk +do_testsdk[nostamp] = "1" +do_testsdk[network] = "1" +do_testsdk[depends] += "xz-native:do_populate_sysroot" |