[packages] diffutils: handle executable clashes with busybox (#11614)

git-svn-id: svn://svn.openwrt.org/openwrt/packages@32122 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
jow 2012-06-07 17:08:50 +00:00
parent 53ca3acec3
commit 800460e60f

View File

@ -1,5 +1,5 @@
# #
# Copyright (C) 2008-2010 OpenWrt.org # Copyright (C) 2008-2012 OpenWrt.org
# #
# This is free software, licensed under the GNU General Public License v2. # This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information. # See /LICENSE for more information.
@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=diffutils PKG_NAME:=diffutils
PKG_VERSION:=3.0 PKG_VERSION:=3.0
PKG_RELEASE:=1 PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=@GNU/diffutils PKG_SOURCE_URL:=@GNU/diffutils
@ -41,15 +41,17 @@ endef
define Package/diffutils/preinst define Package/diffutils/preinst
#!/bin/sh #!/bin/sh
if [ -e $${IPKG_INSTROOT}/usr/bin/diff ]; then for x in sdiff diff3 diff cmp; do
rm $${IPKG_INSTROOT}/usr/bin/diff; [ -L "$${IPKG_INSTROOT}/usr/bin/$$x" ] && rm -f "$${IPKG_INSTROOT}/usr/bin/$$x"
fi done
exit 9
endef endef
define Package/diffutils/postrm define Package/diffutils/postrm
#!/bin/sh #!/bin/sh
ln -sf ../../bin/busybox $${IPKG_INSTROOT}/usr/bin/diff for x in sdiff diff3 diff cmp; do
$${IPKG_INSTROOT}/usr/bin/diff 2>&1 | grep 'applet not found' > /dev/null 2>&1 && rm $${IPKG_INSTROOT}/usr/bin/diff /bin/busybox $$x -h 2>&1 | grep -q BusyBox && ln -sf ../../bin/busybox /usr/bin/$$x
done
exit 0 exit 0
endef endef