Commit Graph

3312 Commits

Author SHA1 Message Date
Alexey Neyman
734d1ebf27 Restore uClibc samples.
Commit 1a25115a18 deleted non-GCC related
files, including the patch for uClibc to compile with Linux kernels after
3.4.

uClibc 0.9.30 patches are not restored by this change (0.9.30 is broken
with recent kernels for multiple other breakages in addition to that; if
not retired, it needs to be fixed properly).

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-11-09 11:58:17 -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
5ffc9ecd10 Merge pull request #235 from stilor/ctng-source
ctng source
2015-11-03 00:35:30 -08:00
Bryan Hundven
8c87c3d719 Merge pull request #238 from bhundven/cross_compile_issues
Fix some cross_compile issues
2015-11-03 00:30:54 -08:00
Bryan Hundven
3b854d4939 uClibc: Don't use CROSS, use CROSS_COMPILE instead
As per:
http://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/Makefile.help?id=044843f002f666db3bc06c513ed6291a00ad1225

CROSS= is for compatibility, but we plan on dropping older uClibc
versions, and adding uClibc-ng and uClibc-snapshot support.

Use CROSS_COMPILE instead.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-02 17:01:20 -08:00
Bryan Hundven
bb821551c5 linux: Set CROSS_COMPILE while building/checking headers
Some architectures, like arc and blackfin set CROSS_COMPILE to a default
if it is not set on the command-line.

