Commit Graph

2184 Commits

Author SHA1 Message Date
Yann E. MORIN"
7ddae7f671 scripts/internals: do not remove lib{32,64}/ symlinks after build
During the build, we create lib{32,64}/ symlinks out of the sysroot.
In some cases (eg. mingw32 target), these symlinks are still required
when running the toolchain. For other combinations, the symlinks are
without incidence, so they can be safely kept after the build.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
(transplanted from 751c3f735ada4a95aa981841b832adb08b88ce27)
2011-04-15 00:22:42 +02:00
Yann E. MORIN"
624514508b scripts: on startup, also remove the buildtools dir
In case there's one lingering around (whether the previous build was
successful, or failed), we have to remove the buildtools directory
as well as the toochain build dir.

This should also fix the case where out makeinfo wrapper calls
itself recursively.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
(transplanted from 0e8ff57073838afea8830fe09d1d01cdf7cb37d8)
2011-07-10 00:02:05 +02:00
Yann E. MORIN"
0d319daf2d cc/gcc: fix passing args with spaces when calling core gcc
Spaces in arguments to the core gcc backend were not handled.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
(transplanted from 7cce5c8fc79a62bca1e448fc721e7209ac85d204)
2011-04-15 00:05:53 +02:00
Yann E. MORIN"
7839c6af5c cc/gcc: remove --enable-symver option
That option is coming from the original crosstool, and is not entirely
understand here.

Moreover, it breaks with newer gcc-s: 4.6.1 now breaks while configuring
libjava (and probably some other libs as well, untested).

There is an related bug report to the gcc BZ:
  http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49555

If need be, the old behavior can be restored with:
  CC_CORE_EXTRA_CONFIG_ARRAY="--enable-symver=gnu"
  CC_EXTRA_CONFIG_ARRAY="--enable-symver=gnu"

Reported-by: Bryan Hundven <bryanhundven@gmail.com>
Reviewed-by: Bryan Hundven <bryanhundven@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
(transplanted from b24ead1a59472195f5b2071ff70664c36fa21c3f)
2011-06-28 23:46:04 +02:00
Nicolás Reynolds"
80fc848670 libc/glibc: fix {e,}glibc add-ons with short or long names
Fixes the issue with {e,}glibc addons having short and long names (such as
eglibc-ports-2_13 and ports), which caused configure scripts to run
through them twice and thus configuring incorrectly.

For instance, the mips64el-n32-linux-gnu toolchain would be recognized
correctly first, but then the second pass would change it to mips32,
building a mixed MIPS-III N32 and MIPS-I libc.

Signed-off-by: Nicolás Reynolds <fauno@kiwwwi.com.ar>
[yann.morin.1992@anciens.enib.fr: remove spurious trailing spaces]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
(transplanted from af25723a794f2017f45c300369a6d36849e22236)
2011-05-27 22:02:30 -03:00
Benoît THÉBAUDEAU"
5840c84775 debug/gdb: fix runtime sysroot
This patch sets the runtime sysroot to fix the following GDB warning:
"Unable to find dynamic linker breakpoint function.
GDB will be unable to debug shared library initializers
and track explicitly loaded dynamic code."

The sysroot can later be changed within gdb with the `set sysroot`
command if necessary.

Signed-off-by: "Benoît THÉBAUDEAU" <benoit.thebaudeau@advansee.com>
(transplanted from 7690196856ce4a4700d1887cc3adf80acc627c52)
2011-05-25 20:23:48 +02:00
Yann E. MORIN"
17f504fc30 1.11: update version to 1.11.3+hg 2011-05-21 01:10:10 +02:00
Yann E. MORIN"
f77afe143a Tagging release 1.11.3 2011-05-21 01:10:10 +02:00
Yann E. MORIN"
e1ceba1600 1.11: update version to 1.11.3 2011-05-21 01:10:10 +02:00
Anthony Foiani
48c5423871 complibs/ppl: fix 0.11-0.11.2 to compile with --disable-shared
PPL 0.11 (through 0.11.2) had a small bug where it still tried to build
and test its Java interface even when shared libraries are disabled.
Since that's exactly what ct-ng does, it explodes.

This is the patch from the PPL authors (see final link below).

More information can be found in these messages/threads:

  Anthony's initial report and analysis with Yann:
    http://www.cygwin.com/ml/crossgcc/2011-05/msg00046.html

  Ron Flory hit the same problem:
    http://www.cygwin.com/ml/crossgcc/2011-05/msg00054.html

  Anthony's report to the ppl-devel list:
    http://www.cs.unipr.it/pipermail/ppl-devel/2011-May/017450.html

  Roberto's reply with a link to the fix in the PPL git repo:
    http://www.cs.unipr.it/pipermail/ppl-devel/2011-May/017455.html

Signed-Off-By: Anthony Foiani <anthony.foiani@gmail.com>
(transplanted from 139b85d70b623e51f7585e7c64ecb8c6a6cf4567)
2011-05-19 23:09:43 +02:00
Anthony Foiani
5c2c335873 complibs/ppl: build only C and C++ interfaces for PPL
By default, PPL wants to build interfaces for any of a variety of
langauges it finds on the local host (python, java, possibly perl, also
more esoteric languages such as ocaml and prolog).

