summaryrefslogtreecommitdiffstats
path: root/rules/busybox.make
diff options
context:
space:
mode:
Diffstat (limited to 'rules/busybox.make')
-rw-r--r--rules/busybox.make24
1 files changed, 23 insertions, 1 deletions
diff --git a/rules/busybox.make b/rules/busybox.make
index 84c23ddb4..ab225ce71 100644
--- a/rules/busybox.make
+++ b/rules/busybox.make
@@ -74,8 +74,15 @@ BUSYBOX_INSTALL_OPT := \
$(STATEDIR)/busybox.install:
@$(call targetinfo)
@$(call world/install, BUSYBOX)
- install -D -m644 $(BUSYBOX_DIR)/busybox.links \
+ @install -D -m644 $(BUSYBOX_DIR)/busybox.links \
$(BUSYBOX_PKGDIR)/etc/busybox.links
+ifdef PTXCONF_BUSYBOX_FEATURE_INDIVIDUAL
+ @install -D -m644 $(BUSYBOX_DIR)/0_lib/libbusybox.so.$(BUSYBOX_VERSION) \
+ $(BUSYBOX_PKGDIR)/lib/libbusybox.so.$(BUSYBOX_VERSION)
+ @mkdir -p $(BUSYBOX_PKGDIR)/usr/lib/busybox
+ @cp -r $(BUSYBOX_DIR)/0_lib/* \
+ $(BUSYBOX_PKGDIR)/usr/lib/busybox
+endif
@$(call touch)
# ----------------------------------------------------------------------------
@@ -91,6 +98,20 @@ $(STATEDIR)/busybox.targetinstall:
@$(call install_fixup, busybox,AUTHOR,"Robert Schwebel <r.schwebel@pengutronix.de>")
@$(call install_fixup, busybox,DESCRIPTION,missing)
+ifdef PTXCONF_BUSYBOX_FEATURE_INDIVIDUAL
+#
+# individual busybox applets and shared lib
+#
+ @$(call install_lib, busybox, 0, 0, 0644, libbusybox)
+
+ @cat $(BUSYBOX_PKGDIR)/etc/busybox.links | while read link; do \
+ $(call install_copy, busybox, 0, 0, 755, \
+ "$(BUSYBOX_PKGDIR)/usr/lib/busybox/$${link##*/}", "$${link}"); \
+ done
+else
+#
+# traditionally busybox with links
+#
ifdef PTXCONF_BUSYBOX_FEATURE_SUID
@$(call install_copy, busybox, 0, 0, 4755, -, /bin/busybox)
ifdef PTXCONF_BUSYBOX_FEATURE_SUID_CONFIG
@@ -108,6 +129,7 @@ endif
esac; \
$(call install_link, busybox, "$${to}", "$${link}"); \
done
+endif
ifdef PTXCONF_BUSYBOX_FTPD_INETD
@$(call install_alternative, busybox, 0, 0, 0644, /etc/inetd.conf.d/ftpd)