Commit Graph

55 Commits

Author SHA1 Message Date
Yann E. MORIN"
60b7c724bd Call architecture-specific functions from all scripts needing them. 2007-09-16 08:52:26 +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"
8ed77399de We don't support Cygwin yet, no point in having quirks in. 2007-09-15 08:40:07 +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"
7b70a704e0 Add the framework to have architecture-specific configuration and functions.
API is not yet defined.
2007-09-14 17:43:16 +00:00
Yann E. MORIN"
ae7e017380 Small eye candy fix. 2007-09-14 17:29:39 +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"
54cca9f2ba Add the possibility to force the number of // jobs without reconfiguring. 2007-08-15 14:59:37 +00:00
Yann E. MORIN"
e58af8f79e Get rid of the core cc selection. It is now the same as the final compiler. 2007-08-15 10:14:43 +00:00
Yann E. MORIN"
ab8763bedd Introduce new config option: CT_TARGET_ALIAS_SED_EXPR
This option is used as a sed expression to pass onto CT_TARGET to create an alias.
2007-08-07 19:40:38 +00:00
Yann E. MORIN"
feb0328d7a Make use of setsid to spawn removal processes: we don't want the rm's to stop if the main script fails and ends before all directories were removed. 2007-08-07 18:05:41 +00:00
Yann E. MORIN"
72caaf7717 Revert previous spurious commit. 2007-08-07 17:08:13 +00:00
Yann E. MORIN"
f1741dc507 Fix the Makefile.in to correctly remove generated documentation. 2007-08-07 17:07:39 +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"
a69e51dc7c MAKEFLAGS was leaking into some components build system (dmalloc, for example). This fixes it. 2007-07-23 19:49:35 +00:00
Yann E. MORIN"
3f4ac101f2 When isntalling aliases, send symlinks creation to CT_DEBUG log level. 2007-07-17 21:41:39 +00:00
Yann E. MORIN"
1a32a0fbbc Remove the symlinks to the build/host tools earlier. 2007-07-17 21:38:35 +00:00
Yann E. MORIN"
75fdf70a6c Print a message when installing populate. 2007-07-14 13:09:51 +00:00
Yann E. MORIN"
7eeab77560 Add a test for lynx (needed to download sstrip.c from buildroot). 2007-07-13 10:26:30 +00:00
Yann E. MORIN"
1f16f7a6f7 Add a utility to populate a root directory with libraries from the toolchain. 2007-07-08 17:44:59 +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"
9265403b8b Get rid of eclipse fiels once and for all.
Homogenise the references to crosstool-NG:
  - the project is named "crosstool-NG"
  - the front-end is named "ct-ng"
  - don't use shortcuts (such as "ct-ng" to stand for "crosstool-NG")
Default action is to print help.
Don't speak of make rules when dumping help, just speak of actions.
2007-07-02 19:40:54 +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"
7746415b7d The log file is no longer configurable: it is always "${CT_PREFIX_DIR}/build.log".
Add an option to compress the log file upon successfull build.
Make rendering the toolchain read-only optional.
A few eye-candy fixes.
2007-06-17 14:51:37 +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"
c3badb0b8a Be a little more explicit when the user wants to restart a non-restartable build. 2007-06-02 15:50:45 +00:00
Yann E. MORIN"
88b6a540e3 Revert revision 201: renaming the two cc_core passes was a bad idea. 2007-06-02 08:13:13 +00:00
Yann E. MORIN"
4d84cd7db1 Rename two steps to their real names:
- cc_core_pass_1 is really cc_core_static,
 - cc_core_pass_2 is really cc_core_shared.
