Commit Graph

527 Commits

Author SHA1 Message Date
Chris Packham
30316cd27a
Merge pull request #1448 from dinuxbg/master
Add PRU target configuration
2021-01-25 12:40:31 +13:00
Dimitar Dimitrov
e7d0485ca2 Add package with PRU linker scripts and headers
Include the gnuprumcu package in PRU cross toolchain.
Toolchain is somewhat useless without device specs and
linker scripts for the various SoCs.

Signed-off-by: Dimitar Dimitrov <dimitar@dinux.eu>
2021-01-19 21:18:55 +02:00
Dimitar Dimitrov
c800bc8c82 Add PRU cross tool target
Add sample configuration for building cross toolchain for the TI PRU.
PRU cores are present in many of the BeagleBone single board computers.

More information about the PRU can be found in https://bbb.io/pru

Signed-off-by: Dimitar Dimitrov <dimitar@dinux.eu>
2021-01-19 21:18:55 +02:00
Keith Packard
945b4c6436 Add newlib-nano as companion lib
This allows building newlib-nano in addition to newlib and picolibc,
allowing users to select between C libraries within the same toolchain.

Signed-off-by: Keith Packard <keithp@keithp.com>
2021-01-14 15:05:10 -08:00
Keith Packard
27b18d2fc7 picolibc: Build libstdc++ against picolibc if requested
This uses the gcc support for building libstdc++ using alternate lib
header files.

Signed-off-by: Keith Packard <keithp@keithp.com>
2021-01-11 23:29:01 -08:00
Keith Packard
7e457684ea picolibc: Convert to companion library
This allows configurations to include picolibc without excluding
another C library.

Signed-off-by: Keith Packard <keithp@keithp.com>
2021-01-08 17:48:33 -08:00
Arnaud Aujon Chevallier
de668b062a Update reported.by 2020-11-24 09:59:18 +01:00
Arnaud Aujon Chevallier
08981c05cd samples : update armv6 configuration 2020-11-24 09:55:24 +01:00
Jose E. Marchesi
cd7098d41b Add sample configuration for Oracle Linux 7 on aarch64 2020-11-23 19:54:22 +13:00
Jose E. Marchesi
470ce219af Add Oracle products to crosstool-ng
This commit adds support for the following Oracle products, in order
to target Oracle Linux 7.9:

Binutils 2.27-44.base.0.400
GCC      4.8.5-44.0.5
glibc    2.17-317.0.3
UEK5/u4  4.14.35-2025.400.8

Sample configuration files are provides for the following triplets:

arm-ol7u9-linux-gnueabi
arm-ol7u9-linux-gnueabihf

