Commit Graph

400 Commits

Author SHA1 Message Date
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
2541bd0b11 Remove redundant configure options.
-mcpu= and -msoft-float are added due to ARCH_* flags, and correctly
passed down to libstdc build.

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-11-14 15:21:45 -08:00
Alexey Neyman
57dc5e69d2 Remove --disable-libsanitizer.
It is now added automatically if CT_GCC_SANITIZER is not set - and that
option depends on !UCLIBC.

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-11-14 15:21:44 -08:00
Alexey Neyman
10c0f278e9 Switch to using EV67 in alphaev67-*.
It does not make much sense to have alphaev67 example use -mcpu=ev67,
does it?

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-11-14 15:21:44 -08:00
Alexey Neyman
379331986d More trivial sample updates.
Drop ARCH_ARCH/ARCH_TUNE where it is overridden by ARCH_CPU. Also, same
updates as in the previous batch for architectures with
!ARCH_EXCLUSIVE_WITH_CPU (i.e. where there is no need to drop
ARCH_CPU/ARCH_TUNE).

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-11-14 15:04:55 -08:00
Alexey Neyman
8a07253fa0 Use $* to simplify rules in samples.mk.
Signed-off-by: Alexey Neyman <stilor@att.net>
2015-11-14 15:03:35 -08:00
Alexey Neyman
f7d6e53e2b Add update-samples target.
Same as check-samples, but actually updates the crosstool.config.

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-11-14 15:03:35 -08:00
Bryan Hundven
b54d55c843 Samples: Update samples
This commit updates samples to latest config/ changes.

This closes #114

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-14 11:30:03 -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
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
Max Filippov
18dfc4871d samples: add xtensa-unknown-linux-uclibc config
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
2015-11-13 12:27:11 +03: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
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
Ray Donnelly
4f3310cf03 Samples: Add x86_64-w64-mingw32,x86_64-pc-linux-gnu
Tested on build machines of x86_64-pc-cygwin and x86_64-unknown-linux-gnu

Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
2015-11-13 02:17:46 +00:00
Bryan Hundven
972c03d7f1 samples: Update samples to use default uClibc-ng config
This commit removes per-sample configuration files for uClibc and falls
back to using the default config file in contrib/uClibc-defconfigs.

Only one sample is broken:

* powerpc-unknown-linux-uclibc
  * breaks on dmalloc

I will come back and work on the dmalloc failure later, but I don't want it to
hold up getting uClibc-ng out in ct-ng.

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
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
5ffc9ecd10 Merge pull request #235 from stilor/ctng-source
ctng source
2015-11-03 00:35:30 -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
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
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
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
Bryan Hundven
1b476c437d Merge pull request #225 from stilor/nios2-fix
Unbreak nios2-elf-mingw32 sample
2015-10-28 11:13:13 -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
Alexey Neyman
32c5952980 Revert "Remove ltrace from samples"
This reverts commit a3bb2aeb44.
2015-10-23 18:09:41 -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
f34d1a93f1 Merge pull request #198 from stilor/avr2-fix
Fix avr sample
2015-10-20 15:31:52 -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
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
Alexey Neyman
52203df900 Fix sh4-unknown-linux-gnu sample.
The issue with this sample is that the sh4-* targets in GCC do not
implement __builtin_trap() function. Starting with release 5.1,
GCC inserts abort() calls where NULL pointers are dereferenced. The
elf/dl-conflict.c in glibc is one such place: it calls elf_machine_rela
with NULL `sym' pointer. This causes an undefined `abort' symbol to
appear in the object file and as a result, pulls in some files during
the linking of the dynamic loader that are not supposed to. Eventually,
it results in link error due to multiple definitions of _itoa and some
other symbols.

The right fix would be to implement __builtin_trap() for sh4 in GCC.
A workaround would be adding -fno-delete-null-pointer-checks to
CFLAGS-dl-conflict.c in elf/Makefile. Until either of these happens,
though, pin the GCC version to 4.9.3 - the last that did not generate
`abort' calls. Note that the version where GCC started to generate
`abort' calls is apparently different for different architectures;
the issue in [1] was reported against GCC 4.9.

References:
[1] https://www.sourceware.org/ml/libc-alpha/2014-10/msg00807.html
  (similar issue on HP-PA which was resolved by implementing
  __builtin_trap)
2015-10-15 17:34:49 -07:00
Alexey Neyman
5211d68d08 Use dedicated option for 128-bit long double. 2015-10-15 17:34:26 -07:00
Alexey Neyman
7b3821450a Fix powerpc-e500v2-linux-gnuspe.
Options were renamed. However, matching current option names result
in a compile error for strfmon_l.o in glibc: GCC 4.6 detects an
unitialized variable in its own va_arg() implementation. Likely,
an older GLIBC was used when this sample was submitted - which did
not provide -Werror in CFLAGS.

Thus, use most recent GCC (5.2.0) and revert GLIBC_FORCE_UNWIND to
its default value, 'y' (as forced unwind is required with this version).
2015-10-15 17:34:26 -07:00
Alexey Neyman
e6e8f97c4f Fix avr sample.
- Incompatible ISL/CLooG were requested by config after newer releases
of both were brought in.
- Consistency with other samples: save tarballs (which will avoid
  downloading them each time from Travis), extra logging.
2015-10-15 17:33:55 -07:00
Alexey Neyman
9659f7131f Rename the GCC version option to match current config. 2015-10-15 17:31:52 -07:00
Alexey Neyman
f1e2315700 Fix arm/uclibc; see the description in the patch.
This should ideally be upstreamed to uclibc maintainers, but with the
last release more than 3 years ago, I wouldn't hold my breath for a
fix being released any time soon.
2015-10-15 17:27:32 -07:00
Alexey Neyman
55d0770209 Fix bfin-unknown-linux-uclibc sample.
Pin GCC to 4.5.3 and binutils to 2.22, the last versions working. There
are multiple bugs affecting bfin configuration; while [3] is fixed on
trunk in GCC (but not backported to gcc-5-release branch yet), [1] and
[2] do not have fixes yet.

References:
[1] https://sourceware.org/bugzilla/show_bug.cgi?id=17334 (binutils bug)
[2] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=47779 (gcc bug #1)
[3] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55144 (gcc bug #2)
2015-09-30 17:22:28 -07:00
Bryan Hundven
a3bb2aeb44 Remove ltrace from samples
As of right now, ltrace fails to build. To get CI happy, lets just
disable it!

When we fix ltrace, just revert this change.

This is also in reference to bug #115

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-09-29 12:37:29 -07:00
Frederick Zhang
f29c8332ed raspberry pi 2 sample 2015-09-06 07:06:53 +08:00
Ray Donnelly
86fbcfc36b mingw-w64: Rename targets to {i686,x86_64}-w64-mingw32
.. and set CT_TARGET_VENDOR to w64. Otherwise config.gcc doesn't
pickup the right files for include_next (and probably many other
things go wrong too).

w64 has been the correct vendor for absolutely ages now on all
distributions that provide MinGW-w64 cross compilers.

Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
2015-08-25 00:16:25 +01:00
Erico Nunes
2f436a02e3 avr: enable C++ support in the avr sample
C++ support is enabled in most samples existing in crosstool-ng and is also
supported by AVR.
As pointed out in pull request #124 in the crosstool-ng github, Arduino based
projects willing to use this toolchain will require C++ support.

Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
2015-06-27 21:33:49 -03:00