summaryrefslogtreecommitdiff
path: root/brp-clean-perl-files
diff options
context:
space:
mode:
Diffstat (limited to 'brp-clean-perl-files')
-rw-r--r--brp-clean-perl-files32
1 files changed, 27 insertions, 5 deletions
diff --git a/brp-clean-perl-files b/brp-clean-perl-files
index c34fdb8..ca30d63 100644
--- a/brp-clean-perl-files
+++ b/brp-clean-perl-files
@@ -1,9 +1,31 @@
#!/bin/sh
-for d in $RPM_BUILD_ROOT/usr/{lib,lib64,share}/perl5; do
- [ -d $d ] || continue
- find $d -type f -name ".packlist" -delete
- find $d -type f -name "*.bs" -size 0 -delete
+if [ -z "$RPM_BUILD_ROOT" ]; then
+ printf '%s\n' "No build root defined" >&2
+ exit 1
+fi
+
+if [ ! -d "$RPM_BUILD_ROOT" ]; then
+ printf '%s\n' "Invalid build root" >&2
+ exit 1
+fi
+
+perldirs="$RPM_BUILD_ROOT/usr/lib/perl5 $RPM_BUILD_ROOT/usr/lib64/perl5 $RPM_BUILD_ROOT/usr/share/perl5"
+d=""
+for i in $perldirs; do
+ [ -d "$i" ] || continue
+ d="$d $i"
+done
+[ -z "$d" ] && exit 0
+
+find $d -name ".packlist" -o -name perllocal.pod | xargs rm -f
+
+for i in $(find $d -name "*.bs"); do
+ if [ -s "$i" ]; then
+ printf '%s\n' "non empty .bs file!"
+ else
+ rm -f "$i"
+ fi
done
-perl -MConfig -e 'unlink "$ENV{RPM_BUILD_ROOT}$Config{installarchlib}/perllocal.pod"'
+find $d -depth -type d -exec rmdir {} 2>/dev/null \;