netcat: force-remove nc link before install
authorArnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Sat, 31 Mar 2018 22:28:21 +0000 (00:28 +0200)
committerArnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Sat, 31 Mar 2018 22:28:21 +0000 (00:28 +0200)
The nc -> netcat symlink is not created if nc exists already, e.g.
from busybox.

For netcat itself this is not needed, it is always installed.

Cc: Carlos Santos <casantos@datacom.ind.br>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
package/netcat/netcat.mk

index 6c7c4b8f299bf1b67ca43ce127a32a2c5b51939a..d8b3c930b936bdc26a9d5393582295354c586a8c 100644 (file)
@@ -9,10 +9,17 @@ 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.
+# Ensure Busybox gets built/installed before, so that this package
+# overrides Busybox nc.
 ifeq ($(BR2_PACKAGE_BUSYBOX),y)
 NETCAT_DEPENDENCIES += busybox
 endif
 
+# Netcat doesn't overwrite a pre-existing 'nc' (e.g. from busybox) so
+# force-remove it.
+define NETCAT_RMOVE_NC_LINK
+       rm -f $(TARGET_DIR)/usr/bin/nc
+endef
+NETCAT_PRE_INSTALL_TARGET_HOOKS += NETCAT_RMOVE_NC_LINK
+
 $(eval $(autotools-package))