Commit Graph

4779 Commits

Author SHA1 Message Date
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
d5900debd3
Merge pull request #981 from stilor/use-git-version-gen
Use git-version-gen to generate version info
2018-06-06 21:31:17 -07:00
Alexey Neyman
d14adeb1d9 Use git-version-gen to generate version info
Suggested-by: Chris Packham <judge.packham@gmail.com>
Signed-off-by: Alexey Neyman <stilor@att.net>
2018-06-06 17:52:17 -07:00
Alexey Neyman
21489af99a
Merge pull request #979 from stilor/master
Make patch order overridable by individual packages
2018-06-06 13:46:17 -07:00
Alexey Neyman
d7ee16cb28 Make patch order overridable by individual packages
Signed-off-by: Alexey Neyman <stilor@att.net>
2018-06-06 00:50:36 -07:00
Alexey Neyman
83582f4fd4
Merge pull request #978 from stilor/fix-gcc8-regressions
Fix gcc8 regressions
2018-06-05 22:32:45 -07: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
b24431f477 Add upstream patch fixing XScale build
Signed-off-by: Alexey Neyman <stilor@att.net>
2018-06-05 00:16:53 -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
4137c422c6 Detect errors from gas
Signed-off-by: Alexey Neyman <stilor@att.net>
2018-06-05 00:16:37 -07:00
Alexey Neyman
cc2fe3dbde Backport a gcc8 fix from upstream
Signed-off-by: Alexey Neyman <stilor@att.net>
2018-06-05 00:16:37 -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 Neyman
ec384f2b9f
Merge pull request #977 from dimkr/new-uclibc-old-kernel
packages: add uClibc-ng 1.0.30 and last Linux 2.6.32.x
2018-05-31 08:33:11 -07:00
Dima Krasner
5d335281d9 linux: removed 2.6.32.27
Signed-off-by: Dima Krasner <dima@securingsam.com>
2018-05-31 11:15:19 +03:00
Dima Krasner
718b5e4b03 packages: add uClibc-ng 1.0.30 and last Linux 2.6.32.x
Signed-off-by: Dima Krasner <dima@dimakrasner.com>
2018-05-28 16:45:06 +03:00
Alexey Neyman
ab3c204aee
Merge pull request #970 from abrodkin/topic-uclibc-multilib
Add support and sample for uclibc multilib toolchain for ARC
2018-05-21 08:49:42 -07:00
Alexey Brodkin
409046f91d ARC: Update Linux samples
There's no point in keeping samples which are in its essense
just a sub-set of multilib toolchain.

But still we'd like to cover quite unusual but really existing
case - ARC750, i.e. ARC700 with MMU but without so-called
atomic instructions (LLOCK/SCOND). To support this HW variation
we need:
 1) Compile all target binaries without "-matomics" or even
    better "-mno-atomics" so that's even future-proof
    (as we may decide to enable "-matomics" by default for Linux
     targets which is a recommented setup).
 2) Configure libc such that it uses Linux-kernel-assisted implementation
    of atomic operation via "arc_usr_cmpxchg" syscall,
    see https://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/?id=b985fa069187e4c5a7ee84213d9fbead2f219ce5

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
2018-05-21 15:03:17 +03: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 Brodkin
b078bb09dd ARC: Add Linux uClibc multilib sample
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
2018-05-21 13:43:07 +03:00
Alexey Brodkin
ecb09ca417 ARC: Add multilib support for Linux in GCC
We never bothered to build multilibbed Linux toolchains for ARC
and so we ended-up with no support of multilib for arc*-*-linux-*
targets in GCC. That is now fixed in upstream by the following commit:
https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=0eacfbcb2bf1834294f468a2bb41fe5d5e8d3883

Once the fix mentioned above is applied on top of GCC 8.1.0 we may easily build
multilibbed uClibc toolchain for ARC.

