Commit Graph

1291 Commits

Author SHA1 Message Date
Yann E. MORIN"
adbf0ff180 cc/gcc: enable plugins if needed
Enabling plugins in binutils is not enough, and gcc also
needs to be ./configured with --enable-plugins, although
this is not documented anywhere... :-/

Reported-by: karthik duraisami <kdconstant@hotmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-28 18:53:37 +01:00
Yann E. MORIN"
a2e31b9c53 scripts: squash the multi-slash in the sysroot symlink
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-26 19:13:18 +01:00
Yann E. MORIN"
15da72b273 comptools: add make-3.81
Since the advent of make-3.82, some packages now break due to changes
in make-3.82, being stricter than 3.81 when interpreting the Makefiles.

This has bugged us a bit too much so far, and I believe fixing all
of them is a long road, while simply building make-3.81 is the easiest
route for now.

Of course, in the long term, packages will get fixed upstream, and we
should back-port the fixes to old versions, and get rid of building
make-3.81. In the meantime...

Reported several times on the mailing list.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-29 00:57:02 +01:00
Yann E. MORIN"
7817bcebe7 config: add an option not to remove the destination directory
In certain circumstances, removing the destination/installation directory
is a bad idea. For example, when the build environment is already taking
care of sanitising the build tree, and pre-installs stuff in there, it is
a very bad idea to remove the destination directory.

This happens now in buildroot, as the crostool-NG backend now installs the
toolchain in the common host-tools directory, and pre-install there a few
host-utilities (eg. host-automake and host-gawk).

Provide a config knob to turn on/off the removal of the destination
directory, defaulting to 'y' (previous behavior), and forced to 'n' when
used as a backend.

Reported-by: Peter Korsgaard <jacmet@sunsite.dk>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-28 22:06:49 +01:00
Yann E. MORIN"
2014041480 libc/mingw: do not remove support symlink
Under mingw, it seems that there is a mix between the traditional /usr
directory, and a similar-purposed /mingw directory (both in the sysroot).

Currently, we create /mingw as a symlink to /usr, and we removed it in
the libc-finish step.

Unfortunately, this prevents the pre-processor to find the headers.
Keeping the symlink makes it magically work...

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-26 00:04:41 +01:00
Yann E. MORIN"
8efc6dae8a scripts: fix double slash in paths
Computed paths may contain double slashes.
This is not an issue but it is just ugly to look at.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-25 21:59:03 +01:00
Yann E. MORIN"
94be1f470c config: add an option to name the sysroot directory
Depending on local policies, some users have expressed a need to
have the sysroot be named differently than the hard-coded name.

Add an option for that.
Default to 'sysroot' to match the existing literature.

While at it, replace 'sys-root' with 'sysroot' everywhere we
reference the sysroot.

Reported-by: Alexey Kuznetsov <Alexey.KUZNETSOV@youtransactor.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-25 20:31:16 +01:00
Yann E. MORIN"
15a1cc2491 libc: remove now unneeded do_libc_headers
do_libc_headers is now a noop, and is no longer used, so remove that step.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-22 22:36:20 +01:00
Yann E. MORIN"
0b773f5823 libc/glibc-eglibc: misc janitorial cleanups.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-20 00:27:36 +01:00
Yann E. MORIN"
129bf2fa66 libc/glibc: add glibc specifics to the shared code, and use it
Final step at sharing code between glibc and eglibc.
Fall, wall of shame, fall!... :-)

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-22 22:35:58 +01:00
Yann E. MORIN"
49ab32ffe2 scripts: PARALLELMFLAGS is evil, rename
The reunification of the glibc/eglibc code paths exposed a nasty
bug in the glibc build: use of PARALLELMFLAGS breaks the build.

See the explanations in that bug report against FC6:
    https://bugzilla.redhat.com/show_bug.cgi?format=multiple&id=212111

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-22 22:35:43 +01:00
Yann E. MORIN"
b343b0216b libc/glibc: commonalise assembling the list of addons
glibc and eglibc each have two very similar ways of building this list.
This can, and should definitetly, be shared.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-22 22:35:18 +01:00
Yann E. MORIN"
a150a97e44 libc/glibc: commonalise setting of the minimum supported kernel version
It will be possible to use that also with eglibc, so this hunk belongs to
the common code.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-22 22:35:02 +01:00
Yann E. MORIN"
b560936e09 libc/glibc: use the common start_files procedure
Use the common procedure, shared between glibc and eglibc. This requires
that glibc-specific bits be included in the shared procedure.

But still build the full libc with the glibc-specific procedure. This will
be commonalised in a future commit.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-22 22:37:25 +01:00
Yann E. MORIN"
b43ff236bb libc/eglibc: cleanup common code for sharing with glibc
Some stuff is eglibc-specific, so needs to be conditonal.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-17 23:04:57 +01:00
Yann E. MORIN"
cc0894e731 libc/eglibc: move generic code to a common file
The build procedure for eglibc is generic enough to
be shared between glibc and eglibc. This includes:
 - headers install (empty!)
 - start files build
 - complete libc build
 - libc finish (empty!)
 - add-ons list

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-17 23:04:37 +01:00
Yann E. MORIN"
2dd949cd7f libc/mingw: move content of do_libc_headers into do_libc_start_files
It is unnecessary to split C library preparation into two steps, as only
one really makes sense. So, do_libc_headers is bound to be withdrawn
short-term, in favor of do_libc_start_files.

mingw already had all its start files installation in do_libc_headers, and
do_libc_start_files was empty, just migrate the content of the former into
the latter.


Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-22 22:32:44 +01:00
Yann E. MORIN"
7b003fde97 libc/uClibc: move content of do_libc_headers into do_libc_start_files
It is unnecessary to split C library preparation into two steps, as only
one really makes sense. So, do_libc_headers is bound to be withdrawn
short-term, in favor of do_libc_start_files.

uClibc already had all its start files installation in do_libc_headers, and
do_libc_start_files was empty, just migrate the content of the former into
the latter.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-22 22:32:25 +01:00
Yann E. MORIN"
6568c1a39a libc-glibc: remove 2.3.6
This is an obsolete version which is no longer used by any sample (the only
user, the ia64 sample, has been removed).

It also makes the code path a bit complex, with twists just to accomodate
that version. Removing the version will make those twists go away, and
will ease commonalisation of glibc and eglibc in the future (hopefully!).

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-03 23:40:22 +01:00
Yann E. MORIN"
a28b593548 arch: remove ia64
ia64 is broken in every gcc/glibc combinations I tested (except for the
existing sample that used very old versions).

Nobody complained on the list about not being able to build recent versions.

So the only way forward I can see is to remove the architecture altogether.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-03 22:02:06 +01:00
Yann E. MORIN"
1ce0dba9d7 kernel/linux: simplify the download URL
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-14 18:36:07 +01:00
Yann E. MORIN"
3de7ced945 kernel/linux: longterm kernel location changed
The location of the longterm Linux kernels on FTP has changed.
Here is a simple (but not very versatile) fix.

Signed-off-by: "Björn A. Herwig" <herwig@gdsys.de>
[yann.morin.1998@anciens.enib.fr: make it generic/versatile]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-14 18:32:38 +01:00
Yann E. MORIN"
23d449366d complibs/cloog: regenerate autostuff files
Latest version of CLooG does not have properly generated autoconf files,
so they need to be regenerated before the call to ./configure

Signed-off-by: "Ilya A. Volynets-Evenbakh" <ilya@total-knowlege.com>
[yann.morin.1998@anciens.enib.fr: make it conditional on 0.15.10 only]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-13 23:20:39 +01:00
Yann E. MORIN"
ba27d02036 debug/ltrace: fix building for mips
ltrace 0.5.3 currently fails to build for target mips because MY_TARGET
(introduced by patches/ltrace/0.5.3/150-allow-configurable-arch.patch)
is set to 'mips' via CT_ARCH, while the mips specific stuff in ltrace
(0.5.3) is stored under sysdeps/linux-gnu/mipsel:

  result: *** No rule to make target `mips/arch.h', needed by `sysdep.h'.
  Stop.

The following patch fixes this issue

Signed-off-by: "Horst Kronstorfer" <horst.kronstorfer@aon.at>
[yann.morin.1998@anciens.enib.fr: reformat commit log]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-08 18:07:02 +01:00
Yann E. MORIN"
e5ded6e946 cc/gcc: build lto-plugin if binutils' gold is built
To properly enable LTO with gold, gcc has to install a plugin that gold
uses to handle the LTO information.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-12-29 17:58:35 +01:00
Yann E. MORIN"
2841bb7a35 binutils/binutils: add wrapper to gold and ld
When both gold and ld are installed, add a wrapper that calls
to either gold or ld.

In case the wrapper is installed, we also need to symlink ld.bfd
and ld.gold for the core_cc steps.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-12-29 18:19:40 +01:00
Yann E. MORIN"
8a952d18e0 binutils/binutils: add support for threaded gold
When configured with support for threads, gold can link in
parallel, possibly cooperating with a make jobserver.

Add an option enabling threads.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-02 13:52:16 +01:00
Yann E. MORIN"
e4d610f905 binutils/binutils: add support for plugins
Add an option to enable plugins support in binutils.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-01-02 13:56:05 +01:00
Yann E. MORIN"
a0d9851dd0 binutils/binutils: add option to enable gold
gold is a new, optimised, multi-threaded linker with support
for plugins.

Add support for gold starting with binutils 2.21. Although 2.20
also had gold, the configure flags have changed, and supporting
2.20 would be a mess in the code.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-12-28 00:11:33 +01:00
Yann E. MORIN"
b0c69b3cdc complibs/libelf: build with -fPIC
libelf is used by gcc to build the lto-plugin used
by binutils' gold to perform LTO.

This requires that files in libelf be compiled with
-fPIC to generate a proper .so.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-12-29 02:34:18 +01:00
Bryan Hundven
6bd24a2c73 libc/uClibc: normalize uclibc hidden version names
Hidden version names for uClibc conflicted:

LIBC_UCLIBC_V_0_9_30_2
LIBC_V_0_9_30_1

name them constantly as:
LIBC_UCLIBC_V_<version>

Also update the build script where we use snapshots by version or snapshots by date.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2011-01-03 01:15:30 +01:00
Yann E. MORIN"
88c8168763 internals: properly remove all docs
Part of the installed doc was not removed (if configured to).

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-12-29 19:41:17 +01:00
Bryan Hundven
889eb6df62 libc/eglibc: fix installed scripts
Like rev 2002, eglibc installs some bash scripts, but use the path to the
buildtool bash as the interpreter (on the shebang line). This is only a
symlink to the real bash, and thus is not available at runtime.

Fix that by assuming that shell on the target *will* be /bin/bash.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2010-12-22 22:42:11 +01:00
Yann E. MORIN"
908f4aeab9 kernel/linux: Cleanup unneeded files from 'headers_check' and 'headers_install'
headers_install makes  .install and ..install.cmd files.
headers_check makes    .check   and ..check.cmd   files.
Remove these files uncoditionaly after installing (and checking) header files
into the sys-root.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
[Yann E. MORIN: reformat the patch, move hunk out of headers_check conditional]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-12-22 22:41:51 +01:00
Yann E. MORIN"
f63dfa3b31 scripts: add doc for patch-rework
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-12-19 11:57:08 +01:00
Yann E. MORIN"
96559f4610 scripts: update config.{sub,guess}
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-12-18 23:29:46 +01:00
Kalle Kankare
461ca92d5d complibs/libelf: use host compiler
It appears, that the configure scripts of libelf versions 0.8.13 and
0.8.12 do not honour the --host option. The compiler must be given as an
environment variable or the process will use the command "gcc" as the
compiler.

It seems that this is already done in the function do_libelf_target in
scripts/build/companion_libs/libelf.sh, but not in function do_libelf.
2010-12-03 12:36:44 +01:00
Yann E. MORIN"
a9966d1e1c internals: fix stripping
Do not try to strip any script.

Previously, only shell scripts were ignored, but when the Java frontend
is installed, it also installs a Python script. So we have to ignore
any "script text executable", and not restrict it to "shell script text
executable".

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-12-12 20:47:40 +01:00
Yann E. MORIN"
2bf2991ebd scripts/internals: strip all executables
Using a list of files to strip misses a few of them.
Now, scan appropriate directories, and strip all ELF
executables and shared objects.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-12-05 16:27:06 +01:00
Bryan Hundven"
1ad4399072 cc/gcc: build bare-metal gcc statically
- add a new parameter to do_cc_core: build_statically=[yes|no]
- pass build_statically=yes in core_pass_2 when doing bare_metal
- fix handling the static / static libstdc++ / static complibs stuff
- add a commment to keep both blocks (in core and final) in sync

Signed-off-by: "Bryan Hundven" <bryanhundven@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-12-09 18:55:59 +01:00
Bryan Hundven"
118a6a5f98 cc/gcc: build final gcc statically
If the global static option is set, then build the final gcc statically.

Signed-off-by: "Bryan Hundven" <bryanhundven@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-12-09 18:55:42 +01:00
Bryan Hundven"
bf3c89ebb5 binutils/binutils: build statically
If the global static option is set, then build binutils statically.

Signed-off-by: "Bryan Hundven" <bryanhundven@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-12-09 18:55:33 +01:00
Yann E. MORIN"
63750f8841 complibs/cloog: fix linking with libstdc++
This rules out 0.15.5 and previous versions, that did not
have this option, so remove them from the list. Anyway,
they were marked 'OBSOLETE', so it's not a big loss...

[Yann E. MORIN: remove obsolete versions]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-11-29 00:50:21 +01:00
Yann E. MORIN"
28c5ee8baf scripts: recover on partially downloaded files
Download to an intermediate temp file, and rename it to its final
name only of download succeeds.

This catches both a failed download, and also the case where the user
interrupts the download. Thus, the a partial download gets discarded,
and we no longer try to extract a partial tarball, which we would
previously have done.

Suggested by Thomas PETAZZONI.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-11-29 00:26:39 +01:00
Yann E. MORIN"
af6dd3f3f0 scripts: call curl and wget in sequence
It can happen, in some circumpstances, than one can succeed where
the other would fail. Those cases involves convoluted enterprise
networks with proxies playing tricks.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-11-16 17:49:15 +01:00
Yann E. MORIN"
9dbbc8e5f6 scripts: remove aria2c as downloader, retain only curl and wget
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-11-16 10:00:27 +01:00
Yann E. MORIN"
f1c391e1d9 complibs/CLooG: only install the libraries
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-10-18 16:51:01 +02:00
Yann E. MORIN"
e2c7015edb scripts/xldd: try to handle RPATH tags
The RPATH tags allow a binary to tell the dynamic linker what
directories to search for libraries. The so-added paths are
searched into before any other paths.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-11-24 21:04:55 +01:00
Yann E. MORIN"
1a03e119de scripts/xldd: better handle the origin of the library
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-11-23 21:36:01 +01:00
Yann E. MORIN"
7d296c4f68 scripts/xldd: avoid reporting duplicates
Once a NEEDED dependency has been solved, do not report it
if other dependencies depend on it.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-11-24 21:01:46 +01:00
Yann E. MORIN"
cd9a56ff50 script/xldd: add debug traces
Add debug traces to help understand how xldd finds the
libraries, what directories it scans, in which order...

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-11-23 21:35:45 +01:00
Yann E. MORIN"
6960ddb376 scripts/xldd: parse /etc/ld.so.conf
Scan /etc/ld.so.conf for paths to search for libraries.
Also follow include directives in there.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-11-23 21:35:41 +01:00
Yann E. MORIN"
2e1dcdf8d4 scripts/xldd: better find sysroot with old gcc
Only starting with 4.4 does gcc have a -print-sysroot option.
For 4.3 or before, we have to play some tricks:
- ask gcc where libc.so is,
  (we expect it in ${sysroot}/usr/lib/libc.so)
