1.1 --- a/docs/overview.txt Sat Jun 02 08:13:13 2007 +0000
1.2 +++ b/docs/overview.txt Sun Jun 17 12:11:16 2007 +0000
1.3 @@ -84,10 +84,73 @@
1.4 Generation, as many other comunity projects do, and as a wink at the TV series
1.5 "Star Trek: The Next Generation". ;-)
1.6
1.7 -_____________
1.8 - /
1.9 -Operation /
1.10 -__________/
1.11 +____________________________
1.12 + /
1.13 +Configuring crosstool-NG /
1.14 +_________________________/
1.15 +
1.16 +crosstool-NG is configured the same way you configure your Linux kernel: by
1.17 +using a curses-based menu. It is assumed you now how to handle this.
1.18 +
1.19 +To enter the menu, type:
1.20 + make menuconfig
1.21 +
1.22 +Almost every config item has a help entry. Read it carefully.
1.23 +
1.24 +String and number options can refer to environment variables. In such a case,
1.25 +you must use the shell syntax: ${VAR}. No such option is ever needed by make.
1.26 +You need to neither single- nor double-quote the string options.
1.27 +
1.28 +There are three environment variablea that are computed by crosstool-NG, and
1.29 +that you can use:
1.30 +
1.31 +CT_TARGET:
1.32 + It represents the target triplet you are building for. You can use it for
1.33 + example in the installation/prefix directory, such as:
1.34 + /opt/x-tools/${CT_TARGET}
1.35 +
1.36 +CT_TOP_DIR:
1.37 + The top directory where crosstool-NG sits. You shouldn't need it in most
1.38 + cases. There is one case where you may need it: if you have local patches
1.39 + and you store them in your copy of crosstool-NG, you can refer to them
1.40 + by using CT_TOP_DIR, such as:
1.41 + ${CT_TOP_DIR}/patches.myproject
1.42 +
1.43 +CT_VERSION:
1.44 + The version of crosstool-NG you are using. Not much help for you, but it's
1.45 + there if you need it.
1.46 +
1.47 +
1.48 +Interesting config options |
1.49 +---------------------------*
1.50 +
1.51 +CT_LOCAL_TARBALLS_DIR:
1.52 + If you already have sone tarballs in a direcotry, enter it here. That will
1.53 + speed up the retrieving phase, where crosstool-ng would otherwise download
1.54 + those tarballs.
1.55 +
1.56 +CT_PREFIX_DIR:
1.57 + This is where the toolchain will be installed in (and for now, where it
1.58 + will run from).
1.59 +
1.60 +CT_LOG_FILE:
1.61 + The file where *all* log messages will go. Keep the default, in goes in
1.62 + ${CT_PREFIX_DIR}/${CT_TARGET}.log
1.63 +
1.64 +CT_TARGET_VENDOR:
1.65 + An identifier for your toolchain, will take place in the vendor part of the
1.66 + target triplet. It shall *not* contain spaces or dashes. Usually, keep it
1.67 + to a one-word string, or use underscores to separate words if you need.
1.68 + Avoid dots, commas, and special characters.
1.69 +
1.70 +CT_TARGET_ALIAS:
1.71 + An alias for the toolchian. It will be used as a prefix to the toolchain
1.72 + tools. For example, you will have ${CT_TARGET_ALIAS}-gcc
1.73 +
1.74 +________________________
1.75 + /
1.76 +Running crosstool-NG /
1.77 +_____________________/
1.78
1.79 ct-ng is configured by a configurator presenting a menu-stuctured set of
1.80 options. These options let you specify the way you want your toolchain built,
1.81 @@ -95,10 +158,7 @@
1.82 will support, the version of the components you want to use, etc... The
1.83 value for those options are then stored in a configuration file.
1.84
1.85 -To enter the menu, type:
1.86 - make menuconfig
1.87 -
1.88 -To build the so-configured target, simply type:
1.89 +To build the toolchain, simply type:
1.90 make
1.91
1.92 This will use the above configuration to retrieve, extract and patch the
1.93 @@ -149,65 +209,16 @@
1.94 are equivalent to:
1.95 make STOP=libc_headers and: make RESTART=libc_headers
1.96
1.97 -____________________________
1.98 - /
1.99 -Configuring crosstool-NG /
1.100 -_________________________/
1.101 +Note that in order to restart a build, you'll have to say 'Y' to the config
1.102 +option CT_DEBUG_CT_SAVE_STEPS, and that the previous build effectively went
1.103 +that far.
1.104
1.105 -crosstool-NG is configured the same way you configure your Linux kernel: by
1.106 -using a curses-based menu. It is assumed you now how to handle this.
1.107
1.108 -Almost every config item has a help entry. Read it carefully.
1.109 +Testing all toolchains at once |
1.110 +-------------------------------*
1.111
1.112 -String and number options can refer to environment variables. In such a case,
1.113 -you must use the shell syntax: ${VAR}. No such option is ever needed by make.
1.114 -You need to neither single- nor double-quote the string options.
1.115 -
1.116 -There are three environment variablea that are computed by crosstool-NG, and
1.117 -that you can use:
1.118 -
1.119 -CT_TARGET:
1.120 - It represents the target triplet you are building for. You can use it for
1.121 - example in the installation/prefix directory, such as:
1.122 - /opt/x-tools/${CT_TARGET}
1.123 -
1.124 -CT_TOP_DIR:
1.125 - The top directory where crosstool-NG sits. You shouldn't need it in most
1.126 - cases. There is one case where you may need it: if you have local patches
1.127 - and you store them in your copy of crosstool-NG, you can refer to them
1.128 - by using CT_TOP_DIR, such as:
1.129 - ${CT_TOP_DIR}/patches.myproject
1.130 -
1.131 -CT_VERSION:
1.132 - The version of crosstool-NG you are using. Not much help for you, but it's
1.133 - there if you need it.
1.134 -
1.135 -
1.136 -Interesting config options |
1.137 ----------------------------*
1.138 -
1.139 -CT_LOCAL_TARBALLS_DIR:
1.140 - If you already have sone tarballs in a direcotry, enter it here. That will
1.141 - speed up the retrieving phase, where crosstool-ng would otherwise download
1.142 - those tarballs.
1.143 -
1.144 -CT_PREFIX_DIR:
1.145 - This is where the toolchain will be installed in (and for now, where it
1.146 - will run from).
1.147 -
1.148 -CT_LOG_FILE:
1.149 - The file where *all* log messages will go. Keep the default, in goes in
1.150 - ${CT_PREFIX_DIR}/${CT_TARGET}.log
1.151 -
1.152 -CT_TARGET_VENDOR:
1.153 - An identifier for your toolchain, will take place in the vendor part of the
1.154 - target triplet. It shall *not* contain spaces or dashes. Usually, keep it
1.155 - to a one-word string, or use underscores to separate words if you need.
1.156 - Avoid dots, commas, and special characters.
1.157 -
1.158 -CT_TARGET_ALIAS:
1.159 - An alias for the toolchian. It will be used as a prefix to the toolchain
1.160 - tools. For example, you will have ${CT_TARGET_ALIAS}-gcc
1.161 +You can test-build all samples; simply call:
1.162 + make regtest
1.163
1.164 ___________________
1.165 /