maint: Update HACKING
[automake.git] / Makefile.am
blobb780307f71c7ac2004f87c302c899b57aa11919e
1 ## Process this file with automake to create Makefile.in
3 ## Makefile for Automake.
5 # Copyright (C) 1995-2017 Free Software Foundation, Inc.
7 # This program is free software; you can redistribute it and/or modify
8 # it under the terms of the GNU General Public License as published by
9 # the Free Software Foundation; either version 2, or (at your option)
10 # any later version.
12 # This program is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 # GNU General Public License for more details.
17 # You should have received a copy of the GNU General Public License
18 # along with this program.  If not, see <https://www.gnu.org/licenses/>.
20 ## Might be updated later.
21 CLEANFILES =
22 DISTCLEANFILES =
23 MAINTAINERCLEANFILES =
24 EXTRA_DIST =
25 TAGS_FILES =
26 dist_noinst_DATA =
27 nodist_noinst_DATA =
28 dist_noinst_SCRIPTS =
29 nodist_noinst_SCRIPTS =
31 ## ------------ ##
32 ##  Top level.  ##
33 ## ------------ ##
35 EXTRA_DIST += \
36   bootstrap \
37   GNUmakefile \
38   HACKING \
39   PLANS
41 # We want a handful of substitutions to be fully-expanded by make;
42 # then use config.status to substitute the remainder where a single
43 # expansion is sufficient.  We use a funny notation here to avoid
44 # configure substitutions in our text.
45 do_subst = ( sed \
46   -e "s,[@]configure_input[@],Generated from $$in; do not edit by hand.,g" \
47   -e 's,[@]datadir[@],$(datadir),g' \
48   -e 's,[@]amdir[@],$(amdir),g' \
49   -e 's,[@]bindir[@],$(bindir),g' \
50   -e 's,[@]docdir[@],$(docdir),g' \
51   -e 's,[@]pkgvdatadir[@],$(pkgvdatadir),g' \
52   -e 's,[@]scriptdir[@],$(scriptdir),g' \
53   -e 's,[@]automake_acdir[@],$(automake_acdir),g' \
54   -e 's,[@]system_acdir[@],$(system_acdir),g' \
55 ## Hack to avoid a spurious substitution in the Automake script (part 1).
56   -e 's,[@]am__isrc[@],!!@!!am__isrc!!@!!,g' \
57   | $(SHELL) ./config.status --file=- \
58 ## Hack to avoid a spurious substitution in the Automake script (part 2).
59   | sed -e 's,!!@!!am__isrc!!@!!,@''am__isrc@,g' \
60   )
62 # Generated  files shouldn't contain unexpanded '@substitutions@', and
63 # should be made read-only, to prevent them from being edited by mistake
64 # instead of the file the are generated from.
65 generated_file_finalize = $(AM_V_at) \
66   if LC_ALL=C grep '@[a-zA-Z0-9_][a-zA-Z0-9_]*@' $@-t; then \
67     echo "$@ contains unexpanded substitution (see lines above)"; \
68     exit 1; \
69   fi; \
70   chmod a-w $@-t && mv -f $@-t $@
72 # Wrapper for the build environment.
73 nodist_noinst_SCRIPTS += pre-inst-env
74 CLEANFILES += $(noinst_SCRIPTS)
76 # The master location for INSTALL is lib/INSTALL.
77 # This is where "make fetch" will install new versions.
78 # Make sure we also update this copy.
79 INSTALL: lib/INSTALL
80         $(AM_V_GEN)cp $(srcdir)/lib/INSTALL $@
82 # We don't use the default name for the autom4te cache directory,
83 # so we need this.
84 maintainer-clean-local:
85         rm -rf .autom4te.cache
87 # So that automake won't complain about the missing ChangeLog.
88 # The real rule for ChangeLog generation is now in maintainer/maint.mk
89 # (as it is maintainer-specific).
90 ChangeLog:
92 # Third-party, obsolescent or experimental stuff.
93 EXTRA_DIST += \
94   contrib/tap-driver.pl \
95   contrib/check-html.am \
96   contrib/multilib/README \
97   contrib/multilib/config-ml.in \
98   contrib/multilib/symlink-tree \
99   contrib/multilib/multilib.am \
100   contrib/multilib/multi.m4 \
101   contrib/README
103 # Older files, kept mostly for historical interest.
104 EXTRA_DIST += \
105   old/ChangeLog-tests \
106   old/ChangeLog.96 \
107   old/ChangeLog.98 \
108   old/ChangeLog.00 \
109   old/ChangeLog.01 \
110   old/ChangeLog.02 \
111   old/ChangeLog.03 \
112   old/ChangeLog.04 \
113   old/ChangeLog.09 \
114   old/ChangeLog.11 \
115   old/TODO
117 # Maintainer-specific files and scripts.
118 EXTRA_DIST += \
119   maintainer/am-ft \
120   maintainer/am-xft \
121   maintainer/rename-tests \
122   maintainer/maint.mk \
123   maintainer/syntax-checks.mk
125 # Most work delegated to sub-dir makefile fragments.
126 include $(srcdir)/bin/local.mk
127 include $(srcdir)/doc/local.mk
128 include $(srcdir)/lib/local.mk
129 include $(srcdir)/lib/Automake/local.mk
130 include $(srcdir)/lib/am/local.mk
131 include $(srcdir)/m4/local.mk
132 include $(srcdir)/t/local.mk
134 # vim: ft=automake noet