diff -uNrd texinfo.orig/doc/info-stnd.texi texinfo/doc/info-stnd.texi --- texinfo.orig/doc/info-stnd.texi 2007-12-18 12:53:22.000000000 -0500 +++ texinfo/doc/info-stnd.texi 2007-12-27 15:16:34.000000000 -0500 @@ -197,12 +197,12 @@ @file{.info}, @file{-info}, @file{/index}, and @file{.inf}.}. For every known extension, Info looks for a compressed file, if a regular file isn't found. Info supports files compressed with @code{gzip}, address@hidden, @code{compress} and @code{yabba} programs; it calls address@hidden, @code{bunzip2}, @code{uncompress} and @code{unyabba}, -accordingly, to decompress such files. Compressed Info files are -assumed to have @file{.z}, @file{.gz}, @file{.bz2}, @file{.Z}, or address@hidden extensions, possibly in addition to one of the known Info -files address@hidden MS-DOS version allows for the Info address@hidden, @code{compress}, @code{yabba} and @code{lzma} programs; +it calls @code{gunzip}, @code{bunzip2}, @code{uncompress}, @code{unyabba}, +and @code{lzma} accordingly, to decompress such files. Compressed Info +files are assumed to have @file{.z}, @file{.gz}, @file{.bz2}, @file{.Z}, address@hidden, or @file{.lzma} extensions, possibly in addition to one of the +known Info files address@hidden MS-DOS version allows for the Info extension, such as @code{.inf}, and the short compressed file extensions, such as @file{.z} and @file{.gz}, to be merged into a single extension, since DOS doesn't allow more than a single dot in the diff -uNrd texinfo.orig/info/filesys.c texinfo/info/filesys.c --- texinfo.orig/info/filesys.c 2007-12-02 20:38:42.000000000 -0500 +++ texinfo/info/filesys.c 2007-12-27 15:13:04.000000000 -0500 @@ -58,6 +58,7 @@ { ".z", "gunzip" }, { ".Z", "uncompress" }, { ".Y", "unyabba" }, + { ".lzma", "unlzma" }, #ifdef __MSDOS__ { "gz", "gunzip" }, { "z", "gunzip" }, diff -uNrd texinfo.orig/util/install-info.c texinfo/util/install-info.c --- texinfo.orig/util/install-info.c 2007-12-02 20:38:43.000000000 -0500 +++ texinfo/util/install-info.c 2007-12-27 15:14:24.000000000 -0500 @@ -654,6 +654,14 @@ #else *compression_program = "bzip"; #endif + else if (data[0] == ']' && data[1] == '\0' && data[2] == '\0') + { +#ifndef STRIP_DOT_EXE + *compression_program = "lzma.exe"; +#else + *compression_program = "lzma"; +#endif + } else *compression_program = NULL;