Commit Graph

3266 Commits

Author SHA1 Message Date
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
Bryan Hundven
1b29d4e8f6 Merge pull request #196 from stilor/sh4-fix-abort
Restore sh4-unknown-linux-gnu sample.
2015-10-19 20:05:31 -07:00
Alexey Neyman
05b7b11ec4 Pick up a fix for glibc-2.22 on sparc32. 2015-10-15 17:35:18 -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
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
Bryan Hundven
8433e9914d Merge pull request #207 from dancasimiro/doc-typo
Fix a typo in the documentation
2015-10-14 16:00:03 -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
Bryan Hundven
8c5de9dcd5 Merge pull request #195 from stilor/bfin-multiple-bugs
Restore blackfin sample
2015-10-14 15:30:21 -07:00
Daniel C. Casimiro
2d32667ea8 Fix a typo in the documentation
Replace "now" with "know."
2015-10-14 07:30:32 -04: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
625f7e66b4 Merge pull request #187 from jasmin-j/sync_lto
Synchronize CC_GCC_USE_LTO parameter setting II
2015-10-07 13:35:44 -07: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
Bryan Hundven
866bff1307 Merge pull request #182 from jasmin-j/add_missing_lib_opts
Adding missing if/else blocks in do_gcc_core_backend.
2015-10-07 13:31:19 -07:00
Bryan Hundven
5f2d69fb9d Merge pull request #202 from jmlemetayer/travis_build
Manage Travis-CI build
2015-10-07 13:29:30 -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
Jean-Marie Lemetayer
f297eba8e9 Increase failure log length
Signed-off-by: Jean-Marie Lemetayer <jeanmarie.lemetayer@gmail.com>
2015-10-03 14:28:03 +02:00
Jean-Marie Lemetayer
6fac453afd Manage travis-ci build in an external script
This allows to:
 * override configuration
 * deal with travis-ci timing restrictions

Signed-off-by: Jean-Marie Lemetayer <jeanmarie.lemetayer@gmail.com>
2015-10-03 14:23:58 +02:00
Alexey Neyman
9952e8ce54 Add bfin-unknown-linux-uclibc to Travis build. 2015-09-30 17:25:28 -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
b565e949d4 Merge pull request #192 from bhundven/tone_down_automated_log_level
config: Tone down automated build logs
2015-09-29 19:10:08 -07: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
185687aa29 Merge pull request #189 from bhundven/automated_build_config
configure: Add automated build option
2015-09-29 18:57:32 -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
Bryan Hundven
6baef82c26 Merge pull request #188 from bhundven/remove_ltrace_from_samples
Remove ltrace from samples
2015-09-29 13:31:00 -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
Jasmin Jessich
9bce2dc540 Synchronize CT_CC_GCC_USE_LTO parameter setting in do_gcc_backend with the one
from do_gcc_core_backend, by adding "--enable-lto"/"--disable-lto".

Signed-off-by: Jasmin Jessich <jasmin@anw.
2015-09-25 01:32:27 +02:00
Bryan Hundven
6b9a8727d8 Merge pull request #186 from jasmin-j/travis_ci_lang
Fixed travis-ci environment setting
2015-09-23 15:18:28 -07:00
Jasmin Jessich
4b25ad15a0 Set language to 'bash' to get rid of interfering environment variable CC=gcc.
Signed-off-by: Jasmin Jessich <jasmin@anw.at>
2015-09-23 21:30:59 +02:00
Bryan Hundven
2acb5e7b17 Merge pull request #181 from jasmin-j/double_libmudflap
Doubled setting of --disable-libmudflap removed.
2015-09-22 13:22:35 -07:00
Bryan Hundven
205a8f9190 Merge pull request #180 from jmlemetayer/travis_ci
Add travis continuous integration system
2015-09-22 13:17:23 -07:00
Bryan Hundven
946670eae3 Merge pull request #185 from jasmin-j/remove_isl_15_0
Remove isl 0.15
2015-09-22 13:16:52 -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
Jean-Marie Lemetayer
7d41f5d3a0 Add travis continuous integration system
Signed-off-by: Jasmin Jessich <jasmin@anw.at>
Signed-off-by: Jean-Marie Lemetayer <jeanmarie.lemetayer@gmail.com>
2015-09-22 10:11:02 +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
Jasmin Jessich
64a158f932 Removed doubled setting of --disable-libmudflap in do_gcc_core_backend.
Signed-off-by: Jasmin Jessich <jasmin@anw.at>
2015-09-22 00:20:19 +02:00
Jasmin Jessich
9c3248af89 Adding missing if/else blocks in do_gcc_core_backend for CT_CC_GCC_LIBSSP,
CT_CC_GCC_HAS_LIBQUADMATH and CT_CC_GCC_LIBQUADMATH (--en/disable-libssp,
--en/disable-libquadmath, --en/disable-libquadmath-support) from function
do_gcc_backend.

Signed-off-by: Jasmin Jessich <jasmin@anw.at>
2015-09-22 00:19:10 +02:00
Jean-Marie Lemetayer
419aadedd4 Replace README to README.md and add travis-ci status
Signed-off-by: Jasmin Jessich <jasmin@anw.at>
Signed-off-by: Jean-Marie Lemetayer <jeanmarie.lemetayer@gmail.com>
2015-09-16 11:07:49 +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
Bryan Hundven
e0f06d6258 Merge pull request #178 from pkirchhofer/fix-glibc-with-new-gcc
Fix building glibc 2.17 with gcc 5.1+
2015-09-15 08:05:36 -07:00
Bryan Hundven
8ea09a6b5f Merge pull request #177 from kozyilmaz/native-gdb
gdb-7.10 upstream fix for build problems if CT_GDB_NATIVE=y
2015-09-15 08:05:25 -07:00
Bryan Hundven
51aba45e99 Merge pull request #175 from jasmin-j/fix_isl_constraints
Fixed issue 173 and 174.
2015-09-15 08:05:03 -07:00