]> git.ipfire.org Git - thirdparty/automake.git/commitdiff
Speed up removal of auxiliary linker output files for ltlibraries.
authorRalf Wildenhues <Ralf.Wildenhues@gmx.de>
Sat, 21 Aug 2010 09:04:04 +0000 (11:04 +0200)
committerRalf Wildenhues <Ralf.Wildenhues@gmx.de>
Sat, 21 Aug 2010 09:04:04 +0000 (11:04 +0200)
* lib/am/ltlib.am (clean-%DIR%LTLIBRARIES): Rewrite using just
one `rm' invocation.
Report by Bob Friesenhahn.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
ChangeLog
lib/am/ltlib.am

index 98011dcfb93b297b60623ea0357a8520cf818158..6e2c275bf7da494ac577a8c150bff87b9b2a95cd 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 2010-08-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
 
+       Speed up removal of auxiliary linker output files for ltlibraries.
+       * lib/am/ltlib.am (clean-%DIR%LTLIBRARIES): Rewrite using just
+       one `rm' invocation.
+       Report by Bob Friesenhahn.
+
        Improve robustness of mdate-sh script.
        * lib/mdate-sh: Sanitize zsh behavior on startup, to ensure
        $ls_command is word-split properly upon invocation.
index 29aa00ce78dbe07975e5a7fda9c4eff9959fe272..55e53e1767f18be8f1b0aff7701227c4d3c5a000 100644 (file)
@@ -104,9 +104,11 @@ clean-%DIR%LTLIBRARIES:
 ## `so_locations' files are created by some linkers (IRIX, OSF) when
 ## building a shared object.  Libtool places these files in the
 ## directory where the shared object is created.
-       @list='$(%DIR%_LTLIBRARIES)'; for p in $$list; do \
-         dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
-         test "$$dir" != "$$p" || dir=.; \
-         echo "rm -f \"$${dir}/so_locations\""; \
-         rm -f "$${dir}/so_locations"; \
-       done
+       @list='$(%DIR%_LTLIBRARIES)'; \
+       locs=`for p in $$list; do echo $$p; done | \
+             sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \
+             sort -u`; \
+       test -z "$$locs" || { \
+         echo rm -f $${locs}; \
+         rm -f $${locs}; \
+       }