diff --git a/.cvsignore b/.cvsignore index bf2ecee..3451184 100644 --- a/.cvsignore +++ b/.cvsignore @@ -2,3 +2,5 @@ texinfo-4.7.tar.bz2 texinfo-4.8.tar.bz2 texinfo-4.9.tar.bz2 texinfo-4.11.tar.bz2 +texinfo-4.12.tar.gz +texinfo-4.12.tar.gz.sig diff --git a/sources b/sources index 6063873..1a7d2b6 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ -c6bf13df4fbeff8ce874aacd6a51e814 texinfo-4.11.tar.bz2 +e9216fb657e1555a289a14a74dac8f4f texinfo-4.12.tar.gz +fe17b722bc9f157ed5e9c88e9be3732d texinfo-4.12.tar.gz.sig diff --git a/texinfo-4.11-direntry.patch b/texinfo-4.11-direntry.patch deleted file mode 100644 index 1be52cf..0000000 --- a/texinfo-4.11-direntry.patch +++ /dev/null @@ -1,23 +0,0 @@ ---- texinfo-4.11/makeinfo/cmds.c_old 2007-07-15 19:36:19.000000000 +0200 -+++ texinfo-4.11/makeinfo/cmds.c 2007-12-10 15:11:04.000000000 +0100 -@@ -1637,11 +1637,16 @@ - - if (!no_headers && !html) - { -+ /* use add_* instead of insert_* because otherwise the -+ file header ("This is ...") will end up inside the -+ dir section markers. */ - kill_self_indent (-1); /* make sure there's no indentation */ -- insert_string ("INFO-DIR-SECTION "); -- insert_string (line); -- insert ('\n'); -- } -+ cm_noindent (); /* make sure again */ -+ add_word ("INFO-DIR-SECTION "); -+ add_word (line); -+ add_char ('\n'); -+ -+ } - - free (line); - } diff --git a/texinfo-4.11-res_win_segfault.patch b/texinfo-4.11-res_win_segfault.patch deleted file mode 100644 index bdabbdb..0000000 --- a/texinfo-4.11-res_win_segfault.patch +++ /dev/null @@ -1,58 +0,0 @@ ---- texinfo-4.11/info/window.c_old 2007-07-01 23:20:31.000000000 +0200 -+++ texinfo-4.11/info/window.c 2007-11-13 10:52:44.000000000 +0100 -@@ -1,5 +1,5 @@ - /* window.c -- windows in Info. -- $Id: window.c,v 1.7 2007/07/01 21:20:31 karl Exp $ -+ $Id: window.c,v 1.8 2007/10/19 18:43:20 karl Exp $ - - Copyright (C) 1993, 1997, 1998, 2001, 2002, 2003, 2004, 2007 - Free Software Foundation, Inc. -@@ -249,9 +249,22 @@ - break; - } - else -- win= win->next; -+ win = win->next; - } - } -+ -+ /* One more loop. If any heights or widths have become negative, -+ set them to zero. This can apparently happen with resizing down to -+ very small sizes. Sadly, it is not apparent to me where in the -+ above calculations it goes wrong. */ -+ for (win = windows; win; win = win->next) -+ { -+ if (win->height < 0) -+ win->height = 0; -+ -+ if (win->width < 0) -+ win->width = 0; -+ } - } - - /* Make a new window showing NODE, and return that window structure. ---- texinfo-4.11/info/display.c_old 2007-07-01 23:20:29.000000000 +0200 -+++ texinfo-4.11/info/display.c 2007-11-13 10:53:58.000000000 +0100 -@@ -1,5 +1,5 @@ - /* display.c -- How to display Info windows. -- $Id: display.c,v 1.11 2007/07/01 21:20:29 karl Exp $ -+ $Id: display.c,v 1.12 2007/10/19 18:43:20 karl Exp $ - - Copyright (C) 1993, 1997, 2003, 2004, 2006, 2007 - Free Software Foundation, Inc. -@@ -136,8 +136,13 @@ - if (display_inhibited) - display_was_interrupted_p = 1; - -- /* If the window has no height, or display is inhibited, quit now. */ -- if (!win->height || display_inhibited) -+ /* If the window has no height, or display is inhibited, quit now. -+ Strictly speaking, it should only be necessary to test if the -+ values are equal to zero, since window_new_screen_size should -+ ensure that the window height/width never becomes negative, but -+ since historically this has often been the culprit for crashes, do -+ our best to be doubly safe. */ -+ if (win->height <= 0 || win->width <= 0 || display_inhibited) - return; - - /* If the window's first row doesn't appear in the_screen, then it diff --git a/texinfo-4.11-zlib.patch b/texinfo-4.11-zlib.patch deleted file mode 100644 index 7fae8b1..0000000 --- a/texinfo-4.11-zlib.patch +++ /dev/null @@ -1,160 +0,0 @@ ---- texinfo-4.11/util/Makefile.in_old 2007-09-10 02:37:45.000000000 +0200 -+++ texinfo-4.11/util/Makefile.in 2007-09-19 10:29:06.000000000 +0200 -@@ -110,7 +110,7 @@ - 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) -lz - am__DEPENDENCIES_1 = - ginstall_info_DEPENDENCIES = ../lib/libtxi.a \ - $(top_builddir)/gnulib/lib/libgnu.a $(am__DEPENDENCIES_1) ---- texinfo-4.11/util/install-info.c_old 2007-07-01 23:20:33.000000000 +0200 -+++ texinfo-4.11/util/install-info.c 2007-09-19 10:40:02.000000000 +0200 -@@ -20,6 +20,7 @@ - #include "system.h" - #include - #include -+#include - - static char *progname = "install-info"; - -@@ -559,7 +560,7 @@ - COMPRESSION_PROGRAM. The compression program is determined by the - magic number, not the filename. */ - --FILE * -+void * - open_possibly_compressed_file (char *filename, - void (*create_callback) (char *), - char **opened_filename, char **compression_program, int *is_pipe) -@@ -567,7 +568,7 @@ - char *local_opened_filename, *local_compression_program; - int nread; - char data[4]; -- FILE *f; -+ gzFile *f; - - /* We let them pass NULL if they don't want this info, but it's easier - to always determine it. */ -@@ -575,16 +576,16 @@ - opened_filename = &local_opened_filename; - - *opened_filename = filename; -- f = fopen (*opened_filename, FOPEN_RBIN); -+ f = gzopen (*opened_filename, FOPEN_RBIN); - if (!f) - { - *opened_filename = concat (filename, ".gz", ""); -- f = fopen (*opened_filename, FOPEN_RBIN); -+ f = gzopen (*opened_filename, FOPEN_RBIN); - if (!f) - { - free (*opened_filename); - *opened_filename = concat (filename, ".bz2", ""); -- f = fopen (*opened_filename, FOPEN_RBIN); -+ f = gzopen (*opened_filename, FOPEN_RBIN); - } - - #ifdef __MSDOS__ -@@ -592,13 +593,13 @@ - { - free (*opened_filename); - *opened_filename = concat (filename, ".igz", ""); -- f = fopen (*opened_filename, FOPEN_RBIN); -+ f = gzopen (*opened_filename, FOPEN_RBIN); - } - if (!f) - { - free (*opened_filename); - *opened_filename = concat (filename, ".inz", ""); -- f = fopen (*opened_filename, FOPEN_RBIN); -+ f = gzopen (*opened_filename, FOPEN_RBIN); - } - #endif - if (!f) -@@ -610,7 +611,7 @@ - /* And try opening it again. */ - free (*opened_filename); - *opened_filename = filename; -- f = fopen (*opened_filename, FOPEN_RBIN); -+ f = gzopen (*opened_filename, FOPEN_RBIN); - if (!f) - pfatal_with_name (filename); - } -@@ -621,12 +622,12 @@ - - /* Read first few bytes of file rather than relying on the filename. - If the file is shorter than this it can't be usable anyway. */ -- nread = fread (data, sizeof (data), 1, f); -- if (nread != 1) -+ nread = gzread (f, data, sizeof (data)); -+ if (nread != sizeof (data)) - { - /* Empty files don't set errno, so we get something like - "install-info: No error for foo", which is confusing. */ -- if (nread == 0) -+ if (nread >= 0) - fatal (_("%s: empty file"), *opened_filename, 0); - pfatal_with_name (*opened_filename); - } -@@ -659,20 +660,22 @@ - - if (*compression_program) - { /* It's compressed, so fclose the file and then open a pipe. */ -+ FILE *p; - char *command = concat (*compression_program," -cd <", *opened_filename); -- if (fclose (f) < 0) -+ if (gzclose (f) < 0) - pfatal_with_name (*opened_filename); -- f = popen (command, "r"); -- if (f) -+ p = popen (command, "r"); -+ if (p) - *is_pipe = 1; - else - pfatal_with_name (command); -+ return p; - } - else - { /* It's a plain file, seek back over the magic bytes. */ -- if (fseek (f, 0, 0) < 0) -+ if (gzseek (f, 0, SEEK_SET) < 0) - pfatal_with_name (*opened_filename); --#if O_BINARY -+#if 0 && O_BINARY - /* Since this is a text file, and we opened it in binary mode, - switch back to text mode. */ - f = freopen (*opened_filename, "r", f); -@@ -697,7 +700,7 @@ - char **compression_program) - { - char *real_name; -- FILE *f; -+ void *f; - int pipe_p; - int filled = 0; - int data_size = 8192; -@@ -711,7 +714,12 @@ - - for (;;) - { -- int nread = fread (data + filled, 1, data_size - filled, f); -+ int nread; -+ -+ if (pipe_p) -+ nread = fread (data + filled, 1, data_size - filled, f); -+ else -+ nread = gzread (f, data + filled, data_size - filled); - if (nread < 0) - pfatal_with_name (real_name); - if (nread == 0) -@@ -733,7 +741,7 @@ - if (pipe_p) - pclose (f); - else -- fclose (f); -+ gzclose (f); - - *sizep = filled; - return data; diff --git a/texinfo-4.12-zlib.patch b/texinfo-4.12-zlib.patch new file mode 100644 index 0000000..3635b55 --- /dev/null +++ b/texinfo-4.12-zlib.patch @@ -0,0 +1,169 @@ +diff -up texinfo-4.12/install-info/Makefile.in_old texinfo-4.12/install-info/Makefile.in +--- texinfo-4.12/install-info/Makefile.in_old 2008-05-13 13:33:55.000000000 +0200 ++++ texinfo-4.12/install-info/Makefile.in 2008-05-13 13:52:35.000000000 +0200 +@@ -114,7 +114,7 @@ binPROGRAMS_INSTALL = $(INSTALL_PROGRAM) + 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) -lz + am__DEPENDENCIES_1 = + ginstall_info_DEPENDENCIES = ../lib/libtxi.a \ + $(top_builddir)/gnulib/lib/libgnu.a $(am__DEPENDENCIES_1) +diff -up texinfo-4.12/install-info/install-info.c_old texinfo-4.12/install-info/install-info.c +--- texinfo-4.12/install-info/install-info.c_old 2008-05-13 13:52:44.000000000 +0200 ++++ texinfo-4.12/install-info/install-info.c 2008-05-14 10:30:53.000000000 +0200 +@@ -21,6 +21,7 @@ + #include + #include + #include ++#include + + #define TAB_WIDTH 8 + +@@ -638,7 +639,7 @@ The first time you invoke Info you start + COMPRESSION_PROGRAM. The compression program is determined by the + magic number, not the filename. */ + +-FILE * ++void * + open_possibly_compressed_file (char *filename, + void (*create_callback) (char *), + char **opened_filename, char **compression_program, int *is_pipe) +@@ -646,7 +647,7 @@ open_possibly_compressed_file (char *fil + char *local_opened_filename, *local_compression_program; + int nread; + char data[13]; +- FILE *f; ++ gzFile *f; + + /* We let them pass NULL if they don't want this info, but it's easier + to always determine it. */ +@@ -654,22 +655,22 @@ open_possibly_compressed_file (char *fil + opened_filename = &local_opened_filename; + + *opened_filename = filename; +- f = fopen (*opened_filename, FOPEN_RBIN); ++ f = gzopen (*opened_filename, FOPEN_RBIN); + if (!f) + { + *opened_filename = concat (filename, ".gz", ""); +- f = fopen (*opened_filename, FOPEN_RBIN); ++ f = gzopen (*opened_filename, FOPEN_RBIN); + if (!f) + { + free (*opened_filename); + *opened_filename = concat (filename, ".bz2", ""); +- f = fopen (*opened_filename, FOPEN_RBIN); ++ f = gzopen (*opened_filename, FOPEN_RBIN); + } + if (!f) + { + free (*opened_filename); + *opened_filename = concat (filename, ".lzma", ""); +- f = fopen (*opened_filename, FOPEN_RBIN); ++ f = gzopen (*opened_filename, FOPEN_RBIN); + } + + #ifdef __MSDOS__ +@@ -677,13 +678,13 @@ open_possibly_compressed_file (char *fil + { + free (*opened_filename); + *opened_filename = concat (filename, ".igz", ""); +- f = fopen (*opened_filename, FOPEN_RBIN); ++ f = gzopen (*opened_filename, FOPEN_RBIN); + } + if (!f) + { + free (*opened_filename); + *opened_filename = concat (filename, ".inz", ""); +- f = fopen (*opened_filename, FOPEN_RBIN); ++ f = gzopen (*opened_filename, FOPEN_RBIN); + } + #endif + if (!f) +@@ -695,7 +696,7 @@ open_possibly_compressed_file (char *fil + /* And try opening it again. */ + free (*opened_filename); + *opened_filename = filename; +- f = fopen (*opened_filename, FOPEN_RBIN); ++ f = gzopen (*opened_filename, FOPEN_RBIN); + if (!f) + pfatal_with_name (filename); + } +@@ -706,12 +707,12 @@ open_possibly_compressed_file (char *fil + + /* Read first few bytes of file rather than relying on the filename. + If the file is shorter than this it can't be usable anyway. */ +- nread = fread (data, sizeof (data), 1, f); +- if (nread != 1) ++ nread = gzread (f, data, sizeof (data)); ++ if (nread != sizeof (data)) + { + /* Empty files don't set errno, so we get something like + "install-info: No error for foo", which is confusing. */ +- if (nread == 0) ++ if (nread >= 0) + fatal (_("%s: empty file"), *opened_filename, 0); + pfatal_with_name (*opened_filename); + } +@@ -758,20 +759,22 @@ open_possibly_compressed_file (char *fil + + if (*compression_program) + { /* It's compressed, so fclose the file and then open a pipe. */ ++ FILE *p; + char *command = concat (*compression_program," -cd <", *opened_filename); +- if (fclose (f) < 0) ++ if (gzclose (f) < 0) + pfatal_with_name (*opened_filename); +- f = popen (command, "r"); +- if (f) ++ p = popen (command, "r"); ++ if (p) + *is_pipe = 1; + else + pfatal_with_name (command); ++ return p; + } + else + { /* It's a plain file, seek back over the magic bytes. */ +- if (fseek (f, 0, 0) < 0) ++ if (gzseek (f, 0, SEEK_SET) < 0) + pfatal_with_name (*opened_filename); +-#if O_BINARY ++#if 0 && O_BINARY + /* Since this is a text file, and we opened it in binary mode, + switch back to text mode. */ + f = freopen (*opened_filename, "r", f); +@@ -796,7 +799,7 @@ readfile (char *filename, int *sizep, + char **compression_program) + { + char *real_name; +- FILE *f; ++ void *f; + int pipe_p; + int filled = 0; + int data_size = 8192; +@@ -810,7 +813,12 @@ readfile (char *filename, int *sizep, + + for (;;) + { +- int nread = fread (data + filled, 1, data_size - filled, f); ++ int nread; ++ ++ if (pipe_p) ++ nread = fread (data + filled, 1, data_size - filled, f); ++ else ++ nread = gzread (f, data + filled, data_size - filled); + if (nread < 0) + pfatal_with_name (real_name); + if (nread == 0) +@@ -832,7 +840,7 @@ readfile (char *filename, int *sizep, + if (pipe_p) + pclose (f); + else +- fclose (f); ++ gzclose (f); + + *sizep = filled; + return data; diff --git a/texinfo.spec b/texinfo.spec index 267e3d8..7a46ad7 100644 --- a/texinfo.spec +++ b/texinfo.spec @@ -2,17 +2,15 @@ Summary: Tools needed to create Texinfo format documentation files Name: texinfo -Version: 4.11 -Release: 5%{?dist} +Version: 4.12 +Release: 1%{?dist} License: GPLv3+ Group: Applications/Publishing Url: http://www.gnu.org/software/texinfo/ -Source0: ftp://ftp.gnu.org/gnu/texinfo/texinfo-%{version}.tar.bz2 +Source0: ftp://ftp.gnu.org/gnu/texinfo/texinfo-%{version}.tar.gz Source1: info-dir Source2: texi2pdf.man -Patch0: texinfo-4.11-zlib.patch -Patch1: texinfo-4.11-res_win_segfault.patch -Patch2: texinfo-4.11-direntry.patch +Patch0: texinfo-4.12-zlib.patch Requires(post): /sbin/install-info Requires(preun): /sbin/install-info BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -55,8 +53,6 @@ for printing using TeX. %prep %setup -q %patch0 -p1 -b .zlib -%patch1 -p1 -b .res_win_segfault -%patch2 -p1 -b .direntry %build %configure @@ -95,6 +91,7 @@ fi %post -n info /sbin/install-info %{_infodir}/info-stnd.info %{_infodir}/dir || : +sed -i 's/^This is.*produced by makeinfo.*from/d/' /usr/share/info/dir %preun -n info if [ $1 = 0 ]; then @@ -142,8 +139,15 @@ fi %{_mandir}/man1/texindex.1* %{_mandir}/man1/texi2dvi.1* %{_mandir}/man1/texi2pdf.1* +%{_mandir}/man1/pdftexi2dvi.1* %changelog +* Wed May 14 2008 Vitezslav Crhonek - 4.12-1 +- Update to texinfo-4.12 +- Remove description ("This is...") from /usr/share/info/dir in info + post install section + Resolves: #433535 + * Mon Feb 4 2008 Vitezslav Crhonek - 4.11-5 - Merge Review Resolves: #226488