From b0fece468986e98124dfd59e24222724cf7c96fa Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN\"" Date: Wed, 17 Mar 2010 00:21:57 +0100 Subject: [PATCH] tools: move sstrip to the binary utilities menu sstrip is now alone in its 'tools' menu, and we will probably never gain any other 'tool'. Besides, sstrip is just strip, but a little bit more agressive, so it deserves going to the 'binary utilities' menu. --- config/binutils.in | 1 + config/{tools => binutils}/sstrip.in | 10 ++++- config/config.in | 1 - config/config.mk | 15 ++------ config/tools.in | 3 -- .../200-sstrip.sh => binutils/sstrip.sh} | 27 +++++-------- scripts/build/tools.sh | 38 ------------------- scripts/build/tools/000-template.sh | 34 ----------------- scripts/crosstool-NG.sh.in | 6 +-- steps.mk | 2 +- 10 files changed, 28 insertions(+), 109 deletions(-) rename config/{tools => binutils}/sstrip.in (91%) delete mode 100644 config/tools.in rename scripts/build/{tools/200-sstrip.sh => binutils/sstrip.sh} (83%) delete mode 100644 scripts/build/tools.sh delete mode 100644 scripts/build/tools/000-template.sh diff --git a/config/binutils.in b/config/binutils.in index a0fe0ef6..f09bd118 100644 --- a/config/binutils.in +++ b/config/binutils.in @@ -40,5 +40,6 @@ endchoice source config/binutils/binutils.in source config/binutils/elf2flt.in +source config/binutils/sstrip.in endmenu diff --git a/config/tools/sstrip.in b/config/binutils/sstrip.in similarity index 91% rename from config/tools/sstrip.in rename to config/binutils/sstrip.in index 79687998..8d643e4f 100644 --- a/config/tools/sstrip.in +++ b/config/binutils/sstrip.in @@ -1,11 +1,17 @@ # Configuration file for sstrip tool facility # depends on ! BACKEND -config TOOL_sstrip +comment "sstrip" + +config SSTRIP + bool + prompt "sstrip" help The sstrip utility, to maximise the striping of ELF binaries (executables and libraries). +if SSTRIP + choice bool prompt "Use sstrip from:" @@ -40,3 +46,5 @@ config SSTRIP_ELFKICKERS_VERSION default "2.0a" endif + +endif # SSTRIP diff --git a/config/config.in b/config/config.in index e4f1de95..d7f3bc78 100644 --- a/config/config.in +++ b/config/config.in @@ -6,6 +6,5 @@ source config/binutils.in source config/cc.in source config/libc.in source config/debug.in -source config/tools.in source config/companion_libs.in source config/companion_tools.in diff --git a/config/config.mk b/config/config.mk index 6945d095..f8265b36 100644 --- a/config/config.mk +++ b/config/config.mk @@ -19,14 +19,12 @@ KERNEL_CONFIG_FILES = $(patsubst $(CT_LIB_DIR)/%,%,$(wildcard $(CT_LIB_DIR)/conf CC_CONFIG_FILES = $(patsubst $(CT_LIB_DIR)/%,%,$(wildcard $(CT_LIB_DIR)/config/cc/*.in)) LIBC_CONFIG_FILES = $(patsubst $(CT_LIB_DIR)/%,%,$(wildcard $(CT_LIB_DIR)/config/libc/*.in)) DEBUG_CONFIG_FILES = $(patsubst $(CT_LIB_DIR)/%,%,$(wildcard $(CT_LIB_DIR)/config/debug/*.in)) -TOOL_CONFIG_FILES = $(patsubst $(CT_LIB_DIR)/%,%,$(wildcard $(CT_LIB_DIR)/config/tools/*.in)) # Build the list of generated config files GEN_CONFIG_FILES = config.gen/arch.in \ config.gen/kernel.in \ config.gen/cc.in \ config.gen/libc.in \ - config.gen/tools.in \ config.gen/debug.in # ... and how to access them: # Generated files depends on config.mk (this file) because it has the @@ -57,7 +55,6 @@ KERNELS = $(patsubst config/kernel/%.in,%,$(KERNEL_CONFIG_FILES)) CCS = $(patsubst config/cc/%.in,%,$(CC_CONFIG_FILES)) LIBCS = $(patsubst config/libc/%.in,%,$(LIBC_CONFIG_FILES)) DEBUGS = $(patsubst config/debug/%.in,%,$(DEBUG_CONFIG_FILES)) -TOOLS = $(patsubst config/tools/%.in,%,$(TOOL_CONFIG_FILES)) #----------------------------------------------------------- # Helper functions to ease building generated config files @@ -116,12 +113,11 @@ endef # the given list, source-ing the associated files conditionnaly: # $1 : destination file # $2 : name of entries family (eg. Tools, Debug...) -# $3 : prefix for the menu entries (eg. TOOL, DEBUG) +# $3 : prefix for the menu entries (eg. DEBUG) # $4 : base directory containing config files -# $5 : list of config entries (eg. for tools: "libelf sstrip"..., and for -# debug: "dmalloc duma gdb"...) -# Example to build the tools generated config file: -# $(call build_gen_menu_in,config.gen/tools.in,Tools,TOOL,config/tools,$(TOOLS)) +# $5 : list of config entries (eg. for debug: "dmalloc duma gdb"...) +# Example to build the generated debug config file: +# $(call build_gen_menu_in,config.gen/debug.in,Debug,DEBUG,config/debug,$(DEBUGS)) define build_gen_menu_in @$(ECHO) ' IN $(1)' $(SILENT)(echo "# $(2) facilities menu"; \ @@ -160,9 +156,6 @@ config.gen/cc.in: $(CC_CONFIG_FILES) config.gen/libc.in: $(LIBC_CONFIG_FILES) $(call build_gen_choice_in,$@,C library,LIBC,config/libc,$(LIBCS)) -config.gen/tools.in: $(TOOL_CONFIG_FILES) - $(call build_gen_menu_in,$@,Tools,TOOL,config/tools,$(TOOLS)) - config.gen/debug.in: $(DEBUG_CONFIG_FILES) $(call build_gen_menu_in,$@,Debug,DEBUG,config/debug,$(DEBUGS)) diff --git a/config/tools.in b/config/tools.in deleted file mode 100644 index fe736090..00000000 --- a/config/tools.in +++ /dev/null @@ -1,3 +0,0 @@ -menu "Tools facilities" -source config.gen/tools.in -endmenu diff --git a/scripts/build/tools/200-sstrip.sh b/scripts/build/binutils/sstrip.sh similarity index 83% rename from scripts/build/tools/200-sstrip.sh rename to scripts/build/binutils/sstrip.sh index c6770720..56ed36fc 100644 --- a/scripts/build/tools/200-sstrip.sh +++ b/scripts/build/binutils/sstrip.sh @@ -1,16 +1,20 @@ # This will build and install sstrip to run on host and sstrip target files +do_tools_sstrip_get() { :; } +do_tools_sstrip_extract() { :; } +do_tools_sstrip() { :; } + case "${CT_SSTRIP_FROM}" in ELFkickers) - do_tools_sstrip_get() { + do_sstrip_get() { CT_GetFile "ELFkickers-${CT_SSTRIP_ELFKICKERS_VERSION}" \ http://www.muppetlabs.com/~breadbox/pub/software } - do_tools_sstrip_extract() { + do_sstrip_extract() { CT_Extract "ELFkickers-${CT_SSTRIP_ELFKICKERS_VERSION}" CT_Patch "ELFkickers-${CT_SSTRIP_ELFKICKERS_VERSION}" } - do_tools_sstrip_build() { + do_sstrip() { CT_DoStep INFO "Installing sstrip" CT_DoExecLog ALL cp -av "${CT_SRC_DIR}/ELFkickers-${CT_SSTRIP_ELFKICKERS_VERSION}/sstrip" \ "${CT_BUILD_DIR}/build-strip" @@ -27,10 +31,10 @@ case "${CT_SSTRIP_FROM}" in ;; buildroot) - do_tools_sstrip_get() { + do_sstrip_get() { CT_GetFile sstrip .c http://git.buildroot.net/buildroot/plain/toolchain/sstrip } - do_tools_sstrip_extract() { + do_sstrip_extract() { # We leave the sstrip maintenance to the buildroot people: # -> any fix-up goes directly there # -> we don't have patches for it @@ -39,7 +43,7 @@ case "${CT_SSTRIP_FROM}" in CT_DoExecLog DEBUG mkdir -p "${CT_SRC_DIR}/sstrip" CT_DoExecLog DEBUG cp -v "${CT_TARBALLS_DIR}/sstrip.c" "${CT_SRC_DIR}/sstrip" } - do_tools_sstrip_build() { + do_sstrip() { CT_DoStep INFO "Installing sstrip" mkdir -p "${CT_BUILD_DIR}/build-sstrip" cd "${CT_BUILD_DIR}/build-sstrip" @@ -53,15 +57,4 @@ case "${CT_SSTRIP_FROM}" in CT_EndStep } ;; - - *) do_tools_sstrip_get() { - : - } - do_tools_sstrip_extract() { - : - } - do_tools_sstrip_build() { - : - } - ;; esac diff --git a/scripts/build/tools.sh b/scripts/build/tools.sh deleted file mode 100644 index bb07c9ad..00000000 --- a/scripts/build/tools.sh +++ /dev/null @@ -1,38 +0,0 @@ -# Wrapper to build the tools facilities - -# List all tools facilities, and parse their scripts -CT_TOOLS_FACILITY_LIST= -for f in "${CT_LIB_DIR}/scripts/build/tools/"*.sh; do - _f="$(basename "${f}" .sh)" - _f="${_f#???-}" - __f="CT_TOOL_${_f}" - if [ "${!__f}" = "y" ]; then - CT_DoLog DEBUG "Enabling tool '${_f}'" - . "${f}" - CT_TOOLS_FACILITY_LIST="${CT_TOOLS_FACILITY_LIST} ${_f}" - else - CT_DoLog DEBUG "Disabling tool '${_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 -} - diff --git a/scripts/build/tools/000-template.sh b/scripts/build/tools/000-template.sh deleted file mode 100644 index 032f289c..00000000 --- a/scripts/build/tools/000-template.sh +++ /dev/null @@ -1,34 +0,0 @@ -# Template file for a tool utility - -# Put your download code here -do_tools_foobar_get() { - # For example: - # CT_GetFile "foobar-${CT_FOOBAR_VERSION}" http://foobar.com/releases/ - : -} - -# Put your extract code here -do_tools_foobar_extract() { - # For example: - # CT_Extract "foobar-${CT_FOOBAR_VERSION}" - # CT_Patch "foobar-${CT_FOOBAR_VERSION}" - : -} - -# Put your build code here -do_tools_foobar_build() { - # For example: - # mkdir -p "${CT_BUILD_DIR}/build-foobar" - # CT_Pushd "${CT_BUILD_DIR}/build-foobar" - # CT_DoExecLog ALL \ - # "${CT_SRC_DIR}/foobar-${CT_FOOBAR_VERSION}/configure" \ - # --build=${CT_BUILD} \ - # --host=${CT_TARGET} \ - # --prefix=/usr \ - # --foobar-options - # CT_DoExecLog ALL make - # CT_DoExecLog ALL make DESTDIR="${CT_SYSROOT_DIR}" install - # CT_Popd - : -} - diff --git a/scripts/crosstool-NG.sh.in b/scripts/crosstool-NG.sh.in index 036a67b6..471e3e0a 100644 --- a/scripts/crosstool-NG.sh.in +++ b/scripts/crosstool-NG.sh.in @@ -121,9 +121,9 @@ CT_DoLog INFO "Building environment variables" . "${CT_LIB_DIR}/scripts/build/companion_libs/libelf.sh" . "${CT_LIB_DIR}/scripts/build/binutils/binutils.sh" . "${CT_LIB_DIR}/scripts/build/binutils/elf2flt.sh" +. "${CT_LIB_DIR}/scripts/build/binutils/sstrip.sh" . "${CT_LIB_DIR}/scripts/build/libc/${CT_LIBC}.sh" . "${CT_LIB_DIR}/scripts/build/cc/${CT_CC}.sh" -. "${CT_LIB_DIR}/scripts/build/tools.sh" . "${CT_LIB_DIR}/scripts/build/debug.sh" # Target tuple: CT_TARGET needs a little love: @@ -504,9 +504,9 @@ if [ -z "${CT_RESTART}" ]; then do_libelf_get do_binutils_get do_elf2flt_get + do_sstrip_get do_cc_get do_libc_get - do_tools_get do_debug_get CT_EndStep fi @@ -534,9 +534,9 @@ if [ -z "${CT_RESTART}" ]; then do_libelf_extract do_binutils_extract do_elf2flt_extract + do_sstrip_extract do_cc_extract do_libc_extract - do_tools_extract do_debug_extract CT_EndStep fi diff --git a/steps.mk b/steps.mk index 018927ee..4afb6a76 100644 --- a/steps.mk +++ b/steps.mk @@ -26,6 +26,7 @@ CT_STEPS := libc_check_config \ libelf \ binutils \ elf2flt \ + sstrip \ cc_core_pass_1 \ libc_headers \ libc_start_files \ @@ -37,7 +38,6 @@ CT_STEPS := libc_check_config \ mpfr_target \ libelf_target \ binutils_target \ - tools \ debug \ finish \