Age | Commit message (Collapse) | Author |
|
SDK recipe 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-newlib
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
Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandro@enedino.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
This is the result of automated script conversion:
scripts/contrib/convert-overrides.py <oe-core directory>
converting the metadata to use ":" as the override character instead of "_".
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Since we now have an example recipe on meta-skeleton to
build baremetal applications using OpenEmbedded, a user
produced SDK should be able to run such application.
Include nativesdk-qemu on TOOLCHAIN_HOST_TASK so its
built inside the newlib based SDK.
Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandro@enedino.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Some baremetal applications might require support from libstdc++
On newlib based toolchains, libstdc++ can be built as a static
library that applications can then link against it.
Pass libsdtc++-(static)dev to LIBC_DEPENDENCIES allowing the
library to be present for cross compilation as well as on
sdk builds.
Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandro@enedino.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
With GCCPIE being enabled by default with security_flags.inc the
compiler will by default attempt to compile and link programs as PIE.
The targets that use newlib and baremetal in general do not support PIE
or are otherwise unable to use it due to how embedded targets are
compiled and executed. As such it makes sense to disable PIE by default
for these libc's in order to prevent build failures.
For baremetal tclibc there are no libc features or implementation as
such there is no implementation for the strong stack protector by
default.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
This patch adds the posibility to build using TCLIBC=newlib.
It allows users to build baremetal applications with the use of a
C library.
Newlib is a lightweight C library meant to be used on embedded systems,
it is meant to be easily portable for new platforms and to provide
basic functionality on them, by design, it provides stubs for some of
these core functions declared as weak, so they can be built correctly
and then linked against some other library which provides specifics
about the platform being used if need be, libgloss takes care of these
in some cases, but it can also be extended, this patch also allows the
user to easily add other libraries to it by adding them to
NEWLIB_EXTENDED for this specific reason.
Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>
|