Commit Graph

2340 Commits

Author SHA1 Message Date
Yann E. MORIN"
afc8a7bd59 complibs/gmp: bump version
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-30 19:38:10 +02:00
Yann E. MORIN"
6c62da4803 kconfig: print version in .config
Having the crosstool-NG version in the .config helps in case we
want to reproduce the toolchain with the exact same version of
crosstool-NG.

This also reverts #bb73e7632b54.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-30 11:35:29 +02:00
Yann E. MORIN"
229b5d2b15 kernel/linux: fix typoes
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-30 10:21:45 +02:00
Yann E. MORIN"
3b7100d206 kernel/linux: bump versions
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-30 09:43:48 +02:00
Kévin PETIT
1097bea2e0 libc/newlib: add a config option allowing to disable builtin syscalls
Allows to choose if one wants to keep or not the syscalls that are provided with
newlib. It passes the --disable-newlib-supplied-syscalls or
--enable-newlib-supplied-syscalls to the configure script. If one chooses to
disable the builtin syscalls, he/she will have to write his/her own. This can
be usefull to port newlib to a new platform/board.

Signed-off-by: Kévin PETIT <kpet@free.fr>
2011-08-28 20:12:26 +02:00
Yann E. MORIN"
4c1666134b configure: xz-utils alone can also handle LZMA-compressed tarballs
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-26 00:07:51 +02:00
Yann E. MORIN"
04250cc896 configure: check for lzma
Some packages are available as LZMA tarballs. LZMA is a relatively recent
compression algorithm; it's slightly better than bzip2, but offers much
faster decompression. LZMA is now deprecated in favor of XZ, but some
packages switched to LZMA when XZ was not yet available, or still in its
infancy. Latest XZ (which totaly obsoletes LZMA) offers a backward LZMA-
compatible utility, so we can check for 'lzma' nonetheless.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-25 18:30:18 +02:00
Yann E. MORIN"
4bf42bfd02 configure: fix typo in xz-utils warning message
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-26 00:05:20 +02:00
Yann E. MORIN"
9a9e8385ba configure: use def_bool for available features
It's one line shorter, and easier to read.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-22 17:13:42 +02:00
Titus von Boxberg"
68cd6e6d26 debug/ltrace: Fix HOST_OS and ar
HOST_OS really is the target OS. Allow setting it for configure
via an environment variable.
libltrace.a should have an index:
Allow ar to be set as an environment variable, and generate
an index in this lib.

Reported-by: "Guylhem Aznar" <crossgcc@guylhem.net>
Signed-off-by: "Titus von Boxberg" <titus@v9g.de>
2011-08-22 09:26:02 +02:00
Titus von Boxberg"
711ac75ad0 debug/gdb: correct compilation error when stpcpy is a define
On OSX stpcpy is a define which is not recognized by gdb's configure.
This results in a compilation error.

Reported-by: "Guylhem Aznar" <crossgcc@guylhem.net>
Signed-off-by: "Titus von Boxberg" <titus@v9g.de>
2011-08-22 09:35:29 +02:00
Titus von Boxberg"
2cdbc6e370 docs: Document usage with Xcode 4.1
With Xcode 4.1 'gcc' is symlinked llvm-gcc-4.2 which cannot bootstrap
other gccs.
See http://llvm.org/bugs/show_bug.cgi?id=9571

On my machine the faulty gcc is
gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)

Document a workaround.

Signed-off-by: "Titus von Boxberg" <titus@v9g.de>
2011-08-22 09:36:30 +02:00
Titus von Boxberg"
7af1d22c17 libc/uClibc: portability fixes to install_headers
Add patch files for uClibc-0.9.30:
extra/scripts/install_headers.sh: find must be called with path.
extra/scripts/unifdef.c: getline is declared in <stdio.h>, use different name.

