Commit Graph

3505 Commits

Author SHA1 Message Date
Manfred Rudigier
8f76d130c7 Added gcc 4.8.4.
Signed-off-by: Manfred Rudigier <manfred.rudigier@omicron.at>
2015-01-09 14:11:19 +01:00
Bob Dunlop
0161a4411b Patch newlib-2.xx optimising for space Append flags to CFLAGS_FOR_TARGET rather than replacing. 2015-01-08 19:35:22 -08:00
Andreas Bießmann
99435117fd uClibc: fix darwin build
uClibc's unifdef tool declares strlcpy(3) which is problematic on OS X. There
(and probably on other systems) strlcpy(3) is defined as a macro, re-declaring
it here will fail cause the macro expansion will generate an invalid function
name.
The declaration of strlcpy(3) is however useless cause it is never used in the
tool. Also upstream patch 2a021ae81c36f4281883a3195f7ce81504edf978 will remove
it. Using that patch here is overkill, cause it rewrites a lot of the
unifdef.c code.

Signed-off-by: Andreas Bießmann <andreas@biessmann.de>
Cc: Yann E. MORIN <yann.morin.1998@free.fr>
2015-01-08 19:30:36 -08:00
Bernhard Walle
1a6e9782e2 cc/gcc: Fix dynamic linker path for hard float libc
When compiling glibc 2.16 and gcc 4.7.4 with CT_ARCH_FLOAT="hard",
I end up in a dynamic linker called /lib/ld-linux-armhf.so.3, but
gcc compiles the binaries with an ELF interpreter /lib/ld-linux.so.3.
That doesn't work.

This patch (which is included in recent gcc version and also is included
in Linaro 4.7 versions) fixes the problem. I just stripped the ChangeLog

diff from the original commit.

Signed-off-by: Bernhard Walle <bernhard@bwalle.de>
2015-01-08 19:16:36 -08:00
Bernhard Walle
c88bbca7ab comptools/make: Install 'gmake' symlink
We had following problem: We're building a toolchain with an old glibc
version for compatibility with old Linux distributions (glibc 2.9). This
version requires make < 4 to build. However, the configure script of
glibc looks for make in the order "gnumake", "gmake" and "make". So when
"gmake" is available in the system (which is the case on Gentoo Linux
per default, unfortunately), then configure finds the system gmake 4.1
instead of the ct-ng make 3.82.

This patch adds an option to install a symlink so that 'gmake' is also
available in the old version when building toolchains.

Signed-off-by: Bernhard Walle <bernhard@bwalle.de>
2015-01-08 19:15:51 -08:00
Bryan Hundven
2ba44bb761 Merge pull request #19 from davidholsgrove/newlib_headers
Newlib headers for Canadian Crosses
2015-01-07 12:21:30 -08:00
Bryan Hundven
d86f21e879 Merge pull request #20 from bhundven/master
binutils: Add binutils-2.25
2015-01-02 20:41:23 -08:00
Bryan Hundven
b49e233167 binutils: Add binutils-2.25
This also updates the patches from 2.24.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-01-01 16:19:11 -08:00
David Holsgrove
af731ae904 cc/gcc: Remove copyheaders toggle in do_cc_core_backend, make default
Canadian Cross compile for baremetal fails with error;

  checking for the value of EOF... configure: error: computing EOF failed

which is due to libstdc++ configure not being able to find stdio.h

