Commit Graph

1334 Commits

Author SHA1 Message Date
Alexey Neyman
874f4bd668 Disallow c++ for baremetal.
libstdc++ configure fails to find <stdio.h>.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-01-10 10:38:08 -08:00
Alastair D'Silva
14896a2600 Support building Newlib with Link Time Optimisation
Signed-off-by: Alastair D'Silva <alastair@d-silva.org>
2017-01-10 10:51:32 +11:00
Alastair D'Silva
2ac39621bc Add more newlib options 2017-01-10 09:47:35 +11:00
Alastair D'Silva
e427a6408f Remove GCC 6.2.0
Signed-off-by: Alastair D'Silva <alastair@d-silva.org>
2017-01-06 12:05:16 +11:00
Alastair D'Silva
36e8567167 Bump GCC to 6.3.0
Signed-off-by: Alastair D'Silva <alastair@d-silva.org>
2017-01-06 12:05:16 +11:00
Alastair D'Silva
93cbaa811b Add Newlib 2.4.0 & 2.5.0
Signed-off-by: Alastair D'Silva <alastair@d-silva.org>
2017-01-06 12:05:16 +11:00
Alastair D'Silva
92c33fe46d Bump binutils to 2.27
Signed-off-by: Alastair D'Silva <alastair@d-silva.org>
2017-01-06 12:05:16 +11:00
Alastair D'Silva
20e73c4f62 Bump ISL to 0.16.1
Signed-off-by: Alastair D'Silva <alastair@d-silva.org>
2017-01-06 12:05:16 +11:00
Alastair D'Silva
5651c56ec3 Bump MPFR to 3.1.5
Signed-off-by: Alastair D'Silva <alastair@d-silva.org>
2017-01-06 12:05:16 +11:00
Alastair D'Silva
3c981f9dc5 Bump GMP version to 6.1.2
Signed-off-by: Alastair D'Silva <alastair@d-silva.org>
2017-01-06 12:05:16 +11:00
Alastair D'Silva
5f5463053a Remove stray whitespace
Signed-off-by: Alastair D'Silva <alastair@d-silva.org>
2017-01-06 12:05:16 +11:00
Alexey Neyman
5c985041fd Kill CT_INSTALL_DIR.
We now use CT_PREFIX and expect the resulting toolchain to be relocatable.

Signed-off-by: Alexey Neyman <stilor@att.net>
2016-12-19 11:45:24 -08:00
Alexey Neyman
83d9e6a49a Kill dmalloc.
- No new releases in almost 10 year.
- No public bug tracker or VCS.
- No responses from maintainer over sent patches.

RIP, dmalloc.

Signed-off-by: Alexey Neyman <stilor@att.net>
2016-12-16 16:10:32 -08:00
Alexey Neyman
ec5a27e082 Add uclibc-ng 1.0.20.
Retire 1.0.{17,18,19}. Both static link & dlopen issues are now
apparently fixed.

