summaryrefslogtreecommitdiffstats
path: root/scripts/clean-package.sh
diff options
context:
space:
mode:
authorJeffery To <jeffery.to@gmail.com>2020-02-19 05:15:04 +0800
committerPetr Štetiar <ynezz@true.cz>2020-03-01 21:35:59 +0100
commitf96cfe019a4d1190ef3199594ad38b7bf67953fb (patch)
tree79dc826859bbdb4e04c6824addba1ee76c58bca6 /scripts/clean-package.sh
parentdddcff25501ddd07546be09758fde2a6b56116ca (diff)
downloadopenwrt-f96cfe019a4d1190ef3199594ad38b7bf67953fb.tar.gz
openwrt-f96cfe019a4d1190ef3199594ad38b7bf67953fb.tar.bz2
openwrt-f96cfe019a4d1190ef3199594ad38b7bf67953fb.zip
build: Fix directory symlinks not removed when cleaning STAGING_DIR
Currently, a symbolic link whose target is a directory will not be removed when cleaning packages from STAGING_DIR. In the first cleaning pass in scripts/clean-package.sh, the -f test for a directory symlink returns false (because the link target is a directory) and so the symlink is not removed. In the second pass, the -d test returns true for a directory symlink, but the symlink is not removed by rmdir because rmdir only removes (real) directories. This updates clean-package.sh to remove all non-directories (including symbolic links) in the first pass. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
Diffstat (limited to 'scripts/clean-package.sh')
-rwxr-xr-xscripts/clean-package.sh2
1 files changed, 1 insertions, 1 deletions
diff --git a/scripts/clean-package.sh b/scripts/clean-package.sh
index 6dd9bf7306..035725625d 100755
--- a/scripts/clean-package.sh
+++ b/scripts/clean-package.sh
@@ -12,7 +12,7 @@ cat "$1" | (
cd "$2"
while read entry; do
[ -n "$entry" ] || break
- [ -f "$entry" ] && rm -f $entry
+ [ ! -d "$entry" ] || [ -L "$entry" ] && rm -f "$entry"
done
)
sort -r "$1" | (