commit:     396cd5a91787224e205615f7abd548f3a4141eeb
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Sun Feb  7 15:48:56 2016 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Sun Feb  7 15:49:39 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=396cd5a9

sys-apps/texinfo: Revert removal of old versions as it breaks packages.

This reverts commit 7257191494c950bc7f057ff321e63e2e821ec28c.

Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 sys-apps/texinfo/Manifest                          |   1 +
 .../files/texinfo-4.13-accentenc-test.patch        |  17 +++
 sys-apps/texinfo/files/texinfo-4.13-docbook.patch  |  66 +++++++++++
 .../files/texinfo-4.13-texi2dvi-regexp-range.patch |  23 ++++
 sys-apps/texinfo/files/texinfo-4.13-tinfo.patch    |  24 ++++
 sys-apps/texinfo/files/texinfo-4.13-xz.patch       | 130 +++++++++++++++++++++
 sys-apps/texinfo/texinfo-4.13-r2.ebuild            |  58 +++++++++
 7 files changed, 319 insertions(+)

diff --git a/sys-apps/texinfo/Manifest b/sys-apps/texinfo/Manifest
index f5d561a..ef9eb65 100644
--- a/sys-apps/texinfo/Manifest
+++ b/sys-apps/texinfo/Manifest
@@ -1,3 +1,4 @@
+DIST texinfo-4.13.tar.lzma 1563777 SHA256 
6d28b0ceae866e3536142fc552e7a3bc9f84c8303119c25731b2478eef64c9e5 SHA512 
bded399ed5fcf97dfa72d9486df91ecfc501301d83929b09b230aee2b8ad6994b7d7b5965b04d43de729cee30575b2334cf75879ad0a61c4b781ccc16d6c12db
 WHIRLPOOL 
6ef9d5e47cae7c6a94272e35bafe0716e617691b6b549a59ef8f95244f1b9a94e9adb79db38cf8e23166a43e84725e3eb01c971c8894bc4201aa743a44170c35
 DIST texinfo-5.2.tar.xz 3812944 SHA256 
5471ef683a64588a7cfef46ef2bdd3fbcbca89d847e10832612293f105e44eda SHA512 
6f9c5142db3b155bd601149b5632807b3c20dcfa7006ce5f7e120e6fc4b2174a3f4671c18232c040ffd69ebfb5950be5c563ac5cc08b88d03eb5a9f1b0f96c04
 WHIRLPOOL 
609f0c2ac4deccf85f99cae3f681ce3892c7822988a84970171dec0f1224052861b3ac3fac97e666016bac4469b0e8446133c775a20f7201ff6dffa90fc84290
 DIST texinfo-6.0.tar.xz 4086712 SHA256 
11ba4358696e8be3b3c7cfc88b89cf69525791aeabf0ee0a59ca58ebbd3471e4 SHA512 
36f82288dfb7c2385630043faf75ccef5af625952d792c669c5eea673ae5b3474c148041bf1935f87ddeaae7114103731277e715d0d510c6fb41e0211ab12494
 WHIRLPOOL 
1d1facd5670321aca908407f65ff6a8769f3d7528c4535d77cf3fc6d948d766acc1e3f592e74554c427fca51a9e54048d54774586543d6316b664ac3c92d06c8
 DIST texinfo-6.1.tar.xz 4520376 SHA256 
ac68394ce21b2420ba7ed7cec65d84aacf308cc88e9bf4716fcfff88286883d2 SHA512 
ae47295f3bcfb728c3be59421cf830ecfa5fc7856a086e45da2bac89600d883aa4406a6ef62d7ee5dc2bab83a3efa1cec861a3b4b14b85bbecb53ebf3ebf7235
 WHIRLPOOL 
187f11681f041aa5f4260c6c2833cb877a4c74afda73d4f72008c61c8a089dd0393ff90257410d5e48b9501c36dd4991032db001c5c17b8224afb6f5819cd165

diff --git a/sys-apps/texinfo/files/texinfo-4.13-accentenc-test.patch 
b/sys-apps/texinfo/files/texinfo-4.13-accentenc-test.patch
new file mode 100644
index 0000000..ad470fa
--- /dev/null
+++ b/sys-apps/texinfo/files/texinfo-4.13-accentenc-test.patch
@@ -0,0 +1,17 @@
+Fails in UTF-8 locales with grep-2.6
+
+https://bugs.gentoo.org/322151
+https://savannah.gnu.org/bugs/index.php?31068
+
+--- a/makeinfo/tests/accentenc
++++ b/makeinfo/tests/accentenc
+@@ -1,7 +1,8 @@
+ #!/bin/sh
+ # Test encoded accent info output.
+ 
+-unset TEXINFO_OUTPUT
++unset TEXINFO_OUTPUT LANG LANGUAGE
++LC_ALL=POSIX; export LC_ALL
+ : ${srcdir=.}
+ input=`basename $0`.txi
+ output=`basename $0`.info

