Commit Graph

4155 Commits

Author SHA1 Message Date
Alexey Neyman
6f7e6b9969 Build companion libs for target.
Currently, only libelf has a for-target step - but it generalizes
the step to hook other libraries into this step.

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-11-13 10:24:22 -08:00
Bryan Hundven
e78251b751 Merge pull request #253 from jcmvbkbc/xtensa-for-mainline-20151113
Add support for Xtensa architecture
2015-11-13 01:47:08 -08:00
Max Filippov
d1578acf3c Add xtensa-unknown-linux-uclibc to Travis build
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
2015-11-13 12:29:30 +03:00
Max Filippov
18dfc4871d samples: add xtensa-unknown-linux-uclibc config
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
2015-11-13 12:27:11 +03:00
Bryan Hundven
c96d5df186 Merge pull request #254 from bhundven/not_executable
file modes: Set files to be non-executable
2015-11-12 23:21:27 -08:00
Bryan Hundven
e4bb360748 file modes: Set files to be non-executable
I was going to start doing some autoconf work, and noticed that
configure.in was executable. Then I noticed Makefile.in was executable.

o.O

So, I ran ```find . -type f -executable``` and found a bunch of files
that shouldn't be set executable.

This commit makes them normal files again.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-12 23:18:04 -08:00
Max Filippov
6717dbfd3f gdb: add xtensa-specific patches for 7.10
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
2015-11-13 09:08:54 +03:00
Max Filippov
9af5ff74ef gcc: add xtensa-specific patches for 5.2.0
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
2015-11-13 09:08:53 +03:00
Max Filippov
3a659bb198 binutils: add xtensa-specific patches for 2.25.1
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
2015-11-13 09:08:53 +03:00
Chris Zankel
81328ed1cb xtensa: add support for the configurable Xtensa architecture.
The Xtensa processor architecture is a configurable, extensible,
and synthesizable 32-bit RISC processor core. Processor and SOC vendors
can select from various processor options and even create customized
instructions in addition to a base ISA to tailor the processor for
a particular application.

Because of the configurability, the build process requires one additional
step for gcc, binutils, and gdb to update the default configuration.
These configurations are packed into an 'overlay' tar image, and are
simply untarred on top of the default configuration during the build.

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
2015-11-13 09:08:53 +03:00
Bryan Hundven
57de8dcf22 Merge pull request #239 from diorcety-ctng/cc-cygwin-mingw-linux
Canadian cross build = x86_64 Cygwin host = x86_64 MinGW_W64 target = x86_64 GNU/Linux
2015-11-12 21:50:31 -08:00
Bryan Hundven
4c9218d51d Merge pull request #245 from villytiger/install-strip
Use install-strip target for gcc optionally
2015-11-12 21:50:08 -08:00
Bryan Hundven
b9902e788d Merge pull request #252 from bhundven/kconfig-4.4
kconfig: Add updates from linux-4.3 and 4.4
2015-11-12 21:49:46 -08:00
Bryan Hundven
377493fc5d Merge pull request #221 from bhundven/uclibc-ng
Add support for uClibc-ng
2015-11-12 21:46:34 -08:00
Bryan Hundven
adcf4ec7e6 travis-ci: Update samples to be more diverse
We still need to add some cross-canadian and more musl-libc samples.
But this is a start.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-12 21:45:03 -08:00
Bryan Hundven
5e16edbea8 gcc: Sync patches with buildroot
This commit sync gcc patches with buildroot.
I found this useful for fixing a few uClibc related issues.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-12 21:44:44 -08:00
Ray Donnelly
5f3774cd65 Cygwin: Add documentation
There's a lot that can go wrong if you stray from
the path.

Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
2015-11-13 02:17:47 +00:00
Ray Donnelly
4f3310cf03 Samples: Add x86_64-w64-mingw32,x86_64-pc-linux-gnu
Tested on build machines of x86_64-pc-cygwin and x86_64-unknown-linux-gnu

Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
2015-11-13 02:17:46 +00:00
Ray Donnelly
06855ab27e libtool: Update to 2.4.6 and patch for Cygwin
Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
2015-11-13 02:17:46 +00:00
Ray Donnelly
9e81836b81 Add gettext and libiconv as companion libs
.. they're needed for the RPC generation in glibc
on both Cygwin and MinGW-w64.