2007-06-01 20:06:22 +00:00
Yann E. MORIN"
51554bf237 Introduce the notion of tols facilities (none so far, sstrip coming right away...). 2007-06-01 16:55:33 +00:00
Yann E. MORIN"
2f451b0094 Fix and enhance the STOP/RESTART facility. 2007-05-28 21:33:35 +00:00
Yann E. MORIN"
080d42255c Forgot to remove all build system tools from the generated toolchain. 2007-05-27 20:23:41 +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"
e49e7c80a2 In the non-canadian case, also force the build system. 2007-05-24 19:00:26 +00:00
Yann E. MORIN"
a7a625877c Be verbose when making build system tools available, and when access is removed. Log this to DEBUG.
Remove last remnants of color scheme.
Small fixes to some comments.
2007-05-22 21:16:17 +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
Yann E. MORIN"
361c617308 Correctly handle the libfloat case: download, extract and patch sub-actions.
Small improvement in messages in scipts/functions when retrieving a file.
2007-05-19 13:10:11 +00:00
Yann E. MORIN"
4f4aa3cfb5 Remove even more documentation. 2007-05-18 15:48:11 +00:00
Yann E. MORIN"
8d3f0a8781 Debug facilities:
- add a framework to easily add new ones
  - add gdb as a first debug facility
  - add patches for gdb
After the kernel checked its installed headers, clean up the mess of .checked.* files.
Reorder scripts/crosstool.sh:
  - dump the configuration early
  - renice early
  - get info about build system early, when setting up the environment
  - when in cross or native, the host tools are those of the build system, and only in this case
  - elapsed time calculations moved to scripts/functions
Remove handling of the color: it's gone once and for all.
Update tools/addToolVersion.sh:
  - handle debug facilities
  - commonalise some code
  - remove dead tools (cygwin, tcc)
Point to my address for bug reports.
2007-05-17 16:22:51 +00:00
Yann E. MORIN"
9ce8af9fa5 Oupsss... Didn't save scripts/crosstool.sh prior to comiting. :-( 2007-05-13 21:12:56 +00:00
Yann E. MORIN"
4ef6286f11 Remove dead entries for components not yet integrated: cygwin kernel, tcc...
Some fixups in config entries, to avoid warnings when parsed by the kconfig parser.
2007-05-13 21:11:27 +00:00
Yann E. MORIN"
7ed70a0028 Correctly handle the version string, defined in a single place now.
Fix and update README.
2007-05-13 19:03:49 +00:00
Yann E. MORIN"
a845d72881 Update the way we handle directories supplied by the user:
- the tarball directory is considered as a local copy, and tarballs are copied to a working area,
 - the sources and build directories (CT_SRC_DIR and CT_BUILD_DIR) are now computed, and no longer an option,
 - the build dir has been renamed from 'build' to 'targets'.
That should ease preparing a tarball of the resulting target.
2007-05-10 21:33:35 +00:00
Yann E. MORIN"
d4bbd9ff11 libfloat is a component by itself, not a sup-part of the C library. 2007-05-09 18:55:35 +00:00
Yann E. MORIN"
56b73046a4 Again, some progress bar optimisation. 2007-05-09 13:11:04 +00:00
Yann E. MORIN"
823a283d19 Hop, a somewhat more efficient progress bar, less CPU consuming, if that was a problem :-)
(a litlle recreation while toochains are building...)
2007-05-08 20:41:08 +00:00
Yann E. MORIN"
9bed636293 Beautify the progress bar. 2007-05-08 20:24:26 +00:00
Yann E. MORIN"
8a2b17ab5e Huge fixes to glibc build, so that we can build at least (and at last):
- use ports addon even when installing headers,
 - use optimisation (-O) when installing headers, to avoid unnecessary warnings (thanks Robert P. J. DAY for pointing this out!),
 - lowest kernel version to use is only X.Y.Z, not X.Y.Z.T,
 - a bit of preparations for NPTL (RSN I hope),
 - fix fixing the linker scripts (changing the backup file is kind of useless and stupid);

Shut uClibc finish step: there really is nothing to do;

Add a patch for glibc-2.3.6 weak aliases handling on some archs (ARM and ALPHA at least);

Did not catch the make errors: fixed the pattern matching in scripts/functions;

Introduce a new log level, ALL:
 - send components' build messages there,
 - DEBUG log level is destined only for crosstool-NG debug messages,
 - migrate sub-actions to use appropriate log levels;

Update the armeb-unknown-linux-gnu sample:
 - it builds!
 - uses gcc-4.0.4 and glibc-2.3.6,
 - updated to latest config options set.
2007-05-08 17:48:32 +00:00
Yann E. MORIN"
b332ed5ab6 Print the elapsed time alongside with the progress bar, such as below:
[02:27] \
2007-05-08 12:54:06 +00:00