Commit Graph

65 Commits

Author SHA1 Message Date
Yann E. MORIN"
a586208ab4 In case of error, the error message would be printing in subshells, thus printing as many error message as there were subshells.
Limit printing this message only in the top-level shell.

 /trunk/scripts/functions |    2     2     0     0 ++
 1 file changed, 2 insertions(+)
2008-07-26 09:22:42 +00:00
Yann E. MORIN"
702532d61d While retrieving files, propagate the preferred extension down to sub-functions.
/trunk/scripts/functions |    8     5     3     0 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)
2008-07-25 10:02:43 +00:00
Yann E. MORIN"
adc71fffcc When retrieving a file, allow preferred extension to be whatever starts with a dot, and not only one of .tar.bz2 .tar.gz .tgz or .tar.
/trunk/scripts/functions |    5     3     2     0 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
2008-07-24 06:42:29 +00:00
Yann E. MORIN"
2f6bd7b794 Introduce using a LAN mirror for retrieving tarballs.
/trunk/scripts/functions         |   40    36     4     0 ++++++++++++-
 /trunk/config/global/download.in |  146   115    31     0 ++++++++++++++++++++++++++++++++++++----------
 2 files changed, 151 insertions(+), 35 deletions(-)
2008-07-19 22:45:17 +00:00
Yann E. MORIN"
e377769fb1 Catching a double fault is doomed... Don't take action.
Simplify CT_DoExecLog: it does not support affectations prior to the command, anyway.

 /trunk/scripts/functions |    5     1     4     0 +----
 1 file changed, 1 insertion(+), 4 deletions(-)
2008-07-14 21:56:58 +00:00
Yann E. MORIN"
4fcab60674 Don't print double-faults.
/trunk/scripts/functions |    3     3     0     0 +++
 1 file changed, 3 insertions(+)
2008-07-14 15:22:53 +00:00
Yann E. MORIN"
2a884e354a Log the command being run when calling CT_DoExecLog, which is kinda the point of CT_DoExecLog, anyway...
/trunk/scripts/functions |    2     1     1     0 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
2008-07-14 15:20:11 +00:00
Yann E. MORIN"
e171928b08 Also log the command being executed when calling CT_DoExecLog (no user yet).
/trunk/scripts/functions |    5     3     2     0 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
2008-07-13 10:44:26 +00:00
Yann E. MORIN"
6e2180c1f2 Print "Build completed" only if not in error, not the other way around.
/trunk/scripts/functions |    2     1     1     0 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
2008-06-20 11:58:13 +00:00
Yann E. MORIN"
e66d06e8e3 Only print "Build completed" if build was successful.
Print the time at which at step was finished (along with the time it took to complete).

 /trunk/scripts/functions |    7     5     2     0 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)
2008-06-19 15:31:04 +00:00
Yann E. MORIN"
91c6e16780 Add a new helper function: CT_DoExecLog.
It is similar to CT_DoLog, but instead of printing its arguments, it uses them as a command, and logs the output of that command.

 /trunk/scripts/functions |    8     8     0     0 ++++++++
 1 file changed, 8 insertions(+)
2008-05-25 22:25:50 +00:00
Yann E. MORIN"
9d2e7e0b70 Introduce target-specific LDFLAGS, the same way we have CFLAGS for the target.
It seems to be helping gcc somewhat into telling the correct endianness to ld that sticks with little endian even when the target is big (eg armeb-unknown-linux-uclibcgnueabi).
There's still work to do, especially finish the gcc part that is not in this commit.

 /trunk/scripts/functions |    9     7     2     0 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)
2008-05-21 22:00:52 +00:00
Yann E. MORIN"
0c4633c37f Get rid of all command (which is a bashism), and replace them with $(command), which is POSIX.
Get rid of all remaining \"text\" in log messages and replace them with 'text'.
Optimise the progress bar, should go un-noticed at log level DEBUG and below.

 /trunk/scripts/build/tools/200-sstrip.sh  |   16     8     8     0 ++--
 /trunk/scripts/build/libc_glibc.sh        |   50    25    25     0 +++++++-------
 /trunk/scripts/build/libc_uClibc.sh       |    4     2     2     0
 /trunk/scripts/build/debug/100-dmalloc.sh |    2     1     1     0
 /trunk/scripts/build/debug/400-ltrace.sh  |    2     1     1     0
 /trunk/scripts/build/debug/300-gdb.sh     |    8     4     4     0 +-
 /trunk/scripts/build/debug/200-duma.sh    |    6     3     3     0 +-
 /trunk/scripts/build/kernel_linux.sh      |   30    15    15     0 ++++----
 /trunk/scripts/build/cc_gcc.sh            |   14     7     7     0 ++--
 /trunk/scripts/crosstool.sh               |   54    27    27     0 ++++++++--------
 /trunk/scripts/functions                  |  128    64    64     0 ++++++++++++++++++------------------
 /trunk/scripts/saveSample.sh              |    4     2     2     0
 /trunk/scripts/tarball.sh.broken          |   20    10    10     0 +++---
 /trunk/tools/addToolVersion.sh            |    8     4     4     0 +-
 /trunk/tools/populate.in                  |   18     9     9     0 ++--
 15 files changed, 182 insertions(+), 182 deletions(-)