diff --git a/sys-apps/texinfo/files/texinfo-4.13-docbook.patch 
b/sys-apps/texinfo/files/texinfo-4.13-docbook.patch
new file mode 100644
index 0000000..0622b94
--- /dev/null
+++ b/sys-apps/texinfo/files/texinfo-4.13-docbook.patch
@@ -0,0 +1,66 @@
+--- texinfo-4.13.orig/makeinfo/cmds.c  2008-05-22 05:11:34.000000000 -0700
++++ texinfo-4.13/makeinfo/cmds.c       2012-05-23 18:31:57.108264307 -0700
+@@ -1560,7 +1560,7 @@ cm_setfilename (void)
+   char *filename;
+   get_rest_of_line (1, &filename);
+   /* warning ("`@%s %s' encountered and ignored", command, filename); */
+-  if (xml)
++  if (xml && !docbook)
+     add_word_args ("<setfilename>%s</setfilename>", filename);
+   free (filename);
+ }
+--- texinfo-4.13.orig/makeinfo/node.c  2008-07-05 16:59:47.000000000 -0700
++++ texinfo-4.13/makeinfo/node.c       2012-05-23 17:02:46.517345024 -0700
+@@ -1233,10 +1233,12 @@ cm_anchor (int arg)
+     }
+   else if (xml || docbook)
+     {
++      char *id = xml_id(anchor);
+       xml_insert_element_with_attribute (ANCHOR, START,
+                                        docbook ? "id=\"%s\"" : "name=\"%s\"",
+-                                       anchor);
++                                       id);
+       xml_insert_element (ANCHOR, END);
++      free(id);
+     }
+ 
+   /* Save it in the tag table.  */
+--- texinfo-4.13.orig/makeinfo/xml.c   2008-02-12 17:00:55.000000000 -0800
++++ texinfo-4.13/makeinfo/xml.c        2012-05-23 17:20:13.698858895 -0700
+@@ -586,21 +586,27 @@ static int in_indexterm = 0;
+ char *
+ xml_id (char *id)
+ {
+-  char *tem = xmalloc (strlen (id) + 1);
++  /* Get an extra space to accomodate adding an i-prefix. */
++  char *tem = xmalloc (strlen (id) + 2);
+   char *p = tem;
+-  strcpy (tem, id);
++
++  /* First character cannot be a number, '-' or '.'. Just always add
++     an i if we're not starting with a alphanumeric character
++     already, to simplify the code.
++  */
++  if (!isalpha(*id))
++    {
++      *p++ = 'i';
++    }
++
++  strcpy (p, id);
++
+   while (*p)
+     {
+-      if (strchr (":\" \t\f\r\n", *p))
++      if (!isalnum (*p) && !strchr (":_.-", *p))
+         *p = '-';
+       p++;
+     }
+-  p = tem;
+-
+-  /* First character cannot be a number.  Clearly we should make this
+-     dependent on the actual numeral found.  */
+-  if (strchr ("0123456789", *p))
+-    *p = 'i';
+ 
+   return tem;
+ }

diff --git a/sys-apps/texinfo/files/texinfo-4.13-texi2dvi-regexp-range.patch 
b/sys-apps/texinfo/files/texinfo-4.13-texi2dvi-regexp-range.patch
new file mode 100644
index 0000000..01b0746
--- /dev/null
+++ b/sys-apps/texinfo/files/texinfo-4.13-texi2dvi-regexp-range.patch
@@ -0,0 +1,23 @@
+Fix texi2dvi problem with egrep in some locales.
+This patch is taken from the texinfo CVS repository, but stripped of
+keyword substitutions to make it apply to a wider range of source code
+revisions.
+
+Fix suggested by Martin von Gagern on 2010-03-29, committed by Karl Berry.
+
+References:
+http://bugs.gentoo.org/311885
+http://thread.gmane.org/gmane.comp.tex.texinfo.bugs/5023
+http://cvs.savannah.gnu.org/viewvc/texinfo/util/texi2dvi?root=texinfo&r1=1.157&r2=1.158
+
+--- util/texi2dvi      2010/02/09 18:37:08     1.157
++++ util/texi2dvi      2010/03/30 23:13:37     1.158
+@@ -1848,7 +1848,7 @@
+ 
+   # If the COMMAND_LINE_FILENAME is not absolute (e.g., --debug.tex),
+   # prepend `./' in order to avoid that the tools take it as an option.
+-  echo "$command_line_filename" | $EGREP '^(/|[A-z]:/)' >&6 \
++  echo "$command_line_filename" | $EGREP '^(/|[A-Za-z]:/)' >&6 \
+   || command_line_filename="./$command_line_filename"
+ 
+   # See if the file exists.  If it doesn't we're in trouble since, even

