Commit Graph

20 Commits

Author SHA1 Message Date
Richard Purdie
b0130fcf91 meta/meta-selftest/meta-skeleton: Update LICENSE variable to use SPDX license identifiers
An automated conversion using scripts/contrib/convert-spdx-licenses.py to
convert to use the standard SPDX license identifiers. Two recipes in meta-selftest
were not converted as they're that way specifically for testing. A change in
linux-firmware was also skipped and may need a more manual tweak.

(From OE-Core rev: ceda3238cdbf1beb216ae9ddb242470d5dfc25e0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-20 16:45:25 +00:00
Ross Burton
632565fb1c newlib: fix license checksums
COPYING.LIBGLOSS simply had the FSF street address change.

COPYING.NEWLIB now includes BSD-3-Clause.

(From OE-Core rev: 78080015b7d83f46770be718a22ffcfedd15daf2)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-09 13:08:57 +00:00
Alejandro Hernandez Samaniego
a97ef3f1d3 newlib: Upgrade 4.1.0 -> 4.2.0
(From OE-Core rev: 668445252fa96bd00ecdef1f610707a132eb35fc)

Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandro@enedino.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-07 10:08:59 +00:00
Richard Purdie
bb6ddc3691 Convert to new override syntax
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 "_".

(From OE-Core rev: 42344347be29f0997cc2f7636d9603b1fe1875ae)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-08-02 15:44:10 +01:00
Alejandro Hernandez Samaniego
f926c41c89 newlib: Update licence
- libgloss:
  - (22) New tcl license for csky-* targets
  - (23) New license for csky-* targets, states itself as FreeBSD license
  but text matches GPL (648365e0)
  - (24) New BSD-2 license for risc-v targets

newlib:
  - New license for csky-* targets, states itself as FreeBSD license
  but text matches GPL (648365e0)
  - (53) arm targets FreeBSD
  - (54) arm targets BSD-2-Clause-FreeBSD

(From OE-Core rev: 97388b7da445c42ca9d425d37d2f369fc673b973)

Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandro@enedino.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-23 17:08:53 +00:00
Alejandro Hernandez Samaniego
c15fd1dc45 newlib: Upgrade 3.3.0 -> 4.1.0
(From OE-Core rev: 48c7474a50181f8983c180693363b40833c3fe01)

Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandro@enedino.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-01-20 22:46:18 +00:00
Alejandro Hernandez
87a2e7c43d newlib: Upgrade to latest yearly release 3.3.0
Upgrade to the latest snapshot, also drop md5sum while were at it.

(From OE-Core rev: d73aa359e42e707dbc7cfa29c55a2fc8e6bb938a)

Signed-off-by: Alejandro Hernandez Samaniego <alhe@linux.microsoft.com>
Signed-off-by: Alejandro Hernandez Samaniego <alejandro@enedino.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-04-29 15:02:19 +01:00
Mark Hatle
f84aa7c191 newlib: Move syscalls from newlib to libgloss
By passing --disabled-newlib-supplied-syscalls, newlib will disable the
generation of builtin syscalls and move this to libgloss.  (This also
affects the generation of crt0.o.)

libgloss SHOULD then provide the syscalls, crt0.o and other functions that
are no longer part of newlib itself.  This now means that you must link
with both newlib and libgloss, whereas before newlib would run in many
configurations by itself.

(From OE-Core rev: f495e1f771b60d2db11ffa351adf56ba664fe7e1)

Signed-off-by: Mark Hatle <mark.hatle@kernel.crashing.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-02-19 11:24:15 +00:00
Alejandro Enedino Hernandez Samaniego
1f3066006a newlib: Upgrade newlib and libgloss to the yearly release 3.2.0
A new yearly snapshot was taken on January 2nd of 2020, this bumps
newlib to 3.2.0.

 - Mentor Graphics added tcl license (amdgcn-* targets)
 - BSD-Clause-2 was added as well by Dinux (pru-* targets)

(From OE-Core rev: e2d0e36234ba928d0cbcc98d8358b94d8d44412e)

Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandro@enedino.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-01-19 13:24:38 +00:00
Adrian Bunk
753949c81d Change ftp:// URIs to http(s)://
(From OE-Core rev: a11edd68b256fffb088cde5b7298a5749161f600)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:01 +01:00
Alejandro Hernandez Samaniego
5afd85f1d5 newlib: export CC_FOR_TARGET as CC
Newlibs Makefiles use a variable CC_FOR_TARGET to build
libraries for the TARGET machine (as opposed to
CC_FOR_BUILD).

We pass CC on our compile function, which is normally
use to build, although in this case, the configure
script is trimming CC and using simply gcc for the target
machine, basically taking out the TUNE variables we pass
in CC as well, such as march, mfloat-abi and such.
This causes errors when building applications since
CC will try to use hard floating point for example
whereas the libc.a from newlib will contain libraries
built with the defaults which could be soft floating
point for example.

e.g.:
$ ${CC} test.c
real-ld: error: test.out uses VFP register arguments,
/usr/lib/libg.a(lib_a-stdio.o) does not.

Analizing the object files we can see that one of them
uses soft (library) and the other one uses hard
floating point (program):

$ readelf -A test.out | grep VFP
Tag_ABI_VFP_args: VFP registers

$ readelf -A usr/lib/libc.a | grep VFP

Hence why the linker complains.

Pass CC_FOR_TARGET with the contents of CC to override
the trimming from the configure script and build newlib
with the correct tune.

(From OE-Core rev: d00b32f4f961ceeb75e7a014209666c10cf3eb93)

Signed-off-by: Alejandro Enedino Hernandez Samaniego <aehs29@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-06-06 00:40:07 +01:00
Alejandro Hernandez Samaniego
9929318619 newlib: Upgrade to 3.1.0
Upgrade both newlib and libgloss to the yearly
release 3.1.0.

BSD-2 license was added on:
6864c08b94752d34cca

(From OE-Core rev: ef90ed7e4be3f1ed63faba73bd4bbd593ae7bdf2)

Signed-off-by: Alejandro Enedino Hernandez Samaniego <aehs29@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-06-06 00:40:07 +01:00
Khem Raj
d5edd81f89 musl,glibc,newlib: Drop redundant STAGINGCC
We do not have initial phase of bootstrapping toolchains anymore

(From OE-Core rev: 75a2c15bbabf4df14631c822b20ce6d31098a5c8)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-01-21 23:44:22 +00:00
Khem Raj
b3657abc54 newlib: Move away from gcc-initial dependency
gcc-initial step is no more needed

(From OE-Core rev: 44539118ce29ba4fa916ab28ebf66e6fd5819738)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-12-26 11:19:54 +00:00
Richard Purdie
1867965acd recipes: Drop virtual/libc-for-gcc
We no longer have special "libc" for gcc so we can rely on plain
virtual/libc and reduce the complexity in the dependencies.

(From OE-Core rev: 122217b421f749b5fef52bea44ad6e04bc8f8d3a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-12-26 11:19:54 +00:00
Nathan Rossi
a716317331 libgloss_3.0.0.bb: Ensure ${D}${libdir} exists installing content
Some targets do not populate any content into libdir, so make sure it is
created before attempting to move files/directories into it.

(From OE-Core rev: f8d7394f314041de7bcbf06ccb6405f64c68fad0)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:47 -07:00
Nathan Rossi
13f2911a3d libgloss_3.0.0.bb: Consolidate rmdir with -p
Consolidate the rmdir of multiple directories with the use of -p to
delete the leaf empty directory and any empty ancestor directories.

(From OE-Core rev: ba2f5ad890ecf94f541d84cc04669a6b02990d39)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-21 18:45:46 -07:00
Nathan Rossi
7670b7b4cc libgloss_3.0.0.bb: Fix up mv pattern to include libnosys
When installing libgloss libraries handle the ${TARGET_SYS}/lib contents
so that it is placed in ${libdir} instead of ${libdir}/lib. This
resolves a packaging QA issue.

  ERROR: libgloss-3.0.0-r0 do_package: QA Issue: libgloss:
  Files/directories were installed but not shipped in any package:
    /usr/lib/lib
    /usr/lib/lib/libnosys.a
    /usr/lib/lib/nosys.specs
  Please set FILES such that these items are packaged. Alternatively
  if they are unneeded, avoid installing them or delete them within
  do_install.
  libgloss: 3 installed and not shipped files. [installed-vs-shipped]

(From OE-Core rev: 69ce8ba6cc610f310ae28d988d487918906e6ef9)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-11 09:05:35 +01:00
Alejandro Enedino Hernandez Samaniego
073dbcedf5 tclibc-newlib: Adds a new TCLIBC variant to build with newlib as C library
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.

(From OE-Core rev: 9f0570351a7b0877aa50efff5fe9a9ef368cb38f)

Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00
Alejandro Enedino Hernandez Samaniego
ae5e33ddc4 newlib: Adds newlib and libgloss recipes
Newlib is a C library that is intended to be used on embedded systems.
It is a conglomeration of several library parts, all under free software
licenses that make them easily usable on embedded products.

Newlib provides a C library alternative that can run on baremetal, mainly
for resource constrained devices.

Libgloss is the BSP part of the C library, which can be easily modified
to port for new hardware platforms.

(From OE-Core rev: fe490ff829440b94124317759d856e2e2daf5047)

Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:24 +01:00