summaryrefslogtreecommitdiff
path: root/scripts/build/binutils
diff options
context:
space:
mode:
authorYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2010-03-16 23:21:57 (GMT)
committerYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2010-03-16 23:21:57 (GMT)
commitb0fece468986e98124dfd59e24222724cf7c96fa (patch)
tree23130fa9ebf64754c203d89ef4a39c9a0bac375f /scripts/build/binutils
parent2244007325f1fbd50177b56511091b347837997e (diff)
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.
Diffstat (limited to 'scripts/build/binutils')
-rw-r--r--scripts/build/binutils/sstrip.sh60
1 files changed, 60 insertions, 0 deletions
diff --git a/scripts/build/binutils/sstrip.sh b/scripts/build/binutils/sstrip.sh
new file mode 100644
index 0000000..56ed36f
--- /dev/null
+++ b/scripts/build/binutils/sstrip.sh
@@ -0,0 +1,60 @@
+# 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_sstrip_get() {
+ CT_GetFile "ELFkickers-${CT_SSTRIP_ELFKICKERS_VERSION}" \
+ http://www.muppetlabs.com/~breadbox/pub/software
+ }
+ do_sstrip_extract() {
+ CT_Extract "ELFkickers-${CT_SSTRIP_ELFKICKERS_VERSION}"
+ CT_Patch "ELFkickers-${CT_SSTRIP_ELFKICKERS_VERSION}"
+ }
+ 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"
+ cd "${CT_BUILD_DIR}/build-strip"
+
+ CT_DoLog EXTRA "Building sstrip"
+ CT_DoExecLog ALL make CC="${CT_HOST}-gcc" sstrip
+
+ CT_DoLog EXTRA "Installing sstrip"
+ CT_DoExecLog ALL install -m 755 sstrip "${CT_PREFIX_DIR}/bin/${CT_TARGET}-sstrip"
+
+ CT_EndStep
+ }
+ ;;
+
+ buildroot)
+ do_sstrip_get() {
+ CT_GetFile sstrip .c http://git.buildroot.net/buildroot/plain/toolchain/sstrip
+ }
+ 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
+ # -> we don't need to patch it
+ # -> just create a directory in src/, and copy it there.
+ CT_DoExecLog DEBUG mkdir -p "${CT_SRC_DIR}/sstrip"
+ CT_DoExecLog DEBUG cp -v "${CT_TARBALLS_DIR}/sstrip.c" "${CT_SRC_DIR}/sstrip"
+ }
+ do_sstrip() {
+ CT_DoStep INFO "Installing sstrip"
+ mkdir -p "${CT_BUILD_DIR}/build-sstrip"
+ cd "${CT_BUILD_DIR}/build-sstrip"
+
+ CT_DoLog EXTRA "Building sstrip"
+ CT_DoExecLog ALL "${CT_HOST}-gcc" -Wall -o sstrip "${CT_SRC_DIR}/sstrip/sstrip.c"
+
+ CT_DoLog EXTRA "Installing sstrip"
+ CT_DoExecLog ALL install -m 755 sstrip "${CT_PREFIX_DIR}/bin/${CT_TARGET}-sstrip"
+
+ CT_EndStep
+ }
+ ;;
+esac