Reported-by: "Guylhem Aznar" <crossgcc@guylhem.net>
Reported-by: "Titus von Boxberg" <titus@v9g.de>
Signed-off-by: "Titus von Boxberg" <titus@v9g.de>
2011-08-22 09:38:19 +02:00
Titus von Boxberg"
6b9c9e74b2 configure: require libtoolize, create wrapper to it
libtoolize must be checked_for and there needs to be a wrapper
that points to GNU libtoolize since that may be installed
as glibtoolize.
This fixes a problem with building Cloog/PPL that was

Reported-by: "Pierrick Brossin" <pierrick@bs-network.net>
Signed-off-by: "Titus von Boxberg" <titus@v9g.de>
2011-08-22 09:40:31 +02:00
Titus von Boxberg"
9e5e41568c configure: fix --with-prog=[...]
check_for didn't set variable 'where' when the path to a prog
was passed manually "(cached)".

Signed-off-by: "Titus von Boxberg" <titus@v9g.de>
2011-08-22 09:41:35 +02:00
Titus von Boxberg"
aae55bbcc0 complibs/libelf: use target ranlib
For portability, the right ranlib for the target must be passed to
libelf's configure.

Signed-off-by: "Titus von Boxberg" <titus@v9g.de>
2011-08-21 17:54:12 +02:00
Yann E. MORIN"
770a64c7ff configure: recognise and handle --program-transform-name
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-21 23:11:26 +02:00
Yann E. MORIN"
9ff2560230 configure: recognise and handle --program-suffix
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-19 22:43:01 +02:00
Yann E. MORIN"
f2f6d799c5 configure: handle --program-prefix
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-17 23:05:01 +02:00
Yann E. MORIN"
d706bf2e6b Makefile: introduce PROG_NAME to contain the 'ct-ng' executable name
With the upcomming --program-{prefix,suffix,transform-name} options,
we'll have a need to centralise the actual executable name, that is
now no longer be a constant.

Rather than spread the prefix/suffix through-out the code, just
centralise the name setting in one place. Beside, transform-name
would not be possible without setting the name at a single location.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-19 22:53:48 +02:00
Yann E. MORIN"
fd91781fbe configure: document ignored switches
Autostuff tradiotionnally have some switches to set host, build and
target systems, static or shared libs, and a bunch of others...

In the crosstool-NG case, they do not matter, as crosstool-NG is
just a set of scripts (there are C files, but they are compiled
after installation, at runtime, so it does not count).

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-17 22:23:21 +02:00
Yann E. MORIN"
7228cb0e1e libc/glibc: change default of "forced unwind" to 'y'
Virtually all our targets do support stack unwinding. For some of
them, ./configure can't detect that, and the build fails later on.

So, default to force unwind, and let the user disable it if it
breaks in his/her case.

The previous changeset (f44286235a07) was empty, as spotted by Benoît.

Reported-by: Benoît THÉBAUDEAU <benoit.thebaudeau@advansee.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-21 22:14:39 +02:00
Yann E. MORIN"
307400f4ca debug/gdb: we don't care if the host tic is shared or static
Because we need our own host tic, we have to build it; and we do build
it statically for now.

But as MacOS/Darwin/Whatever-you-call-it does not support static linking
(what a shame!), it fails.

Anyway, we don't really care it being shared, in the end.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-17 23:53:49 +02:00
Yann E. MORIN"
2c98fef576 debug/gdb: use ncurses-5.9
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-18 23:52:47 +02:00
Yann E. MORIN"
340b25b7ad kernel/linux: fix using custom tarball
The custom-tarball symlink was created in CT_SRC_DIR, when it
should be created in CT_TARBALLS_DIR.

Reported-by: Guylhem Aznar <crossgcc@guylhem.net>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-16 22:30:00 +02:00
Yann E. MORIN"
3374dbf5eb scripts: simplify and fix the toolchain config script
The script that is installed, and which sole purpose is to dump
the .config that was used to build the toolchain, is pure insanity.

