blob: 3785941c2cf9630530169c9647b92a264aad959d [file] [log] [blame]
Patrick Williamsc0f7c042017-02-23 20:41:17 -06001DESCRIPTION = "SDK type target for building a standalone tarball containing python3, chrpath, make, git and tar. The \
Patrick Williamsc124f4f2015-09-15 14:41:29 -05002 tarball can be used to run bitbake builds on systems which don't meet the usual version requirements."
3SUMMARY = "Standalone tarball for running builds on systems with inadequate software"
4LICENSE = "MIT"
Patrick Williamsc124f4f2015-09-15 14:41:29 -05005
6TOOLCHAIN_TARGET_TASK ?= ""
7
8TOOLCHAIN_HOST_TASK ?= "\
Patrick Williamsc0f7c042017-02-23 20:41:17 -06009 nativesdk-python3-core \
10 nativesdk-python3-modules \
11 nativesdk-python3-misc \
12 nativesdk-python3-git \
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080013 nativesdk-python3-testtools \
14 nativesdk-python3-subunit \
Patrick Williamsc124f4f2015-09-15 14:41:29 -050015 nativesdk-ncurses-terminfo-base \
16 nativesdk-chrpath \
17 nativesdk-tar \
18 nativesdk-buildtools-perl-dummy \
19 nativesdk-git \
20 nativesdk-git-perltools \
21 nativesdk-pigz \
22 nativesdk-make \
23 nativesdk-wget \
24 nativesdk-ca-certificates \
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050025 nativesdk-texinfo \
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080026 nativesdk-libnss-nis \
27 nativesdk-rpcsvc-proto \
Andrew Geissler82c905d2020-04-13 13:39:40 -050028 nativesdk-patch \
29 nativesdk-mtools \
Patrick Williamsc124f4f2015-09-15 14:41:29 -050030 "
31
Patrick Williamsc0f7c042017-02-23 20:41:17 -060032MULTIMACH_TARGET_SYS = "${SDK_ARCH}-nativesdk${SDK_VENDOR}-${SDK_OS}"
33PACKAGE_ARCH = "${SDK_ARCH}_${SDK_OS}"
34PACKAGE_ARCHS = ""
35TARGET_ARCH = "none"
36TARGET_OS = "none"
37
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050038SDK_PACKAGE_ARCHS += "buildtools-dummy-${SDKPKGSUFFIX}"
Patrick Williamsc124f4f2015-09-15 14:41:29 -050039
Patrick Williamsc0f7c042017-02-23 20:41:17 -060040TOOLCHAIN_OUTPUTNAME ?= "${SDK_ARCH}-buildtools-nativesdk-standalone-${DISTRO_VERSION}"
Patrick Williamsc124f4f2015-09-15 14:41:29 -050041
42SDK_TITLE = "Build tools"
43
44RDEPENDS = "${TOOLCHAIN_HOST_TASK}"
45
46EXCLUDE_FROM_WORLD = "1"
47
48inherit meta
49inherit populate_sdk
Patrick Williamsc0f7c042017-02-23 20:41:17 -060050inherit toolchain-scripts-base
51inherit nopackages
52
53deltask install
Patrick Williamsc0f7c042017-02-23 20:41:17 -060054deltask populate_sysroot
55
56do_populate_sdk[stamp-extra-info] = "${PACKAGE_ARCH}"
57
58REAL_MULTIMACH_TARGET_SYS = "none"
Patrick Williamsc124f4f2015-09-15 14:41:29 -050059
60create_sdk_files_append () {
61 rm -f ${SDK_OUTPUT}/${SDKPATH}/site-config-*
62 rm -f ${SDK_OUTPUT}/${SDKPATH}/environment-setup-*
63 rm -f ${SDK_OUTPUT}/${SDKPATH}/version-*
64
65 # Generate new (mini) sdk-environment-setup file
66 script=${1:-${SDK_OUTPUT}/${SDKPATH}/environment-setup-${SDK_SYS}}
67 touch $script
68 echo 'export PATH=${SDKPATHNATIVE}${bindir_nativesdk}:$PATH' >> $script
Andrew Geissler635e0e42020-08-21 15:58:33 -050069 echo 'export OECORE_NATIVE_SYSROOT="${SDKPATHNATIVE}"' >> $script
Patrick Williamsc124f4f2015-09-15 14:41:29 -050070 echo 'export GIT_SSL_CAINFO="${SDKPATHNATIVE}${sysconfdir}/ssl/certs/ca-certificates.crt"' >>$script
Andrew Geisslerd25ed322020-06-27 00:28:28 -050071 echo 'export SSL_CERT_FILE="${SDKPATHNATIVE}${sysconfdir}/ssl/certs/ca-certificates.crt"' >>$script
Andrew Geissler635e0e42020-08-21 15:58:33 -050072
73 toolchain_create_sdk_version ${SDK_OUTPUT}/${SDKPATH}/version-${SDK_SYS}
74
75 cat >> $script <<EOF
76if [ -d "\$OECORE_NATIVE_SYSROOT/environment-setup.d" ]; then
77 for envfile in \$OECORE_NATIVE_SYSROOT/environment-setup.d/*.sh; do
78 . \$envfile
79 done
80fi
81EOF
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050082
83 if [ "${SDKMACHINE}" = "i686" ]; then
84 echo 'export NO32LIBS="0"' >>$script
85 echo 'echo "$BB_ENV_EXTRAWHITE" | grep -q "NO32LIBS"' >>$script
86 echo '[ $? != 0 ] && export BB_ENV_EXTRAWHITE="NO32LIBS $BB_ENV_EXTRAWHITE"' >>$script
87 fi
Patrick Williamsc124f4f2015-09-15 14:41:29 -050088}
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050089
90# buildtools-tarball doesn't need config site
91TOOLCHAIN_NEED_CONFIGSITE_CACHE = ""
92
93# The recipe doesn't need any default deps
94INHIBIT_DEFAULT_DEPS = "1"