Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 1 | SUMMARY = "libc and patchelf tarball for use with uninative.bbclass" |
| 2 | LICENSE = "MIT" |
| 3 | LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690 \ |
| 4 | file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" |
| 5 | |
| 6 | TOOLCHAIN_TARGET_TASK = "" |
| 7 | |
| 8 | TOOLCHAIN_HOST_TASK = "\ |
| 9 | nativesdk-glibc \ |
| 10 | nativesdk-patchelf \ |
| 11 | " |
| 12 | |
| 13 | INHIBIT_DEFAULT_DEPS = "1" |
| 14 | |
| 15 | TOOLCHAIN_OUTPUTNAME ?= "${BUILD_ARCH}-nativesdk-libc" |
| 16 | |
| 17 | RDEPENDS = "${TOOLCHAIN_HOST_TASK}" |
| 18 | |
| 19 | EXCLUDE_FROM_WORLD = "1" |
| 20 | |
| 21 | inherit meta |
| 22 | inherit populate_sdk |
| 23 | |
| 24 | deltask install |
| 25 | deltask package |
| 26 | deltask packagedata |
| 27 | |
| 28 | SDK_DEPENDS += "patchelf-native" |
| 29 | |
| 30 | SDK_PACKAGING_FUNC = "" |
| 31 | |
| 32 | fakeroot create_sdk_files() { |
| 33 | cp ${COREBASE}/scripts/relocate_sdk.py ${SDK_OUTPUT}/${SDKPATH}/ |
| 34 | |
| 35 | # Replace the ##DEFAULT_INSTALL_DIR## with the correct pattern. |
| 36 | # Escape special characters like '+' and '.' in the SDKPATH |
| 37 | escaped_sdkpath=$(echo ${SDKPATH}/sysroots/${SDK_SYS} |sed -e "s:[\+\.]:\\\\\\\\\0:g") |
| 38 | sed -i -e "s:##DEFAULT_INSTALL_DIR##:$escaped_sdkpath:" ${SDK_OUTPUT}/${SDKPATH}/relocate_sdk.py |
| 39 | } |
| 40 | |
| 41 | |
| 42 | fakeroot tar_sdk() { |
| 43 | mkdir -p ${SDK_DEPLOY} |
| 44 | cd ${SDK_OUTPUT}/${SDKPATH} |
| 45 | mv sysroots/${SDK_SYS} ./${BUILD_SYS} |
| 46 | rm sysroots -rf |
| 47 | patchelf --set-interpreter ${@''.join('a' for n in xrange(1024))} ./${BUILD_SYS}/usr/bin/patchelf |
| 48 | mv ./${BUILD_SYS}/usr/bin/patchelf ./${BUILD_SYS}/usr/bin/patchelf-uninative |
| 49 | tar ${SDKTAROPTS} -c -j --file=${SDK_DEPLOY}/${TOOLCHAIN_OUTPUTNAME}.tar.bz2 . |
| 50 | } |