2008-05-20 21:32:39 +00:00
Yann E. MORIN"
7007cc858f Introduce a new option to overide components' config.{gues,sub} with the one provided with crosstool-NG.
Fix typoes in a comment.

 /trunk/scripts/functions                 |   13    11     2     0 +++++++++++--
 /trunk/config/global/download_extract.in |   20    20     0     0 ++++++++++++++++++++
 2 files changed, 31 insertions(+), 2 deletions(-)
2008-05-15 20:45:18 +00:00
Yann E. MORIN"
0dad6065a6 Export endianness CFLAGS.
Fix endianness CFLAGS for MIPS.

 /trunk/scripts/functions   |    1     1     0     0 +
 /trunk/arch/mips/functions |    6     6     0     0 ++++++
 2 files changed, 7 insertions(+)
2008-05-14 17:49:52 +00:00
Yann E. MORIN"
edbd3bee45 Fix building uClibc-based, soft-float toolchains by correctly setting float support in the uClibc config file.
Correctly unset float CFLAGS and configure arguments before setting them.

 /trunk/scripts/build/libc_uClibc.sh |    4     2     2     0 ++--
 /trunk/scripts/functions            |    4     2     2     0 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)
2008-05-14 17:39:18 +00:00
Yann E. MORIN"
770bed1f53 Add a new option to set connection timeout while downloading.
/trunk/scripts/functions                 |   16     8     8     0 ++++++++--------
 /trunk/config/global/download_extract.in |   25    25     0     0 +++++++++++++++++++++++++
 2 files changed, 33 insertions(+), 8 deletions(-)
2008-05-06 20:30:49 +00:00
Yann E. MORIN"
2dffee230a Fix a comment.
functions |    6     3     3     0 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
2008-04-13 18:25:30 +00:00
Yann E. MORIN"
b3841f0aa9 Matthias Kaehlcke <matthias@kaehlcke.net> reported hanged downloads on his
network, most probably due to proxies. Have downloaders (wget and curl)
timeout on too slow connections (they don't by default).

 scripts/functions |   17    12     5     0 ++++++++++++-----
 1 file changed, 12 insertions(+), 5 deletions(-)
2008-04-13 18:16:58 +00:00
Yann E. MORIN"
07fa611771 Robet P. J. DAY: typoes. 2008-02-14 22:44:34 +00:00
Yann E. MORIN"
72e58fb2a3 Fix a long standing bug when setting compiler flags. 2008-01-16 21:51:18 +00:00
Yann E. MORIN"
5f568e5557 Fix by "Arvid Brodin" <Arvid.Brodin@enea.com> to CFLAGS coming from CT_ARCH_TUNE.
Thanks for spotting this one! ;-)
2007-10-30 19:13:51 +00:00
Yann E. MORIN"
dd9e2b9602 ARM EABI is now working for little endian ARM targets.
Big endian is still missing, though...
2007-09-16 17:59:18 +00:00
Yann E. MORIN"
3f09a4d4c6 Further improve the architecture-specific framework.
Apply this framework into building of glibc and gcc.

(Whoo! 500th commit! Yeah!)
2007-09-15 21:44:18 +00:00
Yann E. MORIN"
9501e62afa Further expand the architecture-specific function: add CT_KERNEL_ARCH building. 2007-09-14 21:50:30 +00:00
Yann E. MORIN"
60b0bb1bab Migrate all supported architectures to use the architecture-specific framework. 2007-09-14 21:17:59 +00:00
Yann E. MORIN"
d409c9fd1a Merge from branches/ia64@476 : add ia64 preliminary support. 2007-09-11 17:24:09 +00:00
Yann E. MORIN"
07549c00fb Use symlinks to the localy stored tarballs rather than copying them.
If saving tarballs to local storage is selected, move newly downloaded tarballs there and symlink.
2007-09-08 19:00:45 +00:00
Yann E. MORIN"
0bee99ed38 Add a patch to enqable NPTL build on ARM OABI with glibc-2.6.1.
Fix a comment.
2007-09-06 12:38:52 +00:00
Yann E. MORIN"
1b80955d74 Fix restoring the environment. 2007-08-16 12:13:45 +00:00
Yann E. MORIN"
09f0dcc66f Change "triplet" (target triplet) to "tuple". That sounds better!
Document overriding the number of // jobs.
Some small documentation fixes.
2007-08-15 16:18:35 +00:00
Yann E. MORIN"
a2323d410a Fix a small typo when extracting non-compressed steps.
Have a go for a sane handlign of tar options and extensions.
2007-08-12 15:18:09 +00:00
Yann E. MORIN"
7ee3cc8bc9 Fix saving the environment. Thanks to Mark Vels <Mark.Vels@fundem.net> for pointed it out! 2007-08-12 08:43:56 +00:00
Yann E. MORIN"
7131764f9c Remove any reference to libfloat. That has gone once and for all.
Rationale:
Most of the time, soft-float problems are caused by this sucker of gcc:
it has support for soft float for all of the targets I've tried so far,
but does not activate this code until you dwelve into half a dozen of
files to make it accept to build and link the support code...

