blob: 39638eb8c553bb2f4e142c2a189b26927a25c56c [file] [log] [blame]
Patrick Williamsc124f4f2015-09-15 14:41:29 -05001SUMMARY = "libc and patchelf tarball for use with uninative.bbclass"
2LICENSE = "MIT"
Patrick Williamsc124f4f2015-09-15 14:41:29 -05003
4TOOLCHAIN_TARGET_TASK = ""
5
Patrick Williamsd8c66bc2016-06-20 12:57:21 -05006# ibm850 - mcopy from mtools
7# iso8859-1 - guile
Brad Bishop6e60e8b2018-02-01 10:27:11 -05008# utf-16, cp1252 - binutils-windres
Patrick Williamsc124f4f2015-09-15 14:41:29 -05009TOOLCHAIN_HOST_TASK = "\
10 nativesdk-glibc \
Patrick Williamsf1e5d692016-03-30 15:21:19 -050011 nativesdk-glibc-gconv-ibm850 \
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050012 nativesdk-glibc-gconv-iso8859-1 \
Brad Bishop6e60e8b2018-02-01 10:27:11 -050013 nativesdk-glibc-gconv-utf-16 \
14 nativesdk-glibc-gconv-cp1252 \
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080015 nativesdk-glibc-gconv-euc-jp \
16 nativesdk-glibc-gconv-libjis \
Patrick Williamsc124f4f2015-09-15 14:41:29 -050017 nativesdk-patchelf \
Brad Bishop316dfdd2018-06-25 12:45:53 -040018 nativesdk-libxcrypt \
Brad Bishopf3fd2882019-06-21 08:06:37 -040019 nativesdk-libxcrypt-compat \
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080020 nativesdk-libnss-nis \
Patrick Williamsc124f4f2015-09-15 14:41:29 -050021 "
22
23INHIBIT_DEFAULT_DEPS = "1"
24
Patrick Williamsc0f7c042017-02-23 20:41:17 -060025MULTIMACH_TARGET_SYS = "${SDK_ARCH}-nativesdk${SDK_VENDOR}-${SDK_OS}"
26PACKAGE_ARCH = "${SDK_ARCH}_${SDK_OS}"
27PACKAGE_ARCHS = ""
28TARGET_ARCH = "none"
29TARGET_OS = "none"
30
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050031TOOLCHAIN_OUTPUTNAME ?= "${SDK_ARCH}-nativesdk-libc"
Patrick Williamsc124f4f2015-09-15 14:41:29 -050032
33RDEPENDS = "${TOOLCHAIN_HOST_TASK}"
34
35EXCLUDE_FROM_WORLD = "1"
36
37inherit meta
38inherit populate_sdk
Patrick Williamsc0f7c042017-02-23 20:41:17 -060039inherit nopackages
Patrick Williamsc124f4f2015-09-15 14:41:29 -050040
41deltask install
Patrick Williamsc0f7c042017-02-23 20:41:17 -060042deltask populate_sysroot
43
44do_populate_sdk[stamp-extra-info] = "${PACKAGE_ARCH}"
Patrick Williamsc124f4f2015-09-15 14:41:29 -050045
46SDK_DEPENDS += "patchelf-native"
47
48SDK_PACKAGING_FUNC = ""
Patrick Williamsc0f7c042017-02-23 20:41:17 -060049REAL_MULTIMACH_TARGET_SYS = "none"
Patrick Williamsc124f4f2015-09-15 14:41:29 -050050
51fakeroot create_sdk_files() {
52 cp ${COREBASE}/scripts/relocate_sdk.py ${SDK_OUTPUT}/${SDKPATH}/
53
54 # Replace the ##DEFAULT_INSTALL_DIR## with the correct pattern.
55 # Escape special characters like '+' and '.' in the SDKPATH
56 escaped_sdkpath=$(echo ${SDKPATH}/sysroots/${SDK_SYS} |sed -e "s:[\+\.]:\\\\\\\\\0:g")
57 sed -i -e "s:##DEFAULT_INSTALL_DIR##:$escaped_sdkpath:" ${SDK_OUTPUT}/${SDKPATH}/relocate_sdk.py
58}
59
60
Brad Bishop15ae2502019-06-18 21:44:24 -040061fakeroot archive_sdk() {
Patrick Williamsc124f4f2015-09-15 14:41:29 -050062 cd ${SDK_OUTPUT}/${SDKPATH}
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050063
64 DEST="./${SDK_ARCH}-${SDK_OS}"
65 mv sysroots/${SDK_SYS} $DEST
Patrick Williamsc124f4f2015-09-15 14:41:29 -050066 rm sysroots -rf
Patrick Williamsc0f7c042017-02-23 20:41:17 -060067 patchelf --set-interpreter ${@''.join('a' for n in range(1024))} $DEST/usr/bin/patchelf
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050068 mv $DEST/usr/bin/patchelf $DEST/usr/bin/patchelf-uninative
Brad Bishop15ae2502019-06-18 21:44:24 -040069 ${SDK_ARCHIVE_CMD}
Patrick Williamsc124f4f2015-09-15 14:41:29 -050070}