Commit Graph

4616 Commits

Author SHA1 Message Date
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
Alexey Neyman
f6d8c2ffbd Add docker testing for Gentoo
Signed-off-by: Alexey Neyman <stilor@att.net>
2018-04-29 12:06:54 -07:00
Alexey Neyman
51f0e7c649
Merge pull request #952 from dlech/patch-2
debian: include curl and wget in Build-Depends
2018-04-29 11:39:13 -07:00
David Lechner
7372e7449c debian: add curl and wget dependencies
curl and wget are needed as a build dependency so that the auto configuration will see them and set the relevant configuration options. Otherwise, we end up with a ct-ng that can't download anything.

However, curl and wget are not strict runtime dependencies, and we don't need both, so list them as Recommends: curl | wget for the binary package.
2018-04-29 13:30:42 -05:00
Alexey Neyman
fa041df6fe
Merge pull request #949 from antmak/build_centos7
Add compatibility with automake < 1.14
2018-04-29 10:59:35 -07:00
Alexey Neyman
d40964df8c
Merge pull request #951 from dlech/patch-1
debian: no need to override dh_auto_install
2018-04-29 09:53:44 -07:00
David Lechner
0621680a5c
debian: no need to override dh_auto_install
Since fda857aeb8 and d6f5c308f9, there is no longer any need to override dh_auto_install
2018-04-28 22:08:08 -05:00
Anton Maklakov
7efb493d37 Add compatibility with automake < 1.14
As we support CentOS, for example, we have a problem there

    automake: warnings are treated as errors
    kconfig/Makefile.am:26: warning: compiling 'lxdialog/checklist.c' in subdir requires 'AM_PROG_CC_C_O' in
    'configure.ac'
    autoreconf: automake failed with exit status: 1
2018-04-27 15:26:06 +08:00
Alexey Neyman
90d14443d1
Merge pull request #947 from stilor/docker-testing
Docker-based  testing for Linux distros
2018-04-17 22:47:39 -07:00
Alexey Neyman
345dc4161d Testing works for archlinux docker
Signed-off-by: Alexey Neyman <stilor@att.net>
2018-04-15 20:24:39 -07:00
Alexey Neyman
0d7822e796 Require libtool be present
Signed-off-by: Alexey Neyman <stilor@att.net>
2018-04-15 14:29:37 -07:00
Alexey Neyman
715d6376bf First stab at docker-based test framework
Signed-off-by: Alexey Neyman <stilor@att.net>
2018-04-15 14:29:09 -07:00
Alexey Neyman
5472517b31
Merge pull request #943 from xavloose/master
modified ax_with_curses_extra.m4 to have better regocnition of <panel.h>
2018-04-14 08:09:27 -07:00
Xavier Loose
b341377995 modified ax_with_curses_extra.m4 to have better regocnition of <panel.h> 2018-04-14 03:28:32 -05:00