diff --git a/sys-apps/texinfo/files/texinfo-4.13-tinfo.patch 
b/sys-apps/texinfo/files/texinfo-4.13-tinfo.patch
new file mode 100644
index 0000000..10a557a
--- /dev/null
+++ b/sys-apps/texinfo/files/texinfo-4.13-tinfo.patch
@@ -0,0 +1,24 @@
+http://bugs.gentoo.org/457556
+
+--- configure.ac
++++ configure.ac
+@@ -130,7 +130,7 @@
+ # rather ncurses.  So we check for it.
+ TERMLIBS=
+ # Check for termlib before termcap because Solaris termcap needs libucb.
+-TERMLIB_VARIANTS="ncurses curses termlib termcap terminfo"
++TERMLIB_VARIANTS="tinfo ncurses curses termlib termcap terminfo"
+ for termlib in ${TERMLIB_VARIANTS}; do
+   AC_CHECK_LIB(${termlib}, tgetent,
+      [TERMLIBS="${TERMLIBS} -l${termlib}"; break])
+--- configure
++++ configure
+@@ -17477,7 +17477,7 @@
+ # rather ncurses.  So we check for it.
+ TERMLIBS=
+ # Check for termlib before termcap because Solaris termcap needs libucb.
+-TERMLIB_VARIANTS="ncurses curses termlib termcap terminfo"
++TERMLIB_VARIANTS="tinfo ncurses curses termlib termcap terminfo"
+ for termlib in ${TERMLIB_VARIANTS}; do
+   as_ac_Lib=`$as_echo "ac_cv_lib_${termlib}''_tgetent" | $as_tr_sh`
+ { $as_echo "$as_me:$LINENO: checking for tgetent in -l${termlib}" >&5

diff --git a/sys-apps/texinfo/files/texinfo-4.13-xz.patch 
b/sys-apps/texinfo/files/texinfo-4.13-xz.patch
new file mode 100644
index 0000000..f5bb023
--- /dev/null
+++ b/sys-apps/texinfo/files/texinfo-4.13-xz.patch
@@ -0,0 +1,130 @@
+https://bugs.gentoo.org/269742
+
+From bfae00d02b5fb3a2ce34c09d2dbf0ca2f96b154f Mon Sep 17 00:00:00 2001
+From: Karl Berry <k...@gnu.org>
+Date: Sat, 14 Mar 2009 17:57:41 +0000
+Subject: [PATCH] support xz compression, http://tukaani.org/xz
+
+---
+ ChangeLog                   |    6 ++++++
+ NEWS                        |    4 ++++
+ doc/info-stnd.texi          |   34 +++++++++++++++++-----------------
+ info/filesys.c              |    1 +
+ install-info/install-info.c |   29 +++++++++++++++++++++++++----
+ 5 files changed, 53 insertions(+), 21 deletions(-)
+
+2009-03-14  Karl Berry  <k...@gnu.org>
+
+       * info/filesys.c (compress_suffixes): add .xz/unxz.
+
+       * info/filesys.h (DEFAULT_INFOPATH): include PATH by default.
+
+diff --git a/doc/info-stnd.texi b/doc/info-stnd.texi
+index 2bd67f3..c730cff 100644
+--- a/doc/info-stnd.texi
++++ b/doc/info-stnd.texi
+@@ -202,21 +202,21 @@ directory.
+ @cindex Info files, compressed
+ In every directory Info tries, if @var{filename} is not found, Info
+ looks for it with a number of known extensions of Info files@footnote{
+-@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},
+-@code{bzip2}, @code{compress} and @code{yabba} programs; it calls
+-@code{gunzip}, @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
+-@file{.Y} extensions, possibly in addition to one of the known Info
+-files extensions@footnote{The 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
+-basename of a file.  Thus, on MS-DOS, if Info looks for @file{bison},
+-file names like @file{bison.igz} and @file{bison.inz} will be found and
+-decompressed by @code{gunzip}.}.
++@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},
++@code{xz}, @code{bzip2}, @code{lzma}, @code{compress} and @code{yabba}
++programs, assumed to have @file{.z}, @file{.gz}, @file{.xz},
++@file{.bz2}, @file{.lzma}, @file{.Z}, or @file{.Y} extensions,
++possibly after one of the known Info files extensions.
++
++On MS-DOS, Info 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 basename of a file.  Thus, on
++MS-DOS, if Info looks for @file{bison}, file names like
++@file{bison.igz} and @file{bison.inz} will be found and decompressed
++by @code{gunzip}.
+ 
+ @item --help
+ @itemx -h
+diff --git a/info/filesys.c b/info/filesys.c
+index fdd18a8..5e795bc 100644
+--- a/info/filesys.c
++++ b/info/filesys.c
+@@ -55,6 +55,7 @@ static char *info_suffixes[] = {
+ 
+ static COMPRESSION_ALIST compress_suffixes[] = {
+   { ".gz", "gunzip" },
++  { ".xz", "unxz" },
+   { ".bz2", "bunzip2" },
+   { ".z", "gunzip" },
+   { ".lzma", "unlzma" },
+diff --git a/install-info/install-info.c b/install-info/install-info.c
+index 24669b3..0f18ca4 100644
+--- a/install-info/install-info.c
++++ b/install-info/install-info.c
+@@ -400,6 +400,11 @@ strip_info_suffix (char *fname)
+       len -= 3;
+       ret[len] = 0;
+     }
++  else if (len > 3 && FILENAME_CMP (ret + len - 3, ".xz") == 0)
++    {
++      len -= 3;
++      ret[len] = 0;
++    }
+   else if (len > 4 && FILENAME_CMP (ret + len - 4, ".bz2") == 0)
+     {
+       len -= 4;
+@@ -659,6 +664,12 @@ open_possibly_compressed_file (char *filename,
+     {
+       *opened_filename = concat (filename, ".gz", "");
+       f = fopen (*opened_filename, FOPEN_RBIN);
++    }
++  if (!f)
++    {
++      *opened_filename = concat (filename, ".xz", "");
++      f = fopen (*opened_filename, FOPEN_RBIN);
++    }
+   if (!f)
+     {
+       free (*opened_filename);
+@@ -702,7 +712,6 @@ open_possibly_compressed_file (char *filename,
+           else
+             pfatal_with_name (filename);
+         }
+-    }
+ 
+   /* 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.  */
+@@ -727,6 +736,15 @@ open_possibly_compressed_file (char *filename,
+ #else
+     *compression_program = "gzip";
+ #endif
++
++  else if (data[0] == '\xFD' && data[1] == '7' && data[2] == 'z'
++           && data[3] == 'X' && data[4] == 'Z' && data[5] == 0)
++#ifndef STRIP_DOT_EXE
++    *compression_program = "xz.exe";
++#else
++    *compression_program = "xz";
++#endif
++
+   else if (data[0] == 'B' && data[1] == 'Z' && data[2] == 'h')
+ #ifndef STRIP_DOT_EXE
+     *compression_program = "bzip2.exe";
+-- 
+1.7.4.rc2
+

diff --git a/sys-apps/texinfo/texinfo-4.13-r2.ebuild 
b/sys-apps/texinfo/texinfo-4.13-r2.ebuild
new file mode 100644
index 0000000..90c19a5
--- /dev/null
+++ b/sys-apps/texinfo/texinfo-4.13-r2.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+
+inherit flag-o-matic eutils
+
+DESCRIPTION="The GNU info program and utilities"
+HOMEPAGE="https://www.gnu.org/software/texinfo/";
+SRC_URI="mirror://gnu/${PN}/${P}.tar.lzma"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc 
x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+IUSE="nls static"
+
+RDEPEND="!=app-text/tetex-2*
+       >=sys-libs/ncurses-5.2-r2
+       nls? ( virtual/libintl )"
+DEPEND="${RDEPEND}
+       app-arch/xz-utils
+       nls? ( sys-devel/gettext )"
+
+src_prepare() {
+       epatch "${FILESDIR}"/${P}-xz.patch #269742
+       touch doc/install-info.1 #354589
+       epatch "${FILESDIR}"/${P}-texi2dvi-regexp-range.patch #311885
+       epatch "${FILESDIR}"/${P}-accentenc-test.patch
+       # waiting to be sent upstream for my copyright assignment form to be
+       # ready - Flameeyes
+       epatch "${FILESDIR}"/${P}-docbook.patch
+       epatch "${FILESDIR}"/${P}-tinfo.patch #457556
+       # timestamps must be newer than configure.ac touched by ${P}-tinfo.patch
+       touch doc/{texi2dvi,texi2pdf,pdftexi2dvi}.1 #354589
+}
+
+src_configure() {
+       use static && append-ldflags -static
+       econf $(use_enable nls)
+}
+
+src_compile() {
+       # Make cross-compiler safe (#196041)
+       if tc-is-cross-compiler ; then
+               emake -C tools/gnulib/lib || die
+       fi
+
+       emake || die
+}
+
+src_install() {
+       emake DESTDIR="${D}" install || die
+
+       dodoc AUTHORS ChangeLog INTRODUCTION NEWS README TODO
+       newdoc info/README README.info
+       newdoc makeinfo/README README.makeinfo
+}

Reply via email to