* texinfos.am, tags.am, subdirs.am, multilib.am, mans.am: Add a
[platform/upstream/automake.git] / subdirs.am
1 ## automake - create Makefile.in from Makefile.am
2 ## Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
3 ## Free Software Foundation, Inc.
4
5 ## This program is free software; you can redistribute it and/or modify
6 ## it under the terms of the GNU General Public License as published by
7 ## the Free Software Foundation; either version 2, or (at your option)
8 ## any later version.
9
10 ## This program is distributed in the hope that it will be useful,
11 ## but WITHOUT ANY WARRANTY; without even the implied warranty of
12 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 ## GNU General Public License for more details.
14
15 ## You should have received a copy of the GNU General Public License
16 ## along with this program; if not, write to the Free Software
17 ## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
18 ## 02111-1307, USA.
19 # This directory's subdirectories are mostly independent; you can cd
20 # into them and run `make' without going through this Makefile.
21 # To change the values of `make' variables: instead of editing Makefiles,
22 # (1) if the variable is set in `config.status', edit `config.status'
23 #     (which will cause the Makefiles to be regenerated when you run `make');
24 # (2) otherwise, pass the desired values on the `make' command line.
25
26
27 .PHONY: all-recursive install-data-recursive install-exec-recursive
28 .PHONY: installdirs-recursive install-recursive uninstall-recursive
29 .PHONY: @INSTALLINFO@ check-recursive installcheck-recursive info-recursive
30 .PHONY: dvi-recursive
31
32 all-recursive install-data-recursive install-exec-recursive \
33 installdirs-recursive install-recursive uninstall-recursive @INSTALLINFO@ \
34 check-recursive installcheck-recursive info-recursive dvi-recursive:
35         @set fnord $(MAKEFLAGS); amf=$$2; \
36         dot_seen=no; \
37         target=`echo $@ | sed s/-recursive//`; \
38         list='$(SUBDIRS)'; for subdir in $$list; do \
39           echo "Making $$target in $$subdir"; \
40           if test "$$subdir" = "."; then \
41             dot_seen=yes; \
42             local_target="$$target-am"; \
43           else \
44             local_target="$$target"; \
45           fi; \
46           (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
47 ## This trick allows "-k" to keep its natural meaning when running a
48 ## recursive rule.
49            || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
50         done; \
51         if test "$$dot_seen" = "no"; then \
52           $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
53         fi; test -z "$$fail"
54
55 ## We run all `clean' targets in reverse order.  Why?  It's an attempt
56 ## to alleviate a problem that can happen when dependencies are
57 ## enabled.  In this case, the .P file in one directory can depend on
58 ## some automatically generated header in an earlier directory.  Since
59 ## the dependencies are required before any target is examined, make
60 ## bombs.
61 mostlyclean-recursive clean-recursive distclean-recursive \
62 maintainer-clean-recursive:
63         @set fnord $(MAKEFLAGS); amf=$$2; \
64         dot_seen=no; \
65 ## For distclean and maintainer-clean we make sure to use the full
66 ## list of subdirectories.  We do this so that `configure; make
67 ## distclean' really is a no-op, even if SUBDIRS is conditional.  For
68 ## other clean targets this doesn't matter.
69         case "$@" in \
70           distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
71           *) list='$(SUBDIRS)' ;; \
72         esac; \
73         rev=''; for subdir in $$list; do \
74           if test "$$subdir" = "."; then :; else \
75             rev="$$subdir $$rev"; \
76           fi; \
77         done; \
78 ## Always do `.' last.
79         rev="$$rev ."; \
80         target=`echo $@ | sed s/-recursive//`; \
81         for subdir in $$rev; do \
82           echo "Making $$target in $$subdir"; \
83           if test "$$subdir" = "."; then \
84             local_target="$$target-am"; \
85           else \
86             local_target="$$target"; \
87           fi; \
88           (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
89 ## This trick allows "-k" to keep its natural meaning when running a
90 ## recursive rule.
91            || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
92         done && test -z "$$fail"