Files
poky/meta/conf/distro/include/tclibc-baremetal.inc
Alejandro Hernandez Samaniego 42e73db4c9 tclibc-baremetal: Supply missing /bin/sh target in the baremetal sdk
SDK recipes now require a provider for /bin/sh, this
should come from nativesdk-sdk-provides-dummy which
is added by default to Linux SDKs, however tclibc-baremetal
requires us to explicitly add its new dependency to
TOOLCHAIN_HOST_TASK, otherwise we get a packaging error
while generating an SDK.

e.g.
package packagegroup-cross-canadian-qemuriscv32-1.0-r0.x86_64_nativesdk
requires gdb-cross-canadian-riscv32, but none of the providers
can be installed
  - conflicting requests
  - nothing provides /bin/sh needed by
    gdb-cross-canadian-riscv32-11.1-r0.x86_64_nativesdk

(From OE-Core rev: 8acb88cfe56735530280bab53a871c236f2fd54f)

Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandro@enedino.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-01-11 15:48:11 +00:00

40 lines
1.3 KiB
PHP

#
# baremetal configuration
#
LIBCEXTENSION = ""
LIBCOVERRIDE = ":libc-baremetal"
ASSUME_PROVIDED += "virtual/libc virtual/libiconv virtual/crypt"
PREFERRED_PROVIDER_virtual/libc ?= "musl"
PREFERRED_PROVIDER_virtual/libiconv ?= "musl"
PREFERRED_PROVIDER_virtual/libintl ?= "gettext"
PREFERRED_PROVIDER_virtual/nativesdk-libintl ?= "nativesdk-glibc"
PREFERRED_PROVIDER_virtual/nativesdk-libiconv ?= "nativesdk-glibc"
USE_NLS ?= "no"
IMAGE_LINGUAS = ""
LIBC_DEPENDENCIES = ""
EXTRA_OECONF:pn-gcc-cross-${TARGET_ARCH}:append = " --without-headers"
DEPENDS:remove:pn-meta-toolchain = "virtual/libc virtual/${TARGET_PREFIX}compilerlibs"
# certain compiler libs cannot be used without libc, avoid the dependence on compilerlibs
BASEDEPENDS:remove:class-target = "virtual/${TARGET_PREFIX}compilerlibs"
TARGET_OS = "elf"
TARGET_OS:arm = "eabi"
TOOLCHAIN_HOST_TASK ?= "packagegroup-cross-canadian-${MACHINE} nativesdk-qemu nativesdk-sdk-provides-dummy"
TOOLCHAIN_HOST_TASK_ATTEMPTONLY ?= ""
TOOLCHAIN_TARGET_TASK ?= "libgcc-dev"
TOOLCHAIN_NEED_CONFIGSITE_CACHE:remove = "virtual/${MLPREFIX}libc zlib ncurses"
# disable stack protector by default (no-libc, no protector implementation)
SECURITY_STACK_PROTECTOR:libc-baremetal = ""
# disable pie security flags by default
SECURITY_CFLAGS:libc-baremetal = "${SECURITY_NOPIE_CFLAGS}"
SECURITY_LDFLAGS:libc-baremetal = ""