# Makefile for each steps # Copyright 2006 Yann E. MORIN # ---------------------------------------------------------- # This is the steps help entry help-build:: @echo ' list-steps - List all build steps' help-env:: @echo ' STOP=step - Stop the build just after this step (list with list-steps)' @echo ' RESTART=step - Restart the build just before this step (list with list-steps)' # ---------------------------------------------------------- # The steps list # Please keep the last line with a '\' and keep the following empy line: # it helps when diffing and merging. CT_STEPS := libc_check_config \ kernel_headers \ gmp \ mpfr \ ppl \ cloog \ mpc \ libelf \ binutils \ elf2flt \ sstrip \ cc_core_pass_1 \ libc_headers \ libc_start_files \ cc_core_pass_2 \ libc \ cc \ libc_finish \ gmp_target \ mpfr_target \ libelf_target \ binutils_target \ debug \ finish \ # Make the list available to sub-processes (scripts/crosstool-NG.sh needs it) export CT_STEPS # Print the steps list PHONY += list-steps list-steps: @echo 'Available build steps, in order:' @for step in $(CT_STEPS); do \ echo " - $${step}"; \ done @echo 'Use "" as action to execute only that step.' @echo 'Use "+" as action to execute up to that step.' @echo 'Use "+" as action to execute from that step onward.' # ---------------------------------------------------------- # This part deals with executing steps $(CT_STEPS): $(SILENT)$(MAKE) -rf $(CT_NG) V=$(V) RESTART=$@ STOP=$@ build $(patsubst %,+%,$(CT_STEPS)): $(SILENT)$(MAKE) -rf $(CT_NG) V=$(V) STOP=$(patsubst +%,%,$@) build $(patsubst %,%+,$(CT_STEPS)): $(SILENT)$(MAKE) -rf $(CT_NG) V=$(V) RESTART=$(patsubst %+,%,$@) build