Better handling of the steps lists:
author"Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Tue Jun 26 21:23:05 2007 +0000 (2007-06-26)
changeset 181ff64ca4ebe48
parent 180 0b45550a9e13
child 182 223c84ec2d90
Better handling of the steps lists:
- new make rulle: liststeps,
- new help entry telling about liststeps,
- update documentation accordingly.
Makefile.steps
docs/overview.txt
     1.1 --- a/Makefile.steps	Tue Jun 19 17:50:46 2007 +0000
     1.2 +++ b/Makefile.steps	Tue Jun 26 21:23:05 2007 +0000
     1.3 @@ -1,53 +1,35 @@
     1.4  # Makefile for each steps
     1.5  # Copyright 2006 Yann E. MORIN <yann.morin.1998@anciens.enib.fr>
     1.6  
     1.7 -libc_check_config       \
     1.8 -kernel_check_config     \
     1.9 -kernel_headers          \
    1.10 -binutils                \
    1.11 -cc_core_pass_1          \
    1.12 -libc_headers            \
    1.13 -libc_start_files        \
    1.14 -cc_core_pass_2          \
    1.15 -libfloat                \
    1.16 -libc                    \
    1.17 -cc                      \
    1.18 -libc_finish             \
    1.19 -tools                   \
    1.20 -debug                   \
    1.21 -:
    1.22 +CT_STEPS := libc_check_config       \
    1.23 +            kernel_check_config     \
    1.24 +            kernel_headers          \
    1.25 +            binutils                \
    1.26 +            cc_core_pass_1          \
    1.27 +            libc_headers            \
    1.28 +            libc_start_files        \
    1.29 +            cc_core_pass_2          \
    1.30 +            libfloat                \
    1.31 +            libc                    \
    1.32 +            cc                      \
    1.33 +            libc_finish             \
    1.34 +            tools                   \
    1.35 +            debug                   \
    1.36 +
    1.37 +$(CT_STEPS):
    1.38  	@make -C "$(CT_TOP_DIR)" RESTART=$@ STOP=$@
    1.39  
    1.40 --libc_check_config      \
    1.41 --kernel_check_config    \
    1.42 --kernel_headers         \
    1.43 --binutils               \
    1.44 --cc_core_pass_1         \
    1.45 --libc_headers           \
    1.46 --libc_start_files       \
    1.47 --cc_core_pass_2         \
    1.48 --libfloat               \
    1.49 --libc                   \
    1.50 --cc                     \
    1.51 --libc_finish            \
    1.52 --tools                  \
    1.53 --debug                  \
    1.54 -:
    1.55 +$(patsubst %,-%,$(CT_STEPS)):
    1.56  	@make -C "$(CT_TOP_DIR)" STOP=$(patsubst -%,%,$@)
    1.57  
    1.58 -libc_check_config-      \
    1.59 -kernel_check_config-    \
    1.60 -kernel_headers-         \
    1.61 -binutils-               \
    1.62 -cc_core_pass_1-         \
    1.63 -libc_headers-           \
    1.64 -libc_start_files-       \
    1.65 -cc_core_pass_2-         \
    1.66 -libfloat-               \
    1.67 -libc-                   \
    1.68 -cc-                     \
    1.69 -libc_finish-            \
    1.70 -tools-                  \
    1.71 -debug-                  \
    1.72 -:
    1.73 +$(patsubst %,%-,$(CT_STEPS)):
    1.74  	@make -C "$(CT_TOP_DIR)" RESTART=$(patsubst %-,%,$@)
    1.75 +
    1.76 +help-build::
    1.77 +	@echo  '  liststeps      - Lists all build steps'
    1.78 +
    1.79 +liststeps:
    1.80 +	@echo  'Available build steps, in order:'
    1.81 +	@for step in $(CT_STEPS); do    \
    1.82 +	     echo "  - $${step}";       \
    1.83 +	 done
     2.1 --- a/docs/overview.txt	Tue Jun 19 17:50:46 2007 +0000
     2.2 +++ b/docs/overview.txt	Tue Jun 26 21:23:05 2007 +0000
     2.3 @@ -178,22 +178,6 @@
     2.4  debugging, you can pass the RESTART variable to make:
     2.5    make RESTART=some_step
     2.6  
     2.7 -The list of steps is, in order of appearence in the build process:
     2.8 -  - libc_check_config
     2.9 -  - kernel_check_config
    2.10 -  - kernel_headers
    2.11 -  - binutils
    2.12 -  - cc_core_pass_1
    2.13 -  - libc_headers
    2.14 -  - libc_start_files
    2.15 -  - cc_core_pass_2
    2.16 -  - libfloat
    2.17 -  - libc
    2.18 -  - cc
    2.19 -  - libc_finish
    2.20 -  - tools
    2.21 -  - debug
    2.22 -
    2.23  Alternatively, you can call make with the name of a step to just do that step:
    2.24    make libc_headers
    2.25  is equivalent to:
    2.26 @@ -205,6 +189,9 @@
    2.27  are equivalent to:
    2.28    make STOP=libc_headers    and:    make RESTART=libc_headers
    2.29  
    2.30 +To obtain the list of acceptable steps, please call:
    2.31 +  make liststeps
    2.32 +
    2.33  Note that in order to restart a build, you'll have to say 'Y' to the config
    2.34  option CT_DEBUG_CT_SAVE_STEPS, and that the previous build effectively went
    2.35  that far.