So, yes: gcc has soft-float support. And again, yes: gcc is a sucker.
2007-07-30 20:02:13 +00:00
Yann E. MORIN"
d995e22025 Add an option to save downloaded tarballs to local tarballs directory.
Sanitise CT_GetFile.
Change some messages (Copying -> Retrieving).
2007-07-15 17:00:30 +00:00
Yann E. MORIN"
a464eeecda Get rid of the legacy local variable got_it.
Allow to download files without extension.
Allow to specify a preffered extension when downloading a file.
2007-07-12 19:52:09 +00:00
Yann E. MORIN"
1e7411cce7 Test for curl or wget only once, not at each download. 2007-07-12 19:20:36 +00:00
Yann E. MORIN"
674ee531e6 Silence "which" being verbose in some distros. (eg. Mandriva's which spawns "foobar was not found in /bin:/usr/bin:...." directly on stderr) 2007-07-07 09:58:14 +00:00
Yann E. MORIN"
26713d4210 Merge the build system to trunk: ct-ng is now installable:
- ./configure --prefix=/some/place
 - make
 - make install
 - export PATH="${PATH}:/some/place/bin"
 - ct-ng <action>
2007-07-01 19:04:20 +00:00
Yann E. MORIN"
5e07f7cfc3 scripts/functions is responsible for initiating the log file.
Users of the log facility are in charge to use, move, delete this log file, now.
2007-06-16 22:23:53 +00:00
Yann E. MORIN"
0b17dd664e When searching a matching extension for a file, also check for the empty extension. 2007-06-16 18:04:05 +00:00
Yann E. MORIN"
6d932e31d8 Messages from the downloaders should be tagged ALL, not DEBUG. 2007-06-01 16:20:20 +00:00
Yann E. MORIN"
1bb7c90a8d Small fix in the log level when dumping the last messages (elapsed time). 2007-05-29 19:56:21 +00:00
Yann E. MORIN"
e830653d1b Don't start a state restoration if it is not available.
Fortuitly discovered that $SECONDS is inherited from shell to sub-shells. Good!
2007-05-28 20:57:40 +00:00
Yann E. MORIN"
de5df0533c Merge the NPTL stuff.
That still leaves the linuxthreads stuff broken, but it was just before. I don't care anyway. Time to fix that later...
2007-05-27 20:22:06 +00:00
Yann E. MORIN"
266e38cc13 Add the possibility to stop after a specified step.
Update the Makefile help and the documentation accordingly.
2007-05-25 19:30:42 +00:00
Yann E. MORIN"
b521e3418d In CT_Abort(), don't send output to stderr. Let the log facility handle where things should go. 2007-05-23 21:08:24 +00:00
Yann E. MORIN"
266a81de2c Sanitise CT_DoBuildTargetTriplet a bit. 2007-05-23 20:49:02 +00:00
Yann E. MORIN"
cb0d1fef8c Implement a restart facility.
If you select to debug ct-ng, then you have two new options:
 - DEBUG_CT_PAUSE_STEPS : pause between every steps,
 - DEBUG_CT_SAVE_STEPS  : save state between every steps.
To restart a saved state, just set the RESTART make variable when calling make:
  - make RESTART=<step_name>
2007-05-22 20:46:07 +00:00
Yann E. MORIN"
4fb8055bf7 Ah! I finally have a progress bar that doesn't stall the build!
- pipe size in Linux is only 8*512=4096 bytes
 - pipe size is not setable
 - when the feeding process spits out data faster than the eating
   process can read it, then the feeding process stalls after 4KiB
   of data sent to the pipe
 - for us, the progress bar would spawn a sub-shell every line,
   and the sub-shell would in turn spawn a 'date' command.
   Which was sloooww as hell, and would cause some kind of a
   starvation: the pipe was full most of the time, and the
   feeding process was stalled all this time.

Now, we use internal variables and a little hack based onan offset
to determine the elapsed time. Much faster this way, but still
CPU-intensive.
2007-05-20 13:48:26 +00:00