mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-23 15:32:33 +00:00
b98b55a64f
This fixes two issues with cleaning package files from STAGING_DIR:
* CleanStaging currently can only remove files and not directories. This
changes CleanStaging to use clean-package.sh, which does remove
directories.
* Because of the way directories are ordered in the staging files list,
clean-package.sh currently tries (and fails) to remove parent
directories before removing subdirectories. This changes
clean-package.sh to process the staging files list in reverse, so that
subdirectories are removed first.
Signed-off-by: Jeffery To <jeffery.to@gmail.com>
(cherry picked from commit a117093679
)
25 lines
420 B
Bash
Executable File
25 lines
420 B
Bash
Executable File
#!/usr/bin/env bash
|
|
[ -n "$1" -a -n "$2" ] || {
|
|
echo "Usage: $0 <file> <directory>"
|
|
exit 1
|
|
}
|
|
[ -f "$1" -a -d "$2" ] || {
|
|
echo "File/directory not found"
|
|
exit 1
|
|
}
|
|
cat "$1" | (
|
|
cd "$2"
|
|
while read entry; do
|
|
[ -n "$entry" ] || break
|
|
[ -f "$entry" ] && rm -f $entry
|
|
done
|
|
)
|
|
sort -r "$1" | (
|
|
cd "$2"
|
|
while read entry; do
|
|
[ -n "$entry" ] || break
|
|
[ -d "$entry" ] && rmdir "$entry" > /dev/null 2>&1
|
|
done
|
|
)
|
|
true
|