steps.mk
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Sep 14 16:21:07 2008 +0000 (2008-09-14)
changeset 850 ef8549b58b6f
parent 602 1968d150a34f
child 932 264d38e5b5ba
permissions -rw-r--r--
Introduce a new EXPERIMENTAL feature: BARE_METAL.
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(-)
     1 # Makefile for each steps
     2 # Copyright 2006 Yann E. MORIN <yann.morin.1998@anciens.enib.fr>
     3 
     4 CT_STEPS := libc_check_config   \
     5             kernel_headers      \
     6             gmp                 \
     7             mpfr                \
     8             binutils            \
     9             cc_core_pass_1      \
    10             libc_headers        \
    11             libc_start_files    \
    12             cc_core_pass_2      \
    13             libc                \
    14             cc                  \
    15             libc_finish         \
    16             binutils_target     \
    17             gmp_target          \
    18             mpfr_target         \
    19             tools               \
    20             debug               \
    21 
    22 export CT_STEPS
    23 
    24 $(CT_STEPS):
    25 	@$(CT_NG) RESTART=$@ STOP=$@ build
    26 
    27 $(patsubst %,+%,$(CT_STEPS)):
    28 	@$(CT_NG) STOP=$(patsubst +%,%,$@) build
    29 
    30 $(patsubst %,%+,$(CT_STEPS)):
    31 	@$(CT_NG) RESTART=$(patsubst %+,%,$@) build
    32 
    33 help-build::
    34 	@echo  '  list-steps         - List all build steps'
    35 
    36 list-steps:
    37 	@echo  'Available build steps, in order:'
    38 	@for step in $(CT_STEPS); do    \
    39 	     echo "  - $${step}";       \
    40 	 done
    41 	@echo  'Use "$(CT_NG) <step>" to execute only that step.'
    42 	@echo  'Use "$(CT_NG) +<step>" to execute up to that step.'
    43 	@echo  'Use "$(CT_NG) <step>+" to execute from that step onward.'