Having all modes of the core compiler copyheaders from CT_HEADERS_DIR
(in combination with previous patch for newlib to add a do_libc_start_files
function to copy into the CT_HEADERS_DIR) resolves this.

Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
2015-01-02 09:52:29 +10:00
David Holsgrove
234c643008 libc/newlib: Add do_libc_start_files to copy headers to CT_HEADERS_DIR
Require access to newlibs headers in gcc.sh, matching other libc components.
Resolves issue with headers not found.

Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
2015-01-02 09:52:28 +10:00
Bryan Hundven
11ae33951a Merge pull request #16 from bhundven/master
gmp: Disable --enable-mpbsd if version is >= 5.0.2
2015-01-01 15:41:57 -08:00
Bryan Hundven
4b84be34c5 gmp: Disable --enable-mpbsd if version is >= 5.0.2
closes #12

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-23 13:28:26 -08:00
Bryan Hundven
767aa9befc Merge pull request #13 from davidholsgrove/newlib_canadian
libc/newlib: Canadian baremetal builds require core pass-1
2014-12-15 18:02:51 -08:00
Bryan Hundven
5c7bccdb3f Merge pull request #14 from davidholsgrove/glibc_rpc
libc/glibc: install obsolete RPC for both eglibc and glibc
2014-12-15 18:02:28 -08:00
Bryan Hundven
c593e88336 Merge pull request #11 from jrbyrne/working
config/linux: Update kernel versions
2014-12-15 09:35:22 -08:00
Bryan Hundven
0ee9ecbcf7 Merge pull request #6 from davidholsgrove/libc_custom_location
Libc custom location
2014-12-15 09:33:43 -08:00
Jérôme BARDON
7147418c8f libc/glibc: install obsolete RPC for both eglibc and glibc
Currently, the obsolete RPC headers are only installed for eglibc,
but glibc has the same /deficiency/, so install the obsolete RPC
for both.

Signed-off-by: Jérôme BARDON <bardon.pro@gmail.com>
Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
2014-12-15 14:48:33 +10:00
David Holsgrove
59485ba519 libc/newlib: Canadian baremetal builds require core pass-1
Can safely skip the core pass-1 for normal baremetal builds,
but when building a canadian baremetal, the repair_cc
functionality (GCC_FOR_TARGET) in gcc.sh will force the
core pass-2 to attempt to build gcc and libgcc without a
${CT_TARGET}-gcc existing, causing a failure on
${CT_TARGET}-gcc -dumpspecs > tmp-specs

Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
2014-12-15 14:40:15 +10:00
James Byrne
f67da11189 config/linux: Update kernel versions
This commit updates to the latest longterm and stable kernel versions as of
December 10, 2014.

Signed-off-by: James Byrne <james.byrne@origamienergy.com>
2014-12-11 09:58:57 +00:00
Bryan Hundven
7275900f9f Merge pull request #9 from bhundven/master
Fixes for glibc and gdb
2014-12-10 11:44:35 -08:00
Bryan Hundven
0a962fc7ec Merge pull request #10 from jrbyrne/working
Update .gitignore files.
2014-12-10 11:43:50 -08:00
James Byrne
ddf60619ba Update .gitignore files.
The current .gitignore files cause changes to files which are actually part of
the repository to be ignored. This commit modifies the rules so that this does
not happen. The files that were affected are:

  config/global/paths.in
  contrib/gcc-test-suite/Makefile
  docs/ct-ng.1.in
  kconfig/Makefile

(as revealed by 'git ls-files --ignored --exclude-standard')

Signed-off-by: James Byrne <james.byrne@origamienergy.com>
2014-12-10 16:51:44 +00:00
Bryan Hundven
9159846334 gdb: fix typo made in gdb build script
I made a typo in: 1e17619b27

It should be version, not release.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-09 22:16:40 -08:00
Bryan Hundven
f59d75c182 config/glibc: Disable ports/ for 2.20
As per the glibc release notes for 2.20:
--------------------------------------------------------------------------------
All supported architectures now use the main glibc sysdeps directory
instead of some being in a separate "ports" directory (which was
distributed separately before glibc 2.17).
--------------------------------------------------------------------------------

There isn't a ports directory anymore. So disable using and forcing it.

closes #7 on crosstool-ng github

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-09 17:36:44 -08:00
Bryan Hundven
8ad1b492d3 gcc: The latest 'released' linaro 4.8 is 2014.04, not 08
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-08 23:55:09 -08:00
Bryan Hundven
91cf168d76 gcc and gdb: fix fetching linaro builds (part three)
Yes, I missed the backslash which messed up the linaro stuff.
The more I look at this code, I feel it needs to be refactored a bit. So
I'll come back to this in the future and clean it up.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-08 23:46:41 -08:00
Bryan Hundven
1e17619b27 gcc and gdb: fix fetching linaro builds (part two)
It's not my day.

