external-toolchain-cross.bbclass 748 B

12345678910111213141516171819202122232425262728
  1. inherit external-toolchain cross
  2. EXTERNAL_CROSS_BINARIES ?= ""
  3. wrap_bin () {
  4. bin="$1"
  5. shift
  6. script="${D}${bindir}/${TARGET_PREFIX}$bin"
  7. printf '#!/bin/sh\n' >$script
  8. for arg in "$@"; do
  9. printf '%s\n' "$arg"
  10. done >>"$script"
  11. printf 'exec ${EXTERNAL_TOOLCHAIN_BIN}/${EXTERNAL_TARGET_SYS}-%s "$@"\n' "$bin" >>"$script"
  12. chmod +x "$script"
  13. }
  14. do_install () {
  15. install -d ${D}${bindir}
  16. for bin in ${EXTERNAL_CROSS_BINARIES}; do
  17. if [ ! -e "${EXTERNAL_TOOLCHAIN_BIN}/${EXTERNAL_TARGET_SYS}-$bin" ]; then
  18. bbdebug 1 "${EXTERNAL_TOOLCHAIN_BIN}/${EXTERNAL_TARGET_SYS}-$bin does not exist"
  19. continue
  20. fi
  21. bbdebug 1 wrap_bin "$bin"
  22. wrap_bin "$bin"
  23. done
  24. }