Commit Graph

5296 Commits

Author SHA1 Message Date
Chris Packham
36db1595b0
Merge pull request from galak/mac-arm
Initial changes to build cross compilers on new ARM based M1 Macs
2020-12-08 20:10:34 +13:00
Kumar Gala
e7b3b20d0b gcc: Add some patches to get gcc 10.2 building on ARM based Mac
Pull in a change from upstream GCC and one from the gcc-darwin-arm64
repo that gets an initial cross compiler building on ARM based Mac.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2020-12-04 10:53:49 -06:00
Kumar Gala
f1eeb2b0f3 bump to gmp 6.2.1 + patch for ARM based MacOS support
Update to GMP 6.2.1 for MacOS ARM support and pull in one patch
from repo that deal with a possible issue with GMP on MacOS ARM
systems.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2020-12-04 10:20:19 -06:00
Kumar Gala
c12f5b209f Run through 'ct-ng updatetools'
Update config.{sub,guess} to get proper awareness for ARM based MacOS.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2020-12-04 10:14:53 -06:00
Chris Packham
a5219d6e04 Merge branch 'aaujon-master' 2020-11-30 19:39:51 +13: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
Chris Packham
f7f3b0b180 Merge branch 'jemarch-oracle/ol-support' 2020-11-23 19:56:31 +13: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
Egeyar
98d7be9cbf Set the origin of Linux releases
Set the origin of the Linux tarballs to www.kernel.org in order to avoid
getting an empty string in menuconfig.

Signed-off-by: Egeyar Bagcioglu <egeyar.bagcioglu@oracle.com>
[cp: use kernel.org]
Signed-off-by: Chris Packham <judge.packham@gmail.com>
2020-11-23 19:54:15 +13:00
Egeyar
7fdb7665f7 Support released versions from Git branches
* Do not assume a release has a tarball if src_release is set to "n".
 * Do not assume versions in repositories are all experimental.
 * Allow versions to define their default repository_branch,
   repository_cset, repository_subdir and bootstrap.
 * Do not expect mirrors, archive_filename, archive_dirname,
   archive_formats and signature_format from a version if src_release
   is set to "n".
 * Add version_number to allow version names to be different than the
   version number. When given, use version_number to compare against
   the milestones.

Signed-off-by: Egeyar Bagcioglu <egeyar.bagcioglu@oracle.com>
2020-11-23 19:47:13 +13:00
Chris Packham
3c177b39d2 Merge branch 'galak-macosx' 2020-11-23 19:38:07 +13:00
Kumar Gala
9afeab2ccc CI: Add MacOS X builds to CI testing
Add building on MacOS X as part of the CI testing.

A few notes:

* We exclude mips64-unknown-linux-gnu as the linux kernel headers need
  <byteswap.h> that is a GNU extension to build elf-entry.c and does
  not exist on Mac OS X.

* We create a SPARSE image filesystem to ensure we have are doing the
  builds in a case sensitive fs.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2020-11-11 13:47:28 -06:00
Kumar Gala
15a49fa4fd gcc: add build fix for aarch64 toolchain on MacOS X
When building aarch64-unknown-linux-gnu on MacOS X, aarch64-builtins.c
files doesn't build by default with clang on MacOS X.  We need to pass
-std=gnu++11 when building the file for things to work with clang.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2020-11-11 13:42:02 -06:00
Chris Packham
ed3a1ff4b9
Merge pull request from cpackham/continuous-integration
CI: Replace add-path command
2020-11-11 20:02:01 +13:00
Chris Packham
b0ca9b8ca7 CI: Replace add-path command
The add-path and set-env commands are being deprecated[1]. Replace the
one instance of add-path in the CI workflow with the recommended
alternative[2].

[1] - https://github.blog/changelog/2020-10-01-github-actions-deprecating-set-env-and-add-path-commands/
[2] - https://docs.github.com/en/free-pro-team@latest/actions/reference/workflow-commands-for-github-actions#adding-a-system-path