Signed-off-by: Egeyar Bagcioglu <egeyar.bagcioglu@oracle.com>
Signed-off-by: Jose E. Marchesi <jose.marchesi@oracle.com>
2020-11-23 19:54:22 +13:00
Chris Packham
a4231a555a
Merge pull request #1342 from DspHack/feature/add_support_for_ti_c6x
Experimental: Add support for the Texas Instruments C6X (TMS320C6000 …
2020-11-10 20:29:25 +13:00
Dan Tejada
3a3e645245 c6x: Remove multilib requirement
Restore tuple config check
     Add sample configuration

Signed-off-by: Dan Tejada <dan.tejada@cantada.com>
2020-11-02 16:21:26 -05:00
Chris Packham
54bd54ee19 Merge branch 'BR1_zlinux_cross_comp' of git://github.com/pradghos/crosstool-ng into pradghos-BR1_zlinux_cross_comp 2020-09-06 21:44:21 +12:00
Keith Packard
c15de32ec6 Add picolibc support [v2]
This adds support for using picolibc instead of newlib on embedded
systems.

Signed-off-by: Keith Packard <keithp@keithp.com>

v2:
	Add check for meson and ninja
	Sync option default values with current picolibc defaults
	Remove xtensa sys header file install as those aren't in picolibc
2020-09-01 09:42:53 -07:00
Pradipta Ghosh
ebae86dea7 Adding new samples s390x/s390-unknown-linux-gnu
- s390x/s390 is allowed to pair with other vendor name.
- new samples are being added to use this flexibility.

- Fix space issue
2020-08-27 09:51:17 -07:00
Chris Packham
6279216475
Merge pull request #1242 from cpackham/mips64
samples: Add a mips64 big-endian config
2020-08-23 20:31:46 +12:00
Chris Packham
a55228fe24 samples: Add a mips64 big-endian config
Signed-off-by: Chris Packham <judge.packham@gmail.com>
2019-09-11 20:19:33 +12:00
Alexey Brodkin
de76f7cc82 ARC: Support building of multi-lib Glibc toolchain
From GCC's standpoint ARC's multilib items are defined by "mcpu" values
which we have quite a few and for all of them might be built optimized
cross-toolchain.

From Glibc's standpoint multilib is just multi-ABI [1] and so very limited
versions are supposed to co-exist (e.g. arc700 & archs).

Here we force Glibc to install libraries in GCC's multilib folder to create
a universal cross-toolchain that has libs optimized for multiple CPU types.

But note we only need to mess with installation paths in case of real
multilib, otherwise we keep default "lib/" paths so that GCC finds default
(the one and only) libs where it expects them to be.

Also here we add a sample which allows to build universal Glibc Linux
toolchain for ARC.

[1] https://sourceware.org/ml/libc-alpha/2019-06/msg00018.html

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
2019-06-14 17:50:46 +03:00
Alexey Brodkin
32e945e764 Add Glibc toolchain sample for ARC HS
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
2019-04-17 10:36:14 +03:00
Alexey Neyman
51f1db5c0a
Merge pull request #1178 from stilor/master
Last fixes for 1.24.0
2019-04-05 14:09:48 -07:00
Alexey Neyman
ace18924a3
Merge pull request #1167 from palmer-dabbelt/riscv-cxx
riscv64-unknown-linux-gnu: Add C++ Support
2019-04-05 14:09:29 -07:00
Alexandre Belloni
138d0d4da6 samples: G+ is gone, update reporter_url
G+ is now defunct, update the reporter_url to bootlin as both Thomas and I
are working there.

Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2019-04-04 16:25:11 +02:00
Alexey Neyman
4a0a490811 Use explicit revision in xtensa-fsf-elf
So that the build does not depend on internet connectivity.

Signed-off-by: Alexey Neyman <stilor@att.net>
2019-03-20 17:24:03 -07:00
Palmer Dabbelt
7ba6097629
riscv64-unknown-linux-gnu: Add C++ Support
We've had very solid support for C++ for quite a while now in RISC-V
land, at least in our Linux targets.  This patch set enables C++ support
by default, which I assume most users will want.

Signed-off-by: Palmer Dabbelt <palmer@sifive.com>
2019-03-20 01:47:32 -07:00
Alexey Neyman
5332f480e4 Update the samples to v3
Signed-off-by: Alexey Neyman <stilor@att.net>
2019-03-09 19:42:34 -08:00
Alexey Neyman
bf4b573089 Add sample from #985
Signed-off-by: Alexey Neyman <stilor@att.net>
2019-02-17 16:57:23 -08:00
Alexey Neyman
47e16f64e4 Run the samples through update to v2
Signed-off-by: Alexey Neyman <stilor@att.net>
2019-02-09 15:55:37 -08:00
Alexey Neyman
74a53fdf3e Use enhanced framework for 'ct-ng update-samples'
Signed-off-by: Alexey Neyman <stilor@att.net>
2019-02-09 15:55:16 -08:00
Alexey Neyman
93dd61e257 Run the samples through ct-ng update-samples
- Pin sparc-leon-linux-gnu to GCC6, again.
- Remove "brokenness" explanation from moxie-elf comment (was only
applicable to stage-2 compiler, not final).

Signed-off-by: Alexey Neyman <stilor@att.net>
2019-01-28 22:46:15 -08:00
Alexey Neyman
adc16046f7 Add upgrade logic to version-check.sh
Slightly rework config version detector to catch the case where neither
CONFIG_VERSION/CONFIG_VERSION_CURRENT is defined in the config file.

Add olddefconfig and use it after the upgrade.

Signed-off-by: Alexey Neyman <stilor@att.net>
2019-01-27 22:55:26 -08:00
Alexey Neyman
57e5be632d Basic framework for checking config file version
Signed-off-by: Alexey Neyman <stilor@att.net>
2019-01-26 13:13:32 -08:00
Alexey Neyman
b0d954f0ec Allow short "moxiebox" alias
... while making use of the new tunables.

Also, unmark the moxie-elf as broken: the ld scripts installed by newlib
can be found by the compiler and can link the binaries. Why the default
script is broken is not ct-ng's problem...

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-12-10 01:11:18 -08:00
Alexey Neyman
7a7a20bfee Moxiebox requires target to be LE
Signed-off-by: Alexey Neyman <stilor@att.net>
2018-12-07 14:49:28 -08:00
Alexey Neyman
0ffcfd657c Add config from issue 1107
Signed-off-by: Alexey Neyman <stilor@att.net>
2018-12-07 00:03:04 -08:00
Alexey Neyman
40d5bf6440 Add moxiebox as a choice for libc
This required some rework of the libc selection, as moxiebox is a layer on
top of another libc - newlib.

Also, moxiebox'es host VM (`sandbox`) needs a libcrypto on the host. We will
not have it if we're cross-compiling a canadian cross. Fortunately, all moxiebox
needs from libcrypto is SHA256, and it already includes a standalone implementation
of SHA256 in its runtime. Provide a little wrapper that allows moxiebox use
that implementation for the host binary, too.

Also, automate collecting/printing the list of all packages in a given category
(e.g. LIBC or COMP_TOOLS), generate a list of all Kconfig symbols for a given
category.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-12-01 10:10:51 -08:00
Alexey Neyman
172308cb1b Add moxie architecture
and a moxie-unknown-elf target (which is what #1088 apparently wanted).

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-11-28 00:30:10 -08:00
Alexey Neyman
d72f065e71 Check if .config is a regular file before clobbering it
Fixes #1014.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-11-01 23:19:12 -07:00
Paul Walmsley
af8da8b181 riscv64: add rv64gc bare-metal sample
This sample works well for building the open-source first stage
bootloader for the SiFive U540 device (and similar):

https://github.com/sifive/freedom-u540-c000-bootloader

Signed-off-by: Paul Walmsley <paul.walmsley@sifive.com>
2018-09-24 11:09:39 -07:00
Paul Walmsley
05d74f9d63 riscv64: add rv64gc linux-gnu sample
This sample works well for the SiFive U540 device (and similar).

Thanks to Jim Wilson <jimw@sifive.com> for his review, discovering
several bugs (now fixed).

Cc: Jim Wilson <jimw@sifive.com>
Signed-off-by: Paul Walmsley <paul.walmsley@sifive.com>
2018-09-10 22:58:08 -07:00
Alexey Brodkin
409046f91d ARC: Update Linux samples
There's no point in keeping samples which are in its essense
just a sub-set of multilib toolchain.

But still we'd like to cover quite unusual but really existing
case - ARC750, i.e. ARC700 with MMU but without so-called
atomic instructions (LLOCK/SCOND). To support this HW variation
we need:
 1) Compile all target binaries without "-matomics" or even
    better "-mno-atomics" so that's even future-proof
    (as we may decide to enable "-matomics" by default for Linux
     targets which is a recommented setup).
 2) Configure libc such that it uses Linux-kernel-assisted implementation
    of atomic operation via "arc_usr_cmpxchg" syscall,
    see https://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/?id=b985fa069187e4c5a7ee84213d9fbead2f219ce5

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
2018-05-21 15:03:17 +03:00
Alexey Brodkin
b078bb09dd ARC: Add Linux uClibc multilib sample
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
2018-05-21 13:43:07 +03:00
Alexey Brodkin
a397b69516 ARC: Add baremetal/elf32 multilib sample
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
2018-05-16 17:20:23 +03:00
Alexey Brodkin
66e0a25fd3 Add ARC700 and ARC HS38 Linux samples
ARC700 is based on ARCompact (AKA ARCv1 ISA) while ARC HS38 is
based on modern ARCv2 ISA.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
2018-05-15 16:41:20 +03:00
Alexey Neyman
1b18fd6bdd
Merge pull request #924 from tofutim/feature/fixchecksamps
fix deprecated diff option
2018-04-10 21:29:29 -07:00
Alexey Neyman
bb6c97551f User manual installation
... when running from a release tarball.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-04-07 12:03:17 -07:00
Tim Uy
b94dfcd59f fix deprecated diff option 2018-02-28 08:15:10 -08:00
Alexey Neyman
b2af5df5fc Backport GCC fix for partial int modes
... from trunk to GCC7/GCC6/GCC5.

Fixes #742.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-02-15 09:15:00 -08:00
Franz Flasch
c8c9249659 Added vendor string for riscv32-hifive1-elf 2018-01-22 15:26:28 +01:00
Franz Flasch
8c74cdf9dc Added sample for riscv-hifive1 board
Signed-off-by: Franz Flasch <ffl@mission-embedded.com>
2018-01-22 14:16:27 +01:00
Alexey Neyman
d759137c46 Align script names with the ct-ng commands
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-11-19 21:50:28 -08:00