summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/PKGBUILD.5.txt2
-rw-r--r--doc/makepkg.conf.5.txt2
-rw-r--r--scripts/makepkg.sh.in7
3 files changed, 8 insertions, 3 deletions
diff --git a/doc/PKGBUILD.5.txt b/doc/PKGBUILD.5.txt
index 4ac7dc11..6c5ef842 100644
--- a/doc/PKGBUILD.5.txt
+++ b/doc/PKGBUILD.5.txt
@@ -250,7 +250,7 @@ A normal sync or upgrade will not use its value.
*staticlibs*;;
Leave static library (.a) files in packages. Specify `!staticlibs` to
- remove them.
+ remove them (if they have a shared counterpart).
*emptydirs*;;
Leave empty directories in packages.
diff --git a/doc/makepkg.conf.5.txt b/doc/makepkg.conf.5.txt
index be5b809a..ef64d17c 100644
--- a/doc/makepkg.conf.5.txt
+++ b/doc/makepkg.conf.5.txt
@@ -162,7 +162,7 @@ Options
*staticlibs*;;
Leave static library (.a) files in packages. Specify `!staticlibs` to
- remove them.
+ remove them (if they have a shared counterpart).
*emptydirs*;;
Leave empty directories in packages.
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index b2cc8e27..e01e7ab3 100644
--- a/scripts/makepkg.sh.in
+++ b/scripts/makepkg.sh.in
@@ -1584,7 +1584,12 @@ tidy_install() {
if check_option "staticlibs" "n"; then
msg2 "$(gettext "Removing static library files...")"
- find . ! -type d -name "*.a" -exec rm -f -- '{}' +
+ local l
+ while read -rd '' l; do
+ if [[ -f "${l%.a}.so" ]]; then
+ rm "$l"
+ fi
+ done < <(find . ! -type d -name "*.a" -print0)
fi
if check_option "emptydirs" "n"; then