Note sice Glibc port for ARC is still in review process we cannot build any Glibc
toolchains for ARC with pure upstream components, for that we eiter need Glibc
sources from our Github repo or apply a set of patches on top of Glibc 2.27 - we'll
try to address this later though.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
2018-05-21 13:43:07 +03:00
Alexey Neyman
ea53be7529
Merge pull request #971 from abrodkin/topic-elf32-multilib
ARC: Add support and sample for baremetal/elf32 multilib toolchain
2018-05-16 10:03:12 -07:00
Alexey Neyman
563ee5cea0
Merge pull request #969 from abrodkin/topic-fix-arc700
ARC: Fix Linux kernel compilation for ARC700
2018-05-16 09:49:11 -07:00
Alexey Brodkin
a397b69516 ARC: Add baremetal/elf32 multilib sample
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
2018-05-16 17:20:23 +03:00
Alexey Brodkin
62f5b90e2e ARC: Don't mention in multilib not yet supported CPUs
hs4x and hs4xd were mistakenly mentioned in MULTILIB_OPTION/DIRNAMES
before real support of those CPUs was accepted in upstream.

That breaks multilib toolchains building becase we're trying to compile
for not yet known CPU.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
2018-05-16 17:20:23 +03:00
Alexey Brodkin
e714f99d89 ARC: Fix Linux kernel comilation for ARC700
Without this fix we're getting the following error on attempt to build
Linux kernel:
--------------------------------->8---------------------------------
xfrm4_mode_tunnel.s: Assembler messages:
xfrm4_mode_tunnel.s:188: Error: operand out of range (128 is not between -
128 and 127)
--------------------------------->8---------------------------------

The fix is taken from
d8d716f49c
and it is supposed to be merged in upstream GCC sources soonish.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
2018-05-16 15:47:45 +03:00
Alexey Neyman
1873a8e14a
Merge pull request #968 from stilor/fix-cpu-count
Doh. Change the name of the substituted variable
2018-05-15 16:53:39 -07:00
Alexey Neyman
204fef03f6 Doh. Change the name of the substituted variable
... to match the substituted name.

Fixes #966.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-05-15 16:52:45 -07: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 Neyman
844c83cac2
Merge pull request #964 from abrodkin/topic-arc
Add ARC architecture support
2018-05-15 16:37:27 -07:00
Alexey Brodkin
66e0a25fd3 Add ARC700 and ARC HS38 Linux samples
ARC700 is based on ARCompact (AKA ARCv1 ISA) while ARC HS38 is
based on modern ARCv2 ISA.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
2018-05-15 16:41:20 +03: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
2b055ddc67 Second batch of backported fixes
getlogin/getlogin_r, zic

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-05-12 23:17:03 -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
7d3d4d9e74
Merge pull request #960 from stilor/gdb712-disable-cxx
Restore a missing GDB option
2018-05-06 15:22:44 -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
ca3701bd3d
Merge pull request #958 from stilor/gcc8
Add GCC 8.1
2018-05-06 09:22:50 -07:00
Alexey Neyman
906cfdac7c Add GCC 8.1
Signed-off-by: Alexey Neyman <stilor@att.net>
2018-05-05 22:14:43 -07:00
Alexey Neyman
9bd57827be
Merge pull request #956 from stilor/mingw-multilib
Preserve each variant of libwinpthread.dll
2018-05-04 18:51:40 -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
d7eed4ee52
Merge pull request #954 from stilor/archlinux-add-unzip
Add unzip to archlinux image
2018-04-29 23:58:26 -07:00
Alexey Neyman
bd60424e09 Add the ability to run some but not all samples in docker
Also, build containers with --no-cache: distributions like ArchLinux
retire their packages very quickly, need to always use up-to-date
package databases.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-04-29 23:03:26 -07:00
Alexey Neyman
b04bd52270 Add unzip to ArchLinux docker image
Needed by android sample.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-04-29 23:02:27 -07:00
Alexey Neyman
a3cc62a52c Restore the ability to build multiple configurations
... in the shared .build directory.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-04-29 23:01:43 -07:00
Alexey Neyman
5c24106d3b
Merge pull request #953 from stilor/docker-testing2
Docker configuration for Gentoo + a bunch of fixes
2018-04-29 15:04:23 -07:00
Alexey Neyman
74979fb19b Add checking for *sum and unzip
Also improve logging (add an ability to log commands/files/environment variables
to config.log)

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-04-29 12:06:54 -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
Alexey Neyman
270eb003dc Update help
Signed-off-by: Alexey Neyman <stilor@att.net>
2018-04-29 12:06:54 -07:00