Commit Graph

339 Commits

Author SHA1 Message Date
Alexey Neyman
413f5f6100 Super-H multilib toolchain fixes
1. On SuperH, configuring GCC with explicit variant of the CPU
(like "sh4") limits the default set of multilibs to just that CPU
and requires --with-multilib-list to change. Allow for "unspecified"
variant, so that we can defer to GCC to determine the list.

2. Support toolchains with both endiannesses at the same time.

3. Add a SuperH/newlib sample

4. Add more flags processing for uClibc

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-09-03 12:11:23 -07:00
Nathan Chancellor
1d724767bd config: Add package versioning flexibility
Some users (like myself) may want to omit the crosstool-NG version
from the binaries' versioning output, as it can be incredibly long
and not too helpful. Add a config option to disable it. The possible
combinations are as follows:

- crosstool-NG version (default)
- crosstool-NG version - custom toolchain ID
- Custom toolchain ID
- No crosstool-NG version OR custom toolchain ID

Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
2017-09-01 16:48:59 -07:00
Alexey Neyman
eba1a82686 Make --enable-obsolete-rpc an option in ct-ng
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-08-26 13:01:45 -07:00
Alexey Neyman
5324905c14 Fix glibc-ports with the new framework
While here, also consider patched by anything other than "bundled patches"
as per-target sources. Add scary warnings in case of a failure.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-08-26 13:01:37 -07:00
Alexey Neyman
3d470580ce Fix version check in mingw-w64
Fixes #782.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-08-16 10:47:52 -07:00
Alexey Neyman
9d91f44bc8 Separate the notions of package name/label
Also, remove resolved TBDs.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-07-08 10:57:57 -07:00
Alexey Neyman
ae71ce4106 Kconfigize choice/menu items
Also, add a poor man's upgrade script.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-07-08 10:57:56 -07:00
Alexey Neyman
50a387afa7 Remove support for pregenerated locales in uClibc
It fails to compile with the only locale version available (030818)
(on master too, with exactly the same error).

