Commit Graph

3035 Commits

Author SHA1 Message Date
Yann E. MORIN
de6b673394 libc/glibc: add patch to avoid caddr_t redefinition
Forward-ported from glibc-2.13.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-09-02 13:44:49 +02:00
Bryan Hundven
759e191c25 patches/experimental/gcc: Add patches for musl-lib support
The following are experimental patches for gcc that add support for
musl-libc.

I haven't been able to test every combination, but please test and let
me know on the mailing-list or on irc your results!

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
[yann.morin.1998@free.fr: ditch the gcc-4.7 patches]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-08-31 22:00:02 +02:00
Bryan Hundven
838bf3a74b libc/musl: Remove 1.0.3 and 1.1.3. Add 1.0.4.
This change removes 1.0.3 and 1.1.3 and linker regession patches for
those versions.

We add 1.0.4, and a patch needed for gcc-4.9.x which defines
`max_align_t'.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-08-31 21:55:07 +02:00
Yann E. MORIN
a56df802eb cc/gcc: add option to enable/disable libsanitizer
libsaniotizer requires a few headers that are not in uClibc, for
example. Also, it is only available for native threads (NPTL under
glibc.) Finally, it is only available starting with gcc-4.8.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-08-31 18:54:13 +02:00
Yann E. MORIN
15f60baf95 libc/mingw: does not require gcc core pass-1
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-08-31 01:43:34 +02:00
Fabian Freyer
2666e6fa2e Added documentation for --with-grep
Signed-off-by: "Fabian Freyer" <fabian.freyer@physik.tu-berlin.de>
2014-08-28 22:33:02 +02:00
Fabian Freyer
fd5720e6d9 scripts/crosstool-NG: use ${grep} instead of 'grep'
Helps building on BSD-like systems.

Reported-by: Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
Signed-off-by: "Fabian Freyer" <fabian.freyer@physik.tu-berlin.de>
[yann.morin.1998@free.fr: split the original patch]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
2014-08-28 22:32:17 +02:00
Fabian Freyer
22f87a8a38 configure: add option to specify grep
Allows users for which GNU grep is not the default grep (e.g. BSD
folks), or is in a weird location.

Reported-by: Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
Signed-off-by: "Fabian Freyer" <fabian.freyer@physik.tu-berlin.de>
[yann.morin.1998@free.fr: split the original patch]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
2014-08-28 22:32:09 +02:00
Fabian Freyer
0e339fbbf6 scripts/functions: use ${sed} instead of 'sed'
Helps build on BSD-like systems.

Reported-by: Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
Signed-off-by: "Fabian Freyer" <fabian.freyer@physik.tu-berlin.de>
[yann.morin.1998@free.fr: split the original patch]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
2014-08-28 22:31:57 +02:00
Bryan Hundven
2a275f6cc8 debug/gdb: add GDB_HAS_PYTHON
Add a Kconfig boolean to enable python, only if GDB_7_0_or_later.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-08-26 23:46:55 +02:00
Bryan Hundven
d1eb5347cf debug/gdb: add gdb 7.8
Add updated gdb 7.8 to the available versions of gdb.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-08-26 23:45:57 +02:00
Bryan Hundven
52260ccebb libc/musl: add musl-libc support
This patch adds initial support for musl-libc.

Musl-libc versions currently supported:
* 1.0.3 (Stable)
* 1.1.3 (Previous Mainline)
* 1.1.4 (Mainline)

Futher improvements are needed.
* gcc-4.9.x has issues (Might be fixed in musl-1.1.4).
* Multilib support is needed.
* Checks to make sure paths are correct.
* Move to 2-step gcc build. 3-step build is not necessary.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
[yann.morin.1998@free.fr: removed the gcc musl patch, to be added later;
 removed dead code do_get_arch()]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-08-08 22:49:37 +02:00
Yann E. MORIN
152b7ad4b4 libc/mingw: threads are the native ones
There is no need to differentiate the win32 threads case, since we
can cosider them to be the native implementation on Windows.

Besides, with the previous patch, nothing uses it anymore.

So, just remove it.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc Bryan Hundven <bryanhundven@gmail.com>
2014-07-28 01:23:34 +02:00
Yann E. MORIN
a394fe49ec libc: libces are responsible for naming their threads implementation
This will help add new implementations, such as the one in musl.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Bryan Hundven <bryanhundven@gmail.com>
2014-07-28 01:23:34 +02:00
Yann E. MORIN
b1f536966b libc: rename the threads options
Use a more coherent naming for the options. This will help commonalise
the native case (e.g. NPTL on Linux, win32 on Windows), and add alternate
implementations (e.g. musl.)

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Bryan Hundven <bryanhundven@gmail.com>
2014-07-28 01:23:34 +02:00
Bryan Hundven
85622fdd49 Add main EXPERIMENTAL_PATCHES setting
This change adds support for experimental patches to be introduced to
crosstool-ng. The patches enabled by this option are to be located here:

    patches/experimental/<package>/<version>/XXXX-NAME.patch

Where, XXXX is the patch number to be applied in order, like:
    0001-some_patch_one.patch
    0002-some_patch_two.patch
    9999-some_patch_to_be_applied_last.patch

In the first patch series, all patches in the EXPERIMENTAL_PATCHES
option will be applied all at once, or none at all.

In a later [RFC] patch, I plan on adding finer tuned patch
enable/disable options based on the name of the patch and where it is
located in the patches/experimental sub-tree. So the name of the patch
should use underscores between words in the patch name.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
[yann.morin.1998@free.fr: slightly reword prompt]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-07-28 01:21:51 +02:00
Alexandre Belloni
71074b7f82 samples: add arm-cortexa5-linux-uclibcgnueabihf
This configuration has been tested on an Atmel sama5d3 board. It is a Cortex-A5
without neon and the floating point unit is a vfpv4-d16.

Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
2014-07-27 01:21:13 +02:00
Cody P Schafer
022dc5e094 scripts/addToolVersion: simpily gcc handling and fix for gcc-4.9.X (and later)
Signed-off-by: Cody P Schafer <dev@codyps.com>
2014-07-19 12:23:02 +02:00
Cody P Schafer
6b1a230482 scripts/addToolVersion: fix for gdb versions >= 7.2
Signed-off-by: Cody P Schafer <dev@codyps.com>
2014-07-19 12:22:31 +02:00
Cody P Schafer
22126a402e config/debug/gdb: add 7.7.1
Also remove the unneeded select in 7.7

Signed-off-by: Cody P Schafer <dev@codyps.com>
2014-07-19 12:21:10 +02:00
Cody P Schafer
d0c8506e67 cc/gcc: add 4.9.1
Signed-off-by: Cody P Schafer <dev@codyps.com>
2014-07-19 12:18:21 +02:00
Cody P Schafer
975d24cb35 cc/gcc: avoid passing --enable-multilib (take 2)
The previous patch (cset b61a1b1, cc/gcc: avoid passing --enable-multilib)
only fixed the core backend, and missed the final backend.

This patch does the same as b61a1b1, but for the final backend.

Signed-off-by: Cody P Schafer <dev@codyps.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-07-19 12:10:23 +02:00
Yann E. MORIN
7f1c646a97 kernel/linux: further bump the versions
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-07-08 22:43:14 +02:00
Bryan Hundven
a2e85b46d7 kernel/linux: update kernel versions
Add 3.15.0, and update all other branch versions.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2014-07-08 22:42:55 +02:00
Anton Leontiev
518d1dfc6e cc/gcc: Add 4.7.4 and 4.8.3
Signed-off-by: Anton Leontiev <aleontiev@elvees.com>
2014-07-03 23:05:17 +02:00
Thomas Petazzoni
1a8ca5b41b samples/arm-unknown-linux-uclibcgnueabi: major update
This commit updates the arm-unknown-linux-uclibcgnueabi sample to the
modern age:

 - gcc is bumped from 4.4.3 to 4.8.2
 - binutils is bumped from 2.19 to 2.24
 - gdb is bumped from 7.1 to 7.7
 - uclibc is bumped from 0.9.30 to 0.9.33
 - kernel headers are bumped to 3.10
 - strace is bumped to 4.8
 - all companion libraries are also updated

In addition, the ARCH_CPU/ARCH_TUNE configuration options are changed
from xscale to arm926ej-s, with the reasoning that in the ARMv5
ecosystem, ARM926EJ-S cores are much, much more widely used than
Xscale cores.

The resulting toolchain was tested by building a Busybox-only system
with Buildroot, and testing it under an ARMv5 Qemu emulation.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2014-06-28 22:37:46 +02:00
Thomas Petazzoni
348a67cceb patches/uClibc: add uClibc 0.9.33.2 patch to build with recent kernel headers
uClibc 0.9.33.2 has an issue related to __kernel_long and similar
types when building with kernel headers >= 3.4. This commit adds a
uClibc that fixes this issue, and allows building with recent kernel
headers.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2014-06-28 22:36:37 +02:00
Yann E. MORIN
e20dcac9dd ct-ng: 'clean' removes the build dir
It makes more sense to remove the build dir on 'clean' rather than
on 'distclean', since the latter also trashes the .config file.

Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-06-28 21:05:09 +02:00
Yann E. MORIN
645a5c33ae scripts: remove legacy mk-release.sh
This script is too Hg-specific. Just remove it.

In case we need something similar in the future,
we'd just have to use the better git counterparts.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-06-28 17:13:33 +02:00
Yann E. MORIN
bda692e737 scripts: remove legacy mk-patches.sh
This script is too Hg-specific. Just remove it.

In case we need something similar in the future,
we'd just have to use the better git counterparts.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-06-28 17:07:58 +02:00
Yann E. MORIN
6ecd4e801d scripts: another change needed for the Hg->git conversion
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-06-28 13:10:23 +02:00
Yann E. MORIN
3ee0dadd33 docs: start cleaning up after the conversion from Hg to git
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-06-28 12:59:46 +02:00
Yann E. MORIN
11a7a4cdcd configure: use a saner version string for git snapshots
This avoids using an oldish tag as base for the version string.

Reported-by: Bryan Hundven <bryanhundven@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-06-27 23:36:11 +02:00
Yann E. MORIN
a11b51c254 scripts: first batch of hg->git conversion
Replace calls to 'hg' with as-close-as-possible equivalents in git.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-06-27 00:59:00 +02:00
Yann E. MORIN
bdf731eead repository: migrate old hg files over to git
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-06-27 00:28:53 +02:00
Yann E. MORIN"
6ed78d4cba all: fix wildcard to work with make-4.x
In make-3.8x, the $(wildacrd) function would sort the entries,
while in make-4.x, it would just return the entries in any
unpredictable order [*]

Use the $(sort) function to get reproducible behaviour.

[*] Well, most probably the roder the entries appear when read
from readdir()

Reported-by: Andrew Ruder <andrew.ruder@elecsyscorp.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Tested-by: Andrew Ruder <andrew.ruder@elecsyscorp.com>
2014-06-25 23:33:01 +02:00
Yann E. MORIN"
fba4254768 complibs/cloog: remove old CLooG/PPL versions
Those versions are no longer available upstream. They have purely and
simply disapeared, without leaving any trace of their mere existences.

Just keep the latest cloog-ppl-0.15.11, which still exists on the gcc
infra mirror (but for how long?)

Reported-by: Guillaume FLORENCE-COURTAND <gflorenc@laposte.net>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-05-26 23:25:17 +02:00
Yann E. MORIN"
d0cc0b3a56 arch: use the newly introduced target_bits_64
Convert MIPS and Sparc over to using the new target_bits_64 variable.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-05-12 00:09:31 +02:00
Cody P Schafer
aaaea2987a arch/powerpc: add powerpc64le support
Technically, I don't forbid powerpcle support either, but I'm not sure that
there is any library/compiler support for that at the moment (though the hw
technically makes it possible).

powerpc64le needs glibc 2.19 and gcc 4.9. I haven't looked into the support
tools, but at least gdb 7.5 is too old (7.7.1 definitely has support).

Also make powerpc64 non-experimental. It's practically old at this point.

Signed-off-by: Cody P Schafer <dev@codyps.com>
[yann.morin.1998@free.fr: use ${target_endian_le} and ${target_bits_64}]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Message-Id: <64bfbbced9dd8f62e0d6.1399801945@gun>
Patchwork-Id: 347775
2014-05-12 00:02:13 +02:00
Yann E. MORIN"
12e1875557 scripts/functions: introduce target_bits_32 and target_bits_64 variables
These variables behave the same for bitness as their counterparts do
for endianness: they are defined to the appropriate bitness.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Cody P Schafer <dev@codyps.com>
2014-05-11 23:55:16 +02:00
Yann E. MORIN"
bcb36bb8df scripts/functions: add target_endian_le and target_endian_be
We currently define target_endian_el and target_endian_eb to be the
tuple extension depending on endianness, defined to be respectively
'el' or 'eb' according to the endianness.

Some architecture do not use 'el' or 'eb', but use 'le' or 'be'.

Provide that as well, as two new variables: target_endian_le and
target_endian_be.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Cody P Schafer <dev@codyps.com>
2014-05-11 23:43:52 +02:00
Cody P Schafer
f941e1bad5 cc/gcc: add 4.9.0
Signed-off-by: Cody P Schafer <dev@codyps.com>
[yann.morin.1998@free.fr: latest is now a 4.9]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Message-Id: <5bac788539bb272893ed.1399801933@gun>
Patchwork-Id: 347774
2014-05-11 23:31:54 +02:00
Bernhard Walle
6ab70a6fb2 complibs/ppl: Fix build of ppl 0.11.2 with gcc 4.9
From: Roberto Bagnara <bagnara@cs.unipr.it>
  Date: Tue, 29 Apr 2014 19:51:43 +0000 (+0200)
  Subject: Added missing inclusions.  Use std::ptrdiff_t.
  X-Git-Url: http://www.cs.unipr.it/git/gitweb.cgi?p=ppl%2Fppl.git;a=commitdiff;h=61d4e14dfd9f1121e9b4521dead5728b2424dd7c

  Added missing inclusions.  Use std::ptrdiff_t.
  (Thanks to Paulo Cesar Pereira de Andrade.)

Signed-off-by: Bernhard Walle <bernhard@bwalle.de>
Message-Id: <5632a171e7c1dc4c0fb5.1399806148@euler.fritz.box>
Patchwork-Id: 347777
2014-05-11 13:00:36 +02:00
Yann E. MORIN"
8989b2d658 binutils/elf2flt: restore the custom location functionality
Somehow, it got lost when incorporating elf2flt in the binutils farmework.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-05-11 17:51:33 +02:00
Yann E. MORIN"
298982aab2 binutils/binutils: do not forget to extract elf2flt
In case we're using a custom (aka local) binutils source, we still
need to extract and patch elf2flt.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-05-11 18:42:30 +02:00
Yann E. MORIN"
04a7340d0a binutils/elf2flt: use alternate mirror
The official elf2flt upstream has disapeared.

Switch to a mirror.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-05-11 15:43:28 +02:00
Yann E. MORIN"
e2d2b2ae11 functions: finally fix the git helper
It's gonna soon be used by elf2flt, so we better get it working.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-05-11 17:47:53 +02:00
Yann E. MORIN"
dd60b1fa9d config: switch cc with libc in the config order
Some of the compiler options depend on the C library choice, (e.g.
whether core passes are needed).

Since the compiler menu comes before the C library menu, those options
may or may not be visible until the C library is chosen, leading to
either options being visible by the user (thus be puzzling as they would
not apply to his case), or invisible to him (yet again puzzling him).

Invert the order of the compiler and the C library in the menuconfig. It
anyway looks more rational, in the end.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-05-11 13:38:12 +02:00
Cody Schafer
db2872f2ac cc/gcc: allow CC_EXTRA_CONFIG_ARRAY on baremetal
The final bare-metal compiler is built using the core backend.
Currently the core uses the CC_CORE_EXTRA_CONFIG_ARRAY variable.

While this works as supposed to, this can leave the user puzzled
in the menuconfig, since all he can see is the core options, not
the final options.

Only show the core options if any of the core passes are needed,
and use the final options in the core-backend if we're issuing
the bare-metal compiler.

Signed-off-by: Cody P Schafer <dev@codyps.com>
[yann.morin.1998@free.fr: hide core options if no core pass needed;
 use final option in core backend if issuing the bare-metal compiler]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Message-Id: <22181e546ba746202489.1399688067@localhost>
Patchwork-Id: 347586
2014-05-09 19:13:49 -07:00
Cody Schafer
b61a1b13ee cc/gcc: avoid passing --enable-multilib
Some versions of gcc have a broken --enable-multilib flag. As multilib is the
default, only pass the --disable-multilib flag

Signed-off-by: Cody P Schafer <dev@codyps.com>
[yann.morin.1998@free.fr: make it an if-block; duplicate commit log as comment]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Message-Id: <5c970c1ceb22528fe28a.1399687923@localhost>
Patchwork-Id: 347585
2014-05-09 19:11:59 -07:00