Better explain why populate exists.

New entry for how to add a new component version.
Some homogeneisation in style.

 /trunk/docs/overview.txt |   44    30    14     0 ++++++++++++++++++++++++++++++--------------
 1 file changed, 30 insertions(+), 14 deletions(-)
This commit is contained in:
Yann E. MORIN" 2008-05-02 21:53:09 +00:00
parent 5b3e2c8fd8
commit f29a7d4335

View File

@ -146,7 +146,7 @@ where you want it installed, what architecture and specific processor it
will support, the version of the components you want to use, etc... The will support, the version of the components you want to use, etc... The
value for those options are then stored in a configuration file. value for those options are then stored in a configuration file.
The configurator works the same way you configure your Linux kernel.It is The configurator works the same way you configure your Linux kernel. It is
assumed you now how to handle this. assumed you now how to handle this.
To enter the menu, type: To enter the menu, type:
@ -177,9 +177,8 @@ CT_VERSION:
The version of crosstool-NG you are using. Not much use for you, but it's The version of crosstool-NG you are using. Not much use for you, but it's
there if you need it. there if you need it.
Interesting config options | Interesting config options |
---------------------------* ---------------------------+
CT_LOCAL_TARBALLS_DIR: CT_LOCAL_TARBALLS_DIR:
If you already have some tarballs in a direcotry, enter it here. That will If you already have some tarballs in a direcotry, enter it here. That will
@ -221,7 +220,7 @@ CT_BROKEN:
Show broken versions or tools. Some usefull tools are currently broken: they Show broken versions or tools. Some usefull tools are currently broken: they
won't compile, run, or worse, cause defects when running. But if you are won't compile, run, or worse, cause defects when running. But if you are
brave enough, you can try and debug them. They are hidden behind CT_BROKEN, brave enough, you can try and debug them. They are hidden behind CT_BROKEN,
which itself is hidden behind EXPERIMENTAL. which itself is hidden behind CT_EXPERIMENTAL.
Re-building an existing toolchain | Re-building an existing toolchain |
----------------------------------+ ----------------------------------+
@ -258,9 +257,8 @@ In any case, you can get some terse help. Just type:
or: or:
man 1 ct-ng man 1 ct-ng
Stopping and restarting a build | Stopping and restarting a build |
-------------------------------* --------------------------------+
If you want to stop the build after a step you are debugging, you can pass the If you want to stop the build after a step you are debugging, you can pass the
variable STOP to make: variable STOP to make:
@ -288,16 +286,14 @@ Note that in order to restart a build, you'll have to say 'Y' to the config
option CT_DEBUG_CT_SAVE_STEPS, and that the previous build effectively went option CT_DEBUG_CT_SAVE_STEPS, and that the previous build effectively went
that far. that far.
Testing all toolchains at once | Testing all toolchains at once |
-------------------------------* -------------------------------+
You can test-build all samples; simply call: You can test-build all samples; simply call:
ct-ng regtest ct-ng regtest
Overriding the number of // jobs | Overriding the number of // jobs |
---------------------------------* ---------------------------------+
If you want to override the number of jobs to run in // (the -j option to If you want to override the number of jobs to run in // (the -j option to
make), you can either re-enter the menuconfig, or simply add it on the command make), you can either re-enter the menuconfig, or simply add it on the command
@ -328,6 +324,17 @@ or
make CROSS_COMPILE=your-target-tuple- make CROSS_COMPILE=your-target-tuple-
and so on... and so on...
It is strongly advised not to use the toolchain sys-root directory as an
install directory for your programms/packages. If you do so, you will not be
able to use your toolchain for another project. It is even strongly advised
that your toolchain is chmod-ed to read-only once successfully build, so that
you don't go polluting your toolchain with your programms/packages' files.
Thus, when you build a program/package, install it in a separate directory,
eg. /your/root. This directory is the /image/ of what would be in the root file
system of your target, and will contain all that your programms/packages have
installed.
When your root directory is ready, it is still missing some important bits: the When your root directory is ready, it is still missing some important bits: the
toolchain's libraries. To populate your root directory with those libs, just toolchain's libraries. To populate your root directory with those libs, just
run: run:
@ -429,7 +436,7 @@ Internally, crosstool-NG is script-based. To ease usage, the frontend is
Makefile-based. Makefile-based.
Makefile front-end | Makefile front-end |
-------------------* -------------------+
The entry point to crosstool-NG is the Makefile script "ct-ng". Calling this The entry point to crosstool-NG is the Makefile script "ct-ng". Calling this
script with an action will act exactly as if the Makefile was in the current script with an action will act exactly as if the Makefile was in the current
@ -453,7 +460,7 @@ rules are disabled: installing with --local would triger those rules, and mconf
was unbuildable. was unbuildable.
Kconfig parser | Kconfig parser |
---------------* ---------------+
The kconfig language is a hacked version, vampirised from the toybox project The kconfig language is a hacked version, vampirised from the toybox project
by Rob LANDLEY (http://www.landley.net/code/toybox/), itself coming from the by Rob LANDLEY (http://www.landley.net/code/toybox/), itself coming from the
@ -466,7 +473,7 @@ use the same crosstool-NG installation, and most notably, the same set of
patches. patches.
Architecture-specific | Architecture-specific |
----------------------* ----------------------+
An architecture is defined by: An architecture is defined by:
@ -555,8 +562,17 @@ The "functions" file API:
- default to: - default to:
see above. see above.
Adding a new version of a conponent |
------------------------------------+
When a new component, such as the Linux kernel, gcc or any other is released,
adding the new version to crosstool-NG is quite easy. There is a script that
will do all that for you:
tools/addToolVersion.sh
Run it with no option to get some help.
Build scripts | Build scripts |
--------------* --------------+
To Be Written later... To Be Written later...