summaryrefslogtreecommitdiff
path: root/scripts/crosstool.sh
AgeCommit message (Collapse)AuthorFilesLines
2008-11-13Merge #1195, #1196 and #1203 from /devel/YEM-build_host_target_cleanup:Yann E. MORIN"1-55/+113
- Get rid of CT_CC_NATIVE - Get rid of CT_CANADIAN_OPT - Sanitise CT_BUILD vs. CT_HOST /trunk/scripts/build/tools/200-sstrip.sh | 4 2 2 0 /trunk/scripts/build/binutils.sh | 1 0 1 0 - /trunk/scripts/build/cc/gcc.sh | 11 6 5 0 +- /trunk/scripts/build/debug/200-duma.sh | 3 1 2 0 - /trunk/scripts/build/libc/glibc.sh | 10 5 5 0 +- /trunk/scripts/build/libc/eglibc.sh | 8 4 4 0 +- /trunk/scripts/crosstool.sh | 168 113 55 0 ++++++++++++++++++++++++++------------ /trunk/config/toolchain.in | 160 137 23 0 +++++++++++++++++++++++++++++++----- 8 files changed, 268 insertions(+), 97 deletions(-)
2008-11-07Do not autodetect 64-bit archs, have them tell be 'select'-ing ARCH_64 in ↵Yann E. MORIN"1-7/+5
the configuration. /trunk/scripts/crosstool.sh | 12 5 7 0 +++++------- /trunk/docs/overview.txt | 6 6 0 0 ++++++ /trunk/config/target.in | 4 4 0 0 ++++ /trunk/config/arch/x86_64.in | 1 1 0 0 + /trunk/config/arch/ia64.in | 1 1 0 0 + 5 files changed, 17 insertions(+), 7 deletions(-)
2008-11-04Merge #1190 from /devel/YEM-build_host_target_cleanup:Yann E. MORIN"1-6/+14
- Use shell wrappers to point to the build tools, rather than symlinks. /trunk/scripts/crosstool.sh | 20 14 6 0 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-)
2008-10-23Push the calculation of the tuple's kernel part down to kernel's build scripts:Yann E. MORIN"1-18/+13
- update the kernel script's API with the function CT_DiKernelTupleValues - update doc accordingly (also with the architecture change, missing in the previous commit) - small clean-up in the main script, remove useless test /trunk/scripts/build/kernel/bare-metal.sh | 5 5 0 0 +++++ /trunk/scripts/build/kernel/linux.sh | 5 5 0 0 +++++ /trunk/scripts/crosstool.sh | 31 13 18 0 +++++++++++++------------------ /trunk/scripts/functions | 15 8 7 0 ++++++++------- /trunk/docs/overview.txt | 13 9 4 0 +++++++++---- 5 files changed, 40 insertions(+), 29 deletions(-)
2008-10-10Simplify the Tools and Debug facilities menu entries:Yann E. MORIN"1-1/+1
- each config file no longer have to define their own 'menuconfig foo - if FOO - endif' gym - each build script no longer has to say wether they are enabled - generation of the 'menuconfig' entries for the Tools and Debug facilities now uses the same code Some re-ordering of the code to be consistent with the steps ordering (tools, then debug). /trunk/kconfig/kconfig.mk | 66 43 23 0 +++++++++++++++++++++++------------- /trunk/scripts/build/debug.sh | 14 9 5 0 +++++--- /trunk/scripts/build/tools/000-template.sh | 7 0 7 0 ---- /trunk/scripts/build/tools/100-libelf.sh | 3 0 3 0 -- /trunk/scripts/build/tools/200-sstrip.sh | 2 0 2 0 - /trunk/scripts/build/debug/000-template.sh | 7 0 7 0 ---- /trunk/scripts/build/debug/100-dmalloc.sh | 3 0 3 0 -- /trunk/scripts/build/debug/400-ltrace.sh | 3 0 3 0 -- /trunk/scripts/build/debug/300-gdb.sh | 3 0 3 0 -- /trunk/scripts/build/debug/500-strace.sh | 3 0 3 0 -- /trunk/scripts/build/debug/200-duma.sh | 3 0 3 0 -- /trunk/scripts/build/tools.sh | 14 9 5 0 +++++--- /trunk/scripts/crosstool.sh | 2 1 1 0 /trunk/config/debug/ltrace.in | 14 3 11 0 ++------ /trunk/config/debug/dmalloc.in | 9 1 8 0 +---- /trunk/config/debug/gdb.in | 9 1 8 0 +---- /trunk/config/debug/strace.in | 10 1 9 0 ----- /trunk/config/debug/duma.in | 10 1 9 0 ----- /trunk/config/tools/libelf.in | 12 2 10 0 +------ /trunk/config/tools/sstrip.in | 10 1 9 0 ----- /trunk/config/config.in | 4 2 2 0 +- 21 files changed, 74 insertions(+), 134 deletions(-)
2008-10-06Install the config script following the naming of other files, eg. ↵Yann E. MORIN"1-2/+2
"${CT_TARGET}-" instead of "${CT_TARGET}." . /trunk/scripts/crosstool.sh | 4 2 2 0 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
2008-10-05Separate the architecture config file and function script.Yann E. MORIN"1-1/+1
/trunk/kconfig/kconfig.mk | 46 23 23 0 +++++++++++++++++++++++----------------------- /trunk/scripts/crosstool.sh | 2 1 1 0 +- /trunk/docs/overview.txt | 28 11 17 0 +++++++++++----------------- 3 files changed, 35 insertions(+), 41 deletions(-)
2008-10-03Fourth shot at moving arch/ into config/arch/ .Yann E. MORIN"1-1/+1
/trunk/scripts/crosstool.sh | 2 1 1 0 +- 1 file changed, 1 insertion(+), 1 deletion(-)
2008-10-01Save the toolchain configuration to its own file, as an auto-extracting ↵Yann E. MORIN"1-1/+5
shell script: - get rid of the 'extractconfig' action, it was cumbersome to use, and badly documented, - introduce a skeleton for the config script, - update auto-completion, - document the config script. /trunk/kconfig/kconfig.mk | 9 2 7 0 ++------- /trunk/scripts/crosstool.sh | 6 5 1 0 +++++- /trunk/docs/overview.txt | 21 9 12 0 +++++++++------------ /trunk/tools/toolchain-config.in | 8 8 0 0 ++++++++ /trunk/ct-ng.comp | 2 1 1 0 +- 5 files changed, 25 insertions(+), 21 deletions(-)
2008-09-14Introduce a new EXPERIMENTAL feature: BARE_METAL.Yann E. MORIN"1-8/+9
This should ultimately llow to build bare-metal compilers, for targets that have no kernel and no C library. Move the C library build script to their own sub-directory; introduce an empty build script for bare-metal. Move the compiler build script to its own sub-directory. Move the kernel build script to its own sub-directory; introduce an empty build script for bare-metal. Update the ARM target tuples to enable bare-metal targets. Add two ARM bare-metal samples. Add latest Linux kernel versions. /trunk/scripts/build/kernel/none.sh | 77 6 71 0 +---- /trunk/scripts/build/cc/gcc.sh | 58 41 17 0 ++- /trunk/scripts/build/libc/none.sh | 513 9 504 0 +----------------------------- /trunk/scripts/crosstool.sh | 17 9 8 0 + /trunk/scripts/functions | 6 4 2 0 + /trunk/scripts/showSamples.sh | 6 3 3 0 /trunk/samples/arm-unknown-elf/crosstool.config | 225 225 0 0 +++++++++++++ /trunk/samples/arm-unknown-eabi/crosstool.config | 223 223 0 0 +++++++++++++ /trunk/config/kernel/linux_headers_install.in | 64 27 37 0 ++-- /trunk/config/kernel.in | 9 8 1 0 + /trunk/config/toolchain.in | 1 1 0 0 + /trunk/config/cc/gcc.in | 3 3 0 0 + /trunk/config/debug/dmalloc.in | 1 1 0 0 + /trunk/config/debug/gdb.in | 4 3 1 0 + /trunk/config/debug/strace.in | 1 1 0 0 + /trunk/config/debug/duma.in | 1 1 0 0 + /trunk/config/cc.in | 8 8 0 0 + /trunk/config/target.in | 13 13 0 0 + /trunk/config/binutils.in | 1 1 0 0 + /trunk/config/gmp_mpfr.in | 1 1 0 0 + /trunk/config/libc.in | 17 11 6 0 + /trunk/arch/arm/functions | 3 1 2 0 - 22 files changed, 600 insertions(+), 652 deletions(-)
2008-09-10Remove the now really obsolete Linux kernel headers copy and sanitised.Yann E. MORIN"1-1/+1
Remove orphanned Linux kernel patchsets. Initiate a kernel build scripts directory. Move the Linux kernel build script there. /trunk/scripts/build/kernel/linux.sh | 146 11 135 0 +++--------------------------------------- /trunk/scripts/crosstool.sh | 2 1 1 0 /trunk/steps.mk | 1 0 1 0 - /trunk/config/kernel/linux.in | 49 0 49 0 -------------- /trunk/config/kernel.in | 4 4 0 0 + 5 files changed, 16 insertions(+), 186 deletions(-)
2008-08-25Allow using ash as the shell for ./configure and make.Yann E. MORIN"1-0/+4
After an idea by "Martin Guy" <martinwguy@yahoo.it>: http://sourceware.org/ml/crossgcc/2008-08/msg00037.html /trunk/scripts/crosstool.sh | 4 4 0 0 ++++ /trunk/config/global/build-behave.in | 14 14 0 0 ++++++++++++++ 2 files changed, 18 insertions(+)
2008-08-07Introduce four new ARCH specific variables that CT_DoArchValues can set if ↵Yann E. MORIN"1-0/+2
they want: - CT_ARCH_CC_CORE_EXTRA_CONFIG - CT_ARCH_CC_EXTRA_CONFIG - CT_ARCH_TARGET_CLFAGS - CT_ARCH_TARGET_LDFLAGS This will hopefully enable architectures to specify specific flags. PowerPC will need them to introduce SPE (coming RSN). /trunk/scripts/crosstool.sh | 2 2 0 0 ++ /trunk/scripts/functions | 4 2 2 0 ++-- /trunk/docs/overview.txt | 45 22 23 0 ++++++++++++++++++++++----------------------- /trunk/config/target.in | 10 10 0 0 ++++++++++ 4 files changed, 36 insertions(+), 25 deletions(-)
2008-08-07Beautify final output.Yann E. MORIN"1-3/+4
/trunk/scripts/crosstool.sh | 7 4 3 0 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-)
2008-08-04Michael ABBOTT reported that populate is not relocatable.Yann E. MORIN"1-8/+6
Fix this by determining both the cross-readelf and the sys-root at runtime, not at build time. /trunk/configure | 1 1 0 0 + /trunk/scripts/crosstool.sh | 14 6 8 0 ++++++-------- /trunk/tools/populate.in | 6 4 2 0 ++++-- 3 files changed, 11 insertions(+), 10 deletions(-)
2008-08-01Rework a little bit of the LAN mirror and proxy settings.Yann E. MORIN"1-101/+4
/trunk/scripts/crosstool.sh | 105 4 101 0 +------------------------ /trunk/scripts/functions | 151 129 22 0 +++++++++++++++++++++++++++++++----- /trunk/config/global/download.in | 193 99 94 0 ++++++++++++++++++++++++---------------------- 3 files changed, 232 insertions(+), 217 deletions(-)
2008-07-27Fix building x86_64 on x86_64 (and hopefully all other *64 archs on the same ↵Yann E. MORIN"1-0/+14
*64): - symlink all lib64/ dirs to the corresponding lib/ dir Also, prevent gcc from installing some of its target libs outside of the sys-root, in the first place. Thanks to Laurent DUFRECHOU for reporting the bug and testing the fix. /trunk/scripts/build/cc_gcc.sh | 26 0 26 0 -------------------------- /trunk/scripts/crosstool.sh | 14 14 0 0 ++++++++++++++ 2 files changed, 14 insertions(+), 26 deletions(-)
2008-07-25Hmmm. The debug pause at each step never ever worked... Sigh...Yann E. MORIN"1-1/+1
/trunk/scripts/crosstool.sh | 2 1 1 0 +- /trunk/config/global/ct-behave.in | 2 1 1 0 +- 2 files changed, 2 insertions(+), 2 deletions(-)
2008-07-17Remove the check for absolutely needed tools now ./configure checks for them.Yann E. MORIN"1-5/+0
Move the check for 'lynx' to where it is needed (that is when sstrip from buildroot is selected). /trunk/scripts/build/tools/200-sstrip.sh | 1 1 0 0 + /trunk/scripts/crosstool.sh | 5 0 5 0 ----- 2 files changed, 1 insertion(+), 5 deletions(-)
2008-07-16Move the check for tsocks' availability just before using tsocks: make it ↵Yann E. MORIN"1-4/+5
clear we check before we use. Use CT_DoExecLog to validate tsocks configuration. Don't use gawk, but awk. awk *is* GNU awk, check by ./configure. /trunk/scripts/crosstool.sh | 9 5 4 0 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-)
2008-06-24Allow to store working files outside the build tree (eg. incase the working ↵Yann E. MORIN"1-4/+5
tree is on the network). /trunk/scripts/crosstool.sh | 9 5 4 0 +++++---- /trunk/config/global/paths.in | 23 22 1 0 ++++++++++++++++++++++- 2 files changed, 27 insertions(+), 5 deletions(-)
2008-06-17Help glibc build by exporting PARALLELMFLAGS.Yann E. MORIN"1-0/+1
/trunk/scripts/crosstool.sh | 1 1 0 0 + 1 file changed, 1 insertion(+)
2008-06-15Some makeinfo versions are a pain in [somewhere very painful].Yann E. MORIN"1-0/+7
Work this around with a wrapper that always succeeds, and leave incomplete files in place. /trunk/scripts/crosstool.sh | 7 7 0 0 +++++++ 1 file changed, 7 insertions(+)
2008-05-24Use the arch-specific target LDFLAGS into the final target LDFLAGS.Yann E. MORIN"1-1/+3
Fix a help entry in the CFLAGS_for_target config entry. /trunk/scripts/crosstool.sh | 4 3 1 0 +++- /trunk/config/target.in | 2 1 1 0 +- 2 files changed, 4 insertions(+), 2 deletions(-)
2008-05-20Get rid of all `command` (which is a bashism), and replace them with ↵Yann E. MORIN"1-27/+27
$(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-15Fix forcing source extraction.Yann E. MORIN"1-2/+3
/trunk/scripts/crosstool.sh | 5 3 2 0 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
2008-05-14Sanitise and use CT_CC_NATIVE.Yann E. MORIN"1-1/+6
Comment inclusion of scripts/functions. /trunk/scripts/build/cc_gcc.sh | 6 6 0 0 ++++++ /trunk/scripts/crosstool.sh | 7 6 1 0 ++++++- 2 files changed, 12 insertions(+), 1 deletion(-)
2008-04-30Merge the fortran stuff to trunk now it works!Yann E. MORIN"1-1/+9
Fortran is not supported for all targets, though. ARM at least does not work. /trunk/scripts/build/binutils.sh | 8 8 0 0 ++++++++ /trunk/scripts/build/cc_gcc.sh | 11 6 5 0 ++++++----- /trunk/scripts/crosstool.sh | 10 9 1 0 +++++++++- /trunk/tools/addToolVersion.sh | 3 3 0 0 +++ /trunk/steps.mk | 2 2 0 0 ++ /trunk/config/cc/gcc.in | 16 16 0 0 ++++++++++++++++ 6 files changed, 44 insertions(+), 6 deletions(-)
2008-04-28Building target libraries before the cross-compiler is available is doomed! ↵Yann E. MORIN"1-14/+2
Move build binutils' target libraries after final gcc. Have a unique list of steps, it's easier to maintain. /trunk/scripts/build/binutils.sh | 8 5 3 0 +++++--- /trunk/scripts/crosstool.sh | 16 2 14 0 ++-------------- /trunk/steps.mk | 29 16 13 0 ++++++++++++++++------------- 3 files changed, 23 insertions(+), 30 deletions(-)
2008-04-26Configure tsocks with a simple heuristic.Yann E. MORIN"1-9/+52
Consider the proxy has to be in a 'local' network. It means it is directly reachable by the local machine, even if the local machine has to hop through one or more gates to reach the proxy (often the case in enterprise networks where class A 10.0.0.0/8 is in fact sub-divided into smaller networks, each one of them in a different location, eg. 10.1.0.0/16 in a place, while 10.2.0.0/16 would be on the other side of the world). Not being in the same subnet does not mean the proxy is not available. So we will build a mask with at most high bits set, which defines a network that has both the local machine and the proxy. Because a machine may have more than one interface, build a mask for each of them, removing 127.0.0.1 which is added automagically by tsocks, and removing duplicate masks. If all of this does not work, then it means the local machine can NOT in fact reach the proxy, which in turn means the user mis-configured something (most probably a typo...). /trunk/scripts/crosstool.sh | 61 52 9 0 +++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 52 insertions(+), 9 deletions(-)
2008-04-20Tss.... I was bieng real stupid while building up the tsocks.conf file. ↵Yann E. MORIN"1-22/+5
Implement a much simpler way. /trunk/scripts/crosstool.sh | 27 5 22 0 +++++---------------------- 1 file changed, 5 insertions(+), 22 deletions(-)
2008-04-18Using SOCKS 4/5 proxy is no easy task:Yann E. MORIN"1-6/+46
- a machine may well be able to reach the proxy, even if it is not on the same sub-net(s) as the machine itself (absolutely legitimate) - tsocks.conf needs a list of so-called 'local' networks that can be reached without the need for a SOCKS connection - SOCKS proxies are expected to be in 'local' networks - there is absolutely NO way to tell what networks are local, besides the sub-net(s) the machine is in Therefore, appropriate configuration of SOCKS 4/5 configuration is really complex, and attempts to correctly overcome this issue are doomed. /trunk/scripts/crosstool.sh | 52 46 6 0 ++++++++++++++++++++++++++++++++++---- /trunk/config/global/download_extract.in | 39 31 8 0 +++++++++++++++++++++++------ 2 files changed, 77 insertions(+), 14 deletions(-)
2008-04-18Fix using HTTP proxy.Yann E. MORIN"1-4/+5
/trunk/scripts/crosstool.sh | 9 5 4 0 +++++---- /trunk/config/global/download_extract.in | 2 1 1 0 +- 2 files changed, 6 insertions(+), 5 deletions(-)
2008-04-17Add an option to use a SOCKS 4/5 proxy to connect to the internet.Yann E. MORIN"1-14/+31
As for the HTTP proxy, this is completetly untested, as I have no such proxy at home. scripts/crosstool.sh | 45 31 14 0 +++++++++++++++++-------- config/global.in | 95 81 14 0 +++++++++++++++++++++++++++++++++++++++++++-------- 2 files changed, 112 insertions(+), 28 deletions(-)
2008-04-13Allow using an HTTP proxy to tunnel FTP and HTTP requests.Yann E. MORIN"1-0/+14
scripts/crosstool.sh | 14 14 0 0 +++++++++++++ config/global.in | 54 54 0 0 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 68 insertions(+)
2008-02-14Robet P. J. DAY: typoes.Yann E. MORIN"1-2/+2
2008-01-28Patch from Michael Abbott <michael@araneidae.co.uk> to allow build to work ↵Yann E. MORIN"1-3/+3
with ancient findutils.
2007-09-23Do not try to save new;y downloaded tarballs to local storage if the ↵Yann E. MORIN"1-1/+7
directory does not exist.
2007-09-23Renamed all patches file names so that locales are now irrelevant to sort ↵Yann E. MORIN"1-16/+0
the files. Removed the locale check as it is now irrelevant. Removed the experimental binutils 2.17.50.0.xx: 2.18 is here now.
2007-09-16ARM EABI is now working for little endian ARM targets.Yann E. MORIN"1-1/+5
Big endian is still missing, though...
2007-09-16Call architecture-specific functions from all scripts needing them.Yann E. MORIN"1-1/+1
2007-09-15Further improve the architecture-specific framework.Yann E. MORIN"1-7/+0
Apply this framework into building of glibc and gcc. (Whoo! 500th commit! Yeah!)
2007-09-15We don't support Cygwin yet, no point in having quirks in.Yann E. MORIN"1-3/+0
2007-09-14Further expand the architecture-specific function: add CT_KERNEL_ARCH building.Yann E. MORIN"1-7/+0
2007-09-14Add the framework to have architecture-specific configuration and functions.Yann E. MORIN"1-0/+3
API is not yet defined.
2007-09-14Small eye candy fix.Yann E. MORIN"1-3/+3
2007-08-15Change "triplet" (target triplet) to "tuple". That sounds better!Yann E. MORIN"1-2/+2
Document overriding the number of // jobs. Some small documentation fixes.
2007-08-15Add the possibility to force the number of // jobs without reconfiguring.Yann E. MORIN"1-0/+3
2007-08-15Get rid of the core cc selection. It is now the same as the final compiler.Yann E. MORIN"1-13/+3
2007-08-07Introduce new config option: CT_TARGET_ALIAS_SED_EXPRYann E. MORIN"1-8/+14
This option is used as a sed expression to pass onto CT_TARGET to create an alias.