Commit Graph

1359 Commits

Author SHA1 Message Date
Alexey Neyman
20a8525e8b Retire CT_CC_GCC_TARGET_FINAL
Make this behavior default in case the core gcc backend is used
for final compiler (i.e., for baremetal configurations). Not
setting this option breaks canadian baremetal configurations,
and not setting it makes little sense at all in any baremetal
configuration (since in baremetal we don't have any libc to begin
with).

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-05-24 23:03:34 -07:00
Alexey Neyman
97a20eed5c Disallow duma/ltrace/strace for bionic
Allow cross-gdb and gdbserver. This requires removal of an explicit
check that disables gdbserver on android. However, the comment above
that check refers to exec_elf.h, which has been removed since API level
19. It builds fine with current selection of the sample (21). Only
build-tested, hope someone can give it a try and report back.

We can fine tune the check for GDB but I'll leave it for now.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-05-14 18:49:56 -07:00
Alexey Neyman
24b3fca910 Mark bionic EXPERIMENTAL and dependent on GCC6+
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-05-14 15:23:41 -07:00
hyc
a6e11562c4 Tweaks for bionic/TLS 2017-05-14 15:23:34 -07:00
hyc
8762c7698c Preliminary bionic/Android support
Mostly from Crystax NDK
2017-05-14 15:23:34 -07:00
Alexey Neyman
2d658b851e Add GCC 7.1.0
Removed patches either picked up upstream, or no longer applicable
(boehm-gc no longer part of GCC).

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-05-11 23:16:40 -07:00
Alexey Neyman
0683e0af9d Add uClibc-ng 1.0.23 and 1.0.24 releases
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-04-29 13:03:19 -07:00
Alexey Neyman
2f286ce5ab Retire BACKEND stuff
... it is possible to just not set it in the configuration, why force
it? It just increases the complexity in Kconfig.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-04-23 00:24:41 -07:00
Alexey Neyman
c9dad33728 Use config from the install location
... no need to create a local symlink.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-04-22 23:33:36 -07:00
Alexey Neyman
105e4b59b7 Get rid of config.gen
Instead, prepare the files as a part of bootstrap and install them.
This avoids rebuilding these files in each working directory; they
don't change anyway as they are generated from the same installed
source.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-04-22 18:41:50 -07:00
Alexey Neyman
2c0fb22641 Generate config/configure.in directly
from configure rather than substitute it from Makefile. Eventually we
might want to get rid of configure.in completely, doing on-the-fly
checks at the time of `ct-ng build`, but that is left for another day.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-04-22 12:28:50 -07:00
Alexey Neyman
16e703a4e5 Merge pull request #676 from tamird/mingw-secure-api
MinGW: add --enable-secure-api config option
2017-04-07 10:13:06 -07:00
Alexey Neyman
cc3fefe538 mingw: Make list of tools depend on tools being enabled
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-04-06 20:12:40 -07:00
Tamir Duberstein
89468256ec
MinGW: add --enable-secure-api config option
Without this flag, MinGW does not expose secure variants of functions
such as strcpy_s.

See https://sourceforge.net/p/mingw-w64/mingw-w64/ci/master/tree/mingw-w64-headers/crt/sec_api/string_s.h#l11.
2017-04-06 21:23:49 -04:00
Alexey Neyman
4562aa2cff Handle Python with non-default names
Check for python2/python3 and if found, pass them to --with-python.
Allow user to override the choice via a new config option. This
fixes systems where there is no "python", only "python2" or "python3".

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-04-01 19:19:35 -07:00
Alexey Neyman
9f8fcca000 Update newlib version
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-04-01 11:57:32 -07:00
Alexey Neyman
7256bfd1c3 Update kernel versions
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-04-01 11:55:02 -07:00
Alexey Neyman
7111f95dc3 MinGW-W64 fixes
- libpthread requires iteration over multilibs, unlike the core, it
does not detect and build multilibs by itself.

- Disable parallel builds for mingw-w64 components; until mingw-w64 core
builds clean, I am not trusting it.

- Make the list of tools to build configurable

- Turn on multilib in x86_64 sample.

- Make warnings about tuple less redundant. As in, "one WARN is enough,
no need to shout it three times".

- Messages about various steps/substeps are more aligned with the rest
of the components.

- Use 'make' instead of ${make} to invoke the companion make just built,
if applicable.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-03-30 19:11:33 -07:00
Alexey Neyman
6af04d822b cross-gdb: account for canadian/crossnative toolchains
... when determining if it can be linked statically, and if Python
scripting should default to y.

Prompted by a failure of i686-w64-mingw32,nios2-spico-elf sample
on a system where configure didn't report static linking support.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-03-29 18:50:09 -07:00
Alexey Neyman
e9661686a6 Remove explicit core passes selection for multilib
It is only used if this libc flavor uses a multilib iterator (and not
determines the multilibs itself). This class currently includes glibc,
uClibc, musl - but they explicitly select CC_CORE_PASSES_NEEDED anyway.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-03-28 14:47:33 -07:00
Alexey Neyman
9435dfc946 Fix unclosed string
... that resulted in a warning from kconfig

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-03-22 18:33:19 -07:00
Alexey Neyman
3d1678a7f6 Make creation of ld.so.conf optional
... enabled by default for multilib and disabled otherwise. Buildroot
has been complaining about /etc/ld.so.conf presence for almost a year
now and I missed that.

