forked from pool/texinfo
cb5a774ec5
to make sure that the correct Texinfo.pm is installed - libzio is able to handle lz(ma) and xz files as well - Update to 6.0 * Language: + new commands @sub and @sup, for textual subscripts and superscripts. + new command @U to insert a Unicode character by code point. * texinfo.tex: + @url/@uref output in PDF now the same as in DVI, showing the url even if the second argument is given, not just as a link target. TeX option \urefurlonlylinktrue gives previous behavior, of invisible urls. + PDF-only \linkcolor and \urlcolor specify colors (default black). * texi2any: + customization variable TOP_NODE_UP_URL now replaces all (dir) references; recommended setting for GNU packages is /manual/. + new customization variable INDEX_SPECIAL_CHARS_WARNING to complain when index entries contain a colon. + Docbook output no longer uses <lineannotation> for @r. + -D'var val' on the command line works as intended again. + --plaintext output can be split. + a bit faster. * info: + invoking as `info foo bar' looks for bar as an index entry in manual foo, if not found as a top-level menu item. + invoking info with an absolute or explicitly relative file name (./foo.info, /tmp/foo.info, etc.) just visits that file. OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/texinfo?expand=0&rev=42
119 lines
3.8 KiB
Diff
119 lines
3.8 KiB
Diff
Index: texinfo-6.0/install-info/Makefile.in
|
|
===================================================================
|
|
---
|
|
texinfo-6.0/install-info/Makefile.in | 2 -
|
|
texinfo-6.0/install-info/install-info.c | 54 +++++++++++++++++++++++++++-----
|
|
2 files changed, 48 insertions(+), 8 deletions(-)
|
|
|
|
--- texinfo-6.0/install-info/Makefile.in
|
|
+++ texinfo-6.0/install-info/Makefile.in 2015-07-15 00:00:00.000000000 +0000
|
|
@@ -241,7 +241,7 @@ am__installdirs = "$(DESTDIR)$(bindir)"
|
|
PROGRAMS = $(bin_PROGRAMS)
|
|
am_ginstall_info_OBJECTS = install-info.$(OBJEXT)
|
|
ginstall_info_OBJECTS = $(am_ginstall_info_OBJECTS)
|
|
-ginstall_info_LDADD = $(LDADD)
|
|
+ginstall_info_LDADD = $(LDADD) -lzio
|
|
am__DEPENDENCIES_1 =
|
|
ginstall_info_DEPENDENCIES = $(top_builddir)/gnulib/lib/libgnu.a \
|
|
$(am__DEPENDENCIES_1)
|
|
--- texinfo-6.0/install-info/install-info.c
|
|
+++ texinfo-6.0/install-info/install-info.c 2015-07-15 12:45:21.689530651 +0000
|
|
@@ -22,6 +22,7 @@
|
|
#include <getopt.h>
|
|
#include <regex.h>
|
|
#include <argz.h>
|
|
+#include <zio.h>
|
|
|
|
#define TAB_WIDTH 8
|
|
|
|
@@ -701,34 +702,59 @@ open_possibly_compressed_file (char *fil
|
|
|
|
*opened_filename = filename;
|
|
f = fopen (*opened_filename, FOPEN_RBIN);
|
|
+ if (!compression_program)
|
|
+ compression_program = &local_compression_program;
|
|
+ *compression_program = NULL;
|
|
+ if (f)
|
|
+ {
|
|
+ nread = fread (data, sizeof (data), 1, f);
|
|
+ if (nread == 1)
|
|
+ {
|
|
+ if (data[0] == '\x1f' && data[1] == '\x8b')
|
|
+ *compression_program = "g";
|
|
+ else if (data[0] == '\x1f' && data[1] == '\x9d')
|
|
+ *compression_program = "Z";
|
|
+ else if (data[0] == '\x1f' && data[1] == '\x9e')
|
|
+ *compression_program = "z";
|
|
+ else if (data[0] == 'B' && data[1] == 'Z' && data[2] == 'h')
|
|
+ *compression_program = "b";
|
|
+ }
|
|
+ fclose (f);
|
|
+ f = fzopen (*opened_filename, FOPEN_RBIN);
|
|
+ }
|
|
if (!f)
|
|
{
|
|
*opened_filename = concat (filename, ".gz", "");
|
|
- f = fopen (*opened_filename, FOPEN_RBIN);
|
|
+ f = fzopen (*opened_filename, FOPEN_RBIN);
|
|
+ *compression_program = "g";
|
|
}
|
|
if (!f)
|
|
{
|
|
free (*opened_filename);
|
|
*opened_filename = concat (filename, ".xz", "");
|
|
- f = fopen (*opened_filename, FOPEN_RBIN);
|
|
+ f = fzopen (*opened_filename, FOPEN_RBIN);
|
|
+ *compression_program = "x";
|
|
}
|
|
if (!f)
|
|
{
|
|
free (*opened_filename);
|
|
*opened_filename = concat (filename, ".bz2", "");
|
|
- f = fopen (*opened_filename, FOPEN_RBIN);
|
|
+ f = fzopen (*opened_filename, FOPEN_RBIN);
|
|
+ *compression_program = "b";
|
|
}
|
|
if (!f)
|
|
{
|
|
free (*opened_filename);
|
|
*opened_filename = concat (filename, ".lz", "");
|
|
- f = fopen (*opened_filename, FOPEN_RBIN);
|
|
+ f = fzopen (*opened_filename, FOPEN_RBIN);
|
|
+ *compression_program = "l";
|
|
}
|
|
if (!f)
|
|
{
|
|
free (*opened_filename);
|
|
*opened_filename = concat (filename, ".lzma", "");
|
|
- f = fopen (*opened_filename, FOPEN_RBIN);
|
|
+ f = fzopen (*opened_filename, FOPEN_RBIN);
|
|
+ *compression_program = "l";
|
|
}
|
|
#ifdef __MSDOS__
|
|
if (!f)
|
|
@@ -942,8 +968,22 @@ output_dirfile (char *dirfile, int dir_n
|
|
|
|
if (compression_program)
|
|
{
|
|
- char *command = concat (compression_program, ">", dirfile);
|
|
- output = popen (command, "w");
|
|
+ output = NULL;
|
|
+ if (*compression_program == 'g' || *compression_program == 'z')
|
|
+ output = fzopen (dirfile, "wg");
|
|
+ if (*compression_program == 'b')
|
|
+ output = fzopen (dirfile, "wb");
|
|
+ if (*compression_program == 'Z')
|
|
+ output = fzopen (dirfile, "wZ");
|
|
+ if (*compression_program == 'l')
|
|
+ output = fzopen (dirfile, "wl");
|
|
+ if (*compression_program == 'x')
|
|
+ output = fzopen (dirfile, "wx");
|
|
+ if (!output)
|
|
+ {
|
|
+ char *command = concat (compression_program, ">", dirfile);
|
|
+ output = popen (command, "w");
|
|
+ }
|
|
}
|
|
else
|
|
output = fopen (dirfile, "w");
|