+2003-02-19 Alexandre Duret-Lutz <adl@gnu.org>
+
+ * lib/am/texinfos.am (install-info-am, uninstall-info-am): Install
+ DJGPP-style *.iNN info files.
+ (maintainer-clean-aminfo): Rewrite using the same pattern
+ as in uninstall-info-am.
+ * lib/am/texibuild.am (%SOURCE_SUFFIX%%DEST_SUFFIX%): Erase
+ DJGPP-style *.iNN info files before running $(MAKEINFO).
+ * tests/txinfo19.test: New file.
+ * tests/Makefile.am (TESTS): Add txinfo19.test.
+
2003-02-18 Richard Dawe <rich@phekda.freeserve.co.uk>
* lib/depcomp (dashmstdout): Cope with DOS filenames in
## automake - create Makefile.in from Makefile.am
-## Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
+## Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
## Free Software Foundation, Inc.
## This program is free software; you can redistribute it and/or modify
## makeinfo. Otherwise, if the texinfo file shrinks (or if you start
## using --no-split), you'll be left with some dead info files lying
## around -- dead files which will end up in the distribution.
- @rm -f $@ $@-[0-9] $@-[0-9][0-9]
+## *.iNN files are used on DJGPP. See the comments in install-info-am
+ @rm -f $@ $@-[0-9] $@-[0-9][0-9] ${@:.info=}.i[0-9] ${@:.info=}.i[0-9][0-9]
## It is wrong to have `info' files dependent on %DIRSTAMP%, because
## `info' files are distributed and %DIRSTAMP% isn't: a distributed file
## should never be dependent upon a non-distributed built file.
## automake - create Makefile.in from Makefile.am
-## Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
+## Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
## Free Software Foundation, Inc.
## This program is free software; you can redistribute it and/or modify
@list='$(INFO_DEPS)'; \
for file in $$list; do \
if test -f $$file; then d=.; else d=$(srcdir); fi; \
- for ifile in $$d/$$file $$d/$$file-[0-9] $$d/$$file-[0-9][0-9]; do \
+## 8+3 filesystems cannot deal with foo.info-N filenames: they all
+## conflict. DJGPP comes with a tool, DJTAR, that will rename these
+## files to foo.iNN while extracting the archive. DJGPP's makeinfo
+## is patched to grok these filenames. However we have to account
+## for the renaming when installing the info files.
+##
+## If $file == foo.info, then $file_i == foo.i. The reason we use two
+## shell commands instead of one ('s|\.info$$|.i|') is so that a suffix-less
+## `foo' becomes `foo.i' too.
+ file_i=`echo "$$file" | sed 's|\.info$$||;s|$$|.i|'`; \
+ for ifile in $$d/$$file $$d/$$file-[0-9] $$d/$$file-[0-9][0-9] \
+ $$d/$$file_i[0-9] $$d/$$file_i[0-9][0-9] ; do \
if test -f $$ifile; then \
## Strip directory
relfile=`echo "$$ifile" | sed 's|^.*/||'`; \
@list='$(INFO_DEPS)'; \
for file in $$list; do \
relfile=`echo "$$file" | sed 's|^.*/||'`; \
+## DJGPP-style info files. See comment in install-info-am.
+ relfile_i=`echo "$$relfile" | sed 's|\.info$$||;s|$$|.i|'`; \
(if cd $(DESTDIR)$(infodir); then \
- echo " rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9])"; \
- rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9]; \
+ echo " rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9])"; \
+ rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]; \
else :; fi); \
done
else ! %?LOCAL-TEXIS%
.PHONY: maintainer-clean-aminfo
maintainer-clean-am: maintainer-clean-aminfo
maintainer-clean-aminfo:
-## Eww. But how else can we find all the output files from makeinfo?
- list='$(INFO_DEPS)'; for i in $$list; do \
- rm -f $$i; \
- if test "`echo $$i-[0-9]*`" != "$$i-[0-9]*"; then \
- rm -f $$i-[0-9]*; \
- fi; \
+ @list='$(INFO_DEPS)'; for i in $$list; do \
+## .iNN files are DJGPP-style info files.
+ i_i=`echo "$$i" | sed 's|\.info$$||;s|$$|.i|'`; \
+ echo " rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]"; \
+ rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]; \
done
?CYGNUS?.PHONY: clean-info