Neither are built on GNU/Linux and iconv is not
built on Darwin.

Two patches for gettext are needed, one so that
-O0 works and one so that static builds can be
made.

They can take a good while to build, so if not
needed for_host or for_build then they are not
built.

Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
2015-11-13 02:17:45 +00:00
Ray Donnelly
f9968501ee glibc: Cygwin doesn't have stat64
Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
2015-11-13 02:17:45 +00:00
Ray Donnelly
9ef1750f3c MinGW-w64: winpthreads doesn't have pthread_mutexattr_settype
It's only used as a hint, so excluding it shouldn't cause any problems.

Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
2015-11-13 02:17:44 +00:00
Ray Donnelly
58e32a7319 Cygwin: Define R_X86_64_JUMP_SLOT
This should be upstreamed to Cygwin ideally.

Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
2015-11-13 02:17:44 +00:00
Ray Donnelly
2cf7a83fde Cygwin: Link to libintl for gettext
Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
2015-11-13 02:17:43 +00:00
Ray Donnelly
ada8ae30a8 Add help2man as PROGS_REQ and to travis
libtool needs it.

Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
2015-11-13 02:17:43 +00:00
Ray Donnelly
df02517fd7 binutils: Don't link to libfl as it's unnecessary
AM_PROG_LEX sets this for some weird reason; it should
look for a program only and not a library.  Then later
it gets linked to ar, ranlib, dlltool, windres, windmc
and itbl-test despite nothing in the code #include'ing
FlexLexer.h

This isn't a big deal but it did cause a build failure
on Cygwin as it triggered a bug with their flex package
dependencies which I reported at:

https://www.cygwin.com/ml/cygwin/2015-10/msg00433.html

Arguably I should remove all traces of LIBLEX in each
Makefile.am instead?

Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
2015-11-13 02:17:43 +00:00
Ray Donnelly
3c95e3492a binutils: Fix typo
pthread_mutextattr_settype -> pthread_mutexattr_settype
.. I'm not sure why this didn't fail everywhere, unless
no one has tried to build gold?

Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
2015-11-13 02:17:42 +00:00
Bryan Hundven
972c03d7f1 samples: Update samples to use default uClibc-ng config
This commit removes per-sample configuration files for uClibc and falls
back to using the default config file in contrib/uClibc-defconfigs.

Only one sample is broken:

* powerpc-unknown-linux-uclibc
  * breaks on dmalloc

I will come back and work on the dmalloc failure later, but I don't want it to
hold up getting uClibc-ng out in ct-ng.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-12 16:15:41 -08:00
Bryan Hundven
a173dfa939 uClibc: Fall back to default configs if not provided
I've added the .config files to contrib/uClibc-defconfigs from buildroot
to use as default configs if they are not provided in the sample.

If a particular architecture really needs an option set, it should be
either updated in the manange_uClibc_config function in
scripts/build/libc/uClibc.sh or a custom ${uclibc_name}.config should be
added to the sample (usually via `ct-ng saveconfig`).

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-12 16:15:41 -08:00
Bryan Hundven
21a448516e uClibc: Add support for uClibc-ng
This commit adds uClibc-ng 1.0.8.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-12 16:15:41 -08:00
Bryan Hundven
1c924f06fa uClibc: rewrite mungeuClibcConfig to manage_uClibc_config
This commit updates uClibc to use the new CT_Kconfig options from the
previous commit. The older sed method of sanity checking the uClibc
.config was error prone and clumsy.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-12 16:15:41 -08:00
Bryan Hundven
c4d14a97ad functions: Add global functions for manipulating kconfig options
This commit adds 4 new functions to aid in the process of managing a
kconfig .config file:

* CT_KconfigSetOption <option> <value> <file>
* CT_KconfigEnableOption <option> <file>
* CT_KconfigDisableOption <option> <file>
* CT_KconfigDeleteOption <option> <file>

(akin to how buildroot manages the uClibc.config)

These functions are global so that we can manage any component that also
uses kconfig, or to be able to use it internally on Crosstool-NG's
kconfig files.

Last but not least, be consistent and update sed to be ${sed}!

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-12 16:15:39 -08:00
Bryan Hundven
e40f4ee011 kconfig: Add updates from linux-4.3 and 4.4
Add updates from the following merges:

https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/scripts/kconfig?id=605e9710fb5fef0dd2bb49d7b75e46601df62112

and

https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/scripts/kconfig?id=152813e6e4bbb5f017e33eba7eb01bbda4b389b8

that apply to crosstool-ng.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-11 21:27:24 -08:00
Bryan Hundven
265503461b Merge pull request #251 from bhundven/mpfr_mirror
mpfr: Swap primary mirror to gnu.org
2015-11-11 17:20:36 -08:00
Bryan Hundven
ad0d71d287 mpfr: Swap primary mirror to gnu.org
mpfr.org has been less then reliable, so lets make gnu.org the primary
instead of the secondary source.

This closes #250

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-11 17:19:51 -08:00
Bryan Hundven
930fa77076 uClibc: Reduce supported versions
This commit reduces the number of supported versions to:

* 0.9.33.2
* custom location

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-11 08:27:33 -08:00
Ilya Lyubimov
69405c3b32 Use install-strip target for gcc optionally 2015-11-11 12:29:54 +03:00
Bryan Hundven
83403825ee Merge pull request #248 from stilor/mingw-parallel-issue
Mingw issue with parallel build.
2015-11-10 23:16:10 -08:00
Alexey Neyman
f3e62e0c09 Disable parallel build of mingw-w64-crt.
Unfortunately, parallel build issue is not yet fixed in current
mingw-w64 sources.

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-11-10 18:21:43 -08:00
Alexey Neyman
bea0cde305 Support mingw-w64 in addToolVersion.sh.
... and add 4.0.4 release.

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-11-10 18:18:57 -08:00
Bryan Hundven
319c999f77 Merge pull request #242 from stilor/fix-uclibc
Restore uClibc-based samples.
2015-11-10 01:04:13 -08:00
Bryan Hundven
85b6b3394f Merge pull request #244 from bhundven/remove_blackfin
blackfin: Remove blackfin support
2015-11-09 22:33:59 -08:00
Bryan Hundven
e9e29e7a46 blackfin: Remove blackfin support
This commit removes blackfin support.

I'm open to re-adding blackfin after crosstool-1.23.0 is released, but
it is currently too difficult to port forward to newer versions of gcc
and uclibc.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-09 22:30:45 -08:00
Alexey Neyman
734d1ebf27 Restore uClibc samples.
Commit 1a25115a18 deleted non-GCC related
files, including the patch for uClibc to compile with Linux kernels after
3.4.

uClibc 0.9.30 patches are not restored by this change (0.9.30 is broken
with recent kernels for multiple other breakages in addition to that; if
not retired, it needs to be fixed properly).

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-11-09 11:58:17 -08:00
Bryan Hundven
85f98147f5 Merge pull request #233 from stilor/fix-build-all
Fix build-all
2015-11-04 02:50:05 -08:00
Bryan Hundven
5ffc9ecd10 Merge pull request #235 from stilor/ctng-source
ctng source
2015-11-03 00:35:30 -08:00
Bryan Hundven
8c87c3d719 Merge pull request #238 from bhundven/cross_compile_issues
Fix some cross_compile issues
2015-11-03 00:30:54 -08:00
Bryan Hundven
3b854d4939 uClibc: Don't use CROSS, use CROSS_COMPILE instead
As per:
http://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/Makefile.help?id=044843f002f666db3bc06c513ed6291a00ad1225

CROSS= is for compatibility, but we plan on dropping older uClibc
versions, and adding uClibc-ng and uClibc-snapshot support.

Use CROSS_COMPILE instead.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-02 17:01:20 -08:00
Bryan Hundven
bb821551c5 linux: Set CROSS_COMPILE while building/checking headers
Some architectures, like arc and blackfin set CROSS_COMPILE to a default
if it is not set on the command-line.

Since we are building the cross-compiler, we need to ALWAYS set
CROSS_COMPILE, since building/checking headers is done after the GCC
PASS1 step.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-11-02 16:55:44 -08:00
Bryan Hundven
387955ea86 Merge pull request #232 from bhundven/less_gcc_versions_part_1
gcc: Support only the latest branch releases of gcc
2015-11-02 14:21:10 -08:00