Let's make it much, much more simpler...

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-19 00:52:05 +02:00
Yann E. MORIN"
abae6732e8 libc/glibc: change default of "forced unwind" to 'y'
Virtually all our targets do support stack unwinding. For some of
them, ./configure can't detect that, and the build fails later on.

So, default to force unwind, and let the user disable it if it
breaks in his/her case.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-19 00:35:26 +02:00
Benoît THÉBAUDEAU"
860a60f44a debug/gdb: update GDB revisions
Update GDB with the latest available revisions.

Signed-off-by: "Benoît THÉBAUDEAU" <benoit.thebaudeau@advansee.com>
2011-08-18 16:05:48 +02:00
Benoît THÉBAUDEAU"
d0529b3d12 cc/gcc: update Linaro GCC revisions
Update Linaro GCC with the latest available revisions.

Signed-off-by: "Benoît THÉBAUDEAU" <benoit.thebaudeau@advansee.com>
2011-08-18 15:34:17 +02:00
Yann E. MORIN"
9efd788147 kernel/linux: add latest versions
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-18 00:03:02 +02:00
Yann E. MORIN"
09e5711dcb scripts/functions: add xz support
Add support for the new XZ-compressed tarballs. At least glibc
uses that new format.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-14 17:51:38 +02:00
Yann E. MORIN"
3910899c77 scripts/functions: test for decompressors before use
./configure does check for the presence of gz and bzip2, so we can
safely use them in the build scripts.

On the other hand, more recent formats (eg. XZ) are not yet widely
available, and we do not want, and can't, force the user to install
them as a pre-requisite.

So, build up a list of allowed tarball formats based on the available
decompressors. For no, this is a static list, but the upcoming XZ
support will conditionnaly add to this list.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-05-04 00:04:23 +02:00
Yann E. MORIN"
6537cbdeac configure: add test for xz-utils
Some upstream now release tarballs compressed with xz, along with the
more traditional bzip2 and/or gzip tarballs.  xz (and its predecessor
lzma) achieves better compression, so is a good candidate to shorten
the time it takes to download the source tarballs.

Enable downloading xz-cmopressed tarballs if the user has xz-utils.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-10 23:13:46 +02:00
Yann E. MORIN"
0486fba24c configure: do not require lzma
Nothing uses lzma now, so we can get rid of it.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-14 16:06:20 +02:00
Yann E. MORIN"
ac058b1042 scripts/functions: commonalise tar options in CT_EXtract
This shortens command lines, so it's good! :-)

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-14 17:28:35 +02:00
Yann E. MORIN"
4144a003ab kernel/linux: remove check for lzma tarballs
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-14 16:07:03 +02:00
Yann E. MORIN"
59499a2cda kernel/linux: simplify custom tarball handling
Simplify the way the custom tarball is handled:
- fake version="custom"
- at download, simply link the custom tarball to:
    "linux-custom.${custom_extension}"
- at extract, the above allows to simply extract "linux-${LINUX_VERSION}"
  where LINUX_VERISON is set to the fake version="custom"

Not that much convoluted, in fact... :-/

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-14 19:59:02 +02:00
Yann E. MORIN"
47229f15af kernel/linux: deprecate copying headers from pre-instaleld headers
No-one ever inquired about this feature. Due to the way it works, it is
rather unlikely that every user used a properly-formatted tarball, or a
properly structured directory as imput.

