Commit Graph

2347 Commits

Author SHA1 Message Date
Yann E. MORIN"
2ba42cb171 config: reorder the architectures sub-menu
Re-organise the sub-menu so that:
 - the archs list comes first,
 - followed by archs generic options
 - followed by archs specific options

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-27 22:18:07 +02:00
Yann E. MORIN"
c9a186ec84 scripts/addToolsVersion: versions can be either in the .in or the .in.2
The components have their version selection handled either in the .in
file or the .in.2 file. Handle both cases.

Also, when dumping an existing version, keep the user's grep options
(ie. do override neither options nor colors).

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-28 00:13:41 +02:00
Yann E. MORIN"
1b1bb6c588 samples: add a new sample for ARM Cortex-A15 with VFP/NEON
Sample origiannly reported and provided by dsreed on the #crostool-ng
channel on freenode. I don't have the real ID for dsreed, but the
sample is not orginally mine, but his/hers.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-24 22:47:10 +02:00
Yann E. MORIN"
3e05fb91f5 libc/uClibc: use MMU settings
Enforce the MMU settings from the crosstool-NG configuration.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-24 18:57:01 +02:00
Yann E. MORIN"
e190682b9d scripts: small eye-candy in the wiki table
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-24 16:14:41 +02:00
Yann E. MORIN"
235dc5090e internals/finish: do not remove ${PREFIX}/include
gcc installs the C++ headers in ${PREFIX}/include/ but we trash
that directory at the end of the build.

We previously removed that directory as it contained the companion
libraries header files. But it's been some time now that we isntall
the companion libraries in their own dedicated place, so we do not
need to remove that directory.

Until we have a better fix, just keep that directory for now.

Reported-by: Bob Rossi <bob@brasko.net>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-24 15:39:53 +02:00
Yann E. MORIN"
8c360cbfc4 config/toolchain: hide sysroot name when in backend mode
In backend mode, setting the sysroot name is the
responsibility of the upper-layer build system.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-20 19:21:39 +02:00
Yann E. MORIN"
14c5bc9260 cc/gcc: add latest version
Propagate the gcc-4.4.5 patchset to the newly added gcc-4.4.6.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-16 22:01:35 +02:00
Yann E. MORIN"
c12d172501 kernel/linux: add latest versions
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-16 21:50:26 +02:00
Yann E. MORIN"
8b5375b0c8 scripts: update config.sub
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-12 22:12:23 +02:00
Yann E. MORIN"
1063559541 scripts/mk-patch: squash all non alphanumeric chars
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-08 00:58:33 +02:00
Yann E. MORIN"
81862cd306 functions: pretty print error messages
Reformat the error messages:
 - strip ${CT_LIB_DIR} from scripts path names
 - strip ${CT_TOP_DIR} from build.log path and docs path
 - overall shorter lines
 - point to the known-issues file

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-08 00:08:57 +02:00
Yann E. MORIN"
43850b301c docs: add a status for know issues
As time passes, a known issues can be no longer applicable (because
the component has been fixed, or a workaround ahs been added in the
crosstool-NG scripts/config...).

Some may also be unconfirmed, with no way to easily trigger the error,
or applies to old versions of components...

Add a status for every known issues.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-07 19:21:15 +02:00
Yann E. MORIN"
a5785964b7 docs: use the error message in the known issues titles
This helps users find the appropriate known issue entry.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-07 19:17:12 +02:00
Yann E. MORIN"
c52ca838fb docs: add known issues summary in the ToC
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-07 19:13:09 +02:00
Yann E. MORIN"
bc35f9a934 docs: add known issue about missing forced unwind support
This has been reported many times, and has become a FAQ.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-07 19:02:56 +02:00
Yann E. MORIN"
bdf0b26e19 functions: fix date calculations
In case date(1) does not support nanosecond resolution, it does
not interpret '%N', and leave it as-is. So we have to remove it.

Note that some versions replaces '%N' with 'N', so we have to
take this into account as well.

Reported-by: Kyle Grieb <grieb.kyle@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-08 00:02:44 +02:00
Javier Viguera
98ceb8faf3 functions: avoid CR when progress bar is not enabled
Using CT-NG with progress bar disabled, still prints CR ('\r') characters
on the output. When you capture the output to a file as part of an
automated build, it shows extra empty lines.

For example:

------------------------------------------------------------
[INFO ]  Performing some trivial sanity checks

