1 ## automake - create Makefile.in from Makefile.am
3 ## Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
4 ## 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
6 ## This program is free software; you can redistribute it and/or modify
7 ## it under the terms of the GNU General Public License as published by
8 ## the Free Software Foundation; either version 3, or (at your option)
11 ## This program is distributed in the hope that it will be useful,
12 ## but WITHOUT ANY WARRANTY; without even the implied warranty of
13 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 ## GNU General Public License for more details.
16 ## You should have received a copy of the GNU General Public License
17 ## along with this program. If not, see <http://www.gnu.org/licenses/>.
29 ## Find these programs wherever they may lie. Yes, this has
30 ## intimate knowledge of the structure of the texinfo distribution.
31 MAKEINFO = `if test -f $(top_builddir)/../texinfo/makeinfo/makeinfo; then \
32 echo $(top_builddir)/../texinfo/makeinfo/makeinfo; \
37 TEXI2DVI = `if test -f $(top_srcdir)/../texinfo/util/texi2dvi; then \
38 echo $(top_srcdir)/../texinfo/util/texi2dvi; \
44 TEXI2PDF = $(TEXI2DVI) --pdf --batch
45 MAKEINFOHTML = $(MAKEINFO) --html
46 AM_MAKEINFOHTMLFLAGS = $(AM_MAKEINFOFLAGS)
54 ## The way to make PostScript, for those who want it.
58 TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
62 .PHONY: dvi dvi-am html html-am info info-am pdf pdf-am ps ps-am
64 RECURSIVE_TARGETS += dvi-recursive html-recursive info-recursive
65 RECURSIVE_TARGETS += pdf-recursive ps-recursive
91 endif ! %?LOCAL-TEXIS%
98 ## Look in both . and srcdir because the info pages might have been
99 ## rebuilt in the build directory. Can't cd to srcdir; that might
100 ## break a possible install-sh reference.
102 ## Funny name due to --cygnus influence; we want to reserve
103 ## `install-info' for the user.
105 ## TEXINFOS primary are always installed in infodir, hence install-data
109 am__installdirs += "$(DESTDIR)$(infodir)"
110 install-data-am: install-info-am
112 endif %?INSTALL-INFO%
114 install-dvi install-dvi-am \
115 install-html install-html-am \
116 install-info install-info-am \
117 install-pdf install-pdf-am \
118 install-ps install-ps-am
121 RECURSIVE_TARGETS += \
122 install-dvi-recursive \
123 install-html-recursive \
124 install-info-recursive \
125 install-pdf-recursive \
127 install-dvi: install-dvi-recursive
128 install-html: install-html-recursive
129 install-info: install-info-recursive
130 install-pdf: install-pdf-recursive
131 install-ps: install-ps-recursive
133 install-dvi: install-dvi-am
134 install-html: install-html-am
135 install-info: install-info-am
136 install-pdf: install-pdf-am
137 install-ps: install-ps-am
144 install-dvi-am: $(DVIS)
146 test -z "$(dvidir)" || $(MKDIR_P) "$(DESTDIR)$(dvidir)"
147 @list='$(DVIS)'; list2=; for p in $$list; do \
148 if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
149 list2="$$list2 $$d$$p"; \
151 test -z "$$list2" || { \
152 echo " $(INSTALL_DATA) $$list2 '$(DESTDIR)$(dvidir)'"; \
153 $(INSTALL_DATA) $$list2 "$(DESTDIR)$(dvidir)"; }
155 install-html-am: $(HTMLS)
157 test -z "$(htmldir)" || $(MKDIR_P) "$(DESTDIR)$(htmldir)"
158 @list='$(HTMLS)'; list2=; for p in $$list; do \
159 if test -f "$$p" || test -d "$$p"; then d=; else d="$(srcdir)/"; fi; \
161 if test -d "$$d$$p"; then \
162 echo " $(MKDIR_P) '$(DESTDIR)$(htmldir)/$$f'"; \
163 $(MKDIR_P) "$(DESTDIR)$(htmldir)/$$f" || exit 1; \
164 echo " $(INSTALL_DATA) '$$d$$p'/* '$(DESTDIR)$(htmldir)/$$f'"; \
165 $(INSTALL_DATA) "$$d$$p"/* "$(DESTDIR)$(htmldir)/$$f"; \
167 list2="$$list2 $$d$$p"; \
170 test -z "$$list2" || { \
171 echo " $(INSTALL_DATA) $$list2 '$(DESTDIR)$(htmldir)'"; \
172 $(INSTALL_DATA) $$list2 "$(DESTDIR)$(htmldir)"; }
174 install-info-am: $(INFO_DEPS)
176 test -z "$(infodir)" || $(MKDIR_P) "$(DESTDIR)$(infodir)"
177 @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
178 list='$(INFO_DEPS)'; list2=; \
179 for file in $$list; do \
180 ## Strip possible $(srcdir) prefix.
182 $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
184 if test -f $$file; then d=.; else d=$(srcdir); fi; \
185 ## 8+3 filesystems cannot deal with foo.info-N filenames: they all
186 ## conflict. DJGPP comes with a tool, DJTAR, that will rename these
187 ## files to foo.iNN while extracting the archive. DJGPP's makeinfo
188 ## is patched to grok these filenames. However we have to account
189 ## for the renaming when installing the info files.
191 ## If $file == foo.info, then $file_i == foo.i. The reason we use two
192 ## shell commands instead of one ('s|\.info$$|.i|') is so that a suffix-less
193 ## `foo' becomes `foo.i' too.
194 file_i=`echo "$$file" | sed 's|\.info$$||;s|$$|.i|'`; \
195 for ifile in $$d/$$file $$d/$$file-[0-9] $$d/$$file-[0-9][0-9] \
196 $$d/$$file_i[0-9] $$d/$$file_i[0-9][0-9] ; do \
197 if test -f $$ifile; then \
198 list2="$$list2 $$ifile"; \
202 test -z "$$list2" || { \
203 echo " $(INSTALL_DATA) $$list2 '$(DESTDIR)$(infodir)'"; \
204 $(INSTALL_DATA) $$list2 "$(DESTDIR)$(infodir)"; }
206 ## Only run this code if install-info actually exists, and it is not
207 ## the Debian install-info. FIXME: once Debian install-info goes
208 ## away, we can remove this hack. Some versions of Debian install-info
209 ## print their version on stderr (e.g. 1.8.3), other do it in
210 ## on stdout (e.g. 1.10.15).
213 ## install-info --version 2>&1 | sed 1q | grep -v -i debian
214 ## as if install-info does not exist, grep -v will be happy, and
215 ## therefore the code will be triggered although install-info is missing.
216 @if (install-info --version && \
217 install-info --version 2>&1 | sed 1q | grep -i -v debian) >/dev/null 2>&1; then \
218 list='$(INFO_DEPS)'; \
219 for file in $$list; do \
221 relfile=`echo "$$file" | sed 's|^.*/||'`; \
222 ## Run `:' after install-info in case install-info fails. We really
223 ## don't care about failures here, because they can be spurious. For
224 ## instance if you don't have a dir file, install-info will fail. I
225 ## think instead it should create a new dir file for you. This bug
226 ## causes the `make distcheck' target to fail reliably.
227 echo " install-info --info-dir='$(DESTDIR)$(infodir)' '$(DESTDIR)$(infodir)/$$relfile'";\
228 ## Use `|| :' here because Sun make passes -e to sh; if install-info
229 ## fails then we'd fail if we used `;'.
230 install-info --info-dir="$(DESTDIR)$(infodir)" "$(DESTDIR)$(infodir)/$$relfile" || :;\
234 install-pdf-am: $(PDFS)
236 test -z "$(pdfdir)" || $(MKDIR_P) "$(DESTDIR)$(pdfdir)"
237 @list='$(PDFS)'; list2=; for p in $$list; do \
238 if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
239 list2="$$list2 $$d$$p"; \
241 test -z "$$list2" || { \
242 echo " $(INSTALL_DATA) $$list2 '$(DESTDIR)$(pdfdir)'"; \
243 $(INSTALL_DATA) $$list2 "$(DESTDIR)$(pdfdir)"; }
245 install-ps-am: $(PSS)
247 test -z "$(psdir)" || $(MKDIR_P) "$(DESTDIR)$(psdir)"
248 @list='$(PSS)'; list2=; for p in $$list; do \
249 if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
250 list2="$$list2 $$d$$p"; \
252 test -z "$$list2" || { \
253 echo " $(INSTALL_DATA) $$list2 '$(DESTDIR)$(psdir)'"; \
254 $(INSTALL_DATA) $$list2 "$(DESTDIR)$(psdir)"; }
256 else ! %?LOCAL-TEXIS%
262 endif ! %?LOCAL-TEXIS%
270 .PHONY uninstall-am: \
279 @list='$(DVIS)'; for p in $$list; do \
281 echo " rm -f '$(DESTDIR)$(dvidir)/$$f'"; \
282 rm -f "$(DESTDIR)$(dvidir)/$$f"; \
287 @list='$(HTMLS)'; for p in $$list; do \
289 ## $f can be a directory, hence the -r.
290 echo " rm -rf '$(DESTDIR)$(htmldir)/$$f'"; \
291 rm -rf "$(DESTDIR)$(htmldir)/$$f"; \
296 ## Run two loops here so that we can handle PRE_UNINSTALL and
297 ## NORMAL_UNINSTALL correctly.
298 @if test -d '$(DESTDIR)$(infodir)' && \
299 (install-info --version && \
300 install-info --version 2>&1 | sed 1q | grep -i -v debian) >/dev/null 2>&1; then \
301 list='$(INFO_DEPS)'; \
302 for file in $$list; do \
303 relfile=`echo "$$file" | sed 's|^.*/||'`; \
304 ## install-info needs the actual info file. We use the installed one,
305 ## rather than relying on one still being in srcdir or builddir.
306 echo " install-info --info-dir='$(DESTDIR)$(infodir)' --remove '$(DESTDIR)$(infodir)/$$relfile'"; \
307 install-info --info-dir="$(DESTDIR)$(infodir)" --remove "$(DESTDIR)$(infodir)/$$relfile"; \
311 @list='$(INFO_DEPS)'; \
312 for file in $$list; do \
313 relfile=`echo "$$file" | sed 's|^.*/||'`; \
314 ## DJGPP-style info files. See comment in install-info-am.
315 relfile_i=`echo "$$relfile" | sed 's|\.info$$||;s|$$|.i|'`; \
316 (if test -d "$(DESTDIR)$(infodir)" && cd "$(DESTDIR)$(infodir)"; then \
317 echo " cd '$(DESTDIR)$(infodir)' && rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]"; \
318 rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]; \
324 @list='$(PDFS)'; for p in $$list; do \
326 echo " rm -f '$(DESTDIR)$(pdfdir)/$$f'"; \
327 rm -f "$(DESTDIR)$(pdfdir)/$$f"; \
332 @list='$(PSS)'; for p in $$list; do \
334 echo " rm -f '$(DESTDIR)$(psdir)/$$f'"; \
335 rm -f "$(DESTDIR)$(psdir)/$$f"; \
341 dist-info: $(INFO_DEPS)
342 @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
343 list='$(INFO_DEPS)'; \
344 for base in $$list; do \
345 ## Strip possible $(srcdir) prefix.
347 $(srcdir)/*) base=`echo "$$base" | sed "s|^$$srcdirstrip/||"`;; \
349 if test -f $$base; then d=.; else d=$(srcdir); fi; \
350 base_i=`echo "$$base" | sed 's|\.info$$||;s|$$|.i|'`; \
351 for file in $$d/$$base $$d/$$base-[0-9] $$d/$$base-[0-9][0-9] $$d/$$base_i[0-9] $$d/$$base_i[0-9][0-9]; do \
352 if test -f $$file; then \
353 ## Strip leading '$$d/'.
354 relfile=`expr "$$file" : "$$d/\(.*\)"`; \
355 test -f "$(distdir)/$$relfile" || \
356 cp -p $$file "$(distdir)/$$relfile"; \
367 ## The funny name is due to --cygnus influence; in Cygnus mode,
368 ## `clean-info' is a target that users can use.
371 .PHONY mostlyclean-am: mostlyclean-aminfo
372 .PHONY: mostlyclean-aminfo
374 ## Use `-rf', not just `-f', because %TEXICLEAN% also contains
375 ## any directory created by `makeinfo --html'.
378 .PHONY maintainer-clean-am: maintainer-clean-aminfo
379 maintainer-clean-aminfo:
380 @list='$(INFO_DEPS)'; for i in $$list; do \
381 ## .iNN files are DJGPP-style info files.
382 i_i=`echo "$$i" | sed 's|\.info$$||;s|$$|.i|'`; \
383 echo " rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]"; \
384 rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]; \
387 ?CYGNUS?.PHONY: clean-info
388 ?CYGNUS?clean-info: mostlyclean-aminfo