Commit Graph

1210 Commits

Author SHA1 Message Date
Alexey Neyman
e46f6d9966 Use "package ksym" when fetching/extracting
... in the default implementation of the fetch/extract methods.

Fixes #1116.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-12-14 18:50:51 -08:00
Alexey Neyman
f2b64524b0 Add a symlink to LTO for binutils
... so that ar can find the plugin even when invoked directly, not
via the gcc-ar plugin.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-12-11 08:55:07 -08:00
Alexey Neyman
5cf859d9d9 Add config flags for omitting 'arch' and 'vendor'
... parts of the config tuple. While here, remove parts that are
setting portions of the target tuple to a value that's already
the default.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-12-10 01:10:01 -08:00
Alexey Neyman
e85ec884ad Use -mel/-meb for moxie
Signed-off-by: Alexey Neyman <stilor@att.net>
2018-12-07 14:49:03 -08:00
Alexey Neyman
8bee41d734 Remove a TBD
It only applied to core-pass-2 compiler; final compiler can locate
the linker script just fine.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-12-07 14:46:00 -08:00
Alexey Neyman
e149e28e57 Disable -fstack-protector* from being used by glibc
... until it was fixed (to some extent) in 2.25.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-12-07 00:03:04 -08:00
Alexey Neyman
9d2a5f8413 Set ALL_TARGET_CFLAGS initially for !MULTILIB
Fixes #1107.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-12-07 00:03:04 -08:00
Alexey Neyman
f5b57504d2 Add configuration options for enabling SSP
... in uClibc and glibc.

Fixes #681.

While here, relocate additional "sources" for uClibc/binutils into packages/
directory.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-12-04 16:15:37 -08:00
Alexey Neyman
893932e90f Add a config option for default RELRO setting
Fixes #656.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-12-03 20:19:09 -08:00
Alexey Neyman
d9afcd80fc Warn if architecture is empty on x86/32bit
as that defaults to i386, which will fail with glibc (and likely other
libcs).

Fixes #617.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-12-03 16:17:25 -08:00
Alexey Neyman
8c6cf388cd Fix uClibc builds after moxie merge
Broken because of the capitalization of the name.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-12-03 13:04:44 -08:00
Alexey Neyman
40d5bf6440 Add moxiebox as a choice for libc
This required some rework of the libc selection, as moxiebox is a layer on
top of another libc - newlib.

Also, moxiebox'es host VM (`sandbox`) needs a libcrypto on the host. We will
not have it if we're cross-compiling a canadian cross. Fortunately, all moxiebox
needs from libcrypto is SHA256, and it already includes a standalone implementation
of SHA256 in its runtime. Provide a little wrapper that allows moxiebox use
that implementation for the host binary, too.

Also, automate collecting/printing the list of all packages in a given category
(e.g. LIBC or COMP_TOOLS), generate a list of all Kconfig symbols for a given
category.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-12-01 10:10:51 -08:00
Alexey Neyman
172308cb1b Add moxie architecture
and a moxie-unknown-elf target (which is what #1088 apparently wanted).

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-11-28 00:30:10 -08:00
Alexey Neyman
da76ae3ea3 Add DTC as a companion tool
(needed for cross-gdb targeting the moxie-* targets)

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-11-28 00:30:10 -08:00
Alexey Neyman
8fe21d70a2 Make license collection optional, on by default
Signed-off-by: Alexey Neyman <stilor@att.net>
2018-11-07 12:59:29 -08:00
Anton Maklakov
aec70d5310 Collect licenses for the distribution 2018-11-05 15:39:47 +08:00
Alexey Neyman
2808fdb6a3
Merge pull request #985 from antmak/platform_headers
Use the platform headers in the pass-2 and canadian gcc stages
2018-11-03 15:38:51 -07:00
Alexey Neyman
f232d6d09a Add an ability to modify an exported variable
... and use that ability to permanently set CTNG_LD_IS in case gold is default linker
and we're building glibc.

Fixes #988. This was a long-standing breakage in crosstool-NG (at least since it began
to run each step in a sub-shell).

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-11-01 15:50:12 -07:00
Alexey Neyman
091b7e4c87 Generate correct tuple for PowerPC with SPE ABI
Fixes #1018.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-10-23 23:22:01 -07:00
Alexey Neyman
782b45d0da Supply "very old" and "very new" glibc versions
... as 1.0 and 99.99, respectively, to gcc configure.

