* [Buildroot] [PATCH 1/2] busybox: unify duplicated build steps
@ 2010-11-17 6:47 Mike Frysinger
2010-11-17 6:47 ` [Buildroot] [PATCH 2/2] busybox: respect strip settings Mike Frysinger
0 siblings, 1 reply; 5+ messages in thread
From: Mike Frysinger @ 2010-11-17 6:47 UTC (permalink / raw)
To: buildroot
This does set a few more vars in some steps that weren't set before, but
they should be harmless in the contexts in question. And the resulting
save in duplication is nice.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
---
package/busybox/busybox.mk | 21 ++++++---------------
1 files changed, 6 insertions(+), 15 deletions(-)
diff --git a/package/busybox/busybox.mk b/package/busybox/busybox.mk
index b7f4740..5ef1622 100644
--- a/package/busybox/busybox.mk
+++ b/package/busybox/busybox.mk
@@ -123,15 +123,13 @@ endef
define BUSYBOX_BUILD_CMDS
$(BUSYBOX_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" ARCH=$(KERNEL_ARCH) \
PREFIX="$(TARGET_DIR)" EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \
- CROSS_COMPILE="$(TARGET_CROSS)" -C $(@D)
+ CROSS_COMPILE="$(TARGET_CROSS)" CONFIG_PREFIX="$(TARGET_DIR)" \
+ -C $(BUSYBOX_DIR)
endef
ifeq ($(BR2_PACKAGE_BUSYBOX_FULLINSTALL),y)
define BUSYBOX_INSTALL_BINARY
- $(BUSYBOX_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" ARCH=$(KERNEL_ARCH) \
- PREFIX="$(TARGET_DIR)" EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \
- CROSS_COMPILE="$(TARGET_CROSS)" CONFIG_PREFIX="$(TARGET_DIR)" \
- -C $(@D) install
+ $(BUSYBOX_BUILD_CMDS) install
endef
else
define BUSYBOX_INSTALL_BINARY
@@ -145,24 +143,17 @@ define BUSYBOX_INSTALL_TARGET_CMDS
endef
define BUSYBOX_UNINSTALL_TARGET_CMDS
- $(BUSYBOX_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" ARCH=$(KERNEL_ARCH) \
- PREFIX="$(TARGET_DIR)" EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \
- CROSS_COMPILE="$(TARGET_CROSS)" CONFIG_PREFIX="$(TARGET_DIR)" \
- -C $(@D) uninstall
+ $(BUSYBOX_BUILD_CMDS) uninstall
endef
define BUSYBOX_CLEAN_CMDS
- $(BUSYBOX_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" ARCH=$(KERNEL_ARCH) \
- PREFIX="$(TARGET_DIR)" EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \
- CROSS_COMPILE="$(TARGET_CROSS)" CONFIG_PREFIX="$(TARGET_DIR)" \
- -C $(@D) clean
+ $(BUSYBOX_BUILD_CMDS) clean
endef
$(eval $(call GENTARGETS,package,busybox))
busybox-menuconfig: $(BUSYBOX_DIR)/.stamp_extracted
- $(BUSYBOX_MAKE_ENV) $(MAKE) ARCH=$(KERNEL_ARCH) \
- CROSS_COMPILE="$(TARGET_CROSS)" -C $(BUSYBOX_DIR) menuconfig
+ $(BUSYBOX_BUILD_CMDS) menuconfig
rm -f $(BUSYBOX_DIR)/.stamp_built
rm -f $(BUSYBOX_DIR)/.stamp_target_installed
--
1.7.3.2
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [Buildroot] [PATCH 2/2] busybox: respect strip settings
2010-11-17 6:47 [Buildroot] [PATCH 1/2] busybox: unify duplicated build steps Mike Frysinger
@ 2010-11-17 6:47 ` Mike Frysinger
2010-11-18 4:00 ` [Buildroot] [PATCH 2/2 v2] busybox: let buildroot handle stripping Mike Frysinger
0 siblings, 1 reply; 5+ messages in thread
From: Mike Frysinger @ 2010-11-17 6:47 UTC (permalink / raw)
To: buildroot
For some ABI's (like FLAT), we cannot strip busybox as the file format
does not support it and strip will abort with errors like 'File format
not recognized'.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
---
package/busybox/busybox.mk | 8 +++++++-
1 files changed, 7 insertions(+), 1 deletions(-)
diff --git a/package/busybox/busybox.mk b/package/busybox/busybox.mk
index 5ef1622..323dad8 100644
--- a/package/busybox/busybox.mk
+++ b/package/busybox/busybox.mk
@@ -16,6 +16,12 @@ BUSYBOX_BUILD_CONFIG = $(BUSYBOX_DIR)/.config
# Allows the build system to tweak CFLAGS
BUSYBOX_MAKE_ENV = $(TARGET_MAKE_ENV) CFLAGS="$(TARGET_CFLAGS) -I$(LINUX_HEADERS_DIR)/include"
+ifeq ($(TARGET_STRIP),true)
+BUSYBOX_STRIP = cp $$< $$@; :
+else
+BUSYBOX_STRIP = $(TARGET_STRIP)
+endif
+
ifndef BUSYBOX_CONFIG_FILE
BUSYBOX_CONFIG_FILE = $(call qstrip,$(BR2_PACKAGE_BUSYBOX_CONFIG))
endif
@@ -124,7 +130,7 @@ define BUSYBOX_BUILD_CMDS
$(BUSYBOX_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" ARCH=$(KERNEL_ARCH) \
PREFIX="$(TARGET_DIR)" EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \
CROSS_COMPILE="$(TARGET_CROSS)" CONFIG_PREFIX="$(TARGET_DIR)" \
- -C $(BUSYBOX_DIR)
+ STRIP='$(BUSYBOX_STRIP)' -C $(BUSYBOX_DIR)
endef
ifeq ($(BR2_PACKAGE_BUSYBOX_FULLINSTALL),y)
--
1.7.3.2
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [Buildroot] [PATCH 2/2 v2] busybox: let buildroot handle stripping
2010-11-17 6:47 ` [Buildroot] [PATCH 2/2] busybox: respect strip settings Mike Frysinger
@ 2010-11-18 4:00 ` Mike Frysinger
2010-11-18 10:24 ` Mike Frysinger
0 siblings, 1 reply; 5+ messages in thread
From: Mike Frysinger @ 2010-11-18 4:00 UTC (permalink / raw)
To: buildroot
For some ABI's (like FLAT), we cannot strip busybox as the file format
does not support it and strip will abort with errors like 'File format
not recognized'. Since the toplevel already takes care of stripping
things, simply disable the busybox step.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
---
v2
- drop the strip logic entirely in favor of common toplevel
package/busybox/busybox.mk | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/package/busybox/busybox.mk b/package/busybox/busybox.mk
index 5ef1622..92d4ab7 100644
--- a/package/busybox/busybox.mk
+++ b/package/busybox/busybox.mk
@@ -124,7 +124,7 @@ define BUSYBOX_BUILD_CMDS
$(BUSYBOX_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" ARCH=$(KERNEL_ARCH) \
PREFIX="$(TARGET_DIR)" EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \
CROSS_COMPILE="$(TARGET_CROSS)" CONFIG_PREFIX="$(TARGET_DIR)" \
- -C $(BUSYBOX_DIR)
+ STRIP=true -C $(BUSYBOX_DIR)
endef
ifeq ($(BR2_PACKAGE_BUSYBOX_FULLINSTALL),y)
--
1.7.3.2
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [Buildroot] [PATCH 2/2 v2] busybox: let buildroot handle stripping
2010-11-18 4:00 ` [Buildroot] [PATCH 2/2 v2] busybox: let buildroot handle stripping Mike Frysinger
@ 2010-11-18 10:24 ` Mike Frysinger
0 siblings, 0 replies; 5+ messages in thread
From: Mike Frysinger @ 2010-11-18 10:24 UTC (permalink / raw)
To: buildroot
For some ABI's (like FLAT), we cannot strip busybox as the file format
does not support it and strip will abort with errors like 'File format
not recognized'. Since the toplevel already takes care of stripping
things, simply disable the busybox step.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
---
v3
- pull patch from upstream to allow SKIP_STRIP=y rather than set STRIP=...
.../busybox-1.17.3/busybox-1.17.3-skip_strip.patch | 26 ++++++++++++++++++++
package/busybox/busybox.mk | 2 +-
2 files changed, 27 insertions(+), 1 deletions(-)
create mode 100644 package/busybox/busybox-1.17.3/busybox-1.17.3-skip_strip.patch
diff --git a/package/busybox/busybox-1.17.3/busybox-1.17.3-skip_strip.patch b/package/busybox/busybox-1.17.3/busybox-1.17.3-skip_strip.patch
new file mode 100644
index 0000000..0c2321e
--- /dev/null
+++ b/package/busybox/busybox-1.17.3/busybox-1.17.3-skip_strip.patch
@@ -0,0 +1,26 @@
+From b78d561ec79b6a7c29d14bf49c82b600815b2cc4 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Tue, 16 Nov 2010 09:01:30 -0500
+Subject: [PATCH] allow SKIP_STRIP to be set in the env
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ Makefile.flags | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/Makefile.flags b/Makefile.flags
+index 60bb888..363300b 100644
+--- a/Makefile.flags
++++ b/Makefile.flags
+@@ -4,7 +4,7 @@
+
+ BB_VER = $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
+ export BB_VER
+-SKIP_STRIP = n
++SKIP_STRIP ?= n
+
+ # -std=gnu99 needed for [U]LLONG_MAX on some systems
+ CPPFLAGS += $(call cc-option,-std=gnu99,)
+--
+1.7.3.2
+
diff --git a/package/busybox/busybox.mk b/package/busybox/busybox.mk
index 5ef1622..fd0be15 100644
--- a/package/busybox/busybox.mk
+++ b/package/busybox/busybox.mk
@@ -124,7 +124,7 @@ define BUSYBOX_BUILD_CMDS
$(BUSYBOX_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" ARCH=$(KERNEL_ARCH) \
PREFIX="$(TARGET_DIR)" EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \
CROSS_COMPILE="$(TARGET_CROSS)" CONFIG_PREFIX="$(TARGET_DIR)" \
- -C $(BUSYBOX_DIR)
+ SKIP_STRIP=y -C $(BUSYBOX_DIR)
endef
ifeq ($(BR2_PACKAGE_BUSYBOX_FULLINSTALL),y)
--
1.7.3.2
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [Buildroot] [PATCH 2/2 v2] busybox: let buildroot handle stripping
2010-12-12 16:58 [Buildroot] [PATCH 1/2 v2] busybox: unify duplicated build steps Mike Frysinger
@ 2010-12-12 16:58 ` Mike Frysinger
0 siblings, 0 replies; 5+ messages in thread
From: Mike Frysinger @ 2010-12-12 16:58 UTC (permalink / raw)
To: buildroot
For some ABI's (like FLAT), we cannot strip busybox as the file format
does not support it and strip will abort with errors like 'File format
not recognized'. Since the toplevel already takes care of stripping
things, simply disable the busybox step.
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
---
v2
- rebase on top of new unification code
package/busybox/busybox.mk | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/package/busybox/busybox.mk b/package/busybox/busybox.mk
index 67664f6..ca5b495 100644
--- a/package/busybox/busybox.mk
+++ b/package/busybox/busybox.mk
@@ -21,7 +21,8 @@ BUSYBOX_MAKE_OPTS = \
PREFIX="$(TARGET_DIR)" \
EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \
CROSS_COMPILE="$(TARGET_CROSS)" \
- CONFIG_PREFIX="$(TARGET_DIR)"
+ CONFIG_PREFIX="$(TARGET_DIR)" \
+ SKIP_STRIP=y
ifndef BUSYBOX_CONFIG_FILE
BUSYBOX_CONFIG_FILE = $(call qstrip,$(BR2_PACKAGE_BUSYBOX_CONFIG))
--
1.7.3.3
^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2010-12-12 16:58 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-11-17 6:47 [Buildroot] [PATCH 1/2] busybox: unify duplicated build steps Mike Frysinger
2010-11-17 6:47 ` [Buildroot] [PATCH 2/2] busybox: respect strip settings Mike Frysinger
2010-11-18 4:00 ` [Buildroot] [PATCH 2/2 v2] busybox: let buildroot handle stripping Mike Frysinger
2010-11-18 10:24 ` Mike Frysinger
2010-12-12 16:58 [Buildroot] [PATCH 1/2 v2] busybox: unify duplicated build steps Mike Frysinger
2010-12-12 16:58 ` [Buildroot] [PATCH 2/2 v2] busybox: let buildroot handle stripping Mike Frysinger
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.