linaro_version is a filter. If it is not a linaro toolchain, it will
just be CT_{CC,GDB}_VERSION. If it is a linaro toolchain, CT_{CC,GDB}_VERSION
will be prefixed with 'linaro-' and will not match linaro_version, as
linaro_version will just have the part after 'linaro-'.

This *really* fixes the issue :sigh:

Thanks again to @elsonwei for being right the first time!

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-08 23:27:46 -08:00
Bryan Hundven
6bc5ff9ce8 gcc: Update linaro 4.7 and 4.8 (Attempt 2)
I messed up the previous commit.
I only updated half the config file, and the latest 4.8 is 2014.08.

🤦

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-08 23:00:38 -08:00
Bryan Hundven
055abbbb57 gcc: Update linaro 4.7 and 4.8
Update 4.7 to linaro-4.7-2014.06
Update 4.8 to linaro-4.8-2014.04

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-08 22:56:29 -08:00
Bryan Hundven
aee4142a9d gcc and gdb: fix fetching linaro builds
linaro_version and linaro_series are defined but not set if we are not
configured for linaro builds.

Therefore we need to default them to "" (null string).
As reported by @elsonwei

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-08 22:32:19 -08:00
David Holsgrove
163a1737b8 libc/{,e}glibc: If using custom {e}glibc, dont extract or patch
If custom {e}glibc is being used, no need to carry out the
extract or patching phase of scripts/build/libc/glibc-eglibc.sh-common

Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
2014-12-09 15:51:11 +10:00
David Holsgrove
71ed5aae34 libc/eglibc: Add CUSTOM version and CUSTOM_LOCATION config options and GetCustom
CUSTOM_LOCATION config options only presented in menuconfig if component
CUSTOM version selected.

Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
2014-12-09 15:51:11 +10:00
David Holsgrove
79b9881295 libc/glibc: Add CUSTOM version and CUSTOM_LOCATION config options and GetCustom
CUSTOM_LOCATION config options only presented in menuconfig if component
CUSTOM version selected.

Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
2014-12-09 15:51:11 +10:00
Bryan Hundven
6df76e2c3e Merge pull request #5 from davidholsgrove/glibc2.20_updates
Glibc 2.20 updates
2014-12-08 21:45:45 -08:00
David Holsgrove
d7b4f0dbe3 glibc: nptl is default from 2.20, so dont add to addons_list
No longer recommended practice to use --enable-add-ons=nptl, so
for 2.20 and later (along with custom glibc), don't add the
CT_THREADS to the addons_list

https://sourceware.org/glibc/wiki/Release/2.20#Packaging_Changes

Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
2014-12-09 14:41:35 +10:00
Bryan Hundven
f1bdbe995b libc/glibc: Add glibc-2.20
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
2014-12-09 14:32:14 +10:00
Bryan Hundven
79422633cf scripts: Update download locations
This change updates the download locations to default to the official
download site.

For gcc and gdb, also separate out the linaro download locations so that
if you are downloading the linaro variant, it skips trying to download
from the official gcc mirror.

This commit closes #3

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-12-08 15:03:08 -08:00
Bryan Hundven
098c87e98a docs: Update path to credits appendix in man page
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-06 02:51:15 -08:00
Solomon Peachy
4125a79589 binutils: Fix elf2flt compile on more modern systems
Without this fix, elf2flt will blow up complaining that it can't resolve
dlopen() and friends.  One has to explicitly pass '-ldl' on the final
linking command line, because the system linker is not resolving
indirect dependent shared libraries.

I've needed to this patch for several years on Fedora systems.