After the release, xldd will be modified to query the compiler for
the list of multilibs to search. This would be too invasive change
before 1.23, though.

Note that it may lead to configurations where xldd currently does not
find the libraries (if both DEMULTILIB and CREATE_LDSO_CONF are turned
off). This is not the default setting in Kconfig, though.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-03-22 10:57:45 -07:00
Alexey Neyman
a6b6bb7a57 elf2flt: patch has been accepted upstream
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-03-20 00:18:14 -07:00
Alexey Neyman
89f0971391 Merge pull request #639 from stilor/tweak-gcc-movelibs
When moving gcc libs, prefer the same directory as libc
2017-03-19 00:34:51 -07:00
Alexey Neyman
63b2a19de4 Add an option to "demultilib"
It turns out buildroot does not currently accept a toolchain where a dynamic
linker does not reside in the multi-os-directory. Unfortunately this is
how glibc installs itself on AArch64 without any extra tricks.

So, provide an option to force everything into /lib or /usr/lib; patch to
buildroot will be worked on separately.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-03-17 14:31:17 -07:00
Alexey Neyman
061765ced6 Mark static gdb/gdbserver EXPERIMENTAL
... and default to 'n'.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-03-15 23:57:22 -07:00
Alexey Neyman
a8a080f9b6 Add latest versions of mingw 4.x/3.x/2.x branches
4.0.6 is the only one not marked obsolete.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-03-11 15:35:47 -08:00
Alexey Neyman
69f95de8b0 Bump kernel versions to latest on kernel.org
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-03-03 16:58:39 -08:00
Alexey Neyman
6d5ec0c35b Pick up new revision in elf2flt
... and updated cygwin patch.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-03-03 16:54:14 -08:00
Alexey Neyman
2f24d5cd75 Add libiconv 1.15
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-03-03 16:50:31 -08:00
Alexey Neyman
1e060114a2 Bump newlib 2.5.0 to 20170228
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-03-03 16:39:55 -08:00
Alexey Neyman
0465c8b6f2 Add binutils 2.28
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-03-03 16:37:36 -08:00
Alexey Neyman
864d1358e0 Merge pull request #625 from stilor/skip-localedef
Skip localedef
2017-02-28 21:52:06 -08:00
Alexey Neyman
2c2cbd9b9a Add a warning in menuconfig about locales
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-28 20:35:14 -08:00
Alexey Neyman
1595df184d Unobsolete CLooG/ISL versions compatible with 4.9
... or it leaves them with no valid choices.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-28 18:40:00 -08:00
Alexey Neyman
99283866cc Add patches to Linaro GCC
Same as the base release as long as they applied.
MUSL patches didn't, removed.

Also, unobsolete Linaro GCC5 now that they rolled out a new release.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-28 00:57:53 -08:00
Alexey Neyman
439cab379e Require xz to be present
Some software starts to adopt xz-only distribution (strace,
gcc-linaro, ...). Better that than deal with cryptic errors like
"cannot find strace-.tar.bz2".

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-27 22:55:57 -08:00
Jasmin Jessich
c8d7d79e20 Added new gcc config option CC_GCC_CONFIG_TLS
Adding new tristate configuration for TLS (Thread Local Storage) to
add "--enable-tls" (y), "--disable-tls" (n) or nothing (m).

Signed-off-by: Jasmin Jessich <jasmin@anw.at>
2017-02-21 09:10:22 +01:00
Alexey Neyman
ab6f238de9 Linaro also has new 4.9 and 5.4 releases
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-20 16:28:20 -08:00
Alexey Neyman
6b86ef9288 Merge pull request #610 from stilor/linaro-6.3-2017.02
Bump Linaro GCC6 to 6.3-2017-02
2017-02-19 23:27:59 -08:00
Alexey Neyman
158a96ee71 Merge pull request #609 from stilor/gdb-7.12.1
Add GDB 7.12.1
2017-02-19 23:27:36 -08:00
Alexey Neyman
69eba93d79 Bump Linaro GCC6 to 6.3-2017-02
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-19 10:56:09 -08:00
Alexey Neyman
dd4cf6dde0 Upgrade GDB 7.11 -> 7.11.1
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-19 09:37:01 -08:00
Alexey Neyman
92d5c6d159 Upgrade GDB 7.12 -> 7.12.1
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-19 09:36:51 -08:00
Alexey Neyman
d20091d730 Newlib's LTO only makes sense if GCC supports it
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-18 23:21:09 -08:00
Alexey Neyman
4d723d0892 More garbage collection
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-18 23:20:55 -08:00
Alexey Neyman
45512b003d Have LTO depend-on non-static builds
Loading a dynamic library (LTO plugin) from a static binary fails
on ArchLinux. It is also prone to break if a system is ever upgraded.

Also, disable plugins if not enabled explicitly.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-18 19:00:25 -08:00
Alexey Neyman
31e7cd688d Latest GCC has libmpx and Go.
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-18 18:47:19 -08:00
Alexey Neyman
264b0c8686 More GC
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-18 18:41:04 -08:00
Alexey Neyman
f0716643b4 Garbage collection for GCC options that are same
... on all supported versions.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-18 18:36:34 -08:00