* automake.in (initialize_global_constants): If unreadable by
[automake.git] / tags.am
blob94db7f905b8266d74a21120664356bf7d73131d0
1 ## automake - create Makefile.in from Makefile.am
2 ## Copyright (C) 1994, 1995-1998, 1999 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 2, 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, write to the Free Software
16 ## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
17 ## 02111-1307, USA.
18 tags: TAGS
20 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
21 ## Make sure the list of sources is unique.
22         list='$(SOURCES) $(HEADERS) $(TAGS_FILES)'; \
23         unique=`for i in $$list; do \
24 ## Handle VPATH correctly.
25             if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
26           done | \
27           $(AWK) '    { files[$$0] = 1; } \
28                END { for (i in files) print i; }'`; \
29         mkid -f$$here/ID $$unique $(LISP)
31 TAGS: @DIRS@ $(HEADERS) $(SOURCES) @CONFIG@ $(TAGS_DEPENDENCIES) \
32                 $(TAGS_FILES) $(LISP)
33         tags=; \
34         here=`pwd`; \
35 SUBDIRS list='$(SUBDIRS)'; for subdir in $$list; do \
36 ## Do nothing if we're trying to look in `.'.
37 SUBDIRS   if test "$$subdir" = .; then :; else \
38 SUBDIRS     test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
39 SUBDIRS   fi; \
40 SUBDIRS done; \
41 ## Make sure the list of sources is unique.
42         list='$(SOURCES) $(HEADERS) $(TAGS_FILES)'; \
43         unique=`for i in $$list; do \
44 ## Handle VPATH correctly.
45             if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
46           done | \
47           $(AWK) '    { files[$$0] = 1; } \
48                END { for (i in files) print i; }'`; \
49 ## Make sure we have something to run etags on.
50         test -z "$(ETAGS_ARGS)@CONFIG@$$unique$(LISP)$$tags" \
51           || etags $(ETAGS_ARGS) $$tags @CONFIG@ $$unique $(LISP)