[INFO ]  Build started 20110404.113619

[INFO ]  Building environment variables

[EXTRA]  Preparing working directories

[EXTRA]  Installing user-supplied crosstool-NG configuration
------------------------------------------------------------

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2011-04-07 11:52:23 +02:00
Yann E. MORIN"
5e27ad1e5a complibs: disable building shared libs
Managing the shared version of the companion libraries
has become cumbersome.

Also, it will one day be possible to use the companion
libraries from the host distribution, and then we will
be able to easily use either shared or static libs.

As a side note, while working on the canadian-rework
series, it has become quite more complex to properly
handle shared companion libraries, as they need to be
built both for the build and gost systems. That's not
easy to handle. At all.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-06 22:30:57 +02:00
Yann E. MORIN"
177a2b029c libc/glibc: remove duplicate patch
Remove a now obsolete patch for glibc-2.9 (a better one has
just been contributed by Esben).

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-06 21:34:22 +02:00
Esben Haabendal
42e908c44b libc/glibc: workaround for autoconf'ed define of caddr_t
When building canadian cross compiler, I have some trouble with
configure defining caddr_t as a macro, like:
  #define caddr_t char *

When combined with the types.h where caddr_t is protected together
with daddr_t, the typedef of caddr_t breaks.

This patch works around it by protecting the caddr_t typedef
specifically.

I am uncertain as to the real cause and solution to this :-(

Signed-off-by: Esben Haabendal <eha@dev.doredevelopment.dk>
2011-04-06 20:15:23 +02:00
Yann E. MORIN"
c0800dc7b5 libc/glibc: fix cross-compiling to i686
In OE-lite we use the attached patch for building i686 cross compilers.
Thanks to Khem Raj for original patch :-)

At the same time, remove the corresponding patch that was in
the ports patchset.

CC: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Esben Haabendal <eha@dev.doredevelopment.dk>
[yann.morin.1998@anciens.enib.fr: remove patch from ports]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-06 20:15:40 +02:00
Yann E. MORIN"
b296cfb986 libc/glibc-common: force use of the BFD linker
gold can not build glibc/eglibc, force use of the BFD
linker during the toolchain build.

Reported-by: Bill Pringlemeir <bpringle@sympatico.ca>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-05 01:04:31 +02:00
Yann E. MORIN"
942bd0e2a7 binutils/binutils: add blind option to force use of ld.bfd during build
gold is not capable of building glibc/eglibc, so we have to
force using the BFD linker, ld.bfd.

Offer a blind option that affected components can select to
force use of the BFD linker during the build.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-05 01:02:28 +02:00
Yann E. MORIN"
2e7f8019d2 binutils/binutils: also install the wrapper for the internall ld
ld is also installed in PREFIX/TUPLE/bin, so we need to wrap that
as well.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-05 23:34:16 +02:00
Yann E. MORIN"
e1698c4e78 binutils/binutils: warn if only gold is selected
gold is not capable of building glibc/eglibc. See this thread:
  http://sourceware.org/ml/crossgcc/2011-04/msg00010.html

Reported-by: Bill Pringlemeir <bpringle@sympatico.ca>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-04 01:00:17 +02:00
Yann E. MORIN"
6f2778eb02 binutils/binutils: always set name of the default linker
Always export the name of the default linker, even if only
one of them is selected.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-03 23:44:57 +02:00
Yann E. MORIN"
b596e9838f binutils/binutils: hide gold option if no support for current architecture
The gold linker does currently support only a limited set of architectures:
 - x86 (32- and 64-bit)
 - ARM

Hide the gold option for other architectures.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-05 01:17:58 +02:00
Yann E. MORIN"
693cc01f41 arch/sparc: add absic support
Add support for building SPARC targeted toolchain.
With this patch I have built a working sparc V8 (32 toolchain).

Testing shows that not all gcc versions works well:
4.4.1            OK  (kernel builds and the final kernel can boot)
4.4.2            Not tested
4.4.3            Not tested
4.4.4            BAD (Kernel can build but fails during boot)
4.4.5            BAD (Kernel can build but fails during boot)
4.5.1            BAD (Build fails with a spill related ICE - http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35664)
4.5.2            OK  (kernel builds and boots)

I have successfully been using the 4.5.2 version for a few months.