These extra interfaces can double the compile time for the library. For
single-process builds, I found a savings of more than 40%:

  default    / j1: 716s total, 143.2s avg, 0.52s stdev
  just_c     / j1: 406s total,  81.2s avg, 0.33s stdev
  just_c_cpp / j1: 413s total,  82.6s avg, 0.22s stdev

And for multi-process builds, it approached 50%:

  default    / j4: 625s total, 125.0s avg, 0.57s stdev
  just_c     / j4: 338s total,  67.6s avg, 1.25s stdev
  just_c_cpp / j4: 327s total,  65.4s avg, 0.36s stdev

Since the PPL we build within ct-ng is only used by GCC, we only need to
build the C and C++ interfaces.

Signed-Off-By: Anthony Foiani <anthony.foiani@gmail.com>
(transplanted from ec30b191f0e3fe9bc73199f0bcb8d789db17aa92)
2011-05-19 23:06:16 +02:00
Anthony Foiani
02f7cf42de complibs/ppl: update GMP location configuration argument for PPL v0.11 and later
'configure' for PPL 0.11 (and later) needs "--with-gmp-prefix" to
provide the location of the GMP toolkit; the previous switches were
"--with-libgmp-prefix" and "--with-libgmpxx-prefix".

The upstream log message is:

  commit 08dfb6fea094f8c5a533575a3ea2095edce99a6d
  Author: Roberto Bagnara <bagnara@cs.unipr.it>
  Date:   Sun Jul 12 21:39:46 2009 +0200

     New configure option --with-gmp-prefix supersedes the (now removed)
     options --with-libgmp-prefix and --with-libgmpxx-prefix.

Link: http://www.cs.unipr.it/git/gitweb.cgi?p=ppl/ppl.git;a=commit;h=08dfb6fea094f8c5a533575a3ea2095edce99a6d

Since PPL's 'configure' ignores unknown switches, we use all three so we
don't have to conditionalize the ppl.sh build script itself.

Signed-Off-By: Anthony Foiani <anthony.foiani@gmail.com>
(transplanted from 4f0c4fb572e2862c24b28e8d27ce7e9cb9adba65)
2011-05-19 23:05:32 +02:00
Yann E. MORIN"
b1a712364d 1.11: update version to 1.11.2+hg 2011-05-19 00:58:02 +02:00
Yann E. MORIN"
efc63eba5e Tagging release 1.11.2 2011-05-19 00:58:01 +02:00
Yann E. MORIN"
d202dc25fe 1.11: update version to 1.11.2 2011-05-19 00:58:01 +02:00
Yann E. MORIN"
bf2f0d57d2 scripts/addToolVersion: fix gcc complibs dependency
Since the gcc configuration changes, the way to select the
dependent companion libraries has changed.

Update the addToolVersion script to match.

Reported-by: Xun Li <lxfind@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
(transplanted from 4cd9cda2265c0c76df3d4ff77a2f3461aae3bc9f)
2011-05-08 11:02:18 +02:00
Yann E. MORIN"
1ac7419d2e 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>
(transplanted from 79947df7ec4b482297ba90c3fe77314336d200e5)
2011-05-08 10:52:21 +02:00
Yann E. MORIN"
5b237f8511 1.11: update version to 1.11.1+hg 2011-05-02 18:11:24 +02:00
Yann E. MORIN"
80d46479f3 Tagging release 1.11.1 2011-05-02 18:11:24 +02:00
Yann E. MORIN"
46e10cd3a1 1.11: update version to 1.11.1 2011-05-02 18:11:24 +02:00
Yann E. MORIN"
2517bb881a internals: fix stripping yet once again
Fix typo introduced by changeset #055e505f28be.
Also, handle older versions of gcc (typically, all versions
prior to 4.0.0).

Maxime provided a similar patch, missing the case for the
legacy versions of gcc.

Reported-by: Maxime Bizon <mbizon@freebox.fr>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
(transplanted from 539a3fa894f00888b02c7f89a2046f02c9d51e75)
2011-05-02 18:07:13 +02:00
Yann E. MORIN"
ad4e6da655 1.11: update version to 1.11.0+hg 2011-05-01 00:29:20 +02:00
Yann E. MORIN"
e079fb231e Tagging release 1.11.0 2011-05-01 00:29:20 +02:00
Yann E. MORIN"
a96b1dbb31 1.11: create maintenance branch, update version to 1.11.0 2011-05-01 00:29:19 +02:00
Yann E. MORIN"
21ce63f28b samples: update
Release is coming soon... Time to update samples...

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-28 19:36:56 +02:00
Yann E. MORIN"
3d0844d41e internals: fix stripping canadians
We can't run the newly built gcc when it is a canadian cross.
Thus, we can't get the version number, and thus we can't get
the directory libexec subdirectory to strip.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-30 22:45:27 +02:00
Yann E. MORIN"
9d38d4427c scripts: fix installation
Changeset e013ddebc063 forgot to install the samples.mk file.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-30 23:13:12 +02:00
Yann E. MORIN"
26da02fdaa docs: uninstall the man page
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-29 00:05:41 +02:00
Yann E. MORIN"
ff3fba024c scripts: fix installing samples
It's been a while now that the working directory CT_WORK_DIR has
been changed from 'targets' to '.build'. Fix the install procedure
to properly tweak the installed samples.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-04-28 23:36:37 +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"
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