Signed-off-by: Chris Packham <judge.packham@gmail.com>
2020-11-10 21:10:31 +13:00
Chris Packham
a4231a555a
Merge pull request 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
Chris Packham
66b3c25be7
Merge pull request from galak/binutils-2.35.1-fix
binutils: Pull in some bug fixes from binutils 2.35 branch
2020-11-08 14:11:16 +13:00
Kumar Gala
fe97d0794a binutils: Pull in some bug fixes from binutils 2.35 branch
Expect that if there is a binutils 2.35.2 release these fixes will be
included in there, these are pulled out of the binutils-2_35-branch post
the 2.35.1 release.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2020-11-06 08:51:19 -06:00
Chris Packham
0dd54d59ce
Merge pull request from cpackham/disable-context-for-thumb
arm: Disable context functions for Thumb
2020-11-03 20:47:13 +13:00
Chris Packham
b7084c0acd
Merge pull request from cpackham/continuous-integration
CI: Add armv6-nommu-linux-uclibcgnueabi
2020-11-03 20:46:36 +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
beae27d87b arm: Disable context functions for Thumb
Similar to commit 57679b5e ("Disable context functions for Thumb") when
building for thumb we need to unset UCLIBC_HAS_CONTEXT_FUNCS.

Fixes 

Signed-off-by: Chris Packham <judge.packham@gmail.com>
2020-11-01 21:17:50 +13:00
Chris Packham
4dd65a18a3 CI: Add armv6-nommu-linux-uclibcgnueabi
Signed-off-by: Chris Packham <judge.packham@gmail.com>
2020-11-01 21:11:29 +13:00
Chris Packham
e0bf7aa72a Merge branch 'keith-packard-picolibc-1.4.7' 2020-11-01 20:03:07 +13:00
Chris Packham
9e1e0ff3a7 Merge branch 'picolibc-1.4.7' of git://github.com/keith-packard/crosstool-ng into keith-packard-picolibc-1.4.7 2020-11-01 20:02:42 +13:00
Chris Packham
1876d29a6a Merge branch 'lancethepants-xlocale' 2020-11-01 20:02:13 +13:00
Chris Packham
827b42336e Merge branch 'xlocale' of git://github.com/lancethepants/crosstool-ng into lancethepants-xlocale 2020-11-01 20:01:58 +13:00
Keith Packard
c14b7c6cfc packages/picolibc: Update to version 1.4.7
New picolibc release has some useful bug fixes

Signed-off-by: Keith Packard <keithp@keithp.com>
2020-10-26 19:37:56 -07:00
Chris Packham
dd20ee5526
Merge pull request from abrodkin/topic-binutils-no-glob
binutils: Disable glob for better portability
2020-10-18 20:33:36 +13:00
Chris Packham
62a7de5b0f
Merge pull request from bagasme/local-patch-dir-description-clarify-example
Clarify tree layout of local patches directory
2020-10-18 20:33:14 +13:00
Chris Packham
3975029a9e
Merge pull request from lancethepants/add_uclibc-ng_1.0.36
Add uClibc-ng 1.0.36
2020-10-18 20:32:32 +13:00
lancethepants
bc5798a8ea Don't remove XLOCALE support unconditionally.
Signed-off-by: Lance Fredrickson <lancethepants@gmail.com>
2020-10-15 13:59:04 -06:00
lancethepants
1afa04ee6c Add uClibc-ng 1.0.36
Signed-off-by: Lance Fredrickson <lancethepants@gmail.com>
2020-10-15 13:53:59 -06:00
Alexey Brodkin
57f5909285 binutils: Disable glob for better portability
Since glibc 2.27 glob interface was changed [1]  and so
"glob" & "glob64" symbols require glibc 2.27+.

For us that means if we build Binutils on a machine with glibc 2.27+
produced binaries won't be any longer usable on machines with older
glibc.

