[Buildroot] [PATCH] netcat: add forced dependence on BusyBox
Carlos Santos
casantos at datacom.ind.br
Thu Oct 12 15:14:18 UTC 2017
It may be necessary if packages become built in parallel, leading to a
race condition on the creation of the "nc" link. Moreover, netcat is as
shy as BusyBox and would not override an existing file/link, so we must
remove $(TARGET_DIR)/usr/bin/nc in advance.
Of course this still leaves a race conditon if other netcat competitors
but we must assume thet the user is a grown-up person who knows what is
doing.
Signed-off-by: Carlos Santos <casantos at datacom.ind.br>
---
package/netcat/netcat.mk | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/package/netcat/netcat.mk b/package/netcat/netcat.mk
index eb7ddcac27..c032eea56d 100644
--- a/package/netcat/netcat.mk
+++ b/package/netcat/netcat.mk
@@ -9,4 +9,15 @@ NETCAT_SITE = http://downloads.sourceforge.net/project/netcat/netcat/$(NETCAT_VE
NETCAT_LICENSE = GPL-2.0+
NETCAT_LICENSE_FILES = COPYING
+# Ensure Busybox gets built/installed before, so that this package
+# overrides Busybox nc. We must remove an existing file/link because
+# netcat is as shy as Busybox and would not override existing files.
+ifeq ($(BR2_PACKAGE_BUSYBOX),y)
+NETCAT_DEPENDENCIES += busybox
+define NETCAT_RMOVE_NC_LINK
+ rm -f $(TARGET_DIR)/usr/bin/nc
+endef
+NETCAT_PRE_INSTALL_TARGET_HOOKS += NETCAT_RMOVE_NC_LINK
+endif
+
$(eval $(autotools-package))
--
2.13.6
More information about the buildroot
mailing list