Beside, it is not really easy to maintain: I just spent one full day
remembering how it worked... Sigh... :-(

Just deprecate this, until next release, or until someone complains.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-14 16:05:33 +02:00
Yann E. MORIN"
b5ae41d3cf samples: do not use the mirror by default
As the mirror is always tried first, and the default is my server,
it means every download will first hit my server. As I do not have
much mirrored there, it means a lot of time is lost.

Disable use of the mirror for all samples, except the one that does
need it for the uClibc snapshot.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-14 17:18:32 +02:00
Yann E. MORIN"
b021021fec libc/uClibc: force use of ctor/dtor
Although ctor/dtor do not seem strictly required, missing them proves
rather inconvenient, as ld can't link binaries.

Reported-by: John Spencer <maillist-uclibc@barfooze.de> (sh4rm4 on IRC)
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-13 00:05:51 +02:00
Yann E. MORIN"
37db634a00 scripts/functions: remove messages about failed downloads
When downloading via svn/cvs/... an attempt to retrieve from the
mirror is made. If the mirror does not have the required tarball,
an error message is printed. This is misleading, as the download
may later succeed via svn/cvs/...

Remove the messages about failed downloads altogether.

At the same time, use "if ... then ... fi" instead of "... && ..."

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-10 23:09:06 +02:00
Yann E. MORIN"
e83c7dc21f configure: more autostuff compatibility
Ignore --program-prefix=...

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-09 22:10:57 +02:00
Yann E. MORIN"
734a7f018a kerenl/linux: update to latest versions
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-08 21:21:38 +02:00
Yann E. MORIN"
03c3e02fb7 scripts: try the mirror even if downloads are forbidden
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-02 23:10:37 +02:00
Yann E. MORIN"
263c92b3eb scripts/functions: use array variables for URLs list
This is needed later, when we'll conditionnally use both the
upstream and the mirror URLs.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-03 00:00:44 +02:00
Yann E. MORIN"
bb3519ad37 scripts/functions: always prefer the mirror
Currently, the mirror can be used either:
 - as a fallback in case upstream is unavailable (default behavior)
 - as the preferred source for downloads

But the most common use-case seems to provide a truely-LAN mirror
to speed up downloads in big corpos', and/or provide a 'trusted'
source for the tarballs.

So, make the following changes;
 - if a mirror is specified, always try that before trying upstream

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-02 23:11:25 +02:00
Yann E. MORIN"
cba6269810 scripts/functions: cvs retrieval first tries the mirror for tarballs
The cvs download helper looks for the local tarballs dir to see if it
can find a pre-downloaded tarball, and if it does not find it, does
the actual fetch to upstream via cvs.

In the process, it does not even try to get a tarball from the local
mirror, which can be useful if the mirror has been pre-populated
manually (or with a previously downloaded tree).

Fake a tarball get with the standard tarball-download helper, but
without specifying any upstream URL, which makes the helper directly
try the LAN mirror.

Of course, if no mirror is specified, no URL wil be available, and
the standard cvs retrieval will kick in.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-02 18:26:53 +02:00
Yann E. MORIN"
f7a05d343a configure: do not require svn
svn is needed to download eglibc from the upstream repository.
In some situations, though, it can happen that:
 - the developpers' machines do not have svn
 - a LAN mirror has been set-up with pre-downloaded eglibc tarballs
In this case, it makes sense not to hard-depend on svn.

So, if svn is missing, just say so, and add a comment in the
menuconfig.

Reported-by: ANDY KENNEDY <ANDY.KENNEDY@adtran.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-01 22:46:57 +02:00
Yann E. MORIN"
5f79506725 scripts/functions: svn retrieval first tries the mirror for tarballs
The svn download helper looks for the local tarballs dir to see if it
can find a pre-downloaded tarball, and if it does not find it, does
the actual fetch to upstream via svn.

In the process, it does not even try to get a tarball from the local
mirror, which can be useful if the mirror has been pre-populated
manually (or with a previously downloaded tree).

Fake a tarball get with the standard tarball-download helper, but
without specifying any upstream URL, which makes the helper directly
try the LAN mirror.

Of course, if no mirror is specified, no URL wil be available, and
the standard svn retrieval will kick in.

Reported-by: ANDY KENNEDY <ANDY.KENNEDY@adtran.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-02 18:28:10 +02:00
Yann E. MORIN"
20b5380556 scripts/functions: if no upstream URL is given, silently ignore that
When retrieving tarballs from upstream, if no URL was given, do not
fail; simmply ignore that fact.

This will be used later when the SVN helper will call the standard
helper to try the LAN mirror before trying svn.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-01 18:56:15 +02:00