As an example [2]: build on Ubuntu 18.04 (with glibc 2.27) and try to run
on CentOS 7.x (with glibc 2.17), you'll see this:
---------------------->8-------------------
ldd ld
ld: /lib64/libc.so.6: version `GLIBC_2.27' not found (required by ld)
---------------------->8-------------------

Now given glob is not really used by Binutils itself (only needed by GDB)
and we build Binutils & GDB separately let's make at least Binutils
more portable.

In theory we may even try to do the same hack for GDB forcing it to use
imported glob implementation. But since GDB is now built strictly by C++
compiler we'll get waaay to many incompatibilities due to multiple changes
of C++ ABI in between GCC 7.5 of Ubuntu 18.04 and GCC 4.8.5 of CentOS 7.x,
so there's no point to even try.

[1] https://sourceware.org/git/?p=glibc.git;a=commit;h=ccf970c7a77e86f4f5ef8ecc5e637114b1c0136a
[2] https://github.com/zephyrproject-rtos/sdk-ng/issues/280

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
2020-10-14 23:10:47 +03:00
Bagas Sanjaya
19f1849163
Clarify tree layout of local patches directory
Currently the help for LOCAL_PATCH_DIR did not specify the tree layout
of custom patches directory. This commit adds such explanation.

For example, the bundled patches for GCC are placed under
packages/gcc/<gcc-version>, thus custom (local) GCC patches should be
placed under $LOCAL_PATCH_DIR/gcc/<gcc-version>.

Signed-off-by: Bagas Sanjaya <bagasdotme@gmail.com>
2020-10-13 16:09:35 +07:00
Chris Packham
99ce9d3861
Merge pull request from fvalette/fix-m4-build-for-mingw32-host
m4: fix build for mingw32 host
2020-10-07 20:03:16 +13:00
Florent Valette
1c93176e05 m4: fix build for mingw32 host
While building a canadian toolchain for windows host (any target),
the build failed for m4 host companion_tool with a recent mingw-w64
(at least 7.0.0).
m4 needs stack smashing protection which is not part of mingw-w64 c
library and an explicit trigger to link w/ libssp is needed.

Signed-off-by: Florent Valette <florent.valette@gmail.com>
2020-10-06 09:32:40 +02:00
Chris Packham
364ed7aa96
Merge pull request from egtvedt/fix-glibc-2.32-version.h
glibc: fix version 2.32 not setting correct version string
2020-10-06 19:37:29 +13:00
Hans-Christian Noren Egtvedt
60e782fdec glibc: set glibc build system default_cflags empty
By setting glibc build system default_cflags to be empty before
building, we will enforce the build system to only use the crosstool-ng
CFLAGS when building glibc.

Properly solves the issue identified in .

Signed-off-by: Hans-Christian Noren Egtvedt <hegtvedt@cisco.com>
2020-10-05 15:37:19 +02:00
Hans-Christian Noren Egtvedt
80a2e0cf87 glibc: fix version 2.32 not setting correct version string
Backport change from glibc upstream that defines RELEASE as stable
instead of release. This will at least cause the default_cflags to be
set to expected default values again.

Ref issue , although the bigger issue of respecting crosstool-ng
CT_GLIBC_EXTRA_CFLAGS is most likely still not fixed.

Signed-off-by: Hans-Christian Noren Egtvedt <hegtvedt@cisco.com>
2020-10-05 09:54:46 +02:00
Chris Packham
b3ed2c40d3
Merge pull request from egtvedt/add-binutils-2.35.1
binutils: add version 2.35.1
2020-09-27 15:22:37 +13:00
Hans-Christian Noren Egtvedt
04b318a48b binutils: add version 2.35.1
Bump to latest 2.35 minor release from upstream, now 2.35.1, replaces
version 2.35.

Signed-off-by: Hans-Christian Noren Egtvedt <hegtvedt@cisco.com>
2020-09-22 22:40:57 +02:00
Chris Packham
ea386017b6 Merge branch 'picolibc-multiarch' of git://github.com/keith-packard/crosstool-ng into master 2020-09-20 21:17:28 +12:00
Chris Packham
89ec0e109e Merge branch 'linux-version-bump' of https://github.com/cpackham/crosstool-ng into master 2020-09-20 21:16:54 +12:00
Chris Packham
d2aca10a0a Merge branch 'continuous-integration' of https://github.com/cpackham/crosstool-ng into master 2020-09-20 21:10:00 +12:00
Chris Packham
5bc58e2027 Merge branch 'general-package-patches' of git://github.com/foss-for-synopsys-dwc-arc-processors/crosstool-ng into master 2020-09-20 21:09:12 +12:00
Keith Packard
e802686d86 picolibc: Use target architecture to drive picolibc configuration
This selects code matching the target architecture within picolibc.

Signed-off-by: Keith Packard <keithp@keithp.com>
2020-09-16 16:04:51 -07:00
Keith Packard
c1c475d0a0 Map picolibc to suitable CT_TARGET_SYS values
picolibc is another bare-metal C library, and so should be mapped
to CT_TARGET_SYS just like newlib does.

Signed-off-by: Keith Packard <keithp@keithp.com>
2020-09-16 11:52:58 -07:00