- trim /usr/lib/libc.so from the result

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-11-23 21:35:28 +01:00
Yann E. MORIN"
70309ce671 scripts/xldd: report appropriate load address for 32- or 64-bit
For 32-bit target systems, report 4-byte (8-xdigit) wide adresses,
and for 64-bit, report 8-byte (16-xdigit) wide adresses.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-11-23 21:35:15 +01:00
Yann E. MORIN"
b98f8fe48f scripts/xldd: stop at first match
Break the library search loop as soon as a match is found.
Previously, if a library was present in different places,
then the last occurence would be returned, when the first
one would have been used at runtime.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-11-23 21:35:10 +01:00
Yann E. MORIN"
dc4498ca35 scripts/xldd: fix space-damage
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-11-23 21:35:01 +01:00
Yann E. MORIN"
b36267c6a6 scripts/xldd: fix version string
The version string was hard-coded.
Now, the version string follows the crosstool-NG version.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-11-23 21:34:56 +01:00
Yann E. MORIN"
727612bcf6 scripts/xldd: fix typoes
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-11-23 21:34:50 +01:00
Yann E. MORIN"
de81a59714 libc/*glibc: enable selection of the oldest supported ABI
[Yann E. MORIN: split the original patch]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-11-11 01:11:17 +01:00
Yann E. MORIN"
da6b834eef libc/*glibc: add option to disable symbols versioning
[Yann E. MORIN: split the original patch]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-11-11 00:29:53 +01:00
Bob Dunlop
fcfc3a27f8 libc/eglibc: fix downloading
Since Subversion 1.6.13 was released, it is no longer possible
to checkout/export to the current working directory using '.'
(eg. "svn co bla://blabla/foo/bar ." no longer extracts the content
of bar into ./ but into ./bar).

Fix this by luring Subversion to extract into "$(pwd)", which has
the advantage of working both with all known versions so far.

At the same time, remove the useless redirection.
2010-11-09 10:44:29 +01:00
Yann E. MORIN"
dd9fad50f5 scripts: also overide LANG
On some systems, we also need to overide LANG as well as LC_ALL.

Reported-by: Geoffrey Lee <geoffl@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-11-01 16:59:39 +01:00
Yann E. MORIN"
9b87613c37 libc/newlib: add option to compile support for IOs on C99 formats
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-10-23 01:21:20 +02:00
Yann E. MORIN"
1a0ab9ad55 libc/newlib: add option to compile support for long long IOs
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-10-23 00:53:41 +02:00
Yann E. MORIN"
d7e88461e6 libc/newlib: add option to compile support for float IOs
Adds support to enable/disable IOs of floating point values
(float, double, and long double).

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-10-23 00:54:46 +02:00
Yann E. MORIN"
ae27f71102 scripts: do not provide to-sysroot include symlink
Do not provide the PREFIX/TUPLE/include -> SYSROOT/usr/include symlink,
and let gcc install its dependable C++ headers were it sees fit to
install them.

See the test by Anthony (by the end of the messages):
  http://sourceware.org/ml/crossgcc/2010-10/msg00129.html
  http://sourceware.org/ml/crossgcc/2010-10/msg00134.html

See also the comment by Arnaud:
  http://sourceware.org/ml/crossgcc/2010-10/msg00157.html

Reported-by: Anthony Foiani <anthony.foiani@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-10-31 16:50:07 +01:00
Yann E. MORIN"
5ddca154bb Merge. 2010-10-24 22:03:53 +02:00
Yann E. MORIN"
8b275095e0 Revert #a09246191120: cc/gcc: fix C++ headers location
This was intended as a fix for g++ not finding its headers,
but it breaks in othe horrible ways. So just revert it.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-10-24 22:03:47 +02:00
Anthony Foiani
90918d1095 scripts: add STATE logging level for state save/restore output.
The save/restore state output is voluminous; using this flag allows us
to quickly see or ignore when something is just being saved.

[Yann E. MORIN: this is a blind log level, and is used only to search
 in the build-log afterward.]

Signed-off-by: Anthony Foiani <anthony.foiani@gmail.com>
2010-10-22 22:02:49 +02:00
Anthony Foiani
92898249bd scripts: add "FILE" and "CFG" debug levels.
I ran into some minor difficulties looking through the build log for a
particular file: I wasn't interested in seeing it unpacked, but only
when it is built or installed.  Adding these two levels allows me to
differentiate between those cases.

[Yann E. MORIN: Those are blind log levels, and are used only to search
 in the build-log afterward.]

Signed-off-by: Anthony Foiani <anthony.foiani@gmail.com>
2010-10-22 22:02:57 +02:00
Yann E. MORIN"
2b912ba840 cc/gcc: fix 128-bit long doubles option
Spotted by Arnaud LACOMBE:
  http://sourceware.org/ml/crossgcc/2010-10/msg00122.html

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-10-20 15:25:38 +02:00
Yann E. MORIN"
cbd352f9ac cc/gcc: fix C++ headers location
In case we build the C++ compiler, we have to tell gcc where to put the C++
headers, or else it will try to # put it in prefix/tuple/include, which we
make a symlink to sysroot/usr/include during the build, and that we delete
(the symlink!) after the build, but gcc will not look in sysroot/usr/inlcude
for C++ headers by default.

Implements a fix suggested by: Bryan Hundven <bryanhundven@gmail.com>

Reported-by: Anthony Foiani <anthony.foiani@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-10-08 23:37:12 +02:00
Yann E. MORIN"
c2bddddd64 scripts: update/fix patch-rework
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-10-07 23:45:25 +02:00
Yann E. MORIN"
b17f8707c1 cc/gcc: add an option to enable/disable build of libssp
libssp is the run-time Stack-Smashing Protection library.
It can be usefull to have or miss, depends...

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-10-09 11:38:04 +02:00
Yann E. MORIN"
8922def6b4 cc/gcc: add an option to enable/disable build of libgomp
libgomp is the GNU implementation of the OpenMP API.
It can be usefull to have or miss, depends...

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-10-08 23:58:58 +02:00
Yann E. MORIN"
416eb29198 cc/gcc: add option to enable 128-bit long doubles
Needed by some PPC targets, at least.
Requires gcc 4.2+ (noticed by Arnaud LACOMBE).

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-10-09 22:49:28 +02:00
Yann E. MORIN"
8b0af28c69 cc/gcc: fix enabling/disabling LTO
There is a ./configure option for that.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-10-08 23:51:38 +02:00
Yann E. MORIN"
96c2e11894 scripts: always create lib32 and lib64 symlinks
Unconditionally create the lib32 -> lib/ and lib64 -> lib/ symlinks.

This is reportedly a fix to build a toolchain for a 32-bit target on
a 'pure' 64-bit host (eg. on Fedora FC12, host libs are in lib64/,
and there is no lib -> lib64 symlink, as we can see on other distors,
as Debian). As gcc only puts static host lib in lib64/ (along with
target files in subdirs), we can safely create the symlinks.

Also note that the symlinks are summarily removed at the end
of the build.

Signed-off-by: Anthony Foiani <anthony.foiani@gmail.com>
[Yann E. MORIN: fix a comment, rephrase the commit log]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-10-07 22:37:06 +02:00
Yann E. MORIN"
cb1a6420e9 complibs: better deduce whether to backup complibs or not
To decide whether we need to backup the companion libraries,
do not rely on the !shared case. In the future other cases
may require not to save the companion libraries (eg. if using
the ones provided by the host distro).

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-10-03 23:10:46 +02:00
Yann E. MORIN"
9176074aec cc/gcc: disable complibs if not selected
Force gcc to not link with some companion libraries when
there are not needed (because selected-out).

There is no option to tell gcc *not* to build the Graphite and/or
LTO stuff. They *will* be built if gcc finds the suitable companion
libraries. If we do not provide them, but the host has them, then
gcc *will* find them, and link with them.

Consider the following:
- host has suitable PPL and CLooG (eg. Debian Squeeze)
- user wants to build gcc>=4.4
- user de-selects GRAPHITE
- gcc will find the hosts PPL and CLooG, and will use them
- the user moves the toolchain to an older host that does
  not have them (eg. Debian Lenny)
- the toolchain fails, when it was properly setup not to

So, explicitly tell gcc *not* to use unneeded companion libs.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-09-12 23:51:25 +02:00
Yann E. MORIN"
d34a5ec7d8 cc/gcc: do not force use of non-vital companion libraries
While GMP and MPFR are required by gcc>=4.3 (to build the frontends),
and MPC is required by gcc>=4.5, the other libs are not. If they are
present then gcc will enable advanced features; if they are missing,
then gcc will (should) simply disable those features.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-09-12 20:54:54 +02:00
Yann E. MORIN"
6f5d910d1f libc/uClibc: use the MIPS ABI selection
Use the MIPS ABI selection to properly munge the uClibc config file.

This has the side effect to force the ISA:
- n32 ABI -> MIPS-III ISA
- n64 ABI -> MIPS64 ISA

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-09-12 22:15:12 +02:00
Yann E. MORIN"
b92668a211 arch/mips: add option for MIPS ABIs
This adds selection for one of the o32, n32 and n64 ABIs.
Later, we can easily use those boolean options, rather than
relying on a user-supplied string option.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-09-12 22:14:04 +02:00
Yann E. MORIN"
dae205737f scripts/internal: cleanup build symlinks
The symlinks are needed only during the build process.
The final gcc will still search those dirs, but will also search
the standard lib/ dirs, so we can get rid of the symlinks.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-09-11 17:55:54 +02:00
Yann E. MORIN"
ab9b5d109e scripts: hack-in lib32->lib symlinks
Some archs (eg. ppc64 with n32 ABI) will install their
variants in lib32/ instead of lib/, so do for lib32 as
we do for lib64->lib symlinks.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-09-10 12:14:24 +02:00
Yann E. MORIN"
3fcdd28e04 libc/uClibc: change munging code based on target arch
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-09-10 13:23:58 +02:00
Yann E. MORIN"
0622671d26 debug/gdb: use libexpat
gdb can use libexpat to parse target memory descriptions,
among other things. See:
  http://sourceware.org/ml/crossgcc/2010-08/msg00168.html

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-08-23 10:47:00 +02:00
Yann E. MORIN"
7a70e935c6 debug/gdb: install dependable libs in a generic target static libs dir
For now, ncurses is the only dependable target library built for gdb.
But expat is coming, and there's no reason to install each library in
its own place.

So, install ncurses in a generic directory, where other dependable
libraries can be installed as well.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-08-23 14:32:16 +02:00
Yann E. MORIN"
1504a1ef10 complibs: noone is using companion libs on the target; nuke them
As there's no longer any user of the companion libraries on the
target, nuke the build for the target.

Well, at least, there's libelf that's still needed by ltrace, so
we keep it.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-08-23 23:18:49 +02:00
Yann E. MORIN"
e81fe2c778 debug/gdb: companion libs are not used
Although the gdb ./configure advertises for GMP and MPFR, those libraries
are not used by gdb (the ./configure is used across different packages,
hence the check for GMP/MPFR). See:
  http://sourceware.org/ml/crossgcc/2010-08/msg00168.html

The same applies to MPC.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-08-23 10:38:15 +02:00
Yann E. MORIN"
9736a99ee9 binutils/binutils: companion libraries are not used
GNU binutils does not use the companion libraries, although
./configure advertises switches for them. This is because the
configure file is shared between different packages, and is
a bit 'lax' about what it checks. See:
  http://sourceware.org/ml/crossgcc/2010-08/msg00160.html
  http://sourceware.org/ml/crossgcc/2010-08/msg00161.html

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-08-23 20:21:43 +02:00
Yann E. MORIN"
ae715a0a3c scripts/log: do not interpret log string as printf format
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-08-26 23:36:54 +02:00
Titus von Boxberg
f6634c28cc internals: call strip in a portable way
strip on CT_HOST darwin does not want --strip-all or -v
2010-08-21 16:45:50 +02:00
Yann E. MORIN"
d53f1d71f6 libc/mingw: fix space-damage
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-08-17 23:50:03 +02:00
Esben Haabendal
150789c22b mingw32: enable sysrooted toolchains
When targeting mingw32, gcc expects to find its include files
in "mingw/include" instead of the traditional "usr/include".

[Yann E. MORIN: split the original patch]
2010-08-15 00:00:51 +02:00
Esben Haabendal
386b4fed76 libc/mingw: use pre-set headers dir
There is a variable that contains the headers directory,
so there's no need to re-compute it again.

[Yann E. MORIN: split the original patch]
2010-08-14 23:21:06 +02:00
Esben Haabendal
1c81b216c8 kernel/mingw32: use pre-set headers dir
There is a variable that contains the headers directory,
so there's no need to re-compute it again.

[Yann E. MORIN: split the original patch]
2010-08-14 23:14:27 +02:00
Yann E. MORIN"
2e7698ed02 libc/uClibc: fix downloading pregen locales
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-08-11 20:05:05 +02:00
Yann E. MORIN"
e8f9aeade3 scripts: in case of failed download, remove partial files
It happens from time to time that the server mis-behaves, and breaks the
connection right in the middle of nowhere, for no good reason, leaving us
with a partial file, on which the extract pass would choke.

Remove partial downloads, to fail early.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-08-11 20:07:18 +02:00
Yann E. MORIN"
63235bd89c scripts: when downloading, use aria2 only when //
Even when // downloads are not enabled, aria2 can
fail on some servers (eg. uclibc.org).

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-08-11 19:13:10 +02:00
Yann E. MORIN"
ebaebdacf4 scripts: better sanitise the patch names
When generating the fixes-patches, better sanitise the generated
file names, as it seems to raise a few issues for some people.
2010-08-10 13:25:52 +02:00
Yann E. MORIN"
46d72f5450 complibs/cloog: with static ppl, correctly link with libm
On some Fedora boxen (at least FC13), it is also required
to link with libm when static ppl is used.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-08-06 00:00:26 +02:00
Darcy Watkins
f30a7df9c9 cc/gcc: with static ppl, correctly link with libm
On some Fedora boxen (at least FC13), it is also required
to link with libm when static ppl is used.
2010-08-05 18:19:07 +02:00
Remy Bohmer
b1ac0964f4 scripts: add option to strip all toolchain executables
To reduce filesizes of the toolchain and even improve build times
of projects to be build with this toolchain it is usefull to strip
the delivered toolchain executables. Since it is not likely that we
will debug the toolchain executables itself we do not need the
debug information inside the executables itself.

Signed-off-by: Remy Bohmer <linux@bohmer.net>
2010-05-27 23:18:19 +02:00
Johannes Stezenbach
6d084fb565 Fix CT_SanitizePath
Replace the over-engineered and buggy test in CT_SanitizePath
with a straight forward string pattern match, and also
handle empty PATH elements which are qeuivalent to ".".

Thanks-To: Arnaud Lacombe <lacombar@gmail.com>
Signed-off-by: Johannes Stezenbach <js@sig21.net>
2010-07-30 17:50:34 +02:00
Johannes Stezenbach
143f02e0ce cc/gcc: add option to compile against static libstdc++, for gcc-4.4 and newer
Idea and know-how taken from CodeSourcery build script.

Normal build:
  $ ldd arm-unknown-linux-uclibcgnueabi-gcc
	linux-gate.so.1 =>  (0xb77f3000)
	libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb76e8000)
	libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb75a1000)
	libm.so.6 => /lib/i686/cmov/libm.so.6 (0xb757a000)
	/lib/ld-linux.so.2 (0xb77f4000)
	libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb755c000)

CC_STATIC_LIBSTDCXX=y:
  $ ldd arm-unknown-linux-uclibcgnueabi-gcc
	linux-gate.so.1 =>  (0xb7843000)
	libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb76e6000)
	/lib/ld-linux.so.2 (0xb7844000)

I made CC_STATIC_LIBSTDCXX default=y since I think
it is always desirable.

Signed-off-by: Johannes Stezenbach <js@sig21.net>
2010-07-29 19:47:16 +02:00
Yann E. MORIN"
8bd0034057 scripts: remove . from $PATH
Add CT_SanitizePath function which removes entries referring to ., /tmp
and non-existing directories from $PATH, and call it early in the
build script.

If . is in PATH, gcc-4.4.4 build breaks:

[ALL  ]    checking what assembler to use...
/tmp/build/targets/arm-unknown-linux-uclibcgnueabi/build/gcc-core-static/arm-unknown-linux-uclibcgnueabi/bin/as
...
[ALL  ]    config.status: creating as

i.e. "as" is supposed to be the arm-unknown-linux-uclibcgnueabi cross assembler,
but config.status creates a local "as" script which is calling the
host assembler.

Signed-off-by: Johannes Stezenbach <js@sig21.net>
[Yann E. MORIN: style fixes + explanations]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-07-29 19:30:37 +02:00
Yann E. MORIN"
8bb436dad1 cc/gcc: add option to enable/disable libmudflap
For some scenarii, libmudflap is not very usefull
or can break the build. Make in an optioon that
defaults to 'N' to be on the safe side.

For the core gcc-s, there is absolutely no need
to build libmidflap.

Idea from: Bernhard Pfund <bernhard@chapter7.ch>
2010-07-28 23:55:10 +02:00
Yann E. MORIN"
61ebaa97ca cc/gcc: make sjlj config option a tristate
A tristate fits better here than a choice.
2010-07-28 23:53:09 +02:00
Yann E. MORIN"
b2d9366b56 libc/uClibc: fix space damage 2010-07-28 01:39:52 +02:00
Yann E. MORIN"
bb6a9e3e64 libc/uClibc: fix using pre-generated locale data
Some time, someone updated the locale Makefile to use
newer pre-generated locales data, but did not upload
those.

So we just force using the existing, ageing archive,
dating back 20030818. Sigh...
2010-07-28 01:38:15 +02:00
Yann E. MORIN"
d0ed3f0fe0 libc/uClibc: do not systematically use pre-generated locale data
It seems that using pre-generated locale data can be more problematic
than usefull in some circumstances.

Offer a config knob to enable/disable use of the pregen locale data.
Also, do not extract pregen locales data ourselves, it's broken.
2010-07-28 01:03:07 +02:00
Yann E. MORIN"
c03ac58aca scripts: add a cross-ldd-like
Add a cross-ldd that mimicks a native ldd.
2010-07-22 23:26:08 +02:00
Yann E. MORIN"
d7287c9b5f libc/uClibc: do not install cross-ldd
I was unable to make the cross-ldd from uClibc to work, and
it is not possible to build it on non-POSIX system.

Besides, we have a generic script that is in the starting-blocks
to replace it, that will work for any C library, and also will
work on non-POSIX systems. Bonus!
2010-07-22 20:06:27 +02:00
Bart vdr. Meulen
25bb99693a complibs: fix using static companion libraries
When building a cross-compiler for a target which uses a file extension for
binaries the symbolic link to cc is not created correctly because the lookup
of the gcc binary is done in a incorrect path

Signed-off-by: Bart vdr. Meulen <bartvdrmeulen@gmail.com>
2010-07-19 23:16:02 +02:00
Yann E. MORIN"
2ad6d48f78 scripts/functions: recognise Cygwin build hosts 2010-07-18 00:34:38 +02:00
Yann E. MORIN"
f469d8a5e1 scripts: use 'hg archive' to create release tarballs 2010-07-17 11:31:57 +02:00
Yann E. MORIN"
6426b0ca5d scripts: update config.{guess,sub} 2010-07-15 10:18:40 +02:00
Yann E. MORIN"
8258ad7bcf debug/gdb: properly remove build tic
tic is isntalled in buildtools, not in the toolchain's bin dir.
Plus, it may have an extension...
2010-07-11 22:26:29 +02:00
Yann E. MORIN"
eec696451e debug/gdb: Fix compilation for Mingw hosts
GDB requires PDcurses instead of ncurses while running on Windows.
So, do not always compile ncurses in case GDB needs to build.

PDcurses is provided by an earlier build step and is not described in
this file.

Signed-off-by: Remy Bohmer <linux@bohmer.net>
[yann.morin.1998@anciense.nib.fr: we already have a way to detect ncurses usage]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-07-11 22:23:34 +02:00
Yann E. MORIN"
d54963f0e3 kernel/mingw: add target libraries
Add several development libraries to the build of the mingw cross-compiler
to be used on target

Libraries:
PDCurses (port of the ncurses library)
GnuRX (the regex library)
DirectX
OpenGL

Signed-off-by: Bart vdr. Meulen <bartvdrmeulen@gmail.com>
[yann.morin.1998@anciens.enib.fr: don't show DX and RX versions if disabled]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-07-11 21:36:55 +02:00
Yann E. MORIN"
b81d232a9b kernel: add mingw
Add the option to build a cross-compiler for kernel type 'mingw'.
The resulting cross-compiler can be used to build applications on a Linux host
that can be run on a Windows target.

Compiler is build using the mingwrt and w32-api packages aviable from the
MinGW project (http://sourceforge.net/projects/mingw).

The windows headers (w32-api package) are extracting with the kernel_headers
step The libraries and other headers from both packages are build and
installed in the various steps of libc

Signed-off-by: Bart vdr Meulen <bartvdrmeulen@gmail.com>
[yann.morin.1998@anciens.enib.fr: fix kernel headers comment, don't "return 0"]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-07-11 21:36:20 +02:00
Yann E. MORIN"
4144845579 cc/gcc: gcc-4.4 does not use MPC
As reported by Johannes Stezenbach, see thread at:
  http://sourceware.org/ml/crossgcc/2010-07/msg00017.html
2010-07-10 15:25:10 +02:00
Yann E. MORIN"
42a7dc1946 libc/uClibc: enable NPTL for snapshots
Recently, NPTL has matured a lot in uClibc, and more and more
people are interested to at least give it a try. So enable it.
2010-07-03 01:15:28 +02:00
Yann E. MORIN"
974f60e98a libc/uClibc: fix snapshots
Snapshots are in a subdir named uClibc, not uClibc-snapshot
(or uClibc-YYYYMMDD either).
2010-07-03 00:17:54 +02:00
Yann E. MORIN"
3fafacd093 libc/uClibc: fix munging .config for LT old/new 2010-07-02 22:11:45 +02:00
Yann E. MORIN"
58ade1d7aa scripts/finish: do not try to symlink if sed expr is a no-op
If the sed expression does not transform the
tuple, do not try to create the symlink.
2010-07-07 22:33:49 +02:00
Yann E. MORIN"
e8a36ea13c debug/gdb: fix incorrect path
Fix discrepancy between the directory we create,
and the directory into which we install tic.
2010-07-01 01:17:01 +02:00
Yann E. MORIN"
82766493f5 libc/glibc: fix installed scripts
glibc installs some bash-scripts, but uses the path to the buildtool
bash as interpreter (on the shebang line). This is only a symlink to
the real bash, and thus is not available at runtime.

Fix that by assuming that bash on the target *will* be /bin/bash.
2010-07-01 00:24:04 +02:00
Yann E. MORIN"
4ea01561e4 scripts/wrapper: fix wrong test when checking access to the reall tool
In C, the proper syntax for a bit-wise OR is a single '|', not two.

It worked so far because all was well:
- X_OK == 1
- R_OK||X_OK == 1
- the file we searched for had the x-bit set
-> access( file, R_OK||X_OK ) worked
- inicidentally, the file we searched for also had the r-bit set,
  but we were not testing that in fact.
2010-06-22 23:49:23 +02:00
Yann E. MORIN"
8b8f2c17ba cc/gcc: add option do disable PCH
In some cases, using Pre-Compiled Headers breaks the build.
Ass an option to disable building the PCH, as suggested by:
  http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40974
2010-06-17 21:26:23 +02:00
Yann E. MORIN"
c4933a400c kernel/linux: allow headers from full custom source tree
Accept a local tarball name as the source of the Linux kernel headers,
rather than forcing the user to use either an upstream tarball, or a
local pre-installed headers tree.
2010-06-17 18:30:09 +02:00
Yann E. MORIN"
f99f3208af kernel/linux: reorder upstream/custom-tree handling 2010-06-15 20:04:01 +02:00
Yann E. MORIN"
656dae57eb cc/gcc: baremetal requires a two-pass process
Here, we implement a highly ugly hack. I'm not proud of that one...

To build the libstdc++ library, the compiler requires the C library. In
case we build for non-baremetal, this is normally handled by the final
step, later.

But in the case of bare-metal, we never go through the final step (because
it does not work, and it seems complex enough to make it work), so the
baremetal compilers are issued out of the core step.
2010-06-13 23:38:37 +02:00
Yann E. MORIN"
b00d3ef516 libc/newlib: build in the 'start files' pass
A few facts:
- building the C library requires a proper core compiler
- core compiler is issued from one of the core passes
- the C library is required to build libstdc++
- newlib is only built for baremetal
- in bare metal, the final compiler is issued from one of the core passes

So we need to build the C library between core pass 1 and core pass 2.
The only place is eithe libc_headers() or libc_start_files(). The most
pertinent seems to be libc_start_files().

So we build newlib from libc_start_files(), and leave libc() empty.
2010-06-13 23:45:29 +02:00
Yann E. MORIN"
399e7f8f8a cc/gcc: store core build rules in an array
Using an array makes it easier to add new rules.
Besides, it is easy to expand from build rules to install rules
2010-06-13 20:43:02 +02:00
Yann E. MORIN"
3983fe1184 cc/gcc: implement default for core options 2010-06-13 20:31:42 +02:00
Yann E. MORIN"
7b3c12d9a3 cc/gcc: fix headers copy for core static 2010-06-13 20:25:00 +02:00
Yann E. MORIN"
13b5487575 libc/uClibc: apply the threading model to the configuration
The threading model shall be be set in the .config file.
Also, offer the choice between 'old/stable' and 'new' linuxthreads.
2010-06-09 00:41:25 +02:00
Titus von Boxberg
d2d3c15c14 cc/gcc: Make usage of --enable-target-optspace configurable
Optionally configure to compile gcc-internal libs with -Os.

yann.morin.1998@anciens.enib.fr:
Rename the config options, it is in the GCC /namespace/.
2010-05-24 16:34:55 +02:00
Titus von Boxberg
b0c3365d15 scripts/build/internals.sh: compile wrapper with portable options.
static linking is not possible on MacOS, and unnessecary on other systems.
The old optimization and warning flags crash the gcc on MacOS
and (imho) are a bit overdone for this software.
2010-05-22 22:01:18 +02:00
Yann E. MORIN"
dbd5e50583 test-suite: apply cleanup pass
Remove all non-modifiable items (target tuple, gcc version, toolchain path...)
Makefile syntax ( use $(...) instead of ${...} )
Update doc
Space-damage cleanups
2010-05-22 22:04:31 +02:00
Martin Lund
1779c82ad2 test-suite: Added new test suite feature (experimental)
This patch adds support for installing the gcc test suite. A helper
Makefile is provided for building and running the gcc tests.

The default configuration runs all gcc tests and requires automatic
ssh/scp login access to a networked target board. See README for
more details.

Note: Current feature is tested with the powerpc-unknown-linux-gnu
sample but it should work with others as well.

Signed-off-by: Martin Lund <mgl@doredevelopment.dk>
2010-05-19 17:53:04 +02:00
Titus von Boxberg
0a63e8222c scripts/wrapper.c: Under MacOS set DYLD_LIBRARY_PATH
Depending on (predefined) macro __APPLE__, use DYLD_LIBRARY_PATH
instead of LD_LIBRARY_PATH.
2010-05-22 12:37:02 +02:00
Titus von Boxberg
afa2b0aa0d scripts/build/internals.sh: Always use binary wrapper under BSD/MacOS
The shell wrapper script uses a nonportable call to readlink.
Thus, always use the binary wrapper under BSD/MacOS.

yann.morin.1998@anciens.enib.fr:
  Use 'case' instead of 'if'.
2010-05-22 17:30:44 +02:00
Titus von Boxberg
98e7576024 scripts/wrapper.in: Add a comment about readlink not being portable.
Documented that the call to readlink will not work on BSD systems.
2010-05-17 12:27:32 +02:00
Titus von Boxberg
16ef145f50 scripts/crosstool-NG.sh.in: On MacOS/BSD use the output of CT_DoConfigGuess for CT_BUILD.
On 64bit MacOS `gcc -dumpmachine` gives i686 for the host machine.
This conflicts with the expectations of some following configure scripts
that a 64bit x86 is given as x86_64; i686 is understood as a 32 bit machine.
config.guess sets the host machine in CT_BUILD correctly.

yann.morin.1998@anciens.enib.fr:
As suggested by Khem RAJ on the ML, always use config.guess.
2010-05-19 18:13:00 +02:00
Titus von Boxberg
47af4ebf45 scripts/functions: Use stat correctly on non-GNU (BSD/Darwin) systems.
Call to get the directory mode depending on $CT_SYS_OS

yann.morin.1998@anciens.enib.fr:
CT_SYS_OS has changed on Linuxsystem, it only gets the kernel name "Linux",
and not the system name, 'GNU/'.
2010-05-19 18:22:32 +02:00
Titus von Boxberg
91381251a0 build/internals.sh: Replace nonportable call to stat
The call to stat to find out if a file is a symlink works only on GNU systems,
and the replacing portable call to readlink is also shorter and more concise code.

yann.morin.1998@anciens.enib.fr:
Apply simpler test, after discussion with author and Arnaud LACOMBE on the ML.
2010-05-19 18:08:23 +02:00
Titus von Boxberg
a85fc6dcb7 crosstool-NG.sh: suppress failure message from uname -o
On non-GNU systems (BSD/MacOS) there is no uname -o.
Suppress the failure message on these systems in the
call to set CT_SYS_OS (uname -s actually sets this variable).

yann.morin.1998@anciens.enib.fr: remove 'uname -o' altogether.
2010-05-19 18:17:39 +02:00
Yann E. MORIN"
9c83970d8b scripts/mk-release: pretty-up the per-author stats
Reverse sort first by number of changesets, then sort alphabetically
on the author's names.
2010-04-30 22:25:45 +02:00
Yann E. MORIN"
c4e987288e debug/gdb: install tic in the buildtools directory
'tic' is a build tool, its place is in the buildtools
directory, not in the toolchain's bin directory.
2010-04-29 22:14:31 +02:00
Yann E. MORIN"
3fda8a4876 debug/gdb: be less verbose during the ncurses build 2010-04-29 22:12:27 +02:00
Yann E. MORIN"
9997da0725 scripts: don't set LD_PRELOAD with static companion libraries
When cpmpanion libraries are built statically, it is useless to set
LD_PRELOAD. Worse, it might break the build in some corner cases.
2010-04-29 00:25:17 +02:00
Yann E. MORIN"
572a4e4bd7 arch/sh: fix type in variant handling 2010-04-25 18:27:23 +02:00
Yann E. MORIN"
f1235bf562 scripts/savesample: be silent when checking for .config file 2010-04-22 19:21:03 +02:00
Yann E. MORIN"
8743f16f65 libc/newlib: don't do // downloads
The newlib FTP site does not like // downloads, and quickly
blocks the IP from the downloader.

Override the number of chunks when downloading newlib.
2010-04-21 19:06:29 +02:00
Yann E. MORIN"
49f0895649 libc/glibc: fix kernel version check
Since we log the test strings, it is no longer possible to call
the CT_Test* functions from sub-functions that print results to
their stdout.
2010-04-21 18:54:58 +02:00
Yann E. MORIN"
5c6ccff589 scripts: also prepare include symlink to sysroot/include 2010-04-20 09:58:41 +02:00
Yann E. MORIN"
9815852ae0 scripts: check g++ only for host
g++ is only needed when building additonal libs on the HOST,
so check wheter g++ is available for the HOST compiler only

Signed-off-by: Bart vdr. Meulen <bartvdrmeulen@gmail.com>
[Yann E. MORIN: fix space damage]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-04-19 23:42:31 +02:00
Remy Bohmer
9c6c090d7b cc/gcc: use proper host compiler for canadian bare-metal
While compiling a canadian toolchain for host=mingw32, build=linux,
target=m68k-elf the build fails because in this step of the gcc build
the Host compiler is used in this stage with the build-flags for the
build system. This results in an error where the header <sys/wait.h>
cannot be found.
This problem happens at least in the GCC-4.3.x and GCC-4.4.x range.

This is solved by passing the proper compilers on the Make cmd-line

Signed-off-by: Remy Bohmer <linux@bohmer.net>
2010-04-09 21:04:37 +02:00
Bart vdr. Meulen
76ae48462a cc/gcc: allow building a canadian bare-metal compiler
Previous addition of the canadian cross compiler did not allow
to build a baremetal only variant, no reason why this is not
allowed

Signed-off-by: Bart vdr. Meulen <bartvdrmeulen@gmail.com>
2010-04-20 10:06:04 +02:00
Yann E. MORIN"
a6da1aa63a cc/gcc: fix cc symlink when executables have an extension
When building a cross-compiler for a host which depends
on file extensions the symlink for cc was not installed correctly

Signed-off-by: Bart vdr. Meulen <bartvdrmeulen@gmail.com>
[Yann E. MORIN: style fixes, enhancements, code prettying]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-04-20 11:39:13 +02:00
Yann E. MORIN"
3c160b2205 cc/gcc: add support for 4.5.0 or later versions
starting with 4.5.0, gcc requires libelf.
2010-04-15 22:35:18 +02:00
Yann E. MORIN"
eed8d50d02 complibs/libelf: enable the host build
Host libelf is required by gcc-4.5.0
2010-04-15 22:42:06 +02:00
Yann E. MORIN"
9962be4d9c complibs/libelf: build target libelf in its own directory 2010-04-15 22:35:04 +02:00
Yann E. MORIN"
3ad58b9c50 debug/gdb: remove insight
Insight seems to be very slow to follow up on mainstreram gdb.
Latest snapshots are more than 6 months old.

Moreover, I don't have time to maintain insight support in crosstool-NG;
and, because I don't use it, I am unable to find any breakage.
2010-04-15 20:00:23 +02:00
Yann E. MORIN"
1f87ae813c scripts: don't print the build system guess warning 2010-04-15 22:34:11 +02:00
Thomas Petazzoni
24e4d092a5 Add basic support for the Blackfin architecture
For uClibc, the name of the Blackfin architecture is 'bfin'. Actually,
the naming of the architecture is quite messy: for toolchain tuples
and uClibc, it's bfin, but for the kernel, it's blackfin. We've
arbitraly choosen to name it "blackfin" in Crosstool-NG.

Add Blackfin-related uClibc patch to fix a build failure related to
fork() being used in unistd/daemon.c.

Yann E. MORIN:
Apply the patch to the kernel/linux build script to use 'linux'
in the noMMU tuples. See:
  http://sourceware.org/ml/crossgcc/2010-04/msg00010.html
2010-04-07 09:18:20 +02:00
Yann E. MORIN"
55ba3f6378 scripts/functions: log the test strings 2010-04-13 22:54:57 +02:00
Yann E. MORIN"
e87fb32624 scripts/functions: compress with gzip level 3, as stated in the documentation
Thanks to Bruno Tarquini <btarquini@gmail.com> for the report.
2010-04-13 21:47:34 +02:00
Yann E. MORIN"
2d54ce4a2c scripts/functions: add a save/restore handler
Saving and restoring the steps requires saving/restoring multiple
directories. Depending on the configuration, some may not exist.

Add a wrapper that checks before creating/extracting the tarballs.
2010-04-13 20:52:38 +02:00
Yann E. MORIN"
09154a7162 scripts/functions: fix CT_Patch again 2010-04-13 20:05:47 +02:00
Yann E. MORIN"
80e7118b1f Merge. 2010-04-13 00:43:22 +02:00
Yann E. MORIN"
2d446d21bc Revert 3ea4e6f7b85f: Force autoreconf for mpfr
It breaks on my machine. Revert until we find the exact cause leading to
the initial patch, and we come up with a patch that properly fixes it.
2010-04-13 00:43:09 +02:00
Yann E. MORIN"
0f52a4c2de scripts/functions: fix CT_Patch 2010-04-13 00:07:00 +02:00
Yann E. MORIN"
bf86627982 scripts/functions: make CT_Patch dumber
It is the responsibility of the caller to split the package name from
its version. It already knows that.
2010-04-11 23:18:10 +02:00
Yann E. MORIN"
d2ea451ee1 libc/newlib: only compute version string, not full filename 2010-04-11 23:17:25 +02:00
Yann E. MORIN"
2a6e9ce59a debug/gdb: remove snapshot version 2010-04-11 23:05:48 +02:00
Remy Bohmer
9ccad74f02 cc/gcc: add bugurl and compiler version to core gcc compiler
When building for bare-metal the core-gcc compiler is delivered
as final compiler, so the version info and bugurl is useful
in the core compiler as well.

Signed-off-by: Remy Bohmer <linux@bohmer.net>
2010-04-09 21:04:33 +02:00
Bart vdr Meulen
d068fcb19c scripts: prevent trailing - in CT_TARGET
Not all target tuples consist of an VENDOR, KERNEL and SYSTEM part, build up the
tuple in such a way to no extra or trailing dashes are added to CT_TARGET

Signed-off-by: Bart vdr Meulen <bartvdrmeulen@gmail.com>
2010-04-09 21:04:27 +02:00
Bart vdr. Meulen
1ef028c7e6 [CT-NG:patch 05/19] Force autoreconf for mpfr
In some exotic case the autoreconf step of mpfr is not executed (correctly)
leaving an incorrect version number for libtool in the configure script.

After extracting the sources files, force autoreconf to be executed.

Signed-off-by: Bart vdr. Meulen <bartvdrmeulen@gmail.com>
2010-04-09 21:04:24 +02:00
Yann E. MORIN"
58de741ecf complibs: save directory with static complibs for stop/restart 2010-04-11 15:37:53 +02:00
Yann E. MORIN"
a01284b0e2 complibs: don't install in toolchain dir when built as static 2010-04-11 11:10:06 +02:00
Yann E. MORIN"
5b27e8de52 complibs: allow either static or shared build 2010-04-11 00:47:23 +02:00
Yann E. MORIN"
5b663e2aae complibs: build static libraries 2010-04-10 23:43:08 +02:00
Yann E. MORIN"
31fa64bc60 config: replace COMP_LIBS with COMPLIBS 2010-04-10 23:42:28 +02:00
Yann E. MORIN"
538d596113 complibs/mpfr: fix extract
With MPFR 2.4.2, autoreconf needs to be run as well.
2010-04-10 22:45:36 +02:00
Yann E. MORIN"
0d8e0f0e8b scripts: add script to publish patches
This script creates the patches for an existing version.
2010-04-10 12:34:07 +02:00
Arnaud Lacombe
93042972a8 cc/gcc: fix thread-less final gcc build
If threads are disabled in libc, we don't want to enable them in the
final compiler. Doing so pass the configure stage, but fails latter on
a missing <pthread.h>.

Moreover, we don't want to build libgomp if threads are disabled; its
configure script would fails anyway.

Signed-off-by: Arnaud Lacombe <lacombar@gmail.com>
2010-04-07 18:35:22 +02:00
Arnaud Lacombe
2059d43d86 cc/gcc: fix recent gcc build
This fix missed conversion of CT_GCC_USE_* to CT_CC_GCC_USE_*.

Signed-off-by: Arnaud Lacombe <lacombar@gmail.com>
2010-04-07 18:35:21 +02:00
Yann E. MORIN"
e5a007415a scripts: misc help and auto-complete fixes
- don't list samples in the main help screen
- improve the samples listing in list-samples
- don't document the 'config' action, it's long dead
- document the 'V' environment variable
- improve on START, STOP and PREFIX environment variables
- add PREFIX and V to autocomplete
- advertise auto-complete at install time
2010-04-02 00:18:26 +02:00
Yann E. MORIN"
75646b1ea4 scripts/addToolsVersion: fix handling libelf
libelf has moved to the companion libraries section,
and is no longer in the tools section.
2010-03-29 23:37:29 +02:00
Yann E. MORIN"
d8d2459ca4 scripts/populate: optimise search loop
Curently, populate will iterate over all ELF (shared objects|executables)
to look for missing NEEDED DSOs, adding to the list at every iterations
of the search loop.

Instead of looking again at previously handled ELF files, recursively
resolve every ELf files.

Also, in case there are a whole lot of files (more than the shell can
accept as arguments list, or creating a command line longer than the
shell can cope with), use a temporary file with the list of files
to search for missing dependencies.
2010-03-29 00:15:32 +02:00
Yann E. MORIN"
ec4181e4d2 scripts/populate: cleanups and misc fixes
- it's a POSIX compliant shell script: drop bash, use /bin/sh
- fix help text
- use an absolute path for sysroot
- replace "echo" with "printf"
- replace "stat -c '%i'" with "ls -1id"
- replace "pushd / popd" with "cd / cd -"
- remove superfluous break
- bail out if required lib not found, except if forced
2010-03-28 23:01:19 +02:00
Yann E. MORIN"
1913d355b3 scripts/populate: fix handling the forced libraries list-file
If a list-file is used, then each library in the file will be handled
twice (not a real issue, as the second iteration will find the library
already present, just avoid doing the job twice).
2010-03-26 23:17:23 +01:00
Yann E. MORIN"
f36ceb7f54 scripts/populate: properly locate the sysroot and required tools
This fixes two problems:
- the sysroot might be in a sub-directory (think SYSROOT_DIR_PREFIX)
- it is not needed to have the target tuple to properly detect the sysroot
  and the required tools

As a side effect, this script is now no longer dependent on the target
tuple, and in the future, we might be able to share it across many
toolchains (when/if we can install all of them in the same place).
2010-03-25 22:42:00 +01:00
Yann E. MORIN"
a67a23877f scripts/populate: add -m option, to merge source and dest
Merge the source rootfs into the (pre-existing) destination rootfs,
and populate the result accordingly.
2010-03-24 22:36:51 +01:00
Nate Case
ceca768ee6 scripts/populate: add option to use an alternate sysroot
Add a new command line option, "-r", which allows the user to specify
an alternate sysroot location to copy libraries from.  This is useful
when using the toolchain in combination with a separate root filesystem,
or when working with multiple different root filesystems.

Signed-off-by: Nate Case <ncase@xes-inc.com>
2010-03-23 19:27:41 +01:00
Yann E. MORIN"
a8979d911f binutils/sstrip: fix when sstrip is disabled 2010-03-24 22:21:52 +01:00
Yann E. MORIN"
5b8dcf755b binutils/sstrip: get rid of ELFkickers
ELFkickers are looong dead and unmaintained, and the sstrip
from buildroot is working fine *and* is maintained.
2010-03-17 00:28:14 +01:00
Yann E. MORIN"
b0fece4689 tools: move sstrip to the binary utilities menu
sstrip is now alone in its 'tools' menu, and we will probably never gain
any other 'tool'. Besides, sstrip is just strip, but a little bit more
agressive, so it deserves going to the 'binary utilities' menu.
2010-03-17 00:21:57 +01:00
Yann E. MORIN"
2244007325 debug/gdb: gdb>=7.0 can use MPC, enable for cross-gdb 2010-03-15 22:02:02 +01:00
Yann E. MORIN"
76f3741a0f debug/gdb: add handling of 7_0_or_later
We'll need to differentiate gdb 7.0 or later, from gdb prior to 7.0
2010-03-20 18:49:15 +01:00
Yann E. MORIN"
2583337c7c debug/gdb: add option to use GMP and MPFR
GMP and MPFR are optional for gdb, so offer a config option.
2010-03-15 21:51:20 +01:00
Yann E. MORIN"
8e47201cf2 cc/gcc: fix use of companion libraries 2010-03-05 18:55:25 +01:00
Yann E. MORIN"
e743ae7d79 scripts: fix dumping the config for companion libraries for target
Companion libraries can be disable for the host, but still used for
the target (eg. binutils or gdb). Dump the version also in this case.
2010-03-19 18:46:57 +01:00
Yann E. MORIN"
7372fa2b76 scripts: fix dumping config
libelf has been moved to being a companion library, now.
2010-03-17 23:59:17 +01:00
Yann E. MORIN"
b2c9b2d48f debug/gdb: fix building the native tic
The native 'tic' will _always_ be run on the build
machine, so no need to handle canadian/native/...

Reported by: Trevor Woerner
http://sourceware.org/ml/crossgcc/2010-03/msg00055.html
(transplanted from 26e89d367ea11660fd3a0bf0bcad8763e4fa21cf)
2010-03-16 23:10:46 +01:00
Yann E. MORIN"
8878058528 scripts: fix the release script to use the C locale
Force use of the C locale to ensure messages are recognised by the script.
2010-03-14 16:39:11 +01:00
Yann E. MORIN"
627e269efd scripts: enhance and fix the release script 2010-03-14 12:12:10 +01:00
Yann E. MORIN"
cbc8a65237 scripts: add script to make a release 2010-03-07 13:17:27 +01:00
Yann E. MORIN"
8bc58e651d debug/ltrace: properly fix building for powerpc
ltrace uses ppc, whereas crosstool-NG use powerpc.
Fix that by passing the correct value to HOST when calling configure.
2010-03-07 12:30:01 +01:00
Yann E. MORIN"
ecfc6d2e2d debug/ltrace: fix building on x86
ltrace uses i386 and x86_64, whereas crosstool-NG use x86 for both cases.
Fix that by detecting what bitness we're building for, and pass appropriate
i386 or x86_64 to ltrace's configure.
2010-03-06 16:05:20 +01:00
Yann E. MORIN"
d380a84b52 complibs: remove headers after build
After the toolchain is built, we do no longer need the headers.
Reported-by: Enrico Weigelt <weigelt@metux.de>
2010-02-28 10:19:13 +01:00
Zhuang Yuyao
f8ba6cb7e6 arch: add mips64
This adds initial mips64 config option and build script.
2010-02-20 07:35:02 +01:00
Titus von Boxberg"
00ac124509 scripts: use more portable sed options
No need for extended regular expressions here.
2010-02-03 00:24:24 +01:00
Yann E. MORIN"
991b90f242 comp-libs: make libelf a companion library
When gcc-4.5 is out, it will require libelf. So better make it a
companion library now rather than postponing the ineluctable.
2010-02-17 23:41:17 +01:00
Yann E. MORIN"
2949150cbe complibs: hide companion libraries for target entry
The companion libraries on the target are required only for internal use by
binutils and gdb. The user should not have to know about this, so hide the
option.
2010-02-17 23:50:49 +01:00
Yann E. MORIN"
77a605d48e complibs: simplify config file
Although currently the wrapper is directly dependent on
companion libraries, let's still decorelate those two.
2010-02-18 20:43:31 +01:00
Yann E. MORIN"
3eaa187de5 complibs: split-up selection for individual libs 2010-02-17 23:47:47 +01:00
Yann E. MORIN"
c6689215d1 binutils/binutils: fix using GMP and MPFR 2010-02-09 22:50:53 +01:00
Yann E. MORIN"
26e5cb4021 scripts: fix dumping 'other environment'
Do not sort the environment, it cripples the output.
2010-02-18 00:04:48 +01:00
Yann E. MORIN"
933404b449 cc/gcc: simplify the _or_later stuff 2010-02-04 15:18:46 +01:00
Yann E. MORIN"
c971f6ee33 scripts/showsamples: fix non-POSIX construct 2010-02-07 17:17:52 +01:00
Titus von Boxberg
bc5c6b3178 scripts: also dump the rest of the environment 2010-02-03 00:24:24 +01:00
Titus von Boxberg
cb62adf58f scripts: use kernel name (uname -s) when system name (uname -o) is not availabe
'uname -o' is a GNU extension.
2010-02-03 00:24:24 +01:00
Titus von Boxberg
f65b10457b scripts/functions: fix date munging when ns are not available
On some systems (eg. *BSD and Darwin), date does not support nanoseconds
(%N) precision. Instead of printing '%N' in this case, it just prints 'N'.
Fix the sed expression to handle this case.
2010-02-03 00:24:24 +01:00
Titus von Boxberg
e6f4c47c21 comp-libs/mpfr: fix build on Darwin 2010-02-03 00:24:24 +01:00
Richard Strand
22fca0106e libc/eglibc: Add option to optimize for size
Add an option to eglibc to optimize for size using -Os.

Signed-off-by: Richard Strand <richard.strand@icomera.com>
2010-02-01 12:56:28 +00:00
Yann E. MORIN"
964d20b1c7 scripts: dump the current tuple with show-config 2010-01-31 20:10:14 +01:00
Yann E. MORIN"
3fb0463536 scripts: add action to dump current configuration in humane-readable form 2010-01-31 15:57:22 +01:00
Yann E. MORIN"
b44a9d9e34 scripts: Do not create backup files when patching
Some patches may apply with offset and/or fuzz, and would leave .orig files.
2010-01-31 12:07:44 +01:00
Yann E. MORIN"
e46e74546d libc/glibc: fix retrieving version string 2010-01-30 16:19:50 +01:00
Yann E. MORIN"
58a53e7bf6 scripts/functions: add git wrapper
Add a git wrapper to retrieve components from their git tree.
Add a git wrapper to create a working copy (in our tarballs dir).
Recognise git trees when searching for local copies.
2010-01-14 20:54:47 +01:00
Yann E. MORIN"
958138fff1 libc/glibc: get the version string from version.h
We can not rely on the user-provided version string (be it via the
choice, or manually entered), so fallback to reading version.h,
which is both reliable and always present.
2010-01-12 19:37:18 +01:00
Yann E. MORIN"
e3a4063ac6 scripts/functions: change handling of nochdir
- 'nochdir' must be the first option
- have systematic pushd/popd, even if nochdir
2010-01-12 19:24:03 +01:00
Yann E. MORIN"
c5462c814f libc/glibc: get rid of the now obsolete CVS stuff
It's now been a while that glibc switched to git from cvs.
Get rid of cvs to download glibc; this will make for a good
cleanup before we add git support! :-)
2010-01-11 22:47:58 +01:00
Yann E. MORIN"
8920a94354 Merge. 2010-01-29 23:46:43 +01:00
Yann E. MORIN"
88d3a95eca global: do not offer the renice option, let's the user handle that
It's broken anyway. Eg.:
- user is already niced at 10
- user configures to renice at 5
- breaks because user is not allowed to 'boost' his/her nice value

Bette let the user handle the renice with:
  nice -XX ct-ng 'action'
2010-01-29 23:14:53 +01:00
Yann E. MORIN"
8577bc52c1 kernel/linux: remove legacy check
Now, we only support building with Linux >=2.6.27.
Get rid of the code that depended on <2.6.18.
2010-01-29 22:55:35 +01:00
Yann E. MORIN"
9e595444f4 binutils/elf2flt: activate elf2flt build
The code has been lying around inactivated for some time.
Let's enable it at last, and see if any one needs it.
2010-01-29 22:43:28 +01:00
Yann E. MORIN
6d70a576da arch: add basic m68k support
Signed-off-by: Remy Bohmer <linux@bohmer.net>
[yann.morin.1998@anciens.enib.fr: use defaults for CT_TARGET_ARCH]
Signed-off-by: "Yann E. MORIN <yann.morin.1998@anciens.enib.fr>
2010-01-29 23:23:59 +01:00
Yann E. MORIN"
3a71b208b3 Merge. 2010-01-23 22:15:17 +01:00
Yann E. MORIN"
542419d6a0 libc/uClibc: fix the breakage for x86 and Super-H, after the 32/64 merge 2010-01-23 22:06:11 +01:00
Yann E. MORIN"
994427dbbe scripts/functions: do not compute CT_KERNEL_ARCH, it's obsolete
Since we merged the 32/64-bit archs, and we explicitly used
the Linux kernel arch name, we can get rid of CT_KERNEL_ARCH.
2010-01-23 19:02:46 +01:00
Yann E. MORIN"
849713aa43 libc/uclibc: use CT_ARCH, in place of CT_KERNEL_ARCH
Since we merged the 32/64-bit archs, and we explicitly used
the Linux kernel arch name, we can get rid of CT_KERNEL_ARCH.
2010-01-23 18:41:59 +01:00
Yann E. MORIN"
ac46ac3dd5 libc/glibc: use CT_ARCH, in place of CT_KERNEL_ARCH
Since we merged the 32/64-bit archs, and we explicitly used
the Linux kernel arch name, we can get rid of CT_KERNEL_ARCH.
2010-01-23 18:40:38 +01:00
Yann E. MORIN"
6b73ea68c5 kernel/linux: use CT_ARCH, in place of CT_KERNEL_ARCH
Since we merged the 32/64-bit archs, and we explicitly used
the Linux kernel arch name, we can get rid of CT_KERNEL_ARCH.
2010-01-23 18:39:28 +01:00
Yann E. MORIN"
ed71d902c9 debug/gdb: fix the space-damage 2010-01-21 22:45:09 +01:00
Yann E. MORIN"
64aae637f8 debug/gdb: do not expose the ncurses version in the menuconfig 2010-01-21 22:33:54 +01:00
Yann E. MORIN"
9bfea69431 scripts/functions: inverse log level ALL and DEBUG 2010-01-16 17:52:44 +01:00
Yann E. MORIN"
0e9551967c scripts/addToolVersion: add uClibc hooks 2010-01-14 18:44:13 +01:00
Yann E. MORIN"
8f41039a3c debug/gdb: install ncurses in a temporary place
We only build the static ncurses, to be used to build the native gdb,
and it needs not be available for anyone but us. So install it into
a temporary place, and get rid of it once gdb is built.
2010-01-13 22:30:10 +01:00
Yann E. MORIN"
ad943c1a37 debug/gdb: staticaly link to ncurses for the native gdb
Staticaly link the native gdb (the one that runs on the target,
not the cross one that runs on the host) to ncurses.
2010-01-13 20:46:01 +01:00
Richard Strand
b6cf64a802 companion_tools/libtool: Add libtool tool
Add version 2.2.6b of libtool as a companion tool

Signed-off-by: Richard Strand <richard.strand@icomera.com>
2010-01-12 21:47:57 +00:00
Richard Strand
c782756cd3 companion_tools/automake: Add automake tool
Add version 1.11.1 of automake as a companion tool

Signed-off-by: Richard Strand <richard.strand@icomera.com>
2010-01-12 21:47:36 +00:00
Richard Strand
e3a8a01025 companion_tools/m4: Add m4 tool
Add version 1.4.13 of m4 as a companion tool

Signed-off-by: Richard Strand <richard.strand@icomera.com>
2010-01-12 21:47:14 +00:00
Yann E. MORIN"
df2e088c8f companion_tools/autoconf: add autoconf tool
Initial version of adding autoconf as a companion tool.

Signed-off-by: Richard Strand <richard.strand@icomera.com>
[yann.morin.1998@anciens.enib.fr: use generic overide tools dir]
[yann.morin.1998@anciens.enib.fr: update menu entries]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-01-12 21:09:30 +01:00
Yann E. MORIN"
72e623bbc7 scripts/crosstool-ng: Change overide bin dir
Change the overide bin dir so it can be used by companion tools

Signed-off-by: Richard Strand <richard.strand@icomera.com>
[yann.morin.1998@anciens.enib.fr: more generic overide tools dir]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-01-12 21:21:39 +01:00
Yann E. MORIN"
a2164e86c5 Merge. 2010-01-10 17:43:23 +01:00
Yann E. MORIN"
eace0275b9 scripts/addToolsVersion: add support for newlib 2010-01-10 17:24:29 +01:00
Yann E. MORIN"
59470f80fb scripts/addToolVersion: cleanups 2010-01-10 17:22:47 +01:00
Yann E. MORIN"
a715a4b28d scripts/addToolVersion: correctly handle the libc categories 2010-01-10 16:50:52 +01:00
Richard Strand
185ea5a640 scrips/functions: fix downloads using curl
By default curl doesn't folow redirects. This breaks sourceforge downloads.
Add the -L option to curl to fix this.

Curl also downloads the html as a file even when it gets a 404. This breaks
http downloads when using the failback system. Add the -f option to curl to fix
this.

Signed-off-by: Richard Strand <richard.strand@icomera.com>
2010-01-10 15:19:25 +00:00
Yann E. MORIN"
261709c8d4 libc/glibc: correctly handle dual-bitness archs
If the selected ARCH is dual-bitness (eg. supports 32- and 64-bit),
then we need to know the correct place where to fetch some headers.
Currently, this applies only to x86 variants: i386 and x86_64.
2010-01-09 16:05:01 +01:00
Yann E. MORIN"
28d1a52859 scripts/functions: fix extraction 2010-01-09 17:31:25 +01:00
Yann E. MORIN"
fbd2a88e6e arch/alpha: cleanup Alpha code 2010-01-09 15:57:07 +01:00
Yann E. MORIN"
a272b32bba config: don't force the vendor part in the tuple
Note however that some configurations (eg. arm-elf) will still
have the vendor part 'unknown' forced in (by config.sub).
2010-01-07 23:05:30 +01:00
Yann E. MORIN"
90a54f50be scripts/addToolsVersion: add support for MPC 2010-01-06 18:30:51 +01:00
Yann E. MORIN"
f0b5c37abf scripts/addtoolversion: prepare for hooks for tools others than gcc
The upcoming git support will require hooks for glibc as well.
2010-01-02 00:15:19 +01:00
Yann E. MORIN"
009eb2a247 scripts: protect against partially extracted source
In case of failure (eg. user hitting Ctrl-C), avoid extracting over
partially extracted source. Will help once we have git available.
2009-11-30 21:34:50 +01:00
Yann E. MORIN"
01a58679df scripts: handle custom or empty extension when extracting 2009-11-30 00:05:45 +01:00
Yann E. MORIN"
135ea6486f scripts/functions: do not double check if downloads are allowed
Only call the *_get functions if downloads are allowed, so there
is no need to check it again in the retrieval wrappers.
2009-11-25 20:36:04 +01:00
Yann E. MORIN"
27199362d5 debug/ltrace: fix for a latent bug 2010-01-05 23:27:19 +01:00
Yann E. MORIN"
e950bbfeb2 debug/ltrace: chop long lines 2010-01-05 18:56:44 +01:00
Joachim Nilsson
ac08d4a45e debug/ltrace: set the ltrace extension to .tar.gz
Trying to download every extension in turn does not work.
The Debian server returns a friendly 404-page that is
saved as the orig.tar.bz2 file.  Help the helper by giving
it the extension to retrieve.
2010-01-05 11:43:31 +01:00
Joachim Nilsson
c704137fd6 debug/ltrace: Add support for ltrace-0.5.3
From this version of ltrace the maintainer has removed support for
GNU Autotools, so the patch sets needed to be reworked.

Included is the latest Debian patch, by the Debian ltrace maintainer
Juan Cespedes <cespedes@debian.org>, the OpenEmbedded patches for cross
compiling, by Khem Raj <raj.khem@gmail.com> and a further set of patches
by Joachim Nilsson <jocke@vmlinux.org> for crosstool-NG.
2010-01-03 16:46:58 +01:00
Yann E. MORIN"
75cb688486 samples: fix displaying samples 2010-01-03 18:33:23 +01:00
Yann E. MORIN"
9b5d316acc scripts/functions: make aria2 less verbose when downloading 2010-01-03 16:30:35 +01:00
Yann E. MORIN"
8908eb3037 misc: do not use "tar cf - |tar xf -"
Using this: tar cf - -C "/some/place" |tar xf - -C "/some/other/place"
to copy a directory to another place does not properly fail (when it does).

Using this instead: cp -av "/some/place" "/some/other/place"
makes it easy to see why and how it failed.

Impacted:
    libc/uClibc
    debug/ltrace
    tools/sstrip
    scripts/populate
2010-01-02 18:00:54 +01:00
Yann E. MORIN"
5ae9b7faf9 libc/uClibc: do not mangle ARM {E,O}ABI when ARCH != ARM 2010-01-01 16:52:55 +01:00
Yann E. MORIN"
d744220447 libc/uClibc: beautify the munge function 2010-01-01 18:47:20 +01:00
Yann E. MORIN"
c20e01d094 scripts/functions: fix downloading with aria2
In case the remote file does not exist (and probably for some
other reasons as well), aria2 nonetheless creates an empty file
(or not empty for some other reasons).

The solution is to delete the file whenever aria2 fails.
2010-01-01 17:09:52 +01:00
Yann E. MORIN"
b9eba0996a scripts/functions: fix using Aria2
Latest aria2 no longer recognise the --retry-wait option.
2010-01-01 12:27:06 +01:00
Yann E. MORIN"
da84e43df4 debug/tools: set the ncurses extension to .tar.gz
TRying to download every extension in turn takes ages, so
help the helper by telling what extension to retrieve.
2009-12-30 15:38:03 +01:00
Yann E. MORIN"
04c68600ea scripts/functions: add aria2, a powerfull downloader
aria2 is a powerfull downloader that is capable of chunking and
parallel retrieval.

Due to li;itations in crosstool-NG retrieval facilities, it's not possible
to take fully advantage of aria2. It might happen that, in the future,
those limitations get lifted away, so we can take use features such as
parallel downloading from more than one server at the same time. For now,
it should still speed up downloads thanks to parallel downloading of chunks.
2009-12-30 15:36:22 +01:00
Yann E. MORIN"
2c077d6fac scripts/functions: simplify wget vs. curl check 2009-12-29 22:11:09 +01:00
Yann E. MORIN"
5347a90a4f scripts: check for, and warn about an unset CT_PREFIX_DIR
The user shall provide a directory to install the toolchain into.
If he/she does not, this is an error, and shall be detected properly,
rather than relying on failure down the road.

Thanks to "Pedro I. Sanchez" <psanchez@colcan.ca> for pointing out
the issue:
  http://sourceware.org/ml/crossgcc/2009-12/msg00011.html
2009-12-19 12:44:21 +01:00
Yann E. MORIN"
75f0ec107c scripts: correctly warn when the local tarballs directory does not exist
Warn about a missing local tarball directory, only if it was configured.
Avoid the spurious message:
  Directory '${CT_LOCAL_TARBALLS_DIR}' does not exist.
  Will not save downloaded tarballs to local storage.

Thanks to "Pedro I. Sanchez" <psanchez@colcan.ca> for pointing out the
issue:
  http://sourceware.org/ml/crossgcc/2009-12/msg00011.html
2009-12-14 19:17:37 +01:00
Yann E. MORIN"
eb2a7ba9b0 scripts: directly spit-out the date in the WiKi table, misc eye-candy
No need to go through a post-processing just for displaying the date...
2009-11-26 00:22:17 +01:00
Yann E. MORIN"
7ddb6648e0 scripts: fix Host/Target colums in WiKi table
Generate a better-looking WiKi table by re-arranging
the host and target columns.
2009-11-25 23:56:59 +01:00
Yann E. MORIN"
acba361851 scripts: fix WiKi table generation
The number of column in the top-most header was not updated to reflect the
fact that a new column was added to show the host (for canadian crosses).
2009-11-25 23:40:25 +01:00
Yann E. MORIN"
0a7fb290da scripts: update config.{sub,guess} 2009-11-22 11:36:41 +01:00
Yann E. MORIN"
15627cbf8c libc/glibc: configure libc headers with support for 128-bit long double
At the headers install pass, there's no compiler to test for the size
of long double. Help it: we know that the compiler does support 128-bit
long double, in the IBM extended precision.

Kindly pointed out, and explained, by Mike FRYSINGER:
  http://sourceware.org/ml/crossgcc/2009-11/msg00040.html
  http://sourceware.org/ml/crossgcc/2009-11/msg00057.html
2009-11-17 23:41:49 +01:00
Simon Pasch
a4980248f3 libc/uClibc: add wchar support 2009-11-06 20:17:30 +01:00
Yann E. MORIN"
cb52ec6051 arch/s390: commonalise the 32- and 64-bit s390 arch 2009-11-17 11:54:44 +01:00
Yann E. MORIN"
7ea82181db arch/x86: commonalise the 32- and 64-bit x86 arch 2009-11-17 11:51:57 +01:00
Yann E. MORIN"
28b38f9222 arch/ppc: commonalise the 32- and 64-bit PowerPC arch 2009-11-17 11:33:59 +01:00
Yann E. MORIN"
07dfc06659 Merge. 2009-11-16 22:37:39 +01:00
Yann E. MORIN"
2df1637271 Merge. 2009-11-16 20:25:42 +01:00
Yann E. MORIN"
bd8e670d5e libc/glibc: allow more than one line in configparms 2009-11-16 20:24:03 +01:00
Yann E. MORIN"
385a616b10 arch/s390: cleanups
Don't select unneeded config knobs. Don't select non-existing config knobs.
Use the "no patch" config knob, instead of pointing to an non-exiting local
patch dir. Simplify the tuple-related scripts. Update the samples.
2009-11-16 20:18:09 +01:00
Yann E. MORIN"
2b212bccad config/global: enable not using patches at all
It can be needed to build a toolchain with no patch at all.
2009-11-16 20:15:45 +01:00
harold
2cde67ddc4 arch: add s390 and s390x architectures and samples 2009-11-14 15:03:01 -06:00
Yann E. MORIN"
590ca63f0d scripts: add a new helper script to easily rediff a patchset 2009-11-13 19:34:18 +01:00
Yann E. MORIN"
c863d223fa scripts: be POSIXly correct in helper scripts
Fix helper scripts to be POSIXly correct: don't expect '.' (the dot
builtin) to search CWD if it is not in $PATH.
2009-11-12 18:42:13 +01:00
Yann E. MORIN"
33374cac39 scripts: output renumbered patches in a new directory
When renumbering patches, the original patches get removed and replaced
with the new ones. This can be annoying to loose the original patches.
Fix this by putting the new patchs in a directory of their own.
2009-11-10 19:32:11 +01:00
Yann E. MORIN"
6af0ca4153 scripts: some eye-candy 2009-10-30 20:08:44 +01:00
Yann E. MORIN"
85da99fb23 scripts: update config.{sub,guess} 2009-10-30 19:52:06 +01:00
Yann E. MORIN"
01240b9fbf scripts: fix updating config.{sub,guess} 2009-10-30 19:49:51 +01:00
Yann E. MORIN"
de8f2cea32 Merge. 2009-10-29 00:10:06 +01:00
Yann E. MORIN"
c916a69abf arch/arm: add THUMB interworking support
Add config option to build wtarget code with THUMB interworking.
This is used to build the C library as well as all other code
that runs on the target.
2009-10-26 23:11:10 +01:00
Yann E. MORIN"
d2324af8c7 arch/arm: add THUMB mode config option 2009-10-26 09:10:38 +01:00
Yann E. MORIN"
da0ff22e6c arch/arm: no need to check for the ABI option
The ABI option can not be set if EABI was selected,
so no need to check for it.
2009-10-21 23:20:30 +02:00
Yann E. MORIN"
49e5b08739 libc/newlib: allow using CVS snapshots
The newlib "team" rolls new releases about once a year (december).
This is quite a long time between releases, in case code was fixed.
So, allow user to use a CVS snapshot to benefit early from fixes
and enhancements to newlib.
2009-10-26 22:00:30 +01:00
Yann E. MORIN"
e73418236d functions: allow using sub-dir of a module
Some projects' module (eg. newlib) are checked-out into a sudirectory
rather than into their own directory. Handle this case in the CT_GetCVS
function.
2009-10-26 19:49:50 +01:00
Yann E. MORIN"
68b9b30f6b libc/newlib: allow using newlib with archs other than avr32 2009-10-21 22:51:39 +02:00
Yann E. MORIN"
e8bd152863 libc/newlib: cleanup the build and finish steps
build step:
- ./configure
  - remove glibc-specific options
  - pass the target CFLAGS in the correct variable
- make:
  - build in //

finish step:
- print proper message in finish step
2009-10-26 23:20:33 +01:00
Yann E. MORIN"
88c997020f libc/newlib: fix host/target confusion
newlib handles the build/host/target a bit differently as one would expect:
  build  : not used
  host   : the nachine that builds newlib
  target : the machine on which newlib will run
2009-10-25 23:35:55 +01:00
Yann E. MORIN"
c2d4265646 debug/dmalloc: fix handling of threading model 2009-10-21 18:47:16 +02:00
Frederic Roussel
1215142d57 scripts/functions: Fix a variable name.
Signed-off-by: Frederic Roussel <fr.frasc@gmail.com>
2009-10-23 09:48:22 -07:00
Yann E. MORIN"
d28227a914 scripts: add sed expression to apply when renumbering patches
Some patchsets have superfluous members in their names (eg. the ones coming
from Gentoo), so it can come in handy to pass a sed RE to strip them out of
the final patch name.
Also add a 'fake' mode, where the command will only be printed and not
executed, so we can check beforehand if the rename will be OK.
2009-10-27 19:34:13 +01:00
Yann E. MORIN"
039ee6c125 scripts: fis addToolVersion wrt binutils
binutils' config file has moved; update the addToolVerion script accordingly.
2009-10-27 18:54:29 +01:00
Yann E. MORIN"
5bbc211198 scripts: replace calls to svn with calls to hg in script to renumber patches 2009-10-10 17:19:51 +02:00
Arnaud Vrac
e11863d167 eglibc: add support for user provided option groups
Signed-off-by: Arnaud Vrac <avrac@freebox.fr>
2009-10-09 16:22:09 +02:00
Yann E. MORIN"
89351cb898 Merge. 2009-10-03 18:21:41 +02:00
Yann E. MORIN"
d0c5d174bf libc/glibc: don't use legacy snapshots
glibc snapshots have not been updated for about the
past 5 months. Consider them to be deprecated, now.
2009-10-03 18:19:39 +02:00
Yann E. MORIN"
c3b2d932d8 debug/gdb: cleanup (remove) the static ncurses build
ncurses is built solely for the sake of building a native gdb.
The user should not rely on this library to build his/her userland,
but should rather build his/her own. So we remove it from the
sysroot after we successfully build the native gdb.
2009-10-03 17:09:18 +02:00
Yann E. MORIN"
399a88364f libc/eglibc: fix building for seemingly native toolchains
Build eglibc with -O2 as a fix/workaround to building
seemingly-native toolchains (see docs/overview.txt).

See:
- docs/overview.txt
- docs/known-issues.txt
- http://sourceware.org/ml/crossgcc/2009-10/msg00001.html
2009-10-02 22:10:17 +02:00
Yann E. MORIN"
443f51a2dc libc/glibc: fix building for seemingly native toolchains
Build glibc with -O2 as a fix/workaround to building
seemingly-native toolchains.

See:
- docs/overview.txt
- docs/known-issues.txt
- http://sourceware.org/ml/crossgcc/2009-09/msg00055.html
2009-10-02 22:10:38 +02:00
Yann E. MORIN"
b586e9ce72 libc/glibc: remove dead code
The option to retrieve snapshots is already handled by
the generic 'specific date' and 'use latest' entries.
No need for a special case, as there's no code for it.
2009-10-02 00:04:24 +02:00
Yann E. MORIN"
0d9345d1da Merge. 2009-10-01 22:12:18 +02:00
Yann E. MORIN"
9d743adb55 scripts: update config.guess and config.sub 2009-09-27 12:12:21 +02:00
Yann E. MORIN"
5fea8b3826 Insert an empty line bwetween added new versions. 2009-09-26 12:45:07 +02:00
Yann E. MORIN"
192d66e563 Merge. 2009-09-13 18:59:36 +02:00
Yann E. MORIN"
b6568d675b config: fix indentation for options marked EXPERIMENTAL or OBSOLETE
Change the 2-space separation into a 1-space separation, for the sake
of homogeneity.
2009-09-13 18:44:17 +02:00
Yann E. MORIN"
0c63755957 scripts: add new version at top of choice
Add new versions at the top of the choice menu, not at the bottom.
2009-09-13 18:38:06 +02:00
Yann E. MORIN"
2d6a221bab samples: correclty fix saving samples with a C library config file 2009-09-13 17:14:28 +02:00
Yann E. MORIN"
028b9d1c98 comp-libs/cloog: fix building
For CLooG/PPL 0.15.3, the directory name was simply cloog-ppl.
For any later versions, the driectory name does have the version, such as
cloog-ppl-0.15.4.
2009-09-13 12:25:33 +02:00
Yann E. MORIN"
414f639105 comp-libs/cloog: new versions have the version number in the dir name
For CLooG/PPL 0.15.3, the directory name was simply cloog-ppl.
For any later versions, the driectory name does have the version, such as
cloog-ppl-0.15.4.
2009-09-12 10:16:28 +02:00
Yann E. MORIN"
6b37673b64 samples: fix saving samples
Use a correct sed pattern when setting CT_PREFIX_DIR
2009-09-12 00:10:38 +02:00
Yann E. MORIN"
26b3a17f58 libc/eglibc: fix download
Fix the test to check if download is forced.
2009-09-12 00:11:12 +02:00
Yann E. MORIN"
ea352a96a3 samples: show the PPL, GLoog/ppl and MPC versions
When displaying a sample, do show the PPL, CLoog/ppl and MPC versions
2009-09-07 19:03:09 +02:00
Yann E. MORIN"
565378d2b9 samples: fix displaying selected tools
Do display selected tools / debug facilities when displaying a sample.
2009-09-07 18:55:11 +02:00
Yann E. MORIN"
0d434aabb6 samples: replace usage of echo with printf
Using printf instead of echo allows easier and better formatting.
2009-09-07 18:40:30 +02:00
Yann E. MORIN"
3136ecb066 tools wrapper: fix building
Remove the build tools only after the wrapper is built.
Use the corect C compiler to build the tools wrapper.
Use the correct log level.
2009-09-06 17:58:05 +02:00
Yann E. MORIN"
4a1d73f209 crosstool.sh.in: better mesage when creating script-overrides 2009-09-06 16:49:54 +02:00
Yann E. MORIN"
9ce2053352 log functions: fix CT_DoLog and CT_DoExecLog
$@ and $* are different when in double quotes; use $* to print the message.
2009-09-06 16:49:20 +02:00
Yann E. MORIN"
a6a0bf70ed config.{gues,sub}: update 2009-09-01 10:41:44 +02:00
Yann E. MORIN"
2efc2b2319 config: add fallback to patch order
Add the possibility to fallback to either bundled or local patches
if local or bundled are missing.
2009-08-31 12:47:58 +02:00
Yann E. MORIN"
b09e70bda5 config: add the local,bundled patch order
This ordering first applies the local patches, then the bundeld ones.
2009-08-31 12:51:53 +02:00
Yann E. MORIN"
dc836b5e4d config: make selecting the patch origin a choice rather than a bool 2009-08-31 12:05:52 +02:00
Yann E. MORIN"
c992de9eb5 functions: do not over-detect error when patching 2009-08-31 11:57:13 +02:00
Yann E. MORIN"
af08c2b96c tools wrapper: fix error due to unused argument
In the C wrapper, the argc argument is not used, causing an error
(as we treat warnings as errors). Use a dummy allocation to get
rid of the warning.
2009-08-30 19:58:41 +02:00
Yann E. MORIN"
4bb7da8056 tools wrapper: correctly install the C wrapper
When building the C wrapper, specify the source file to be compiled.
2009-08-30 19:54:51 +02:00
Yann E. MORIN"
4ae5ff5fd8 tools wrapper: introduce the silent WRAPPER_NEEDED config option
Add the WRAPPER_NEEDED silent config option, that can be selected by
components that require it (companion libs so far).
Rely on this config option when deciding to install the wrapper,
instead of checking GMP/MPFR or PPL/CLoog/MPC.
2009-08-30 00:57:40 +02:00
Yann E. MORIN"
b7b6314a81 Merge the C wrapper. 2009-08-30 00:35:58 +02:00
Yann E. MORIN"
d811941c9a config: choose whether to use the shell or the C wrapper
Offer a config choice on whether to isntall the script wrapper, or
the compiled C wrapper. Update docs/overview.txt accordingly.
2009-08-30 00:27:12 +02:00
Yann E. MORIN"
8f051d8ef6 tool wrapper: add initial wrapper coded in C
Add an initial wrapper:
- find the realpath of the tool being called
- add the '.' in front of the tool name
- add the '/lib' dir to the base dir of the tool
- set and export LD_LIBRARY_PATH
- execve the real tool
2009-08-29 18:27:47 +02:00
Yann E. MORIN"
922486d2b1 duma: fix downloading by forcing extension to .tar.gz
Downoading a non-existing file from sourceforge gives you a "200 OK"
and an index.html. As we try to retrieve a .tar.bz2 first, and duma
is bundled in a .tar.gz, we won't get appropriate content, so
just force the extension to avoid the problem.

Thanks to Ingmar Schraub <is@eseco.de> for pointing out the issue.
2009-08-28 11:57:29 +02:00
Jim F
015719a12a glibc: fix build error caused by incorrect variable assignment
During the conversion to using bash arrays, the glibc build script
was improperly converted, and contains an incorrect variable
assignment to the config_options array.
2009-08-24 19:20:57 +02:00
Yann E. MORIN"
4de6139e7e Merge the bash_array branch.
For every components where it makes sense, use bash arrays (instead
of a string with space-separated values) to store the options pased
to ./configure.
2009-08-19 19:52:04 +02:00
Yann E. MORIN"
83a48e12f0 Allow setting --enable-cxx-flags on gcc ./configure
Some setups require one to pass extra CXX flags at the time of ./configure.
Make it easy.
2009-08-19 19:44:45 +02:00
Yann E. MORIN"
8dd4a2de00 Use bash arrays to store binutils config options 2009-08-19 19:44:44 +02:00
Yann E. MORIN"
a72cc670b8 Make glibc's extra_config an array containing ./configure options
Change extra_config from a string to a array of options.
2009-08-19 19:44:43 +02:00
Yann E. MORIN"
59a37160af Make gdb's extra_config an array containing ./configure options
Change extra_config from a string to a array of options.
2009-08-19 19:44:43 +02:00
Yann E. MORIN"
25303fc30a Make dmalloc's extra_config an array containing ./configure options
Change extra_config from a string to a array of options.
2009-08-19 19:44:42 +02:00
Yann E. MORIN"
f255716872 Make gcc's extra_config an array containing ./configure options
Change extra_config from a string to a array of options.
2009-08-19 19:44:42 +02:00
Yann E. MORIN"
3af5465103 Make eglibc's extra_config an array containing ./configure options
Change extra_config from a string to a array of options.
2009-08-19 19:44:30 +02:00
Yann E. MORIN"
e4855367b4 [libc-eglibc] Rewrite part of the code
Rewrite part of the code to better match the rest.
Most notably, rewrite handling of:
  if [ ... ] && [ ... ]
to:
  if [ ... -a ... ]

This has the positive side effect of calling "[" only once, although
"[" is probably a shell built-in.
2009-07-27 22:16:07 +02:00
Yann E. MORIN"
795d135b7f [libc-eglibc] Fix testing for existing files
To test for existing files, use "[ -f blabla ]", not "[ -a blabla ]"
Checking for a file exsitence with "-a" is a bashism.
Althoug we _are_ using bash, it's disturbing as it can be misread as
the 'and' operator. Fix by using "-f".
2009-07-27 22:14:08 +02:00
Yann E. MORIN"
424f64c487 Merge the AVR32 support branch to the default branch. 2009-08-08 22:15:25 +02:00
Oron Peled
b0f5a18c32 [complib:mpfr] Fix building MPFR in some weird cases
The tmul test uses a compiled-in input file in $(srcdir).
The problem is that the Makefile passes it unquoted. The C code
tries to stringify it using clever macros, which may *usually* work.

In my case the source directory was named:
  .../toolchain-powerpc-e500v2-linux-gnuspe-1.0-2.fc10/.../tests
And guess what? During testing I found out the program fails because
it tries to open:
  .../toolchain-powerpc-e500v2-1-gnuspe-1.0-2.fc10/.../tests

Yes, CPP tokenized the macro before stringifying it and not surprisingly
the 'linux' part was converted to 1.
[on Fedora-10: cpp (GCC) 4.3.2 20081105 (Red Hat 4.3.2-7)]

So the attached patch simplify the macros and pass the path as string
from the Makefile.
2009-08-03 00:49:25 +02:00
Yann E. MORIN"
946a86fb67 [config] Merge CONFIG_SHELL selection. 2009-08-03 08:50:56 +02:00
Yann E. MORIN"
33ed1557b6 Merge the queue with all new component versions. 2009-08-02 23:38:37 +02:00
Yann E. MORIN"
961bf299cd [scripts-add-version] Handle gcc 4.4+
Handle gcc-4.4+ when adding a new gcc version.
2009-08-02 23:33:38 +02:00
Yann E. MORIN"
27cdd4367c [config] Allow user to specify custom CONFIG_SHELL
In case the shell the user wants to use as CONFIG_SHELL is located in a
weird place (eg. /opt/bash/bin/bash), or is weirdly named (eg. bash-4),
let the user enter the patch to the shell.
2009-08-02 20:06:44 +02:00
Yann E. MORIN"
d6195c6483 [config] Add bash as a possible CONFIG_SHELL
On some systems and/or for some components, it may be necessary to
explicitly use bash as the shell used by ./configure and Makefiles.
2009-08-02 20:06:06 +02:00
Yann E. MORIN"
a08142a02a [config] Change the way to select the CONFIG_SHELL
Transform the single boolean option to a 'choice' selection
with two options: "sh" and "ash".

This is needed to later add "bash" as override.
2009-08-02 23:43:15 +02:00
Bart vdr. Meulen
7c3dcb42dc fix wrapper script for symlinks
The wrapper script placed around the target binaries when
using the companion libraries does not work for symbolic links
The wrapper scripts needs to follow the links before calling the
actual binary

Signed-off-by: Bart vdr. Meulen <bartvdrmeulen@gmail.com>

---
2009-08-02 16:45:43 +02:00
Bart vdr. Meulen
a183b3f8bc Add g++ to required tools
Because gmp is now always build with --enable-cxx,
g++ has become a required tool

Signed-off-by: Bart vdr Meulen <bartvdrmeulen@gmail.com>

---
2009-08-02 16:45:33 +02:00
Yann E. MORIN"
5a4ac4ed36 [samples] Don't mix canadian samples with non-canadian ones.
- save the canadian smples in their own way, so as not to
  mix non-canadian samples with canadian ones
- list canadian samples with the host information
2009-06-26 19:09:22 +02:00
Yann E. MORIN"
f65cb24909 Cleanup the handling of canadian settings
Bring handling the 'canadian' settings as par with the existing
'cross' settings.
2009-06-26 19:09:22 +02:00
Bart van der Meulen
1a84e201d0 Add support code for the canadian-cross case.
Add implementation for a candadian build option already
present in crosstool in order to build a cross-compiler
where build != host != target

Signed-off-by: Bart van der Meulen <bartvdrmeulen@gmail.com>
2009-06-26 19:09:22 +02:00
Yann E. MORIN"
38916b8bfb [samples] Make saveSample.sh a little bit more generic
Prepare saving canadian samples by making the saveSample.sh script
a little bit more generic, using conditional code-paths (even if
there's currently a single code-path).
2009-06-26 19:09:22 +02:00
Bart van der Meulen
c8c70933f0 Don't use prefix/bin to install the buildtools.
Collect the build tools in a seperate folder in order to prevent accidental
calling our newly build tools.

Signed-off-by: Bart van der Meulen <bartvdrmeulen@gmail.com>
2009-06-26 19:09:22 +02:00
Bart van der Meulen
936286668b Fix MPFR build to recognise the Mingw32 case.
Once we have canadian in place, Mingw32 can be a legitimate host,
so we have to recognise that along with Cygwin.

Also fix recognising Cygwin hosts.

Signed-off-by: Bart van der Meulen <bartvdrmeulen@gmail.com>
2009-06-23 22:57:12 +02:00
Yann E. MORIN"
ecb02cb9dc Use configured shell in all build-tools wrappers
Abide by the user's wish to use dash as shell in
build-tools wrappers, instead of plain /bin/sh.
2009-06-23 22:56:39 +02:00
Bart van der Meulen
f9d93f2b91 Fix creating the .../lib/ directory structure in the non-sysroot case
The symbol link that is created in the sysroot directory only needs
to be made when the cross compiler is build with the sysroot option

Signed-off-by: Bart van der Meulen <bartvdrmeulen@gmail.com>
2009-06-23 22:52:14 +02:00
Yann E. MORIN"
b816a5e6c9 Also set CT_DEBUGROOT_DIR for non sysroot-ed toolchains.
In the non-sysroot-ed case, the debuf-root directory would not be set;
debug tools would have been installed God-only-knows-where...

Spotted by Bart van der Meulen <bartvdrmeulen@gmail.com>.
2009-06-23 22:52:13 +02:00
Yann E. MORIN"
abfd68cbc3 [tools] Update config.guess and config.sub
Update from upstream.
2009-06-23 22:52:13 +02:00
Yann E. MORIN"
4f48f57e86 Remove left-over debug lines.
Remove two lines of code that were commented out and are definitely not used.
2009-06-23 22:49:50 +02:00
Yann E. MORIN"
56a26d84e1 Check paths sanity before they get used.
Don't use the PATHs before they get checked for sanity.
2009-06-22 21:53:09 +02:00
Yann E. MORIN"
f8828f22c3 Better check for spaces in paths
Spaces are evil in paths. Print the path that contains a sapce.
Don't print computed paths, as they'rebased on provided paths,
and don't get space added into them.
2009-06-22 21:51:14 +02:00
Yann E. MORIN"
4cd607512b [functions] Allow newlines (\n) in log messages
Allow caller to log messages with embedded newlines when calling
CT_DoLog and other logging functions (eg. CT_Abort...).
2009-06-22 21:51:13 +02:00
Martin Lund
bfe21badf8 Removed debug line 2009-06-20 19:42:00 +02:00
Martin Lund
b4467e6617 Fix libc config 2009-06-20 18:54:56 +02:00
Martin Lund
8fb846f5b5 Misc AVR32 cleanups. 2009-06-20 17:16:54 +02:00
Yann E. MORIN"
3ffe23e274 [finish-step] Fix the tools wrappers
Use the correct variable when iterating upon the tools
name to correctly link the tools to the wrapper.
2009-06-18 18:55:07 +02:00
Yann E. MORIN
302dd084c2 [gcc] Merge the gcc-4.4 suport to the default branch, from 1407:83083566fdd0 2009-06-17 11:38:04 +02:00
Yann E. MORIN
a7ff05b022 [finish-step] Use local variable in finish-step
When wrapping the tools, use a local variable when iterating.
2009-06-14 22:57:57 +02:00
Martin Lund
6b2b096869 Changed copyright 2009-06-14 22:43:33 +02:00
Yann E. MORIN"
c564be2675 populate: fix installing dynamic linker 'ld.so'
The dynamic linker, ld.so, needs the execute bit to be set.
Detect tht the library being installed is in fact ld.so and
install it with 0755 instead of 0644.

Fix detecting src == dst.

Use a simpler command to copy src -> dst.

Also change echo to printf, get rid of 'echo -n', which is
highly non-portable.


 -------- diffstat follows --------
 /trunk/scripts/populate.in |   76    43    33     0 +++++++++++++++++++++++++++++-----------------------
 1 file changed, 43 insertions(+), 33 deletions(-)
2009-06-11 21:47:19 +00:00
Yann E. MORIN"
a07693b13c /devel/gcc-4.4:
- ./configure: check for 'stat', needing to install the tools wrapper
- wrapper: make it a POSIX-compliant script, restore relocatability
- don't install the wrapper for symlinks

 -------- diffstat follows --------
 /devel/gcc-4.4/configure                  |    1     1     0     0 +
 /devel/gcc-4.4/scripts/build/internals.sh |   22    16     6     0 ++++++++++++++++------
 /devel/gcc-4.4/scripts/wrapper.in         |    5     2     3     0 ++---
 3 files changed, 19 insertions(+), 9 deletions(-)
2009-06-02 21:01:19 +00:00
Yann E. MORIN"
d9e898bdbc /devel/gcc-4.4:
- add a wrapper to correctly set LD_LIBRARY_PATH to find our companion libraries.

 -------- diffstat follows --------
 /devel/gcc-4.4/scripts/build/internals.sh |   19    19     0     0 +++++++++++++++++++
 /devel/gcc-4.4/scripts/wrapper.in         |   15    15     0     0 +++++++++++++++
 2 files changed, 34 insertions(+)
2009-06-02 17:33:04 +00:00
Yann E. MORIN"
d9ba421c78 /devel/gcc-4.4:
- populate.in: typo

 -------- diffstat follows --------
 /devel/gcc-4.4/scripts/populate.in |    2     1     1     0 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
2009-06-02 06:34:11 +00:00
Yann E. MORIN"
1505eb7621 /devel/gcc-4.4:
- build shared CLooG/ppl and MPC libraries, don't build static ones.

 -------- diffstat follows --------
 /devel/gcc-4.4/scripts/build/companion_libs/mpc.sh   |    4     2     2     0 ++--
 /devel/gcc-4.4/scripts/build/companion_libs/cloog.sh |    4     2     2     0 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)
2009-06-01 18:03:23 +00:00
Yann E. MORIN"
f05ecb8360 /devel/gcc-4.4:
- PPL, CLooG/PPL: remove uselessly installed files.

 -------- diffstat follows --------
 /devel/gcc-4.4/scripts/build/companion_libs/ppl.sh   |    3     3     0     0 +++
 /devel/gcc-4.4/scripts/build/companion_libs/cloog.sh |    3     3     0     0 +++
 2 files changed, 6 insertions(+)
2009-06-01 15:53:42 +00:00
Yann E. MORIN"
5b6ee5d9a7 /devel/gcc-4.4:
- fix buildging glibc in //

 -------- diffstat follows --------
 /devel/gcc-4.4/scripts/build/libc/glibc.sh |   25    17     8     0 +++++++++++++++++--------
 1 file changed, 17 insertions(+), 8 deletions(-)
2009-06-01 11:34:57 +00:00
Yann E. MORIN"
637b137512 /devel/gcc-4.4:
- add gcc-4.4.0 patches, vampirised from the Gentoo patchset
- gcc-4.4.0 auto-selects and uses appropriate companion linraries

 -------- diffstat follows --------
 /devel/gcc-4.4/scripts/build/cc/gcc.sh                             |   20    18     2     0 +
 /devel/gcc-4.4/patches/gcc/4.4.0/280-freebsd.patch                 |  188   188     0     0 ++++++++++
 /devel/gcc-4.4/patches/gcc/4.4.0/140-default-format-security.patch |   98    98     0     0 +++++
 /devel/gcc-4.4/patches/gcc/4.4.0/290-freebsd.patch                 |  128   128     0     0 +++++++
 /devel/gcc-4.4/patches/gcc/4.4.0/310-uclibc-conf.patch             |   70    70     0     0 ++++
 /devel/gcc-4.4/patches/gcc/4.4.0/240-libstdc++-pic.patch           |  106   106     0     0 ++++++
 /devel/gcc-4.4/patches/gcc/4.4.0/260-sh-libgcc-stacks.patch        |   50    50     0     0 +++
 /devel/gcc-4.4/patches/gcc/4.4.0/100-alpha-mieee-default.patch     |   48    48     0     0 +++
 /devel/gcc-4.4/patches/gcc/4.4.0/180-libgomp-no-werror.patch       |   24    24     0     0 +
 /devel/gcc-4.4/patches/gcc/4.4.0/170-sparc64-bsd.patch             |   58    58     0     0 +++
 /devel/gcc-4.4/patches/gcc/4.4.0/200-libiberty.h-asprintf.patch    |   30    30     0     0 ++
 /devel/gcc-4.4/patches/gcc/4.4.0/220-libiberty-pic.patch           |   22    22     0     0 +
 /devel/gcc-4.4/patches/gcc/4.4.0/110-trampolinewarn.patch          |   54    54     0     0 +++
 /devel/gcc-4.4/patches/gcc/4.4.0/160-netbsd-symbolic.patch         |   22    22     0     0 +
 /devel/gcc-4.4/patches/gcc/4.4.0/190-flatten-switch-stmt-00.patch  |   48    48     0     0 +++
 /devel/gcc-4.4/patches/gcc/4.4.0/150-default-fortify-source.patch  |   52    52     0     0 +++
 /devel/gcc-4.4/patches/gcc/4.4.0/340-libmudflap-susv3-legacy.patch |   96    96     0     0 +++++
 /devel/gcc-4.4/patches/gcc/4.4.0/120-java-nomulti.patch            |   92    92     0     0 +++++
 /devel/gcc-4.4/patches/gcc/4.4.0/270-sh-pr24836.patch              |   48    48     0     0 +++
 /devel/gcc-4.4/patches/gcc/4.4.0/330-c99-snprintf.patch            |   24    24     0     0 +
 /devel/gcc-4.4/patches/gcc/4.4.0/230-superh-default-multilib.patch |   24    24     0     0 +
 /devel/gcc-4.4/patches/gcc/4.4.0/250-ia64-noteGNUstack.patch       |  158   158     0     0 +++++++++
 /devel/gcc-4.4/patches/gcc/4.4.0/300-pr40105.patch                 |  360   360     0     0 ++++++++++++++++++++
 /devel/gcc-4.4/patches/gcc/4.4.0/210-arm-unbreak-armv4t.patch      |   24    24     0     0 +
 /devel/gcc-4.4/patches/gcc/4.4.0/130-cross-compile.patch           |   78    78     0     0 ++++
 /devel/gcc-4.4/patches/gcc/4.4.0/320-missing-execinfo_h.patch      |   24    24     0     0 +
 /devel/gcc-4.4/config/cc/gcc.in                                    |    1     1     0     0 +
 27 files changed, 1945 insertions(+), 2 deletions(-)
2009-05-27 21:16:01 +00:00
Yann E. MORIN"
5801d8c588 /devel/gcc-4.4:
- crosstool-NG.sh.in: include prefix/lib in LD_LIBRARY_PATH

 -------- diffstat follows --------
 /devel/gcc-4.4/scripts/crosstool-NG.sh.in |    4     4     0     0 ++++
 1 file changed, 4 insertions(+)
2009-05-27 21:08:17 +00:00
Yann E. MORIN"
9a954cd1a2 /devel/gcc-4.4:
- functions: add a utility function that sets and exports LD_LIBRARY_PATH

 -------- diffstat follows --------
 /devel/gcc-4.4/scripts/functions |   30    30     0     0 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)
2009-05-27 21:07:37 +00:00
Yann E. MORIN"
f149116490 /devel/gcc-4.4:
- gcc build script: no longer use the gcc-4.4 snapshot version

 -------- diffstat follows --------
 /devel/gcc-4.4/scripts/build/cc/gcc.sh |   33    13    20     0 +++++++++++++--------------------
 1 file changed, 13 insertions(+), 20 deletions(-)
2009-05-25 20:09:17 +00:00
Yann E. MORIN"
21649be476 /devel/gcc-4.4:
- commonalise the config-knobs that:
  - enable checking the newly built companion libraries
  - enable building the companion libraries for the target

 -------- diffstat follows --------
 /devel/gcc-4.4/scripts/build/companion_libs/ppl.sh   |    2     1     1     0
 /devel/gcc-4.4/scripts/build/companion_libs/mpc.sh   |    2     1     1     0
 /devel/gcc-4.4/scripts/build/companion_libs/gmp.sh   |    4     2     2     0 +-
 /devel/gcc-4.4/scripts/build/companion_libs/cloog.sh |    2     1     1     0
 /devel/gcc-4.4/scripts/build/companion_libs/mpfr.sh  |    4     2     2     0 +-
 /devel/gcc-4.4/config/companion_libs/ppl.in          |   14     0    14     0 ----------
 /devel/gcc-4.4/config/companion_libs/mpc.in          |   13     0    13     0 ----------
 /devel/gcc-4.4/config/companion_libs/gmp.in          |   13     0    13     0 ----------
 /devel/gcc-4.4/config/companion_libs/cloog.in        |   13     0    13     0 ----------
 /devel/gcc-4.4/config/companion_libs/mpfr.in         |   14     0    14     0 ----------
 /devel/gcc-4.4/config/companion_libs.in              |   46    35    11     0 ++++++++++++++++++++++++++--------
 11 files changed, 42 insertions(+), 85 deletions(-)
2009-05-25 19:46:58 +00:00
Yann E. MORIN"
52e72144d7 /devel/gcc-4.4:
- add support for building the MPC library.

 -------- diffstat follows --------
 /devel/gcc-4.4/scripts/build/companion_libs/ppl.sh   |    4     2     2     0 +-
 /devel/gcc-4.4/scripts/build/companion_libs/mpc.sh   |   57    57     0     0 ++++++++++++++++++++++++++++++++++
 /devel/gcc-4.4/scripts/build/companion_libs/cloog.sh |    4     2     2     0 +-
 /devel/gcc-4.4/scripts/crosstool-NG.sh.in            |    3     3     0     0 ++
 /devel/gcc-4.4/steps.mk                              |    1     1     0     0 +
 /devel/gcc-4.4/config/companion_libs/mpc.in          |   32    32     0     0 +++++++++++++++++++
 /devel/gcc-4.4/config/companion_libs.in              |   15    10     5     0 ++++++---
 7 files changed, 107 insertions(+), 9 deletions(-)
2009-05-25 18:22:26 +00:00
Yann E. MORIN"
843a16f70c /devel/gcc-4.4:
- GMP: unconditionnaly build the C++ wrappers and use exceptions

 -------- diffstat follows --------
 /devel/gcc-4.4/scripts/build/companion_libs/gmp.sh |   11     2     9     0 ++---------
 1 file changed, 2 insertions(+), 9 deletions(-)
2009-05-25 17:26:21 +00:00
Yann E. MORIN"
822fb9415e /devel/gcc-4.4:
- add support for building CLooG

 -------- diffstat follows --------
 /devel/gcc-4.4/scripts/build/companion_libs/cloog.sh |   60    60     0     0 ++++++++++++++++++++++++++++++++++
 /devel/gcc-4.4/scripts/addToolVersion.sh             |    3     2     1     0 +-
 /devel/gcc-4.4/scripts/crosstool-NG.sh.in            |    3     3     0     0 ++
 /devel/gcc-4.4/steps.mk                              |    1     1     0     0 +
 /devel/gcc-4.4/config/companion_libs/cloog.in        |   32    32     0     0 ++++++++++++++++++
 /devel/gcc-4.4/config/companion_libs.in              |    1     1     0     0 +
 6 files changed, 99 insertions(+), 1 deletion(-)
2009-05-24 22:04:14 +00:00
Yann E. MORIN"
6c5993d038 /devel/gcc-4.4:
- cleanup the PPL build

 -------- diffstat follows --------
 /devel/gcc-4.4/scripts/build/companion_libs/ppl.sh |    4     2     2     0 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
2009-05-24 22:02:30 +00:00
Yann E. MORIN"
e03219c3d6 /devel/gcc-4.4:
- cleanup GMP build

 -------- diffstat follows --------
 /devel/gcc-4.4/scripts/build/companion_libs/gmp.sh |    2     1     1     0 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
2009-05-24 21:59:08 +00:00
Yann E. MORIN"
6f04a46339 /devel/gcc-4.4:
- build a shared ppl, don't build a static ppl

 -------- diffstat follows --------
 /devel/gcc-4.4/scripts/build/companion_libs/ppl.sh |    7     4     3     0 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
2009-05-24 21:49:30 +00:00
Yann E. MORIN"
3b72d01b52 /devel/gcc-4.4:
- build a shared mpfr, don't build a static mpfr

 -------- diffstat follows --------
 /devel/gcc-4.4/scripts/build/companion_libs/mpfr.sh |    4     2     2     0 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
2009-05-24 21:48:41 +00:00
Yann E. MORIN"
2614b1eb7b /devel/gcc-4.4:
- build a shared gmp, don't build a static gmp

 -------- diffstat follows --------
 /devel/gcc-4.4/scripts/build/companion_libs/gmp.sh |    6     3     3     0 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
2009-05-24 21:46:30 +00:00
Martin Lund"
07a71d8c42 Added support for Atmel AVR32 headers 2009-05-23 18:46:42 +00:00
Martin Lund"
72aea3b682 Temp fix for newlib configure. Updated avr32 crosstool.config. 2009-05-22 20:44:01 +00:00
Martin Lund"
a94b870756 Added initial AVR32 support (bare-metal,newlib) 2009-05-22 14:46:18 +00:00
Yann E. MORIN"
3a85d55aa8 /devel/gcc-4.4:
- add PPL download mirror at the gcc ftp site.

 -------- diffstat follows --------
 /devel/gcc-4.4/scripts/build/companion_libs/ppl.sh |    3     2     1     0 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
2009-05-21 19:07:16 +00:00
Yann E. MORIN"
45747a6453 Merge the uClinux/noMMU stuff back to /trunk:
- merge Linux and uClinux back to a single kernel
- add ARCH_USE_MMU and acquainted config options that
  architectures can auto-select
- make binutils and elf2flt two "Binary utilities" that
  go in a single common sub-{menu,directory} structure

 -------- diffstat follows --------
 /trunk/scripts/build/kernel/uclinux.sh      |    2     0     2     0 -
 /trunk/scripts/build/kernel/linux.sh        |  206   204     2     0 +++++++++++++++++++++++++++++
 /trunk/scripts/build/kernel/linux-common.sh |  198     0   198     0 ----------------------------
 /trunk/scripts/build/binutils.sh            |  232     0   232     0 --------------------------------
 /trunk/scripts/build/elf2flt.sh             |  150     0   150     0 ---------------------
 /trunk/scripts/crosstool-NG.sh.in           |    6     4     2     0 +
 /trunk/config/kernel/linux.in               |  249   249     0     0 +++++++++++++++++++++++++++++++++++
 /trunk/config/kernel/linux.in-common        |  252     0   252     0 -----------------------------------
 /trunk/config/kernel/uclinux.in             |   21     0    21     0 ---
 /trunk/config/target.in                     |   23    22     1     0 +++
 /trunk/config/elf2flt.in                    |   49     0    49     0 -------
 /trunk/config/libc/glibc.in                 |    2     1     1     0
 /trunk/config/libc/eglibc.in                |    2     1     1     0
 /trunk/config/config.in                     |    1     0     1     0 -
 /trunk/config/arch/sh.in                    |    1     1     0     0 +
 /trunk/config/arch/arm.in                   |    2     1     1     0
 /trunk/config/arch/powerpc.in               |    1     1     0     0 +
 /trunk/config/arch/ia64.in                  |    1     1     0     0 +
 /trunk/config/arch/alpha.in                 |    1     1     0     0 +
 /trunk/config/arch/x86.in                   |    1     1     0     0 +
 /trunk/config/arch/mips.in                  |    1     1     0     0 +
 /trunk/config/arch/powerpc64.in             |    1     1     0     0 +
 22 files changed, 489 insertions(+), 913 deletions(-)
2009-05-20 20:13:13 +00:00
Yann E. MORIN"
f759f2676f elf2flt:
- fix white-space damage

 -------- diffstat follows --------
 /trunk/scripts/build/elf2flt.sh |    6     3     3     0 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
2009-05-13 21:00:50 +00:00
Yann E. MORIN"
df07dda46d Merge the /deve/uclinux branch back to /trunk:
- add support for uClinux, the MMU-less ports of Linux.

 -------- diffstat follows --------
 /trunk/scripts/build/kernel/linux.sh      |  100     1    99     0 ---------------
 /trunk/steps.mk                           |    1     1     0     0 +
 /trunk/config/kernel/linux.in             |  247     0   247     0 -------------------------------------
 /trunk/config/kernel.in                   |    2     1     1     0
 /trunk/config/libc/glibc.in               |    2     1     1     0
 /trunk/config/libc/eglibc.in              |    2     1     1     0
 /trunk/config/libc/glibc-eglibc.in-common |    5     5     0     0 +
 /trunk/config/config.in                   |    1     1     0     0 +
 8 files changed, 11 insertions(+), 349 deletions(-)
2009-05-13 20:55:15 +00:00
Yann E. MORIN"
e89072b5a5 Add a new action: show-tuple
- in a directory containing a crosstool-NG configuration,
  prints the tuple of the configured target to stdout.

 -------- diffstat follows --------
 /trunk/Makefile.in             |    4     3     1     0 +++-
 /trunk/scripts/showTuple.sh.in |   30    30     0     0 ++++++++++++++++++++++++++++++
 /trunk/ct-ng.comp              |    2     1     1     0 +-
 /trunk/ct-ng.in                |   10     9     1     0 +++++++++-
 4 files changed, 43 insertions(+), 3 deletions(-)
2009-05-13 18:10:47 +00:00
Yann E. MORIN"
f24796f24a sstrip:
- update the upstream URL, now buildroot has migrated to using git
  instead of svn.

 -------- diffstat follows --------
 /trunk/scripts/build/tools/200-sstrip.sh |   11     8     3     0 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)
2009-05-11 20:45:42 +00:00
Yann E. MORIN"
45ccabcbfb Fix building uClibc:
- fix headers installation

 -------- diffstat follows --------
 /trunk/scripts/build/libc/uClibc.sh |    2     1     1     0 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
2009-05-11 20:19:50 +00:00
Yann E. MORIN"
656d56551e Workaround for "PowerPC-8xx CPU15 errata" (whatever that might be).
Patch by Nye LIU: http://sourceware.org/ml/crossgcc/2009-05/msg00014.html

 -------- diffstat follows --------
 /trunk/patches/eglibc/2_9/100-powerpc-8xx-CPU15-errata.patch |   49    49     0     0 ++++++++++++++++++
 /trunk/scripts/build/libc/eglibc.sh                          |   10     9     1     0 +++-
 2 files changed, 58 insertions(+), 1 deletion(-)
2009-05-07 19:30:32 +00:00
Yann E. MORIN"
7032dea8ba Fix installing uClibc headers for versions prior to 0.9.30.
Fix a comment about installing uClibc.
Automatically enable // build for uClibc versions that can be built in //.

 -------- diffstat follows --------
 /trunk/scripts/build/libc/uClibc.sh |   32    23     9     0 +++++++++++++++++++++++---------
 /trunk/config/libc/uClibc.in        |   12     7     5     0 +++++++-----
 2 files changed, 30 insertions(+), 14 deletions(-)
2009-05-07 18:56:31 +00:00
Yann E. MORIN"
a0cf91e83b Add support for building PPL:
- PPL will be needed to correctly build gcc-4.4+ for the
  GRAPHITE loop optimisation

 -------- diffstat follows --------
 /trunk/scripts/build/companion_libs/ppl.sh |   66    66     0     0 ++++++++++++++++++++++++++++++++++++
 /trunk/scripts/build/companion_libs/gmp.sh |   24    19     5     0 ++++++++++---
 /trunk/scripts/addToolVersion.sh           |    3     2     1     0 +-
 /trunk/scripts/crosstool-NG.sh.in          |    3     3     0     0 ++
 /trunk/steps.mk                            |    1     1     0     0 +
 /trunk/config/companion_libs/ppl.in        |   33    33     0     0 ++++++++++++++++++
 /trunk/config/companion_libs.in            |   22    19     3     0 ++++++++++--
 7 files changed, 143 insertions(+), 9 deletions(-)
2009-05-05 22:04:20 +00:00
Yann E. MORIN"
38c549d748 Prepare for gcc-4.4:
- add 'companion_libs/' to hold all libraries needed to build gcc-4.3+ and gcc-4.4+
- move GMP & MPFR to 'companion_libs/'

 -------- diffstat follows --------
 /trunk/scripts/build/gmp.sh       |   85     0    85     0 ----------------------------
 /trunk/scripts/build/mpfr.sh      |  139     0   139     0 ---------------------------------------------
 /trunk/scripts/addToolVersion.sh  |    4     2     2     0
 /trunk/scripts/crosstool-NG.sh.in |    4     2     2     0
 /trunk/config/companion_libs.in   |   17    10     7     0 +++---
 /trunk/config/gmp_mpfr/gmp.in     |   32     0    32     0 ----------
 /trunk/config/gmp_mpfr/mpfr.in    |   42     0    42     0 --------------
 /trunk/config/config.in           |    2     1     1     0
 /trunk/config/gmp_mpfr.in         |   35     0    35     0 -----------
 9 files changed, 15 insertions(+), 345 deletions(-)
2009-05-03 21:10:15 +00:00
Yann E. MORIN"
ba23a380ce Update the config.{guess,sub} scripts.
-------- diffstat follows --------
 /trunk/scripts/config.guess |    7     5     2     0 +++++--
 /trunk/scripts/config.sub   |    3     2     1     0 ++-
 2 files changed, 7 insertions(+), 3 deletions(-)
2009-04-27 17:05:49 +00:00
Yann E. MORIN"
1805f4e62d There's no longer any reason to require GNU awk:
- the only part that required it (socks proxy settings) is gone,
- all remaining awk scripts are POSIXly correct (or should be).

 -------- diffstat follows --------
 /trunk/configure                     |    5     2     3     0 ++---
 /trunk/Makefile.in                   |    2     0     2     0 --
 /trunk/scripts/build/kernel/linux.sh |    2     1     1     0 +-
 /trunk/scripts/build/internals.sh    |    1     0     1     0 -
 /trunk/scripts/build/mpfr.sh         |    2     1     1     0 +-
 /trunk/scripts/functions             |    4     2     2     0 ++--
 /trunk/scripts/saveSample.sh.in      |    4     2     2     0 ++--
 7 files changed, 8 insertions(+), 12 deletions(-)
2009-04-20 21:10:03 +00:00
Yann E. MORIN"
06b48c1518 Set the execute bit on generated script at build time, not install time.
Do not advertise "make install" when ./configure-d with "--local".

 -------- diffstat follows --------
 /trunk/configure   |    8     5     3     0 +++++---
 /trunk/Makefile.in |   10     3     7     0 +++-------
 2 files changed, 8 insertions(+), 10 deletions(-)
2009-04-20 19:57:16 +00:00
Yann E. MORIN"
9643bcbb55 Simplify the mirror settings.
-------- diffstat follows --------
 /trunk/scripts/functions         |    7     3     4     0 ++---
 /trunk/config/global/download.in |   60    14    46     0 +++++++++++-----------------------------------
 2 files changed, 17 insertions(+), 50 deletions(-)
2009-04-19 16:58:21 +00:00
Yann E. MORIN"
15e04fe2de Get rid of the proxy settings, once and for all.
They have nothing to do in here, just let the user
configure his/her system appropriately.

 -------- diffstat follows --------
 /trunk/scripts/build/libc/eglibc.sh |    1     0     1     0 -
 /trunk/scripts/functions            |  100     0   100     0 -----------------------------
 /trunk/config/global/download.in    |  148     0   148     0 -------------------------------------------
 3 files changed, 249 deletions(-)
2009-04-19 16:34:59 +00:00
Yann E. MORIN"
9be02f047e Use "${awk}", not gawk.
/trunk/scripts/build/kernel/linux.sh |    2     1     1     0 +-
 /trunk/scripts/build/mpfr.sh         |    2     1     1     0 +-
 /trunk/scripts/functions             |    4     2     2     0 ++--
 3 files changed, 4 insertions(+), 4 deletions(-)
2009-04-06 20:27:17 +00:00
Yann E. MORIN"
529d2f6cbe Cleanup the tic build used for native ncurses build, itself needed for native gdb build.
/trunk/scripts/build/debug/300-gdb.sh |   24    12    12     0 ++++++++++++------------
 /trunk/scripts/build/internals.sh     |    1     0     1     0 -
 2 files changed, 12 insertions(+), 13 deletions(-)
2009-03-30 21:17:21 +00:00
Yann E. MORIN"
edf2be89a1 Remove test files.
/trunk/scripts/crosstool-NG.sh.in |    6     4     2     0 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)
2009-03-29 21:05:13 +00:00
Yann E. MORIN"
91a189c7ba Only create the state dir if asked for a restartable build:
- introduce the config dir, where components can store their config files
- move the munged uClibc config file to the config dir
- now, the state dir really is an indication that a build can be restarted

Thanks to Groleo Marius <groleo@gmail.com> for spotting the inconsistency
of the state dir usage, and suggesting this change.

 /trunk/scripts/build/libc/uClibc.sh |    6     3     3     0 +++---
 /trunk/scripts/crosstool-NG.sh.in   |    9     7     2     0 +++++++--
 /trunk/scripts/functions            |   15    12     3     0 ++++++++++++---
 3 files changed, 22 insertions(+), 8 deletions(-)
2009-03-27 23:40:07 +00:00
Yann E. MORIN"
3a181fe514 Detect and abort on partially patched component.
/trunk/scripts/functions |   18    15     3     0 +++++++++++++++---
 1 file changed, 15 insertions(+), 3 deletions(-)
2009-03-27 21:30:47 +00:00
Yann E. MORIN"
b79ffe16c6 Refuse to build/install on file systems that are *not* case-sensitive.
/trunk/scripts/crosstool-NG.sh.in |    9     9     0     0 +++++++++
 1 file changed, 9 insertions(+)
2009-03-27 18:53:54 +00:00
Yann E. MORIN"
6501c29fd1 Merge r1432:1437 from /branches/newlib into /trunk :
- under bare-metal, the user is responsible for providing a gdbserver stub (r1433)
- install a CT_TARGET-cc -> CT_TARGET-gcc symlink for the core gcc (r1434)
- allow broader dependency in generated config files (r1435, r1436)
- prepare C library menuconfig for using a C library under bare-metal (r1437)

 /trunk/scripts/build/cc/gcc.sh  |    4     4     0     0 ++++
 /trunk/config/debug/gdb.in      |    5     5     0     0 +++++
 /trunk/config/libc/glibc.in     |    1     1     0     0 +
 /trunk/config/libc/uClibc.in    |    1     1     0     0 +
 /trunk/config/libc/eglibc.in    |    2     1     1     0 +-
 /trunk/config/config.mk         |   20     8    12     0 ++++++++------------
 /trunk/config/arch/sh.in        |    2     1     1     0 +-
 /trunk/config/arch/ia64.in      |    2     1     1     0 +-
 /trunk/config/arch/powerpc64.in |    2     1     1     0 +-
 /trunk/config/libc.in           |    4     0     4     0 ----
 10 files changed, 23 insertions(+), 20 deletions(-)
2009-03-26 18:58:13 +00:00
Yann E. MORIN"
355586027b Add support for building toolchains with gcc-4.4 snapshots.
Initial patch by Dmitry PLOTNIKOV: http://sourceware.org/ml/crossgcc/2009-03/msg00053.html
  It [the toolchain] uses current ct-ng (nightly snapshot 20090324, latest
  release 1.3.2 work also), glibc 2.9 (from CVS), binutils 2.19 and latest
  snapshot of GCC 4.4.0 (as of March 20, 2009).

  We have successfully built linux kernel 2.6.29 and a lot of other stuff
  with this toolchain.

  Here's the patch that adds GCC 4.4.0 to the ct-ng menu and enables it to
  download a 4.4.0 snapshot from ftp.

Patch was adpated by me, mostly to better fit the configuration layout.

 /trunk/scripts/build/cc/gcc.sh |   34    22    12     0 ++++++++++++++++++++++------------
 /trunk/config/cc/gcc.in        |   35    30     5     0 ++++++++++++++++++++++++++++++-----
 2 files changed, 52 insertions(+), 17 deletions(-)
2009-03-26 18:47:34 +00:00