uClibc-ng does not use pregenerated locales.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-07-08 10:57:56 -07:00
Alexey Neyman
16a56ed75b uClibc locale "package"
Does not build, though.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-07-08 10:57:56 -07:00
Alexey Neyman
d0ff020e23 Fixes for building
- Need GDB8.0 milestone
- Make uClibc "master" package
- Rename bionic -> android-ndk to match the package name and
  support suffixes for archives

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-07-08 10:57:56 -07:00
Alexey Neyman
993b4acec5 Building packages using the new framework
(fails at building GMP off the VCS because it needs to run bootstrap scripts)

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-07-08 10:57:56 -07:00
Alexey Neyman
ee983f5f92 Downloading packages using new framework
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-07-08 10:57:56 -07:00
Alexey Neyman
567277099a Fix the references to old config variables
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-07-08 10:57:56 -07:00
Alexey Neyman
57426168ad Convert the rest of packages to new framework
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-07-08 10:57:56 -07:00
hyc
8762c7698c Preliminary bionic/Android support
Mostly from Crystax NDK
2017-05-14 15:23:34 -07:00
Alexey Neyman
9a91220aa2 Fix MINGW_SECURE_API test
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-04-07 13:57:56 -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
Tamir Duberstein
2e9863531f libc/mingw: quote variable in comparison
Building with CT_MINGW_TOOLS unset before this change produces:

	/usr/local/ct-ng/lib/crosstool-ng-1.23.0-rc2/scripts/build/libc/mingw.sh: line 212: [: =: unary operator expected
2017-04-06 20:14:36 -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
9a9b02acef Pass HOSTCC to uclibc's make
Else it looks for 'gcc'.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-04-02 13:25:41 -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
b090e0f74d Fix up ld.so symlinks for musl
Convert absolute targets to relative so that they are valid on the host,
too. The procedure is very similar to uclibc, so it is moved into a
common function.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-03-12 19:41:09 -07:00
Alexey Neyman
8600f3ce56 Move tools alias creation to a common function
... and in addition to final toolchain aliasing, use it when configuring
multilibs for glibc/musl. Note that uClibc does not need it, it is
explicitly selecting the tools using CROSS_PREFIX.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-03-12 16:56:19 -07:00
Alexey Neyman
bfcc1e112a Merge pull request #635 from stilor/macos-skip-locales
Skip locales on macos
2017-03-07 08:51:43 -08:00
Alexey Neyman
ea7f559ef4 Merge pull request #627 from dankm/freebsd
FreeBSD build support
2017-03-07 08:50:43 -08:00
Alexey Neyman
3e94b4f680 Skip building locales on macos, too
--enable-hacker-mode is not sufficient, in 2.25 configure then
fails while checking for sysdeps fragments that apply to a given
configuration, and with that worked around, fails on binutils &
compiler version check.

In brief: if someone wants locales on cygwin/macos, you'd have to
implement cross-localedef (similar to cross-rpcgen) in glibc and
submit it upstream.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-03-06 23:12:16 -08:00
Alexey Neyman
865a095d70 Do not pretend we're downloading anything
... when we're actually don't.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-03-03 16:45:05 -08:00
Dan McGregor
c88621f740 glibc: hide native c++ executable from build
If glibc's configure finds the host c++ executable it assumes that
c++ should be enabled for the build. In case we don't have cross g++
built yet (ie, for headers), this causes the build to fail creating
C++ headers. So hide C++ from the build.

Signed-off-by: Dan McGregor <dan.mcgregor@usask.ca>
2017-03-01 22:23:39 -06:00
Dan McGregor
f2f782dd1c Bring in FreeBSD support
Check for FreeBSD specific issues, it is mostly the same as Darwin.

Signed-off-by: Dan McGregor <dan.mcgregor@usask.ca>
2017-03-01 22:22:02 -06:00
Alexey Neyman
864d1358e0 Merge pull request #625 from stilor/skip-localedef
Skip localedef
2017-02-28 21:52:06 -08:00
Alexey Neyman
e7163a46c4 Skip locale build on Cygwin
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-28 20:35:14 -08:00
Alexey Neyman
b04d2e84a8 Avoid -T, it is not available on macos
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-28 18:40:51 -08:00
Alexey Neyman
59bab98b2d Revert "Determine whether -E/-r option selects extended regexp"
This reverts commit 7bcf18bfab.
2017-02-26 19:06:35 -08:00
Alexey Neyman
7bcf18bfab Determine whether -E/-r option selects extended regexp
... and then use the right option. See the note in scripts/functions
on where we should use ${foo} and where just 'foo'; this boils down to
whether we can expect the build tools override to be in effect (e.g. in
the actual build scripts) or not (i.e. outside of scripts/build).
While running in scripts/functions, or in scripts/crosstool-NG.sh the
build tools override directory (.build/tools/bin) may have not been
set up (yet, or at all).

Also, modify the installed scripts (populate, xldd) accordingly.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-13 22:47:40 -08:00
Alexey Neyman
5e0b489b12 External addons supported by glibc even now
... though none are provided by default.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-09 18:05:36 -08:00
Alexey Neyman
f6ef2be9f3 Revert "glibc: Remove support for downloading and extracting add-ons"
This reverts commit 39273e0843.
2017-02-09 18:05:36 -08:00
Alexey Neyman
df68f203b4 Use 'make olddefconfig' in uClibc/uClibc-ng configuration
instead of 'make oldconfig' and responding 'y'. This avoids 'Broken pipe'
errors in the log, as well as selects default setting for all options not
explicitly set.

This requires a small fix in the old uClibc. Won't have to maintain that fix
for long though :)

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-04 21:16:10 -08:00
Alexey Neyman
6c9e949ae3 Fix location where libc manual is built
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-01-30 12:11:37 -08:00
Alexey Neyman
d7b043e360 Create <sgidefs.h> if MUSL doesn't create one
Document the status quo and work around for mips-musl.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-01-26 13:50:18 -08:00
Alexey Neyman
7186e39f32 Run all configure scripts using ${CONFIG_SHELL}
... as its help message says in menuconfig.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-01-25 00:06:28 -08:00
Alexey Neyman
65e037b654 Merge pull request #552 from stilor/uclibc-ng-for-buildroot
Restore uClibc-ng usability in buildroot
2017-01-23 16:12:18 -08:00
Alexey Neyman
aa24e9d913 Add selection for RPC
So that uClibc config can be matched to Buildroot's expectations via
the menu, without the need for a saved config.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-01-23 14:37:18 -08:00
Li-Hang Lin
1f6c6d3f32 mingw: compile the mingw-w64 companion tools as well
There are some useful tools such as widl, gendef, genidl ... etc.
provided by mingw-w64 and do not waste the developers' works.

Signed-off-by: Li-Hang Lin <lihang.lin@gmail.com>
2017-01-22 18:09:49 +08:00
Alexey Neyman
c1612e9295 Use ${CT_CC} instead of gcc ...
... when refering to target's compiler.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-01-13 21:47:07 -08:00
Alexey Neyman
949cc86ab7 Merge pull request #526 from stilor/double-include
Avoid creating include/include
2017-01-13 21:44:33 -08:00
Alexey Neyman
9f5a92a783 Unify fetching Linaro components.
Add CT_GetLinaro, use it from gcc/binutils/gdb/glibc/newlib.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-01-12 23:00:41 -08:00
Alexey Neyman
fddbf8f99e AVR32 support has been retired.
Scripts no longer download avr-headers.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-01-12 23:00:20 -08:00
Alexey Neyman
01a4bed794 install_root has no effect on newlib install.
And never had, at least since newlib 1.17 (first version added to
crosstool-ng). Apparently, copy-pasted from glibc.sh.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-01-12 23:00:20 -08:00
Alexey Neyman
ec9ddee933 Remove 2nd copy of the option.
Added above, as part of the list.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-01-12 23:00:20 -08:00
Alexey Neyman
eff79ab714 Merge pull request #519 from InfernoEmbedded/newlib-enhancements
Newlib enhancements
2017-01-10 18:17:21 -08:00