blob: 25635fc2f50e88180923b4d4807d5fbe164b05e7 [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 Bishop1a4b7ee2018-12-16 17:11:34 -080019 nativesdk-libnss-nis \
Patrick Williamsc124f4f2015-09-15 14:41:29 -050020 "
21
22INHIBIT_DEFAULT_DEPS = "1"
23
Patrick Williamsc0f7c042017-02-23 20:41:17 -060024MULTIMACH_TARGET_SYS = "${SDK_ARCH}-nativesdk${SDK_VENDOR}-${SDK_OS}"
25PACKAGE_ARCH = "${SDK_ARCH}_${SDK_OS}"
26PACKAGE_ARCHS = ""
27TARGET_ARCH = "none"
28TARGET_OS = "none"
29
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050030TOOLCHAIN_OUTPUTNAME ?= "${SDK_ARCH}-nativesdk-libc"
Patrick Williamsc124f4f2015-09-15 14:41:29 -050031
32RDEPENDS = "${TOOLCHAIN_HOST_TASK}"
33
34EXCLUDE_FROM_WORLD = "1"
35
36inherit meta
37inherit populate_sdk
Patrick Williamsc0f7c042017-02-23 20:41:17 -060038inherit nopackages
Patrick Williamsc124f4f2015-09-15 14:41:29 -050039
40deltask install
Patrick Williamsc0f7c042017-02-23 20:41:17 -060041deltask populate_sysroot
42
43do_populate_sdk[stamp-extra-info] = "${PACKAGE_ARCH}"
Patrick Williamsc124f4f2015-09-15 14:41:29 -050044
45SDK_DEPENDS += "patchelf-native"
46
47SDK_PACKAGING_FUNC = ""
Patrick Williamsc0f7c042017-02-23 20:41:17 -060048REAL_MULTIMACH_TARGET_SYS = "none"
Patrick Williamsc124f4f2015-09-15 14:41:29 -050049
50fakeroot create_sdk_files() {
51 cp ${COREBASE}/scripts/relocate_sdk.py ${SDK_OUTPUT}/${SDKPATH}/
52
53 # Replace the ##DEFAULT_INSTALL_DIR## with the correct pattern.
54 # Escape special characters like '+' and '.' in the SDKPATH
55 escaped_sdkpath=$(echo ${SDKPATH}/sysroots/${SDK_SYS} |sed -e "s:[\+\.]:\\\\\\\\\0:g")
56 sed -i -e "s:##DEFAULT_INSTALL_DIR##:$escaped_sdkpath:" ${SDK_OUTPUT}/${SDKPATH}/relocate_sdk.py
57}
58
59
Brad Bishop15ae2502019-06-18 21:44:24 -040060fakeroot archive_sdk() {
Patrick Williamsc124f4f2015-09-15 14:41:29 -050061 cd ${SDK_OUTPUT}/${SDKPATH}
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050062
63 DEST="./${SDK_ARCH}-${SDK_OS}"
64 mv sysroots/${SDK_SYS} $DEST
Patrick Williamsc124f4f2015-09-15 14:41:29 -050065 rm sysroots -rf
Patrick Williamsc0f7c042017-02-23 20:41:17 -060066 patchelf --set-interpreter ${@''.join('a' for n in range(1024))} $DEST/usr/bin/patchelf
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050067 mv $DEST/usr/bin/patchelf $DEST/usr/bin/patchelf-uninative
Brad Bishop15ae2502019-06-18 21:44:24 -040068 ${SDK_ARCHIVE_CMD}
Patrick Williamsc124f4f2015-09-15 14:41:29 -050069}