Signed-off-by: Solomon Peachy <pizza@shaftnet.org>
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-05 13:09:51 -08:00
goodmenlinux@gmail.com
f65ecce4ba binutils: Fixup the static toolchain build problem
When try to build the static toolchain, binutils failed.

    I have checked the libtool script, and found that the following option
          -all-static
          -static
          -static-libtool-libs

    are processed in a strange way. If any one of those three options
    appears firstly in the cmdline, all others will be neglected. Our
    LDFLAGS is ".... -static -all-static -o", so the -static option
    takes the real effect, and the -all-static has no useage actually!
    that is the cause of the failure.

Signed-off-by: Brock Zheng <goodmenlinux@gmail.com>
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-05 03:20:04 -08:00
Jason T. Masker
10e1579799 scripts/crosstool-NG.sh.in: patch regex to work with BSD grep
BSD grep does not interpret a null alteration. It complains about an
empty sub-expression, e.g.:

$ grep --version && grep -E '^(# |)CT_' .config
grep (BSD grep) 2.5.1-FreeBSD
grep: empty (sub)expression

This patch replaces the null alteration with a zero or once quantifier
which works with both BSD & GNU grep.

$ grep --version && grep -E '^(# )?CT_' .config
grep (BSD grep) 2.5.1-FreeBSD
CT_CONFIGURE_has_xz=y
CT_CONFIGURE_has_svn=y
...
$ ggrep --version && ggrep -E '^(# )?CT_' .config
ggrep (GNU grep) 2.20
Copyright (C) 2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by Mike Haertel and others, see
<http://git.sv.gnu.org/cgit/grep.git/tree/AUTHORS>.
CT_CONFIGURE_has_xz=y
CT_CONFIGURE_has_svn=y
...

Signed-off-by: Jason T. Masker <jason@masker.net>
Tested-by: Andreas Bießmann <andreas@biessmann.de>
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-05 03:12:57 -08:00
Daniel Zimmermann
60b5bc4c3e companion_libs/gmp: pump gmp to version 6.0.0a
# HG changeset patch
# User Daniel Zimmermann <netzimme@gmail.com>
# Date 1402524592 -7200
#      Thu Jun 12 00:09:52 2014 +0200
# Node ID 30c0a797946f66f89a9bace2995957e6910174e9
# Parent  99029fac116b6cdd86de7015379dd765af77c116
companion_libs/gmp: pump gmp to version 6.0.0a

pump gmp to version 6.0.0a

Signed-off-by: '"Daniel Zimmermann" <netzimme@gmail.com>'
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-05 02:57:00 -08:00
Bryan Hundven
b5e223d118 config/linux: Update kernel versions
This commit updates longterm kernel version and adds 3.16.7 and 3.17.4.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-04 23:55:28 -08:00
Bryan Hundven
f741b161a2 config/libc: update musl-libc mainline to 1.1.5
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-04 23:46:14 -08:00
Bryan Hundven
4d19f2e647 debug/gdb: Add gdb-7.8.1
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-04 23:44:19 -08:00
Daniel Zimmermann
c7d9c37447 cc/gcc: add gcc 4.9.2
added the latest gcc 4.9.2

Signed-off-by: Daniel Zimmermann <netzimme@gmail.com>
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-04 23:31:47 -08:00
Bryan Hundven
75b3e0f6a2 [docs] Update introduction
s/I\ /Yann\ /g

Also add a little blurb about me taking over as maintainer.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-12-04 12:53:14 -08:00
Yann E. MORIN
643d93e0dc all: remove references to creating a tarball
This has been broken for ages, time to finaly remove it.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-11-24 18:25:27 +01:00
Yann E. MORIN
aa29ae333c binutils/binutils: 2.23.x and 2.24 are no longer experimental
Besides, at least 2.24 is required for Aarch64 (aka arm64.)

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-09-21 15:09:26 +02:00
Yann E. MORIN
82b967757a arch/arm: EABIhf is now the default
When the toolchain uses the hard-float ABI, 'hf' is now
appended by default to the tuple.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-09-20 16:53:58 +02:00