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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
./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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
do_libc_locales_extract() and do_libc_locales() in glibc-eglibc.sh-common have
been overridden for both glibc and eglibc, so they can now be removed, which
this patch does.
Signed-off-by: "Benoît THÉBAUDEAU" <benoit.thebaudeau@advansee.com>
This patch adds partial support for glibc locales.
For now, it only generates the appropriate locales when the host and the target
have the same endianness and uint32_t alignment.
Signed-off-by: "Benoît THÉBAUDEAU" <benoit.thebaudeau@advansee.com>
This patch adds a common glibc/eglibc infrastructure to build and install the
libc locales.
Signed-off-by: "Benoît THÉBAUDEAU" <benoit.thebaudeau@advansee.com>