Faster `make uninstall'; fast install for JAVA.
[automake/ericb.git] / lib / am / inst-vars.am
blob4fa0d2281f5d2fc494ae9326382c9675a7a904cc
1 ## automake - create Makefile.in from Makefile.am
2 ## Copyright (C) 2004, 2007, 2008  Free Software Foundation, Inc.
4 ## This program is free software; you can redistribute it and/or modify
5 ## it under the terms of the GNU General Public License as published by
6 ## the Free Software Foundation; either version 3, or (at your option)
7 ## any later version.
9 ## This program is distributed in the hope that it will be useful,
10 ## but WITHOUT ANY WARRANTY; without even the implied warranty of
11 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 ## GNU General Public License for more details.
14 ## You should have received a copy of the GNU General Public License
15 ## along with this program.  If not, see <http://www.gnu.org/licenses/>.
17 if %?FIRST%
18 ## These variables help stripping any $(VPATH) that some
19 ## Make implementations prepend before VPATH-found files.
20 ## The issue is discussed at length in distdir.am.
21 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
22 am__vpath_adj = case $$p in \
23     $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
24     *) f=$$p;; \
25   esac;
26 ## Strip all directories.
27 am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
28 ## Number of files to install concurrently.
29 am__install_max = 40
30 ## Take a $list of nobase files, strip $(srcdir) from them.
31 ## Split apart in setup variable and an action that can be used
32 ## in backticks or in a pipe.
33 am__nobase_strip_setup = \
34   srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
35 am__nobase_strip = \
36   for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
37 ## Take a $list of nobase files, collect them, indexed by their
38 ## srcdir-stripped dirnames.  For up to am__install_max files, output
39 ## a line containing the dirname and the files, space-separated.
40 ## The arbitrary limit helps avoid the quadratic scaling exhibited by
41 ## string concatenation in most shells, and should avoid line length
42 ## limitations, while still offering only negligible performance impact
43 ## through spawning more install commands than absolutely needed.
44 am__nobase_list = $(am__nobase_strip_setup); \
45   for p in $$list; do echo "$$p $$p"; done | \
46   sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
47   $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
48     if (++n[$$2] == $(am__install_max)) \
49       { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
50     END { for (dir in files) print dir, files[dir] }'
51 ## Collect up to 40 files per line from stdin.
52 am__base_list = \
53   sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
54   sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
55 endif %?FIRST%