Signed-off-by: Alexey Neyman <stilor@att.net>
2016-12-05 18:38:40 -08:00
Alexey Neyman
4042269de6 Merge pull request #487 from stilor/host-comp-tools
Allow for installation of companion tools for host
2016-12-02 19:18:56 -08:00
Alexey Neyman
cf86df688a Add 'companion tools for host' step.
Signed-off-by: Alexey Neyman <stilor@att.net>
2016-12-02 15:03:15 -08:00
Alexey Neyman
289188e6f2 uClibc-ng needs to know whether it is 1.0.15+
This is workaround, as more packages require similar tweaks (some
depend on X_Y_Z_or_later config variables either in kconfig, or in
the build scripts.

We should have a CT_CompareVersion, that will apply the default
or per-package method of comparison.

Signed-off-by: Alexey Neyman <stilor@att.net>
2016-12-02 15:02:58 -08:00
Alexey Neyman
713b1544b0 Make 1.0.19 experimental...
... and 1.0.17 default, again. Sigh.

Signed-off-by: Alexey Neyman <stilor@att.net>
2016-12-02 13:02:54 -08:00
Alexey Neyman
4c7f49fb6c Revert "uClibc-ng: Remove 1.0.17 and 1.0.18"
This reverts commit 93dab0585b.
2016-12-02 11:58:08 -08:00
Bryan Hundven
93dab0585b uClibc-ng: Remove 1.0.17 and 1.0.18
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2016-12-01 08:35:30 -08:00
Bryan Hundven
583fe25c34 uClibc-ng: Add 1.0.19
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2016-12-01 08:32:20 -08:00
Alexey Neyman
5e49166140 Disallow dmalloc for bare metal.
In case of bare metal, newlib is built without any syscalls,
and dmalloc fails to link with undefined references to _exit,
fstat, open, sbrk and so on.

Same for DUMA: depends on <memory.h>, not available with newlib.

Signed-off-by: Alexey Neyman <stilor@att.net>
2016-11-29 00:33:52 -08:00
Max Filippov
6c6829a061 xtensa: fix endianness support
To build uClibc correctly we need correct endianness selected in the
crosstool-NG. Xtensa cores may be little- or big-endian, but this
property is static. The toolchain knows the core endianness and doesn't
need options to select it.
Enable ARCH_SUPPORTS_BOTH_ENDIAN and select LE by default. Specify empty
CT_ARCH_ENDIAN_CFLAG so that -m{big,little}-endian don't get added to
the TARGET_CFLAGS, as it's not supported by gcc. Specify empty
CT_ARCH_ENDIAN_LDFLAG so that -EB/-EL don't get added to the
TARGET_LDFLAGS as they are ignored. Select big-endian in the example
xtensa-unknown-linux-uclibc configuration.

This fixes uClibc toolchain build for little-endian cores.

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
2016-11-22 10:48:34 -08:00
Alexey Neyman
87bfd55b3b Give companion tools some love.
Allow selection of make/m4/... version. Support imports of new versions
via addToolVersion.sh. Import newest versions of the companion tools.

One non-trivial change is the handling of make versions. Existing code
was not handling make companion tool as described (see the previous
commit). However, since most modern systems have make 4.x, that previous
commit made crosstool-ng always build make as a companion tool.

This traces back to the commit dd15c93 from 2014. That commit's log message
says that actually it was 3.81 which broke the build for certain component
(it was originally breaking eglibc, but I noticed it was breaking current
glibc on powerpc64), and introduced an option to force using 3.81 by
"components that really need it". It looks like in 2.5 years we haven't
seen any such components that really need make 3.81, and (given that make
has already had a few releases since 3.81) we're unlikely to see them
in the future.

Hence, the configure check is changed from "exactly 3.81" to "3.81 or newer".
In its current form, configure will accept make 3.80+, and will not require
make as a companion tool for 3.81+. We might want to bump the latter check
to even newer version given the claim from dd15c93. Killed
COMP_TOOLS_make_3_81_NEEDED.

Anyway, I retained 3.81 just in case; ditto for m4 1.14.3, autoconf 2.65
and automake 1.11.1.

Signed-off-by: Alexey Neyman <stilor@att.net>
2016-11-21 23:03:03 -08:00
Alexey Neyman
b4efb5e519 Update kernel versions...
... to match those currently listed on kernel.org.

Signed-off-by: Alexey Neyman <stilor@att.net>
2016-11-18 13:33:52 -08:00
Thorsten Johannvorderbrueggen
18b5382e9c add support for gcc 4.9.4 2016-11-17 16:17:22 -08:00
Alexey Neyman
f0bb72b741 Merge pull request #381 from enunes/avr
avr-libc: update to 2.0.0
2016-11-15 14:45:42 -08:00
Alexey Neyman
762c511947 Merge pull request #387 from jserv/gettext-0_19_7
gettext: update to 0.19.7
2016-11-15 14:45:31 -08:00
Dmitry Pankratov
2cc9e68596 Merge remote-tracking branch 'upstream/master' 2016-11-13 09:10:34 +01:00
Joachim Nilsson
9b216274e5 glibc: Add glibc-2.24
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2016-11-12 19:49:26 +01:00
Dmitry Pankratov
fa9f2bda11 Requested changes by @stilor in the PR #368 review 2016-11-12 07:32:06 +01:00
Dmitry Pankratov
0d17d26005 Merge remote-tracking branch 'upstream/master' 2016-11-11 21:03:11 +01:00
Alexey Neyman
5ebbb52be0 Merge pull request #468 from dajamminyogesh/master
gcc: Updated gcc from 6.1.0 to 6.2.0
2016-11-10 20:10:05 -08:00
Yogesh Sharma
0bf97beb30 gcc: Updated gcc from 6.1.0 to 6.2.0
Signed-off-by: Yogesh Sharma <ysharm01@harris.com>
2016-10-31 14:29:25 -04:00
Alexey Neyman
91575d02c4 Merge branch 'master' into static-libgcc-more-fixes 2016-10-12 11:58:28 -07:00
Alexey Neyman
339b83c393 MINGW doesn't like libmpx either.
Signed-off-by: Alexey Neyman <stilor@att.net>
2016-10-07 10:35:57 -07:00
Alexey Neyman
1d43ed3151 Restore 1.0.17 and make 1.0.18 experimental.
1.0.18 changed the dependencies for the static libraries, notably
in libc/Makefile.in. This resulted in packing a lot of unrelated
stuff into libc.a, including (sic!) a nested .a library and stuff
from other libraries such as libdl. This results in a failure to
statically link with thus created libc.a:

.../libc.a(libdl.os):(.literal+0x74): undefined reference to `_dl_tlsdesc_return'

This was breaking xtensa-*-uclibc sample.

Signed-off-by: Alexey Neyman <stilor@att.net>
2016-10-05 15:23:40 -07:00
Alexey Neyman
1cb9253dd7 uClibc-ng pushes new releases faster than we merge them in!
Signed-off-by: Alexey Neyman <stilor@att.net>
2016-10-04 17:48:28 -07:00
Alexey Neyman
8121be5b21 Fix m68k with uClibc-ng >= 1.0.15.
1.0.15 only kept a single LINUXTHREADS option, and renamed it, making it
no longer option-compatible with uClibc.

The option for "1.0.14 or later" version of uClibc-ng is not currently
used; rename it to "1.0.15 or later" and use it to handle newer
uClibc-ng's linuxthreads.

m68k happens to be the only sample using linuxthreads.

Signed-off-by: Alexey Neyman <stilor@att.net>
2016-10-04 17:47:15 -07:00
Alexey Neyman
03730997ae GC uClibc 1.0.14.
Signed-off-by: Alexey Neyman <stilor@att.net>
2016-10-04 17:47:15 -07:00
Alexey Neyman
f35c62daf0 Add uClibc-ng 1.0.17.
Also, support uClibc-ng in addToolVersion.sh

Signed-off-by: Alexey Neyman <stilor@att.net>
2016-10-04 17:47:15 -07:00
Alexey Neyman
202ca9b7d4 Upgrade uClibc-ng to 1.0.14.
Signed-off-by: Alexey Neyman <stilor@att.net>
2016-10-04 17:47:15 -07:00
Dmitry Pankratov
34ca68e3b0 Merge branch 'master' of https://github.com/crosstool-ng/crosstool-ng 2016-10-01 22:43:56 +02:00
Alexey Neyman
651567ff90 Add a checkbox for libmpx build.
Disable libmpx for musl builds.

Signed-off-by: Alexey Neyman <stilor@att.net>
2016-09-22 17:01:43 -07:00
Bryan Hundven
290ae52db3 Merge pull request #441 from kozyilmaz/duma
duma: add SHARED_LIBS dependency for DUMA shared library option
2016-09-11 15:43:39 -07:00
kozyilmaz
2885b0ea2a duma: add SHARED_LIBS dependency for DUMA shared library option 2016-09-07 17:24:22 +03:00
Yogesh Sharma
4b4082785d musl: updated version to 1.1.15
Signed-off-by: Yogesh Sharma <ysharm01@harris.com>
2016-09-07 10:16:52 -04:00
Yogesh Sharma
a4a6f2305e gcc: Added 6.1.0 to version list
added gcc-6.1.0 to version list in kconfig

Signed-off-by: Yogesh Sharma <YogeshASharma@gmail.com>
2016-09-07 10:15:56 -04:00
kozyilmaz
deaa4b8ded xgcc: Update gcc 5 to 5.4.0
patches synced with buildroot trunk and:
110-xtensa-implement-trap-pattern.patch (copied to 5.4.0 patches)
130-build_gcc-5_with_gcc-6.patch (upstreamed in 5.4.0, dropped)
370-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch (copied to 5.4.0 patches)
380-gcc-plugin-POSIX-include-sys-select-h.patch (copied to 5.4.0 patches)
910-nios2-bad-multilib-default.patch (copied to 5.4.0 patches)
2016-08-24 11:33:24 +03:00
Bryan Hundven
19fdf86ab6 Merge pull request #402 from lundmar/fix_elf2flt_repo
Update elf2flt git repository location
2016-08-23 14:25:22 -07:00
Alexey Neyman
99dd2f6f60 mips: allow o32 ABI as default for multilib
... since n32 and n64 are going to get built as well.

Signed-off-by: Alexey Neyman <stilor@att.net>
2016-08-23 11:00:27 -07:00
Alexey Neyman
4ee22d66a8 uclibc: merge startfiles/final into single backend.
In preparation for multilib support, use the same "backend" model that
is already employed by glibc and musl.

Also, the verbosity setting descriptions were swapped. V=2 is actually
less verbose than V=1: V=1 prints full commands, while V=2 prints 'CC
<file> <defines>'.

Signed-off-by: Alexey Neyman <stilor@att.net>
2016-08-23 11:00:27 -07:00
Alexey Neyman
f204cc8ec4 Spelling fixes.
Signed-off-by: Alexey Neyman <stilor@att.net>
2016-08-23 11:00:27 -07:00
Alexey Neyman
d58e740be8 glibc.sh: cleanups
- Dump CT_LIBC_EXTRA_CC_ARGS: instead, treat CT_LIBC_EXTRA_CFLAGS as
  arguments to CC (or they are not applied to .S, for example).
  Combine them with multi_flags and CT_TARGET_CFLAGS in proper order.
- Analyze thus combined flags to determine --with-fp/--without-fp.
  Don't need to check CT_ARCH_FLOAT - it is reflected in
  CT_TARGET_CFLAGS anyway. Check more soft/hard float options defined
  on different architectures.
- Drop checking for endianness flags: they are not reflected in
  configure arguments in any way, and they're already present in CFLAGS
  (either via multi_flags or via CT_TARGET_CFLAGS). Besides,
  CT_ARCH_ENDIAN_OPT was actually called CT_ARCH_ENDIAN_CFLAG, so this
  was a no-op anyway.

Signed-off-by: Alexey Neyman <stilor@att.net>
2016-08-23 11:00:27 -07:00
Alexey Neyman
82072d0cbc multilib: Determine which options may pass through.
On some arches (e.g. MIPS) the options like -mabi do not work if
specified more than once (see the comment in 100-gcc.sh). Therefore,
we need to determine which of the options produced by <arch>.sh can
be passed to multilib builds and which must be removed (i.e., which
options vary among the multilibs).

This presents a chicken-and-egg problem. GCC developers, in their
infinite wisdom, do not allow arbitrary multilib specification to be
supplied to GCC's configure. Instead, the target (and sometimes some
extra options) determine the set of multilibs - which may include
different CPUs, different ABIs, different endianness, different FPUs,
different floating-point ABIs, ... That is, we don't know which parts
vary until we build GCC and ask it.

So, the solution implemented here is:
- For multilib builds, start with empty CT_ARCH_TARGET_CFLAGS/LDFLAGS.
- For multilib builds, require core pass 1. Pass 1 does not build any
  target binaries, so at that point, our target options have not been
  used yet.
- Provide an API to modify the environment variables for the steps that
  follow the current one.
- As a part of multilib-related housekeeping, determine the variable
  part of multilibs and filter out these options; pass the rest into
  CT_TARGET_CFLAGS/LDFLAGS.

This still does not handle extra dependencies between GCC options (like
-ma implying -mcpu=X -mtune=Y, etc.) but I feel that would complicate
matters too much. Let's leave this until there's a compelling case for
it.

Also, query GCC's sysroot suffix for targets that use it (SuperH,
for example) - the default multilib may not work if the command line
specifies the default option explicitly (%sysroot_suffix_spec is not
aware of multilib defaults).

Signed-off-by: Alexey Neyman <stilor@att.net>
2016-08-23 11:00:27 -07:00
Dmitry Pankratov
91b8280e8c Merge remote-tracking branch 'upstream/master' 2016-06-18 16:02:15 +02:00
Martin Lund
e4a21f634d Update elf2flt default cset 2016-06-14 07:54:52 +02:00
Ray Donnelly
aa30d0bc4f gcc: Add --with-multilib-list option
Written by Bryan Hundven.

Modified by Alexey Neyman to actually add the option to gcc.in.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
Signed-off-by: Alexey Neyman <stilor@att.net>
2016-06-09 17:12:49 -07:00
Alexey Neyman
a49e13fb4e sh: require multilib
Now that libc backend installs the libraries into the directory reported
by gcc as 'multi-os-directory', sh4 libraries are installed into a '!m4'
subdirectory. This directory then confuses GNU ld, which assumes the
exclamation mark to be a word separator and attempts to link to
'/usr/lib' (a directory). However, if multilib is enabled, the default
libraries are installed into the [expected] '/usr/lib/./'. This looks
like an artifact of SuperH's unique way of specifying the multilibs to
be built in GCC (which may list exclusions, starting with '!').

Signed-off-by: Alexey Neyman <stilor@att.net>
2016-06-09 17:12:49 -07:00
Alexey Neyman
08d91d41f3 musl: config is broken for !EXPERIMENTAL
If EXPERIMENTAL is not set, the only choice for version is the set of
released versions - currently, 1.1.14. But this only option is disabled
because it is also marked EXPERIMENTAL; this leaves no available choices
in the configuration.

Marking MUSL as experimental: it seems to have header issues which
prevent, for example, gdbserver from building. musl copied chunks of
ptrace.h code from the kernel into its own headers, which now clash with
Linux kernel headers. Manifests at least on SH4 target.

Also, musl breaks in powerpc builds: GCC balks at it with "unsupported
DEFAULT_LIBC" message. Also, 64-bit powerpc and mips are not supported.
So, until someone figures out the dependencies for musl in config/, mark
it experimental.

Signed-off-by: Alexey Neyman <stilor@att.net>
2016-06-09 17:12:49 -07:00
Jim Huang
fa89c82a3e gettext: bump version to 0.19.7 2016-04-30 00:16:13 +08:00
Erico Nunes
d312347348 avr-libc: update to 2.0.0
The avr-libc project has released version 2.0.0:
http://savannah.nongnu.org/forum/forum.php?forum_id=8460

Apart from changes and bugfixes, this release adds support for gcc 5,
which allows us to build gcc 5 avr toolchains and also to update our avr
sample.

avr-libc 2.0.0 has been build tested both with gcc 4.9.3 and gcc 5.3.0.

Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
2016-04-19 01:38:25 -03:00
Alexey Neyman
712b617a74 Unbreak sparc-unknown-linux-gnu.
GLIBC 2.23 dropped support for pre-v9 SPARC in pthreads. Pass host
triplet with s/sparc/sparcv9/ replacement for 2.23.

Signed-off-by: Alexey Neyman <stilor@att.net>
2016-04-01 18:15:39 -07:00
Dmitry Pankratov
f6d8dc4411 Merge remote-tracking branch 'upstream/master' 2016-03-30 05:41:36 +02:00
Bryan Hundven
6476f8a940 newlib: add option to enable nano formatted io
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2016-03-08 04:48:27 -08:00
Bryan Hundven
929e027500 newlib: add option to enable nano malloc
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2016-03-08 04:48:27 -08:00
Bryan Hundven
867a7d61ac newlib: Update newlib versions
Newlib release seem to be snapshots now. Newlib 2.3.0 was released in
git here:
https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;a=commit;h=ad7b3cde9c157f2c34a6a1296e0bda1ad0975bda

and the snapshot for 2.3.0 was here:
https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;a=commit;h=06cd7127e3cf16ab3c0aa665956deb263e524753

The 2.2 series was also updated.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2016-03-08 04:48:24 -08:00
Dmitry Pankratov
6e3e735680 MinGW: add C++11 posix threads support 2016-03-07 23:57:29 +01:00
Bryan Hundven
b30443458d musl-libc: Update to 1.1.14
We also remove the old 1.0 series.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2016-02-29 13:18:25 -08:00
Bryan Hundven
c1c03aa27c Merge pull request #356 from bhundven/check_static_link
configure: Check to see if gcc can static link
2016-02-28 12:16:10 -08:00
Yogesh Sharma
cea34175c4 kernel: Updated kernel revisions
Kernel revisions updated to match kernel.org.

Signed-off-by: Yogesh Sharma <YogeshASharma@gmail.com>
2016-02-26 23:45:36 -05:00
Bryan Hundven
b3869e933b config: Add static link check to static options
If we can't static link with gcc, then don't allow static linking.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2016-02-26 04:14:39 -08:00
Bryan Hundven
6430ff506e Merge pull request #353 from bhundven/glibc_cleanup
Glibc cleanup
2016-02-26 01:23:45 -08:00
Joachim Nilsson
77d7a0f927 gdb: Add support for v7.11, port patches from v7.10.1 that apply
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2016-02-24 23:00:23 +01:00
Bryan Hundven
88e8852ccd glibc: Clean out old glibc versions
We now only support glibc >=2.18
This now enables us to clean up glibc support!

Also, add a comment about glibc 2.20 as the point which glibc no longer
supports not building with pthread.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2016-02-23 17:27:54 -08:00
Yogesh Sharma
b395216fa7 kernel: Updated kernel revisions
Kernel revisions updated to match kernel.org.
Update includes removal of 4.2.x kernel (since it was EOL),
addition of 4.4.x kernel, and marking of 4.3.x as EOL.

Signed-off-by: Yogesh Sharma <YogeshASharma@gmail.com>
2016-02-23 19:42:59 -05:00
Bryan Hundven
17952f2fa4 glibc: Add glibc-2.23
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2016-02-23 10:37:30 -08:00
Bryan Hundven
1cfc160f9d Merge pull request #322 from modbw/libelf
Remove GCC dependency to libelf
2016-02-08 15:59:21 -08:00
Bryan Hundven
c20075fd21 uClibc-ng: Update to 1.0.12
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2016-02-05 13:27:24 -08:00
Bryan Hundven
6edcb10574 gdb: Add version 7.10.1
It's been out for a while, just haven't gotten around to it.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2016-02-05 03:27:08 -08:00
Bryan Hundven
2241a42415 binutils: Add binutils-2.26
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2016-02-04 22:55:08 -08:00
Cristoforo Cataldo
dc00d22db3 config/gcc: Update to Linaro GCC 5.2-2015.11-2
Signed-off-by: Cristoforo Cataldo <cristoforo.cataldo@gmail.com>
2016-01-30 13:37:57 +01:00
Matthias Weisser
3f05fcb52b Remove GCC dependency to libelf
As crosstools-ng only support GCC >= 4.8 we do not need libelf for gcc. GCC dropped this dependency with 4.6.

Signed-off-by: Matthias Weisser <m.weisser.m@gmail.com>
2016-01-18 16:08:23 +01:00
Bryan Hundven
72f3b9196a elf2flt: Use openadk version of elf2flt
elf2flt is now hosted on github here:
https://github.com/uclinux-dev/elf2flt

But, until arm support is upstream, we'll switch to Waldemar Brodkorb
version of elf2flt.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2016-01-13 05:58:28 -08:00
Bryan Hundven
8cae983532 uClibc-ng: Update to 1.0.11
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2016-01-12 08:51:09 -08:00
Bryan Hundven
225b96ebc8 gcc: remove CC_GCC_EXTRA_ENV_ARRAY
I was noticing that $extra_user_env was inconsistently used in
100-gcc.sh. I don't feel comfortable having just any make flag or
environment variable passed to make from a config file. If a specific
option needs to be passed to make for gcc, then a specific kconfig
option should be added for that make flag/option/env.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2016-01-06 11:07:06 -08:00
Bryan Hundven
50248e37e8 Merge pull request #296 from FreddieChopin/add-gmp-6.1.0
gmp: add version 6.1.0
2016-01-06 10:19:23 -08:00
Bryan Hundven
ce74282be4 Merge pull request #309 from bhundven/remove_old_binutils_versions
Remove old binutils versions
2016-01-05 21:45:48 -08:00
Bryan Hundven
5543f85feb binutils: Remove older versions of binutils
Since older GCC versions have been removed, older versions of binutils
are not needed.

This commit removes these older versions.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2016-01-03 01:18:32 -08:00
Bryan Hundven
b38fddfecd linux: Update kernel versions
The following versions were updated:
 * 4.3       -> 4.3.3 (stable)
 * 4.2.6     -> 4.2.8 (EOL)
 * 4.1.13    -> 4.1.15
 * 3.18.24   -> 3.18.25
 * 3.14.57   -> 3.14.58
 * 3.12.50   -> 3.12.51
 * 3.10.93   -> 3.10.94
 * 3.2.72    -> 3.2.75
 * 2.6.32.68 -> 2.6.32.69

4.3 mainline is now 4.3.3 stable
The 4.2 series is now EOL. You should move to 4.3.3!

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2016-01-02 23:32:43 -08:00
Bryan Hundven
3e4b88e434 gcc: Add new linaro version: 5.2-2015.11
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2016-01-02 22:33:24 -08:00
Bryan Hundven
8f4019e693 gcc: Update gcc 5 to 5.3.0
Reported-by: Freddie Chopin <freddie.chopin@gmail.com>
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2016-01-02 18:24:41 -08:00
Bryan Hundven
9f89e082c5 Whitespace: We don't use tabs in shell or kconfig files
We indent by multiples of 4.
This change cleans up whitespace in offending files.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-12-08 10:55:17 -08:00
Bryan Hundven
514f1546d7 config: Update kconfig for new CT_GetCustom
This commit sort of unifies the kconfigs to handle custom files and
directories.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-12-08 10:55:16 -08:00
Bryan Hundven
5d967e8b39 Linux: Remove obsolete Linux custom headers
This option allowed you to use a custom headers directory/tarball to use
in your sysroot.

Not to be confused with using a custom source, that option is the
preferred method.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2015-12-08 07:20:35 -08:00
Bryan Hundven
9d835eddcf config: Remove CUSTOM_LOCATION_ROOT_DIR
On top of making <component>_CUSTOM much more complicated to rewrite,
you couldn't depend on a requirement for all of the components to treat
custom sources the same with it around.

If you need a custom source for a component, define it in the component.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2015-12-08 07:20:35 -08:00
Bryan Hundven
83f8efa61f xtensa: Remove support for CT_CUSTOM_LOCATION_ROOT_DIR
Since CUSTOM_LOCATION_ROOT_DIR was removed from config/global/paths.in
in commit c499ccb, xtensa should depend only on it's
ARCH_XTENSA_CUSTOM_OVERLAY_LOCATION.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2015-12-08 07:20:35 -08:00
Freddie Chopin
0b435d61f8 gmp: add version 6.1.0
Signed-off-by: Freddie Chopin <freddie.chopin@gmail.com>
2015-12-07 15:00:00 +01:00
Bryan Hundven
cfd2a6b69c gcc: Gnu OpenMP support depends on threading
Instead of checking if thread support is enabled during the build, move
the check to kconfig-time. Since if threading support is not availble,
libgomp should not be available either.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-29 17:40:08 -08:00
Bryan Hundven
0e0ecc8bcf PPL: Remove support for PPL and CLooG/PPL
Now that versions of gcc that required PPL are no longer supported
( >= gcc-4.5.x AND <= gcc-4.7.x )
...we no longer require PPL or CLooG/PPL.

This commit:

* Removes PPL
* Removes CLooG/PPL
* Updates the documentation
* Updates build script for CLooG and GCC
* Removes PPL and CLooG/PPL from scripts/addToolVersion.sh and
  scripts/showSamples.sh
* Adds ISL to scripts/addToolVersion.sh and scripts/showSamples.sh

I know that sounds like a lot for one commit, but it was all kind of
inter-tangled.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-29 17:36:58 -08:00
Bryan Hundven
2a89c32193 gcc: Remove gcc <= 4.7.x
As per #222, in crosstool-NG >= 1.23.0, we will only support:

 [upstream supported gcc versions] - 1

As of this writing, these versions are:

* 5.2.0
* 4.9.3
* 4.8.5 (the -1, since development on 4.8.x is now closed)

I plan to keep 4.8.5 around because of some architectures having issues
with over-optimization or just faulty optimization in the 4.9.x and
possibly newer versions.

I also cleaned up a requirement for glibc to depend on >= gcc-4.6.x for
>= glibc-2.20, but since the lowest gcc we support after this change is
>= 4.8.5, this condition can go away.

Patches for older gcc versions are removed in the next commit.

This closes #222

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-29 17:36:58 -08:00
Bryan Hundven
8478376a86 uClibc: Add kconfig option to enable IPv6 support
This commit adds a kconfig option to enable IPv6 support.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-22 22:18:08 -08:00
Bryan Hundven
e0fd82bb01 mingw-w64: Set it as experimental
With the upcoming release of 1.22.0, mingw-w64 is still in an
experimental state, and is not considered to be fully supported yet.

This change should be reverted after the release.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-19 15:09:12 -08:00
Max Filippov
254d0681da xtensa: fix kconfig spelling and help text
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
2015-11-19 09:49:45 +03:00
Bryan Hundven
65fd24fc00 Merge pull request #265 from bhundven/ncurses_update
ncurses: bump to ncurses-6.0
2015-11-17 02:58:28 -08:00
Bryan Hundven
20f69f3240 ncurses: bump to ncurses-6.0
This commit removes ncurses-5.9 and adds 6.0.
I also provide the stable patch updates in patches/ncurses/6.0.
I have also added an experimental toggle for enabling the new ABI
support.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-16 13:35:56 -08:00
Bryan Hundven
0929675b95 uClibc-ng: Fix version prompt
In commit c9704c6683, I forgot to bump the
version in the prompt for uClibc-ng-1.0.9.

Reported-by: Reinoud Koornstra <reinoudkoornstra@gmail.com>
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-16 13:14:19 -08:00
Bryan Hundven
c9704c6683 uClibc-ng: Update to uClibc-ng-1.0.9
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-15 09:41:30 -08:00
Bryan Hundven
f72d5b5780 linux: Update linux kernel versions
This commit adds 4.3, and updates:

4.2.3   -> 4.2.6
4.1.10  -> 4.1.13
3.18.22 -> 3.18.24
3.14.54 -> 3.14.57
3.12.49 -> 3.12.50
3.10.90 -> 3.10.93
3.4.109 -> 3.4.110

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-14 18:35:40 -08:00
Bryan Hundven
465e5a8b9f Merge pull request #249 from stilor/expat_ncurses
Promote expat/ncurses to 'companion libs'
2015-11-14 17:40:21 -08:00
Alexey Neyman
bb704f532a Allow --with-cpu/--with-tune for !arm.
The configure error mentioned in the commits that disable
--with-arch/--with-tune when --with-cpu is specified is specific to ARM
builds. For other architectures, it makes sense (hey, it even makes
sense for ARM - read 'info gcc'! - it is just a shortcoming of ARM
build, apparently).

Thus, add an arch setting ARCH_EXCLUSIVE_WITH_CPU (currently, set only
for ARM) that will trigger current behavior. Permit combinations of
--with-arch/cpu/tune for other arches.

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-11-14 15:04:55 -08:00
Alexey Neyman
4d2d2ba954 Enable building expat/ncurses for host.
Then re-enable cross-gdb for nios2-spico-elf sample, previously
disabled.
2015-11-13 10:31:46 -08:00
Alexey Neyman
6102726147 Change ncurses to a companion library.
Currently, builds for build and target (matching the current
implementation). Need to add building for host for canadian crosses.

TIC_PATH is removed - configure in ncurses searches $PATH, so it finds
'tic' in buildtools anyway. Arguably unneeded code for MacOS also
removed, with a FIXME comment for validation by someone using MacOS.

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-11-13 10:31:46 -08:00
Alexey Neyman
ac7ce38475 Convert expat for target into a companion lib.
Expat-for-host to be done.

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-11-13 10:28:44 -08:00
Bryan Hundven
e78251b751 Merge pull request #253 from jcmvbkbc/xtensa-for-mainline-20151113
Add support for Xtensa architecture
2015-11-13 01:47:08 -08:00
Bryan Hundven
e4bb360748 file modes: Set files to be non-executable
I was going to start doing some autoconf work, and noticed that
configure.in was executable. Then I noticed Makefile.in was executable.

o.O

So, I ran ```find . -type f -executable``` and found a bunch of files
that shouldn't be set executable.

This commit makes them normal files again.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-12 23:18:04 -08:00
Chris Zankel
81328ed1cb xtensa: add support for the configurable Xtensa architecture.
The Xtensa processor architecture is a configurable, extensible,
and synthesizable 32-bit RISC processor core. Processor and SOC vendors
can select from various processor options and even create customized
instructions in addition to a base ISA to tailor the processor for
a particular application.

Because of the configurability, the build process requires one additional
step for gcc, binutils, and gdb to update the default configuration.
These configurations are packed into an 'overlay' tar image, and are
simply untarred on top of the default configuration during the build.

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
2015-11-13 09:08:53 +03:00
Bryan Hundven
57de8dcf22 Merge pull request #239 from diorcety-ctng/cc-cygwin-mingw-linux
Canadian cross build = x86_64 Cygwin host = x86_64 MinGW_W64 target = x86_64 GNU/Linux
2015-11-12 21:50:31 -08:00
Bryan Hundven
4c9218d51d Merge pull request #245 from villytiger/install-strip
Use install-strip target for gcc optionally
2015-11-12 21:50:08 -08:00
Ray Donnelly
9e81836b81 Add gettext and libiconv as companion libs
.. they're needed for the RPC generation in glibc
on both Cygwin and MinGW-w64.

Neither are built on GNU/Linux and iconv is not
built on Darwin.

Two patches for gettext are needed, one so that
-O0 works and one so that static builds can be
made.

They can take a good while to build, so if not
needed for_host or for_build then they are not
built.

Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
2015-11-13 02:17:45 +00:00
Bryan Hundven
a173dfa939 uClibc: Fall back to default configs if not provided
I've added the .config files to contrib/uClibc-defconfigs from buildroot
to use as default configs if they are not provided in the sample.

If a particular architecture really needs an option set, it should be
either updated in the manange_uClibc_config function in
scripts/build/libc/uClibc.sh or a custom ${uclibc_name}.config should be
added to the sample (usually via `ct-ng saveconfig`).

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-12 16:15:41 -08:00
Bryan Hundven
21a448516e uClibc: Add support for uClibc-ng
This commit adds uClibc-ng 1.0.8.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-12 16:15:41 -08:00
Bryan Hundven
930fa77076 uClibc: Reduce supported versions
This commit reduces the number of supported versions to:

* 0.9.33.2
* custom location

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-11 08:27:33 -08:00
Ilya Lyubimov
69405c3b32 Use install-strip target for gcc optionally 2015-11-11 12:29:54 +03:00
Alexey Neyman
bea0cde305 Support mingw-w64 in addToolVersion.sh.
... and add 4.0.4 release.

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-11-10 18:18:57 -08:00
Bryan Hundven
e9e29e7a46 blackfin: Remove blackfin support
This commit removes blackfin support.

I'm open to re-adding blackfin after crosstool-1.23.0 is released, but
it is currently too difficult to port forward to newer versions of gcc
and uclibc.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-09 22:30:45 -08:00
Bryan Hundven
85f98147f5 Merge pull request #233 from stilor/fix-build-all
Fix build-all
2015-11-04 02:50:05 -08:00
Bryan Hundven
387955ea86 Merge pull request #232 from bhundven/less_gcc_versions_part_1
gcc: Support only the latest branch releases of gcc
2015-11-02 14:21:10 -08:00
Bryan Hundven
4be766254d config: MIPS64 is no longer experimental
This is a weird artifact from when mips64 was first introduced to ct-ng
and was never removed from experimental.

If you have problems building a mips64 toolchain, please report on the
mailing list or on github issues.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-02 14:14:38 -08:00
Bryan Hundven
1a25115a18 gcc: Support only the latest branch releases of gcc
This change, as per #222, reduces the number of supported releases of
gcc to the latest branch releases.

I noticed while doing this work that gcc-4.5.4 was never added, so I
moved patches for gcc-4.5.3 to 4.5.4 and updated the
bfin-unknown-linux-uclibc example. Also, 120-siginfo.patch was fixed
upstream in the 4.5.4 release, so this patch is omitted.

I also bumped the avr sample to 4.9.3 from 4.9.2.

With the addition of gcc-5.x, the gcc release team now releases the
major.minor.0 versions, while updates to the branch are available in
svn/git. We'll address that when we get to issue #219. This change just
removes CC_GCC_5_1 and moves CC_GCC_5_2 to CC_GCC_5, and removes
CC_GCC_5_1_or_later and moves CC_GCC_5_2_or_later to CC_GCC_5_or_later.

This is the first of two part changes, as mentioned in #222.
This change is slated for release in 1.22.0. The next change will be
slated for 1.23.0, and will limit gcc versions to what is on
https://gcc.gnu.org under "Release Series and Status", which is
currently 4.9.3 and 5.2.0, although I will also support the previous
supported version. In this example that would be 4.8.5.

Last, but not least, this change also retires AVR32 support.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-10-31 12:17:35 -07:00
Alexey Neyman
5844514e74 Fix samples using GMP 4.3.2.
Some older versions of configure (including the one in GMP 4.3.2)
interpret the $ECHO environment variable as the `echo' utility to
use. CT-NG sets the variable to `:' and exports it if V=0 or V=1
is supplied, breaking the samples using such configure. This currently
includes bfin-unknown-linux-uclibc and powerpc-unknown-linux-uclibc.

Also, correct the description of the V= variable - V=0 is *not* the
default; in fact, default does not correspond to any of the V=[012]
values.

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-10-30 16:24:52 -07:00
Bryan Hundven
7bcc61dd64 Merge pull request #213 from bhundven/binutils_gold_conflicts_with_static_toolchain
binutils: Gold conflicts with Static Toolchain
2015-10-20 22:04:08 -07:00
Bryan Hundven
ab916c10c7 linux: Update linux kernel versions
Update current stable and long-term releases:
* 4.2       -> 4.2.3
* 4.1.6     -> 4.1.10
* 3.18.20   -> 3.18.22
* 3.14.51   -> 3.14.54
* 3.12.47   -> 3.12.49
* 3.10.87   -> 3.10.90
* 3.4.108   -> 3.4.109
* 3.2.71    -> 3.2.72
* 3.6.32.67 -> 3.6.32.68

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-10-20 01:26:51 -07:00
Bryan Hundven
539db52b62 musl-libc: update musl-libc mainline to 1.1.12
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-10-20 01:07:39 -07:00
Bryan Hundven
c27ab65e45 binutils: Gold conflicts with Static Toolchain
The gold linker cannot currently be built in a static toolchain build.
This may get fixed in a future version of crosstool-NG.

Also, there is a bit of weirdness here. versions of binutils >= 2.21
have GOLD (BINUTILS_HAS_GOLD), but that doesn't mean it should be used.
For instance, if the architecture is not supported.

So with that, we create a new hidden option: BINUTILS_GOLD_SUPPORT
Which in turn depends on BINUTILS_GOLD_SUPPORTS_ARCH, BINUTILS_HAS_GOLD,
and not STATIC_TOOLCHAIN... then replace anything that previously
depended on BINUTILS_HAS_GOLD with our new BINUTILS_GOLD_SUPPORT option.

This closes #210

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-10-20 00:35:36 -07:00
Bryan Hundven
25df7f9bf4 Merge pull request #205 from jasmin-j/add_gcc_build_step
Using "all" and "install" targets in do_gcc_core_backend if configured
2015-10-14 15:50:43 -07:00
Bryan Hundven
d40ff3be76 Merge pull request #204 from jasmin-j/gdb_custom_version
Remove CC_GDB_CUSTOM from the version choice
2015-10-14 15:49:17 -07:00
Jasmin Jessich
3bd86362ab Using "all" and "install" targets in do_gcc_core_backend if configured.
- New configurations:
  - CC_GCC_TARGET_FINAL:
    Use the default targets "all" and "install" for the final compiler for
    bare metal.
- Adding parameter "build_step" to function do_gcc_core_backend:
  do_gcc_core_backend is used for the core compiler and in case of bare metal
  for the final compiler, too. To have better control over the parameters for
  the final compiler "build_step" is used.
  - Used for proper logging.
  - Use CT_CC_GCC_CORE_EXTRA_CONFIG_ARRAY or CT_CC_GCC_EXTRA_CONFIG_ARRAY.
  - If CT_CC_GCC_TARGET_FINAL is set and the final compiler is build then the
    make targets for the final compiler are used ("all", "install").

  Signed-off-by: Jasmin Jessich <jasmin@anw.at>
2015-10-10 00:24:42 +02:00
Bryan Hundven
9e9b9bd195 Merge pull request #184 from jasmin-j/add_gcc_env_array
Add additional environment variables for gcc build.
2015-10-07 13:32:53 -07:00
Jasmin Jessich
26e0cfe452 Remove CC_GDB_CUSTOM from the version choice.
Signed-off-by: Jasmin Jessich <jasmin@anw.at>
2015-10-07 00:26:15 +02:00
Jean-Marie Lemetayer
6b0fa2221a Revert the automated build option
This reverts commits:
 * d6413fe29f.
 * 4f266e1a8c.

Signed-off-by: Jean-Marie Lemetayer <jeanmarie.lemetayer@gmail.com>
2015-10-03 14:35:22 +02:00
Bryan Hundven
d6413fe29f config: Tone down automated build logs
I forgot that the logs must stay small, and if they fail we'll grab the
last few hundered lines.

Note, the logs must stay smaller then 4M.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-09-29 19:08:45 -07:00
Bryan Hundven
4f266e1a8c configure: Add automated build option
This commit introduces a configure time option to let the build know
that this is going to be an automated build.

This forces the build to disable the progress bar, log tool warnings,
and force the log level to debug.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-09-29 16:22:49 -07:00
Jasmin Jessich
94068f04fd Remove isl 0.15, because it will not compile with gcc 5.2.0 without patching gcc. 2015-09-22 21:57:40 +02:00
Jasmin Jessich
931248f1aa Added additional environment variables for gcc build (make) with new option
GCC_EXTRA_ENV_ARRAY.

Signed-off-by: Jasmin Jessich <jasmin@anw.at>
2015-09-22 00:21:36 +02:00
Bryan Hundven
c2f3ec1def Merge pull request #170 from jasmin-j/newlib_target_cflags
Newlib specific target cflags
2015-09-15 08:05:49 -07:00
Jasmin Jessich
9e905afb56 Added additional newlib specific target flags with new option
LIBC_NEWLIB_TARGET_CFLAGS.

Signed-off-by: Jasmin Jessich <jasmin@anw.at>
2015-09-14 23:32:07 +02:00
Jasmin Jessich
ed647a79b0 Fixed issue 173 and 174.
gcc 5.x   -> isl 0.12.2, 0.14 0.15
gcc < 5.x -> cloog < 0.18.4  -> isl 0.12.2, 0.11.1
          -> cloog >= 0.18.4 -> isl 0.14

Signed-off-by: Jasmin Jessich <jasmin@anw.at>
2015-09-13 23:10:00 +02:00
Philipp Kirchhofer
1cc9f32271 Fix tristate Kconfig options
After the Kconfig update the "option modules" setting must be set
on the MODULES config option to enable tristates again.

Signed-off-by: Philipp Kirchhofer <philipp@familie-kirchhofer.de>
2015-09-07 13:30:18 +02:00
Bryan Hundven
d803bcb819 Merge pull request #153 from jasmin-j/mpfr_3_1_3
Support mpfr V 3.1.3
2015-09-05 16:30:26 -07:00