Fixes #1031.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-10-21 19:05:19 -07:00
Alexey Neyman
e697b4694a Create glibc-ports symlink inside CT_SRC_DIR
... so that it works in both "bundled" and "bundled,local" cases.

Fixes #1060.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-10-16 00:02:18 -07:00
Alexey Neyman
efe65615d0 Fix up timestamps after patching
... so that autotools-based packages do not re-run autoconf/autoheader/automake.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-09-28 11:48:01 -07:00
Alexey Neyman
d573c15758 Use 'chmod a-x' instead of 'chmod -x'
There is a subtle difference when executable bit is a part of the umask.
And at least some versions (Debian/stretch) fail if the resulting mode
would've been different if not for the umask setting.

Fixes #998.

Although, with such chmods/umasks it is likely that some package installation
will break anyway. But I'll leave it until somebody complains.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-09-26 23:54:55 -07:00
Alexey Neyman
b82b8adb44
Merge pull request #984 from slash3g/master
Properly handle newlib configuration flags
2018-09-25 23:52:05 -07:00
Alexey Neyman
b0e7b57c4a Restore *-android build
Modify CT_TARGET_CFLAGS (which are passed to GCC's FOR_TARGET flags) rather
than CT_ALL_TARGET_CFLAGS.

Fixes #1006.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-09-24 22:43:08 -07:00
Alexey Neyman
c426acbee7
Merge pull request #990 from antmak/fix_newlib_multilib_opt
Fix a wrong name for the newlib's multilib option
2018-09-21 23:37:29 -07:00
Anton Maklakov
b1dbc3ce9a Fix a wrong name for the newlib's multilib option 2018-06-15 13:42:44 +08:00
Anton Maklakov
1dea24ce9a Use the platform headers in the pass-2 and canadian gcc stages 2018-06-12 17:07:06 +08:00
Daniele Baracchi
398030c11a Properly handle newlib configuration flags 2018-06-11 21:42:20 +02:00
Alexey Neyman
57679b5e61 Disable context functions for Thumb
They're written in ARM dialect, and `ldmia r14, {r14, pc}` is not accepted in T2
encoding. GCC8 changed the list of multilibs for arm-*, which now includes a
variant with CPU that supports T2 but not A1 encoding.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-06-05 16:38:30 -07:00
Alexey Neyman
0ce942862e Add --enable-obsolete for powerpc-*-spe
Signed-off-by: Alexey Neyman <stilor@att.net>
2018-06-05 00:16:53 -07:00
Alexey Neyman
07ec87f14f Avoid adding arch/cpu/tune flags for target to GCC build
... as it may need to override them for building runtime-selectable code.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-06-05 00:16:37 -07:00
Alexey Brodkin
0a64056dd3 ARC: Disable CONFIG_ARC_HAS_ATOMICS in uClibc if building without -matomics
In case we build for ARC core which has no support of atomic ops among
other things we need to configure libc to use Linux kernel helper to emulate
HS atomic ops. This is done with disabling of CONFIG_ARC_HAS_ATOMICS in uClibc.

Currently we __remove__ this option from .config but this makes no sense as
its default state is "y" so we need to explicitly disable it instead.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
2018-05-21 15:03:17 +03:00
Alexey Neyman
d274ab06fe
Merge pull request #967 from stilor/fix-building-older-glibc
Fix building older glibc
2018-05-15 16:41:28 -07:00
Alexey Brodkin
86bbb14649 Add ARC architecture support
Synopsys' DesignWare ARC Processors are a family of 32-bit CPUs
that SoC designers can optimize for a wide range of uses,
from deeply embedded to high-performance host applications in a variety
of market segments.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
2018-05-15 16:37:08 +03:00
Alexey Neyman
37ac0e8474 Too many fixes need backporting for GCC8...
... so instead, disable -Werror for older versions of glibc.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-05-14 23:47:17 -07:00
Alexey Neyman
387c8d8e2c First batch of fixes
- Incompatible function type for ifunc alias
- Multiple statements macro expansion in strftime
- if_nametoindex size checking

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-05-12 13:03:29 -07:00
Alexey Neyman
3f16a8e269 Restore a missing GDB option
(whether GDB has --disable-build-with-cxx) and use it.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-05-06 15:20:50 -07:00
Alexey Neyman
e1610ee7b6 Preserve each variant of libwinpthread.dll
... in the corresponding /lib directory. Mingw-w64 installs it to /bin,
so multiple variants in a multilib configuration override each other.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-05-03 22:28:10 -07:00
Alexey Neyman
0f34b0ebf0 Fix strace 4.21+ on aarch64
... which now defaults to --enable-mpers=yes, which attempts to
invoke aarch64-*-gcc with -m32 and fails.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-04-29 12:06:54 -07:00
M1cha
ea702af5c3 cc/gcc: use correct sysroot arg for do_gcc_core_backend
This fixes gccs LIMITS_H_TEST detection for baremetal targets
so limits.h will be installed correctly.

Signed-off-by: Michael Zimmermann <sigmaepsilon92@gmail.com>
2018-02-12 07:45:54 +01:00
Alexey Neyman
a20c29dcef Make libiconv an option in the menu config
Signed-off-by: Alexey Neyman <stilor@att.net>
2018-02-10 14:51:45 -08:00
Alexey Neyman
1c329c33bf Ncurses fixes for 6.1
- Update to 20180129
- Throw in --disable-db-install if database is disabled; otherwise
  'make install' tries to run tic which is not built.
- Select appropriate strip utility for the host; otherwise non-x86
  architectures fail to install (unless --disable-stripping is also
  added)

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-01-29 22:47:26 -08:00
Alexey Neyman
ba165ed4c0
Merge pull request #900 from stilor/issue-897
Only decorate TARGET_ARCH if using specific CPU
2018-01-24 23:18:05 -08:00
Alexey Neyman
7c720ae394 Only decorate TARGET_ARCH if using specific CPU
Otherwise, binutils don't recognize it as a valid target - even though
GCC does.

Fixes #897.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-01-21 19:45:13 -08:00
Sergey Korolev
6c9027b401 Fix gdb build flags forming
Build flags are scalar variables.

Signed-off-by: Sergey Korolev <s.korolev@ndmsystems.com>
2017-12-18 02:35:58 +03:00
Alexey Neyman
37caa3d4d7
Merge pull request #882 from ksergeyv/gdb-link
Fix variables passing to gdb configure scripts
2017-12-17 11:42:07 -08:00
Sergey Korolev
70a1584e15 Fix variables passing to gdb configure scripts
These changes mainly fix static linking errors when building static
native gdb and gdbserver (tested with gcc 7.2.0 + uClibc-ng 1.0.27 +
binutils 2.29.1 for MIPS):

[ALL  ]    .../lib/libstdc++.a(eh_throw.o): In function `__cxa_throw':
[ALL  ]    (.text.__cxa_throw+0x64): undefined reference to `_Unwind_RaiseException'
[ALL  ]    (.text.__cxa_throw+0x6c): undefined reference to `_Unwind_RaiseException'
[ALL  ]    .../lib/libstdc++.a(eh_throw.o): In function `__cxa_rethrow':
[ALL  ]    (.text.__cxa_rethrow+0x78): undefined reference to `_Unwind_Resume_or_Rethrow'
[ALL  ]    (.text.__cxa_rethrow+0x80): undefined reference to `_Unwind_Resume_or_Rethrow'
...

The problem is in mixing of CPP, CC, CXX, and LD with CPPFLAGS, CFLAGS,
CXXFLAGS, and LDFLAGS before passing to configure scripts.
gcc is sensitive to argument order and the scripts are normally responsible
to combine the variables in a proper way.

Signed-off-by: Sergey Korolev <s.korolev@ndmsystems.com>
2017-12-14 22:55:43 +03:00
Sergey Korolev
1de8f5e98b Do not build a native gdbserver automatically
Signed-off-by: Sergey Korolev <s.korolev@ndmsystems.com>
2017-12-14 00:09:36 +03:00
Antony Pavlov
69c2ca97fb add RISC-V architecture support
Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com>
2017-11-19 04:50:14 +03:00