This patch does not add support for the LEON variant.
That may come later.

Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
[yann.morin.1998@anciens.enib.fr: for 32-bit, default CT_TARGET_ARCH is OK]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-03 18:22:00 +02:00
Yann E. MORIN"
fbd37d5d57 kernel/linux: update to latest versions
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-28 22:45:49 +02:00
Yann E. MORIN"
a06a66d326 samples: add first sample to build with gcc-4.6.0
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-28 00:58:33 +02:00
Yann E. MORIN"
784d534d28 cc/gcc: fix linking with static PPL 0.11+
PPL 0.11+ installs three libs: lippl, libppl_c and libpwl.
libppl_c has a dependency on libpwl (at least for watchdog stuff).

While gcc correctly links with libppl and libppl_c, it does not
pull libpwl in. In case of shared libs, this is not a problem, as
libppl_c has a NEEDED dependency on libpwl. But for static libs,
that does not work. Although libppl_c.la exists and has a correct
dependency on lipwl, somehow gcc misses it. So we have to force
pulling libpwl when needed.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-28 01:07:31 +02:00
Yann E. MORIN"
99d7ec8a84 cc/gcc: hide Linaro options by default
It can be quite confusing for a new-comer to find strange
version numbers for gcc, so hide the Linaro versions by
default.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-26 22:04:22 +01:00
Yann E. MORIN"
90697aa498 cc/gcc: add linaro 4.6 pre-release
Before gcc 4.6 was released, Linaro has a pre-release available.
Include that version in the config list.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-28 01:06:53 +02:00
Yann E. MORIN"
14a3369bdf cc/gcc: add 4.6.0
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-26 22:00:05 +01:00
Yann E. MORIN"
5476675c12 complibs/ppl: build watchdog library
gcc-4.6+ requires the Parma Watchdog Library (libpwl).
Build it and use it.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-27 00:07:59 +01:00
Yann E. MORIN"
ad7ebf3219 cc/gcc: prepare for upcoming 4.6
gcc 4.6 will no longer depend on libelf.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-19 16:01:40 +01:00
Yann E. MORIN"
67d96ea16f cc/gcc: cleanup the _or_later logic
So far, we've had a version always select appropriate _or_later option,
which in turn would select all previous _or_later options.

Because the dependencies on companion libs were cumulative, that was
working OK. But the upcoming 4.6 will no longer depend on libelf, so
we can't keep the cumulative scheme we've been using so far.

Have each release family select the corresponding dependencies, instead
of relying on selecting previous _or_later.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-28 01:05:18 +02:00
Yann E. MORIN"
05851ca0d9 cc/gcc: update linaro versions
Linaro has released version linaro-4.5-2011.03-0.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-28 01:04:17 +02:00
Yann E. MORIN"
951a749ffb cc/gcc: fix building core when building statically
There was a mishap when cut-n-pasting code from the final
step into the core step: a variable was not renamed.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-27 00:09:42 +01:00
Yann E. MORIN"
8d8f2dcfcf kernel/linux: update version
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-24 21:04:58 +01:00
Yann E. MORIN"
3537758f31 kernel/linux: add altest version
Fix an incorrect version at the same time... :-(

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-23 23:11:29 +01:00
Yann E. MORIN"
1432e05c3b scripts/internals: fix stripping once more
Some scripts have 'very long lines', so the output of 'file'
will have that mentioned, such as:
  POSIX shell script, ASCII text executable, with very long lines

Reported-by: Kyle Grieb <grieb.kyle@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-22 18:10:00 +01:00
Yann E. MORIN"
25952a4cac kernel/linux: add latest version
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-22 17:30:03 +01:00
Yann E. MORIN"
babb494db3 cc/gcc: log even more
Also log variable assignement for single commands.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-20 01:17:27 +01:00
Yann E. MORIN"
b81864b4c1 libc/mingw: log even more
Also log variable assignement for single commands.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-20 01:16:34 +01:00
Yann E. MORIN"
f033ade4f8 libc/glibc-common: log even more
Also log variable assignement for single commands.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-20 01:15:34 +01:00
Yann E. MORIN"
699de4c20c libc/newlib: log even more
Also log variable assignement for single commands.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-20 01:13:05 +01:00
Yann E. MORIN"
cde7865716 complibs/libelf: log even more
Also log variable assignement for single commands.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-20 01:08:22 +01:00
Yann E. MORIN"
7151e68b0d complibs/mpc: log even more
Also log variable assignement for single commands.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-20 01:07:31 +01:00