Since we are building the cross-compiler, we need to ALWAYS set
CROSS_COMPILE, since building/checking headers is done after the GCC
PASS1 step.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-02 16:55:44 -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
48a0c42754 Merge pull request #237 from bhundven/mips64
config: MIPS64 is no longer experimental
2015-11-02 14:17:13 -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
b2f8afef85 Interpret escape sequences in CT_DoLog.
Otherwise, CT_Abort messages with \n are not displayed properly.

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-10-30 16:24:52 -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
Alexey Neyman
1ad356c178 Clean up new .build-all directory.
Signed-off-by: Alexey Neyman <stilor@att.net>
2015-10-30 16:24:52 -07:00
Alexey Neyman
ce588c01d8 Add new temp directory to .gitignore.
Signed-off-by: Alexey Neyman <stilor@att.net>
2015-10-30 16:24:52 -07:00
Alexey Neyman
41891506f6 Do not stop build-all after a failed sample.
Instead, continue until the end and provide a summary (PASS/XFAIL/FAIL)
at the end. If there are any FAILs, exit with code 1.

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-10-30 16:24:52 -07:00
Alexey Neyman
aba43b63d3 Order the samples in build-all.
First, build cross samples (indicated by lack of comma in their names);
then, build canadian cross samples (and, when they are supported,
cross-native). While building canadian cross, set up the path to the
build-to-host cross if it was built previously.

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-10-30 16:24:52 -07:00
Alexey Neyman
b36e002124 Avoid commas in autogenerated CT_PREFIX_DIR.
Signed-off-by: Alexey Neyman <stilor@att.net>
2015-10-30 16:24:52 -07:00
Alexey Neyman
1d6bed6254 Only create backtrace stamp if dir exists.
If the build is aborted before the working directory is created,
there's also an induced error message about inability to create
a 'backtrace' file. But in that case, there is no subshells executing
yet.

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-10-30 16:24:52 -07:00
Alexey Neyman
a9e6606e53 Make build-all non-interactive.
'make oldconfig' results in asking the user about options not explicitly
set in the defconfig. Instead of copying, run 'conf --defconfig', as in
the normal sample's build sequence. Also, invoke 'conf --oldconfig'
directly, with a -s option, to avoid spamming with useless
"configuration written to .config" messages.

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-10-30 16:24:52 -07:00
Alexey Neyman
e71f0db6e3 Rename nios2 sample to match the naming convention.
With current name, 'make saveconfig' is broken for this sample. Also, it
is confusing to have a sample named 'nios2-elf-mingw32' while show-tuple
refers to it as 'nios2-spico-elf' and saveconfig attempts to save it
into 'i686-w64-mingw32,nios2-spico-elf'.

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-10-30 16:24:52 -07:00
Alexey Neyman
80cbfb9da7 Make show-config consistent with sample name.
'ct-ng show-config' will prepend host for canadian builds; otherwise,
the name is different from the name used to configure the build
(and indistinguishable from a simple cross).

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-10-30 16:24:52 -07:00
Alexey Neyman
f849505ac9 Sanity check for number of parallel jobs.
Signed-off-by: Alexey Neyman <stilor@att.net>
2015-10-30 13:53:53 -07:00
Alexey Neyman
263e8026ec Change sed monstrosity into a make variable.
The convoluted sed expression was doing what is already available in
make as `$*'.

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-10-30 10:32:16 -07:00
Alexey Neyman
319023c7af Implement 'ct-ng source'.
Provides a simpler alternative to editing config to enable
CT_ONLY_DOWNLOAD, doing ct-ng build and then restoring .config.

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-10-30 01:23:53 -07:00
Bryan Hundven
55d8497fea Merge pull request #230 from bhundven/config_sub_guess_update
scripts/config.{sub,guess}: Update from upstream
2015-10-29 15:16:17 -07:00
Bryan Hundven
f7c312b240 scripts/config.{sub,guess}: Update from upstream
Update config.sub and config.guess from:
* git://git.sv.gnu.org/config.git

See their gitweb:
* http://git.savannah.gnu.org/gitweb/?p=config.git

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-10-29 15:13:33 -07:00
Bryan Hundven
1b476c437d Merge pull request #225 from stilor/nios2-fix
Unbreak nios2-elf-mingw32 sample
2015-10-28 11:13:13 -07:00
Bryan Hundven
bdd4cd545f Merge pull request #226 from stilor/mark-broken
Mark broken: i586-mingw32msvc,i686-none-linux-gnu.
2015-10-28 11:06:17 -07:00
Alexey Neyman
34c57c56fd Turn off CT_MULTILIB in nios2-elf-mingw32.
There are no multilibs in GCC configured for this arch.

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-10-27 23:58:41 -07:00
Alexey Neyman
444db621a3 Disable cross-gdb in nios2-elf-mingw32.
Building cross-gdb in canadian cross requires expat/ncurses for the
host. Currently, 300-gdb.sh only builds expat/ncurses for the target
(for native-gdb). For cross-gdb on regular cross (build==host), expat
and ncurses are expected to be provided by the host.

There are two approaches possible:

- If building for canadian cross, build expat/ncurses for cross-gdb
  just as the native-gdb does.
- Promote expat/ncurses to first class citizens and build them as
  companion libs during the build of the build-to-host toolchain.

I am leaning towards the latter approach - it would also allow to
specify the versions for expat/ncurses rather than have them hardcoded
in 300-gdb.sh - but would appreciate feedback.

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-10-27 23:58:41 -07:00
Alexey Neyman
580f300ad9 Disable with-system-lib.
Target does not have libz/zlib.h.

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-10-27 23:58:40 -07:00
Alexey Neyman
41892bbf74 Stash nios2 config adjusted for consistence with the rest.
Signed-off-by: Alexey Neyman <stilor@att.net>
2015-10-27 23:58:34 -07:00
Alexey Neyman
3a436690a7 Mark broken: i586-mingw32msvc,i686-none-linux-gnu.
Error message:
[EXTRA]  Preparing working directories
[ERROR]  Missing: 'i586-mingw32msvc-ar' or 'i586-mingw32msvc-ar' or 'ar': either needed!

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-10-27 15:45:03 -07:00
Bryan Hundven
195f6f2051 Merge pull request #224 from stilor/ltrace
Ltrace
2015-10-27 01:10:10 -07:00
Alexey Neyman
0a050d3390 Clean up *.la after installing compiler/libraries.
Having *.la in the installation directory breaks ltrace: in ltrace,
libtool somehow considers libsupc++ to be an "accessory library" and
does not add -lsupc++ to the link flags. Neither Ubuntu, nor RedHat
include *.la files into their packages for libstdc++.

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-10-26 18:34:06 -07:00
Alexey Neyman
32c5952980 Revert "Remove ltrace from samples"
This reverts commit a3bb2aeb44.
2015-10-23 18:09:41 -07:00
Bryan Hundven
7d3ef0227a Merge pull request #223 from bhundven/musl-libc_gcc-5.2.0
musl-libc: backport gcc-6 musl support, add gdb and strace patches
2015-10-21 18:53:49 -07:00
Bryan Hundven
d60b4c2962 samples: add arm-unknown-linux-musleabi
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-10-21 17:57:23 -07:00
Bryan Hundven
c7b9a9bd70 musl-libc: backport gcc-6 musl support, add gdb and strace patches
This gets gcc and friends working with musl-libc.
GDB and Strace patches come from openwrt.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-10-21 17:51:13 -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
f34d1a93f1 Merge pull request #198 from stilor/avr2-fix
Fix avr sample
2015-10-20 15:31:52 -07:00
Bryan Hundven
a5ab7a8ab8 Merge pull request #215 from bhundven/update_linux_kernel
linux: Update linux kernel versions
2015-10-20 01:30:27 -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
5373a33a18 Merge pull request #214 from bhundven/update_musl-libc
musl-libc: update musl-libc mainline to 1.1.12
2015-10-20 01:08:37 -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
720e0b4a1e Merge pull request #201 from stilor/powerpc-e500v2
Fix option names in powerpc-e500v2 sample.
2015-10-19 20:08:16 -07:00
Bryan Hundven
4c6c7fdea0 Merge pull request #200 from stilor/arm-unwind-uclibc
Fix link error in arm/uclibc with GCC 5.x
2015-10-19 20:07:33 -07:00
Bryan Hundven
e74a6d5164 Merge pull request #199 from stilor/sparc-nptl
Missing include in glibc-2.22 for sparc32/nptl.
2015-10-19 20:06:42 -07:00
Bryan Hundven
fbf66d7c90 Merge pull request #197 from stilor/avr-fix
Trivial avr32 fix: name of config option has changed
2015-10-19 20:05:52 -07:00