mirror of
https://github.com/crosstool-ng/crosstool-ng.git
synced 2025-01-12 16:02:42 +00:00
Introduce the notion of tols facilities (none so far, sstrip coming right away...).
This commit is contained in:
parent
e5f94e6037
commit
51554bf237
@ -13,6 +13,7 @@ libfloat \
|
|||||||
libc \
|
libc \
|
||||||
cc \
|
cc \
|
||||||
libc_finish \
|
libc_finish \
|
||||||
|
tools \
|
||||||
debug \
|
debug \
|
||||||
:
|
:
|
||||||
@make -C "$(CT_TOP_DIR)" RESTART=$@ STOP=$@
|
@make -C "$(CT_TOP_DIR)" RESTART=$@ STOP=$@
|
||||||
@ -29,6 +30,7 @@ debug \
|
|||||||
-libc \
|
-libc \
|
||||||
-cc \
|
-cc \
|
||||||
-libc_finish \
|
-libc_finish \
|
||||||
|
-tools \
|
||||||
-debug \
|
-debug \
|
||||||
:
|
:
|
||||||
@make -C "$(CT_TOP_DIR)" STOP=$(patsubst -%,%,$@)
|
@make -C "$(CT_TOP_DIR)" STOP=$(patsubst -%,%,$@)
|
||||||
@ -45,6 +47,7 @@ libfloat- \
|
|||||||
libc- \
|
libc- \
|
||||||
cc- \
|
cc- \
|
||||||
libc_finish- \
|
libc_finish- \
|
||||||
|
tools- \
|
||||||
debug- \
|
debug- \
|
||||||
:
|
:
|
||||||
@make -C "$(CT_TOP_DIR)" RESTART=$(patsubst %-,%,$@)
|
@make -C "$(CT_TOP_DIR)" RESTART=$(patsubst %-,%,$@)
|
||||||
|
@ -5,4 +5,5 @@ source config/kernel.in
|
|||||||
source config/binutils.in
|
source config/binutils.in
|
||||||
source config/cc.in
|
source config/cc.in
|
||||||
source config/libc.in
|
source config/libc.in
|
||||||
|
source config/tools.in
|
||||||
source config/debug.in
|
source config/debug.in
|
||||||
|
@ -135,6 +135,7 @@ The list of steps is, in order of appearence in the build process:
|
|||||||
- libc
|
- libc
|
||||||
- cc
|
- cc
|
||||||
- libc_finish
|
- libc_finish
|
||||||
|
- tools
|
||||||
- debug
|
- debug
|
||||||
|
|
||||||
Alternatively, you can call make with the name of a step to just do that step:
|
Alternatively, you can call make with the name of a step to just do that step:
|
||||||
@ -144,9 +145,9 @@ is equivalent to:
|
|||||||
|
|
||||||
The shortcuts -step_name and step_name- allow to respectively stop or restart
|
The shortcuts -step_name and step_name- allow to respectively stop or restart
|
||||||
at that step. Thus:
|
at that step. Thus:
|
||||||
make -libc_headers make libc_headers-
|
make -libc_headers and: make libc_headers-
|
||||||
are equivalent to:
|
are equivalent to:
|
||||||
make STOP=libc_headers make RESTART=libc_headers
|
make STOP=libc_headers and: make RESTART=libc_headers
|
||||||
|
|
||||||
____________________________
|
____________________________
|
||||||
/
|
/
|
||||||
|
@ -2,6 +2,9 @@
|
|||||||
# crosstool-ng configuration targets
|
# crosstool-ng configuration targets
|
||||||
# These targets are used from top-level makefile
|
# These targets are used from top-level makefile
|
||||||
|
|
||||||
|
# Derive the project version from, well, the project version:
|
||||||
|
export PROJECTVERSION=$(CT_VERSION)
|
||||||
|
|
||||||
KCONFIG_TOP = config/config.in
|
KCONFIG_TOP = config/config.in
|
||||||
obj = ./kconfig
|
obj = ./kconfig
|
||||||
PHONY += clean help oldconfig menuconfig config silentoldconfig \
|
PHONY += clean help oldconfig menuconfig config silentoldconfig \
|
||||||
@ -18,11 +21,14 @@ endif
|
|||||||
|
|
||||||
# Build a list of all config files
|
# Build a list of all config files
|
||||||
CONFIG_FILES = $(filter-out %debug.in,$(shell find $(CT_TOP_DIR)/config -type f -name '*.in'))
|
CONFIG_FILES = $(filter-out %debug.in,$(shell find $(CT_TOP_DIR)/config -type f -name '*.in'))
|
||||||
|
DEBUG_CONFIG_FILES = $(shell find $(CT_TOP_DIR)/config/debug -type f -name '*.in')
|
||||||
|
TOOLS_CONFIG_FILES = $(shell find $(CT_TOP_DIR)/config/tools -type f -name '*.in')
|
||||||
|
|
||||||
# Derive the project version from, well, the project version:
|
.PHONY: generated_config_files
|
||||||
export PROJECTVERSION=$(CT_VERSION)
|
generated_config_files: $(CT_TOP_DIR)/config/debug.in \
|
||||||
|
$(CT_TOP_DIR)/config/tools.in
|
||||||
|
|
||||||
$(CT_TOP_DIR)/config/debug.in: $(CONFIG_FILES)
|
$(CT_TOP_DIR)/config/debug.in: $(DEBUG_CONFIG_FILES)
|
||||||
@echo "# Debug facilities menu" >$@
|
@echo "# Debug facilities menu" >$@
|
||||||
@echo "# Generated file, do not edit!!!" >>$@
|
@echo "# Generated file, do not edit!!!" >>$@
|
||||||
@echo "menu \"Debug facilities\"" >>$@
|
@echo "menu \"Debug facilities\"" >>$@
|
||||||
@ -31,13 +37,22 @@ $(CT_TOP_DIR)/config/debug.in: $(CONFIG_FILES)
|
|||||||
done >>$@
|
done >>$@
|
||||||
@echo "endmenu" >>$@
|
@echo "endmenu" >>$@
|
||||||
|
|
||||||
menuconfig: $(obj)/mconf $(CT_TOP_DIR)/config/debug.in
|
$(CT_TOP_DIR)/config/tools.in: $(TOOLS_CONFIG_FILES)
|
||||||
|
@echo "# Tools facilities menu" >$@
|
||||||
|
@echo "# Generated file, do not edit!!!" >>$@
|
||||||
|
@echo "menu \"Tools facilities\"" >>$@
|
||||||
|
@for f in $(patsubst $(CT_TOP_DIR)/%,%,$(wildcard $(CT_TOP_DIR)/config/tools/*.in)); do \
|
||||||
|
echo "source $${f}"; \
|
||||||
|
done >>$@
|
||||||
|
@echo "endmenu" >>$@
|
||||||
|
|
||||||
|
menuconfig: $(obj)/mconf generated_config_files
|
||||||
@$< $(KCONFIG_TOP)
|
@$< $(KCONFIG_TOP)
|
||||||
|
|
||||||
config: $(obj)/conf $(CT_TOP_DIR)/config/debug.in
|
config: $(obj)/conf generated_config_files
|
||||||
@$< $(KCONFIG_TOP)
|
@$< $(KCONFIG_TOP)
|
||||||
|
|
||||||
oldconfig: $(obj)/conf $(CT_TOP_DIR)/config/debug.in
|
oldconfig: $(obj)/conf generated_config_files
|
||||||
@$< -s $(KCONFIG_TOP)
|
@$< -s $(KCONFIG_TOP)
|
||||||
|
|
||||||
# Help text used by make help
|
# Help text used by make help
|
||||||
@ -66,4 +81,4 @@ kconfig/conf: $(SHIPPED) kconfig/conf.c
|
|||||||
|
|
||||||
clean::
|
clean::
|
||||||
@rm -f $(wildcard kconfig/*zconf*.c) kconfig/{conf,mconf}
|
@rm -f $(wildcard kconfig/*zconf*.c) kconfig/{conf,mconf}
|
||||||
@rm -f "$(CT_TOP_DIR)/config/debug.in"
|
@rm -f "$(CT_TOP_DIR)/config/debug.in" "$(CT_TOP_DIR)/config/tools.in"
|
||||||
|
34
scripts/build/tools.sh
Normal file
34
scripts/build/tools.sh
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
# Wrapper to build the tools facilities
|
||||||
|
|
||||||
|
# List all tools facilities, and parse their scripts
|
||||||
|
CT_TOOLS_FACILITY_LIST=
|
||||||
|
for f in "${CT_TOP_DIR}/scripts/build/tools/"*.sh; do
|
||||||
|
is_enabled=
|
||||||
|
. "${f}"
|
||||||
|
f=`basename "${f}" .sh`
|
||||||
|
if [ "${is_enabled}" = "y" ]; then
|
||||||
|
CT_TOOLS_FACILITY_LIST="${CT_TOOLS_FACILITY_LIST} ${f}"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
# Download the tools facilities
|
||||||
|
do_tools_get() {
|
||||||
|
for f in ${CT_TOOLS_FACILITY_LIST}; do
|
||||||
|
do_tools_${f}_get
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
# Extract and patch the tools facilities
|
||||||
|
do_tools_extract() {
|
||||||
|
for f in ${CT_TOOLS_FACILITY_LIST}; do
|
||||||
|
do_tools_${f}_extract
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
# Build the tools facilities
|
||||||
|
do_tools() {
|
||||||
|
for f in ${CT_TOOLS_FACILITY_LIST}; do
|
||||||
|
do_tools_${f}_build
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
@ -363,6 +363,7 @@ fi
|
|||||||
. "${CT_TOP_DIR}/scripts/build/cc_core_${CT_CC_CORE}.sh"
|
. "${CT_TOP_DIR}/scripts/build/cc_core_${CT_CC_CORE}.sh"
|
||||||
. "${CT_TOP_DIR}/scripts/build/cc_${CT_CC}.sh"
|
. "${CT_TOP_DIR}/scripts/build/cc_${CT_CC}.sh"
|
||||||
. "${CT_TOP_DIR}/scripts/build/debug.sh"
|
. "${CT_TOP_DIR}/scripts/build/debug.sh"
|
||||||
|
. "${CT_TOP_DIR}/scripts/build/tools.sh"
|
||||||
|
|
||||||
if [ -z "${CT_RESTART}" ]; then
|
if [ -z "${CT_RESTART}" ]; then
|
||||||
CT_DoStep INFO "Retrieving needed toolchain components' tarballs"
|
CT_DoStep INFO "Retrieving needed toolchain components' tarballs"
|
||||||
@ -372,6 +373,7 @@ if [ -z "${CT_RESTART}" ]; then
|
|||||||
do_libfloat_get
|
do_libfloat_get
|
||||||
do_libc_get
|
do_libc_get
|
||||||
do_cc_get
|
do_cc_get
|
||||||
|
do_tools_get
|
||||||
do_debug_get
|
do_debug_get
|
||||||
CT_EndStep
|
CT_EndStep
|
||||||
|
|
||||||
@ -387,6 +389,7 @@ if [ -z "${CT_RESTART}" ]; then
|
|||||||
do_libfloat_extract
|
do_libfloat_extract
|
||||||
do_libc_extract
|
do_libc_extract
|
||||||
do_cc_extract
|
do_cc_extract
|
||||||
|
do_tools_extract
|
||||||
do_debug_extract
|
do_debug_extract
|
||||||
CT_EndStep
|
CT_EndStep
|
||||||
fi
|
fi
|
||||||
@ -410,6 +413,7 @@ if [ "${CT_ONLY_DOWNLOAD}" != "y" -a "${CT_ONLY_EXTRACT}" != "y" ]; then
|
|||||||
libc \
|
libc \
|
||||||
cc \
|
cc \
|
||||||
libc_finish \
|
libc_finish \
|
||||||
|
tools \
|
||||||
debug \
|
debug \
|
||||||
; do
|
; do
|
||||||
if [ ${do_it} -eq 0 ]; then
|
if [ ${do_it} -eq 0 ]; then
|
||||||
|
Loading…
Reference in New Issue
Block a user