Commit Graph

665 Commits

Author SHA1 Message Date
Yann E. MORIN"
f603742014 libc/glibc: use the multi-inclusion capability of the new kconfig
Now that kconfig can include a file multiple times, link the glibc/eglibc
common stuff to two .in.2 files.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-05-09 20:15:39 +02:00
Yann E. MORIN"
db796067af config: add main menu title
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-05-10 23:56:11 +02:00
Yann E. MORIN"
102c0ba895 kernel/linux: reorder stuff
Yet another reordering...

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-05-09 19:26:54 +02:00
Yann E. MORIN"
508003189a config: add generated help entries only if present
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-05-08 22:57:57 +02:00
Yann E. MORIN"
53892de14c config: fix recursive deps
The latest kconfig stuff is more stringent when it comes to validating
the dependency of the symbols. It is no longer possible to have a symbol
depend on itself (such as our construct for arch/cc/libc/... was doing).

Fix our generated-file infrastructure to avoid these situations when the
new kconfig stuff will be merged (in a following changeset).

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-05-08 19:02:44 +02:00
Yann E. MORIN"
aad5659eb0 cc/gcc: fix complibs dependency
Since the gcc configuration changes, the way to select the
dependent companion libraries has changed. The addToolVersion
script was not updated to match, and a new gcc version was
added with this script.

Fix the gcc version; the script will be updated in a subsequent
changeset.

Reported-by: Xun Li <lxfind@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-05-08 10:52:21 +02:00
Yann E. MORIN"
6cf1dab940 libc/glibc: add 2.13
Patchset provided by "Ioannis E. Venetis" <venetis@mail.capsl.udel.edu>
  http://sourceware.org/ml/crossgcc/2011-04/msg00072.html
  http://sourceware.org/ml/crossgcc/2011-04/msg00073.html

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-05-03 00:19:56 +02:00
Yann E. MORIN"
c50fc857f7 complibs/mpfr: add latest version
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-30 14:38:44 +02:00
Yann E. MORIN"
5c8891f221 complibs/cloog: add latest version
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-30 14:36:34 +02:00
Yann E. MORIN"
666d810925 debug/gdb: fix Linaro version string
Last update missed updating the version string.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-28 23:26:57 +02:00
Yann E. MORIN"
8344f4f1cc kernel/linux: add latest versions
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-28 18:57:24 +02:00
Yann E. MORIN"
cd348634e9 config: small help fix up for work dir default
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-28 01:10:23 +02:00
Yann E. MORIN"
336eb8727c debug/gdb: add latest Linaro version
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-28 00:56:15 +02:00
Yann E. MORIN"
e449978ee9 debug/gdb: hide Linaro options by default
It can be quite confusing for a new-comer to find strange
version numbers for gdb, so hide the Linaro versions by
default.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-28 00:21:27 +02:00
Yann E. MORIN"
8d769a27a9 cc/gcc: add latest Linaro versions
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-28 00:18:18 +02:00
Yann E. MORIN"
c1a758793d cc/gcc: suffle options around
Move options around so it feels more organised.
Add comments to separate groups of related options.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-27 22:41:17 +02:00
Yann E. MORIN"
21ed457eff config: reorder the kernels sub-menu
Re-organise the sub-menu so that:
 - the kernels list comes first,
 - followed by kernels generic options
 - followed by kernels specific options

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-27 22:37:32 +02:00
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"
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"
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"
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"
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"
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"
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"
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"
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"
a5d9facb14 complibs/ppl: add latest version
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-17 22:08:33 +01:00
Yann E. MORIN"
59751df290 kernel/linux: add newer versions
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-03-19 22:24:29 +01:00
Yann E. MORIN"
ef429a5a5d kernel/linux: add latest 2.6.37.2 version
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-02-27 22:14:12 +01:00
Yann E. MORIN"
7fdd4ea3e9 complibs/mpc: add latest version 0.9
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-02-23 00:12:16 +01:00
Yann E. MORIN"
bc175d4e88 complibs/ppl: add latest version 0.11.1
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-02-23 00:10:57 +01:00
Yann E. MORIN"
3a75a086a1 kernel/linux: fix typo in version string
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-02-22 23:47:15 +01:00
Yann E. MORIN"
0841e2f820 cc/gcc: do not build plugins for static toolchains
Plugins are shared objects, and when building a toolchain statically,
the gcc build system breaks havok (although there is no hard technical
reasons it should not be possible)...

And consequently, do not enable plugin supoprt in binutils.

Reported-by: Thomas Spurden <thomas@ado.is-a-geek.net>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-02-22 23:27:42 +01:00
Yann E. MORIN"
b1edc84ae1 libc/glibc: LinuxThreads are no longer supported in latest versions
In fact, it is only supported in a few legacy versions.

Keep LT available for all eglibc versions, although it might need
a similar safeguard...

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-02-21 23:42:20 +01:00
Yann E. MORIN"
b93e67f07c libc/glibc: add fortify option
By default, recent versions of glibc and eglibc will build some
functions that take format strings (eg. printf, syslog...) with
run-time checks against some format string attacks. This is
called a fortified build.

Unfortunately, this fails somehow while building the instrumented
version of syslog, with some kind of circular dependency...

Disable fortified builds by default, and hide the enabling option
behind EXPERIMENTAL for daring users...

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-02-21 23:39:46 +01:00
Yann E. MORIN"
c785cc5804 kernel/linux: add latest versions
... and remove old versions.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-02-21 23:17:45 +01:00
Yann E. MORIN"
a59b794f9c debug/gdb: add versions from Linaro
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-02-17 23:05:34 +01:00