diff --git a/.gitignore b/.gitignore index b40ef00..2a54308 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,2 @@ -/texinfo-7.1.1.tar.xz -/texinfo-7.1.1.tar.xz.sig -/texinfo-7.2.tar.xz -/texinfo-7.2.tar.xz.sig +/texinfo-6.4.tar.xz +/texinfo-6.4.tar.xz.sig diff --git a/fix-info-dir b/fix-info-dir deleted file mode 100755 index 0659552..0000000 --- a/fix-info-dir +++ /dev/null @@ -1,316 +0,0 @@ -#!/bin/sh -#fix-info-dir (GNU texinfo) -VERSION=1.1 -#Copyright (C) 1998, 2003 Free Software Foundation, Inc. -#fix-info-dir comes with NO WARRANTY, to the extent permitted by law. -#You may redistribute copies of fix-info-dir -#under the terms of the GNU General Public License. -#For more information about these matters, see the files named COPYING." -#fix-info-dir was derived from update-info and gen-dir-node -# The skeleton file contains info topic names in the -# order they should appear in the output. There are three special -# lines that alter the behavior: a line consisting of just "--" causes -# the next line to be echoed verbatim to the output. A line -# containing just "%%" causes all the remaining filenames (wildcards -# allowed) in the rest of the file to be ignored. A line containing -# just "!!" exits the script when reached (unless preceded by a line -# containing just "--"). -#Author: Richard L. Hawes, rhawes@dmapub.dma.org. - -# ###SECTION 1### Constants -set -h 2>/dev/null -# ENVIRONMENT -if test -z "$TMPDIR"; then - TMPDIR="/usr/tmp" -fi -if test -z "$LINENO"; then - LINENO="0" -fi - -MENU_BEGIN='^\*\([ ]\)\{1,\}Menu:' -MENU_FILTER1='s/^\*\([ ]\)\{1,\}/* /' -MENU_FILTER2='s/\([ ]\)\{1,\}$//g' - -TMP_FILE1="${TMPDIR}/fx${$}.info" -TMP_FILE2="${TMPDIR}/fy${$}.info" -TMP_FILE_LIST="$TMP_FILE1 $TMP_FILE2" - -TRY_HELP_MSG="Try --help for more information" - -# ###SECTION 100### main program -#variables set by options -CREATE_NODE="" -DEBUG=":" -MODE="" -# -Total="0" -Changed="" - -while test "$*"; do - case "$1" in - -c|--create) CREATE_NODE="y";; - --debug) set -eux; DEBUG="set>&2";; - -d|--delete) MODE="Detect_Invalid";; - +d);; - --version) -cat<&2 - echo "$TRY_HELP_MSG">&2 - exit 2;; - *) break;; - esac - shift -done - -ORIGINAL_DIR=`pwd` - -if test "$#" -gt "0"; then - INFO_DIR="$1" - shift -else - INFO_DIR=$DEFAULT_INFO_DIR -fi - -if test ! -d "${INFO_DIR}"; then - DIR_FILE=`basename ${INFO_DIR}`; - INFO_DIR=`dirname ${INFO_DIR}`; -else - DIR_FILE="dir" -fi - -cd "$INFO_DIR"||exit - - -if test "$CREATE_NODE"; then - if test "$#" -gt "0"; then - if test `expr $1 : /` = '1'; then - SKELETON="$1" - else - SKELETON="$ORIGINAL_DIR/$1" - fi - if test ! -r "$SKELETON" && test -f "$SKELETON"; then - echo "$0:$LINENO: $SKELETON is not readable">&2 - exit 2 - fi - shift - else - SKELETON=/dev/null - - fi -else - if test ! -f "$DIR_FILE"; then - echo "$0:$LINENO: $DIR_FILE is irregular or nonexistant">&2 - exit 2 - elif test ! -r "$DIR_FILE"; then - echo "$0:$LINENO: $DIR_FILE is not readable">&2 - exit 2 - elif test ! -w "$DIR_FILE"; then - echo "$0:$LINENO: $DIR_FILE is not writeable">&2 - exit 2 - fi -fi - -if test "$#" -gt "0"; then - echo "$0:$LINENO: Too many parameters">&2 - echo "$TRY_HELP_MSG">&2 - exit 2 -fi - -if test -f "$DIR_FILE"; then - cp "$DIR_FILE" "$DIR_FILE.old" - echo "Backed up $DIR_FILE to $DIR_FILE.old." -fi - -if test "$CREATE_NODE"; then - if test "$MODE"; then - echo "$0:$LINENO: ERROR: Illogical option combination: -d -c">&2 - echo "$TRY_HELP_MSG">&2 - exit 2 - fi - echo "Creating new Info Node: `pwd`/$DIR_FILE" - Changed="y" - -{ - - ### output the dir header - echo "-*- Text -*-" - echo "This file was generated automatically by $0." - echo "This version was generated on `date`" - echo "by `whoami`@`hostname` for `pwd`" - - cat<" visits the Emacs topic, etc. - - In Emacs, you can click mouse button 2 on a menu item or cross reference - to select it. - -* Menu: The list of major topics begins on the next line. - -DIR_FILE_END_OF_FILE - -### go through the list of files in the skeleton. If an info file -### exists, grab the ENTRY information from it. If an entry exists -### use it, otherwise create a minimal $DIR_FILE entry. - - # Read one line from the file. This is so that we can echo lines with - # whitespace and quoted characters in them. - while read fileline; do - # flag fancy features - if test ! -z "$echoline"; then # echo line - echo "$fileline" - echoline="" - continue - elif test "${fileline}" = "--"; then - # echo the next line - echoline="1" - continue - elif test "${fileline}" = "%%"; then - # skip remaining files listed in skeleton file - skip="1" - continue - elif test "${fileline}" = "!!"; then - # quit now - break - fi - - # handle files if they exist - for file in $fileline""; do - fname= - if test -z "$file"; then - break - fi - # Find the file to operate upon. - if test -r "$file"; then - fname="$file" - elif test -r "${file}.info"; then - fname="${file}.info" - elif test -r "${file}.gz"; then - fname="${file}.gz" - elif test -r "${file}.info.gz"; then - fname="${file}.info.gz" - else - echo "$0:$LINENO: can't find info file for ${file}?">&2 - continue - fi - - # if we found something and aren't skipping, do the entry - if test "$skip"; then - continue - fi - - infoname=`echo $file|sed -e 's/.info$//'` - entry=`zcat -f $fname|\ - sed -e '1,/START-INFO-DIR-ENTRY/d'\ - -e '/END-INFO-DIR-ENTRY/,$d'` - if [ ! -z "${entry}" ]; then - echo "${entry}" - else - echo "* ${infoname}: (${infoname})." - fi - Total=`expr "$Total" + "1"` - done - done -}>$DIR_FILE<$SKELETON -fi - -trap ' eval "$DEBUG"; rm -f $TMP_FILE_LIST; exit ' 0 -trap ' rm -f $TMP_FILE_LIST - exit ' 1 -trap ' rm -f $TMP_FILE_LIST - echo "$0:$LINENO: received INT signal.">&2 - exit ' 2 -trap ' rm -f $TMP_FILE_LIST - echo "$0:$LINENO: received QUIT signal.">&2 - exit ' 3 - -sed -e "1,/$MENU_BEGIN/d" -e "$MENU_FILTER1" -e "$MENU_FILTER2"<$DIR_FILE\ -|sed -n -e '/\* /{ -s/).*$//g -s/\.gz$// -s/\.info$// -s/^.*(//p -}'|sort -u>$TMP_FILE1 -ls -F|sed -e '/\/$/d' -e '/[-.][0-9]/d'\ - -e "/^$DIR_FILE\$/d" -e "/^$DIR_FILE.old\$/d"\ - -e 's/[*@]$//' -e 's/\.gz$//' -e 's/\.info$//'|sort>$TMP_FILE2 - -if test -z "$MODE"; then - #Detect Missing - DONE_MSG="total menu item(s) were inserted into `pwd`/$DIR_FILE" - for Info_Name in `comm -13 $TMP_FILE1 $TMP_FILE2`; do - if test -r "$Info_Name"; then - Info_File="$Info_Name" - elif test -r "${Info_Name}.info"; then - Info_File="${Info_Name}.info" - elif test -r "${Info_Name}.gz"; then - Info_File="${Info_Name}.gz" - elif test -r "${Info_Name}.info.gz"; then - Info_File="${Info_Name}.info.gz" - else - echo "$0:$LINENO: can't find info file for ${Info_Name}?">&2 - continue - fi - Changed="y" - if install-info $Info_File $DIR_FILE; then - Total=`expr "$Total" + "1"` - fi - done -else - # Detect Invalid - DONE_MSG="total invalid menu item(s) were removed from `pwd`/$DIR_FILE" - for Info_Name in `comm -23 $TMP_FILE1 $TMP_FILE2`; do - Changed="y" - if install-info --remove $Info_Name $DIR_FILE; then - Total=`expr "$Total" + "1"` - fi - done -fi - -# print summary -if test "$Changed"; then - echo "$Total $DONE_MSG" -else - echo "Nothing to do" -fi -rm -f $TMP_FILE_LIST -eval "$DEBUG" -exit 0 diff --git a/info-6.5-sync-fix-info-dir.patch b/info-6.5-sync-fix-info-dir.patch deleted file mode 100644 index dd10dce..0000000 --- a/info-6.5-sync-fix-info-dir.patch +++ /dev/null @@ -1,40 +0,0 @@ -diff -uNr texinfo-6.5.orig/contrib/fix-info-dir texinfo-6.5/contrib/fix-info-dir ---- texinfo-6.5.orig/contrib/fix-info-dir 2014-04-22 03:56:56.000000000 +0200 -+++ texinfo-6.5/contrib/fix-info-dir 2018-02-04 13:48:35.979359350 +0100 -@@ -163,29 +163,23 @@ - { - - ### output the dir header -- echo "-*- Text -*-" -- echo "This file was generated automatically by $0." -- echo "This version was generated on `date`" -- echo "by `whoami`@`hostname` for `pwd`" - - cat<" visits the Emacs topic, etc. -+ "mEmacs" visits the Emacs manual, etc. - - In Emacs, you can click mouse button 2 on a menu item or cross reference - to select it. - --* Menu: The list of major topics begins on the next line. -- -+* Menu: - DIR_FILE_END_OF_FILE - - ### go through the list of files in the skeleton. If an info file diff --git a/info-dir b/info-dir new file mode 100644 index 0000000..1c4d362 --- /dev/null +++ b/info-dir @@ -0,0 +1,22 @@ +$Id: dir,v 1.2 1996/09/24 18:43:01 karl Exp $ +This is the file .../info/dir, which contains the topmost node of the +Info hierarchy. The first time you invoke Info you start off +looking at that node, which is (dir)Top. + +File: dir Node: Top This is the top of the INFO tree + + This (the Directory node) gives a menu of major topics. + Typing "q" exits, "?" lists all Info commands, "d" returns here, + "h" gives a primer for first-timers, + "mEmacs" visits the Emacs topic, etc. + + In Emacs, you can click mouse button 2 on a menu item or cross reference + to select it. + +* Menu: + +Texinfo documentation system +* Info: (info). Documentation browsing system. + +Miscellaneous +* bash: (bash). The Bourne Again Shell. diff --git a/sources b/sources index aa3d69e..766aaf7 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (texinfo-7.2.tar.xz) = 8e67337ae12a552fc620c43725507a4978710ea6630e98b0f5e98eb3f79a90e191dde5225699aa6217c26f171d277461f76150f0459cd07b40c3234d2f3d89bf -SHA512 (texinfo-7.2.tar.xz.sig) = fcb5bcf655e16f8994b33242516cff7f5dc6684555c889fee4a4e5b01cbc9c8163d6ea5c77722b2bb8d6f65120650de4daff027bee135d1c29f82316211d8fb4 +SHA512 (texinfo-6.4.tar.xz) = 628e7fb64c4cb6d4ec879d5593e3660dbbbf41915c7aec68b6af209a1c496bee8a3879a69e4e047c3bee0cb476540ffd6ebdef5ec7b712edd191a82ce9ac4006 +SHA512 (texinfo-6.4.tar.xz.sig) = a36c9b6258bb6ac291f0d1c21ac7a7851d9c33aceabb15e6fe52c0d537084cedb565aa458c9ea46116ab53af6eca753b1512edcf046ab7c37ca3c77fccb879fc diff --git a/texinfo-4.12-zlib.patch b/texinfo-4.12-zlib.patch new file mode 100644 index 0000000..0fc5bb4 --- /dev/null +++ b/texinfo-4.12-zlib.patch @@ -0,0 +1,236 @@ +diff -up texinfo-6.4/install-info/install-info.c.orig texinfo-6.4/install-info/install-info.c +--- texinfo-6.4/install-info/install-info.c.orig 2016-03-04 18:52:26.000000000 +0100 ++++ texinfo-6.4/install-info/install-info.c 2017-06-27 15:14:20.167998983 +0200 +@@ -22,6 +22,7 @@ + #include + #include + #include ++#include + + #define TAB_WIDTH 8 + +@@ -684,15 +685,15 @@ The first time you invoke Info you start + + Return either stdin reading the file, or a non-stdin pipe reading + the output of the compression program. */ +-FILE * ++void * + open_possibly_compressed_file (char *filename, + void (*create_callback) (char *), +- char **opened_filename, char **compression_program) ++ char **opened_filename, char **compression_program, int *is_pipe) + { + 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. */ +@@ -700,48 +701,48 @@ 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, ".xz", ""); +- 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, ".lz", ""); +- 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__ + if (!f) + { + 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 /* __MSDOS__ */ + if (!f) +@@ -757,7 +758,7 @@ open_possibly_compressed_file (char *fil + (*create_callback) (filename); + + /* And try opening it again. */ +- f = fopen (*opened_filename, FOPEN_RBIN); ++ f = gzopen (*opened_filename, FOPEN_RBIN); + if (!f) + return 0; + } +@@ -767,26 +768,26 @@ 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)) + { +- if (nread == 0) ++ if (nread >= 0) + { + /* Try to create the file if its empty. */ +- if (feof (f) && create_callback) ++ if (gzeof (f) && create_callback) + { +- if (fclose (f) != 0) ++ if (gzclose (f) < 0) + return 0; /* unknown error closing file */ + + if (remove (filename) != 0) + return 0; /* unknown error deleting file */ + + (*create_callback) (filename); +- f = fopen (*opened_filename, FOPEN_RBIN); ++ f = gzopen (*opened_filename, FOPEN_RBIN); + if (!f) + return 0; +- nread = fread (data, sizeof (data), 1, f); +- if (nread == 0) ++ nread = gzread (f, data, sizeof (data)); ++ if (nread <= 0) + return 0; + goto determine_file_type; /* success */ + } +@@ -857,35 +858,40 @@ determine_file_type: + *compression_program = NULL; + + /* Seek back over the magic bytes. */ +- if (fseek (f, 0, 0) < 0) ++ if (gzseek (f, 0, SEEK_SET) == -1) + return 0; + + if (*compression_program) + { /* It's compressed, so open a pipe. */ ++ FILE *p; + char *command = concat (*compression_program, " -d", ""); + +- if (fclose (f) < 0) ++ if (gzclose (f) < 0) + return 0; +- f = freopen (*opened_filename, FOPEN_RBIN, stdin); +- if (!f) ++ p = freopen (*opened_filename, FOPEN_RBIN, stdin); ++ if (!p) + return 0; +- f = popen (command, "r"); +- if (!f) ++ p = popen (command, "r"); ++ if (!p) + { + /* Used for error message in calling code. */ + *opened_filename = command; + return 0; + } ++ else ++ *is_pipe = 1; ++ return p; + } + else + { +-#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); + if (! f) + return 0; + #endif ++ *is_pipe = 0; + } + + return f; +@@ -904,7 +910,8 @@ readfile (char *filename, int *sizep, + void (*create_callback) (char *), char **opened_filename, + char **compression_program) + { +- FILE *f; ++ void *f; ++ int pipe_p; + int filled = 0; + int data_size = 8192; + char *data = xmalloc (data_size); +@@ -912,14 +919,20 @@ readfile (char *filename, int *sizep, + /* If they passed the space for the file name to return, use it. */ + f = open_possibly_compressed_file (filename, create_callback, + opened_filename, +- compression_program); ++ compression_program, ++ &pipe_p); + + if (!f) + return 0; + + 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) + return 0; + if (nread == 0) +@@ -938,8 +951,10 @@ readfile (char *filename, int *sizep, + /* We need to close the stream, since on some systems the pipe created + by popen is simulated by a temporary file which only gets removed + inside pclose. */ +- if (f != stdin) ++ if (pipe_p) + pclose (f); ++ else ++ gzclose (f); + + *sizep = filled; + return data; +diff -up texinfo-6.4/install-info/Makefile.in.orig texinfo-6.4/install-info/Makefile.in +--- texinfo-6.4/install-info/Makefile.in.orig 2017-06-23 08:04:39.000000000 +0200 ++++ texinfo-6.4/install-info/Makefile.in 2017-06-27 15:14:20.167998983 +0200 +@@ -221,7 +221,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) -lz + am__DEPENDENCIES_1 = + ginstall_info_DEPENDENCIES = $(top_builddir)/gnulib/lib/libgnu.a \ + $(am__DEPENDENCIES_1) diff --git a/texinfo-6.0-disable-failing-info-test.patch b/texinfo-6.0-disable-failing-info-test.patch new file mode 100644 index 0000000..a7caf7c --- /dev/null +++ b/texinfo-6.0-disable-failing-info-test.patch @@ -0,0 +1,49 @@ +diff -up texinfo-6.4/info/Makefile.in.orig texinfo-6.4/info/Makefile.in +--- texinfo-6.4/info/Makefile.in.orig 2017-06-23 08:04:39.000000000 +0200 ++++ texinfo-6.4/info/Makefile.in 2017-06-27 14:44:50.270650688 +0200 +@@ -1364,7 +1364,6 @@ TESTS = \ + t/end-of-line.sh \ + t/goal-column.sh \ + t/star-note-non-whitespace.sh \ +- t/c-u-m-x-scroll-forward.sh \ + t/last-no-history.sh \ + t/split-footnotes.sh \ + t/window-split-dir.sh \ +@@ -1389,10 +1388,6 @@ TESTS = \ + t/search-skip-screen.sh \ + t/search-empty.sh \ + t/close-window-after-search.sh \ +- t/inc-sea-forward.sh \ +- t/inc-sea-forward-nonregex.sh \ +- t/inc-sea-insensitive.sh \ +- t/inc-sea-history.sh \ + t/gc-split.sh \ + t/anchor-positions.sh \ + t/quoted-label-as-target.sh \ +diff -up texinfo-6.4/tp/tests/Makefile.in.orig texinfo-6.4/tp/tests/Makefile.in +--- texinfo-6.4/tp/tests/Makefile.in.orig 2017-06-23 08:04:41.000000000 +0200 ++++ texinfo-6.4/tp/tests/Makefile.in 2017-06-27 14:58:23.872202271 +0200 +@@ -1307,7 +1307,6 @@ one_test_files_generated_list = \ + test_scripts/formatting_simplest_test_prefix_info.sh \ + test_scripts/formatting_simplest_test_css.sh \ + test_scripts/formatting_simplest_test_date_in_header.sh \ +- test_scripts/formatting_documentlanguage_set_option.sh \ + test_scripts/formatting_documentlanguage_set_unknown.sh \ + test_scripts/formatting_documentlanguage_set_option_info.sh \ + test_scripts/formatting_float_copying.sh \ +@@ -1347,7 +1346,6 @@ one_test_files_generated_list = \ + test_scripts/sectioning_top_node_up_explicit.sh \ + test_scripts/coverage_texi_formatting.sh \ + test_scripts/coverage_formatting.sh \ +- test_scripts/coverage_formatting_fr.sh \ + test_scripts/indices_double_index_entry.sh \ + test_scripts/indices_split_chapter_index.sh \ + test_scripts/indices_index_split.sh \ +@@ -1446,7 +1444,6 @@ one_test_files_generated_list = \ + test_scripts/layout_formatting_html32.sh \ + test_scripts/layout_formatting_regions.sh \ + test_scripts/layout_formatting_exotic.sh \ +- test_scripts/layout_formatting_fr_icons.sh \ + test_scripts/layout_formatting_chm.sh \ + test_scripts/layout_formatting_nodes.sh \ + test_scripts/tex_html_block_EOL_tex.sh \ diff --git a/texinfo-6.1-install-info-use-create-tmp-then-rename-pattern.patch b/texinfo-6.1-install-info-use-create-tmp-then-rename-pattern.patch new file mode 100644 index 0000000..ab8e072 --- /dev/null +++ b/texinfo-6.1-install-info-use-create-tmp-then-rename-pattern.patch @@ -0,0 +1,44 @@ +diff -up texinfo-6.1/install-info/install-info.c.orig texinfo-6.1/install-info/install-info.c +--- texinfo-6.1/install-info/install-info.c.orig 2016-06-22 09:49:38.766013018 +0200 ++++ texinfo-6.1/install-info/install-info.c 2016-06-22 14:11:58.673780736 +0200 +@@ -973,18 +973,23 @@ output_dirfile (char *dirfile, int dir_n + int n_entries_added = 0; + int i; + FILE *output; ++ char *dirfile_tmp = NULL; ++ ++ asprintf (&dirfile_tmp, "%s.tmp", dirfile); ++ if (!dirfile_tmp) ++ xalloc_die (); + + if (compression_program) + { +- char *command = concat (compression_program, ">", dirfile); ++ char *command = concat (compression_program, ">", dirfile_tmp); + output = popen (command, "w"); + } + else +- output = fopen (dirfile, "w"); ++ output = fopen (dirfile_tmp, "w"); + + if (!output) + { +- perror (dirfile); ++ perror (dirfile_tmp); + exit (EXIT_FAILURE); + } + +@@ -1095,6 +1100,13 @@ output_dirfile (char *dirfile, int dir_n + pclose (output); + else + fclose (output); ++ ++ if (rename (dirfile_tmp, dirfile) < 0) ++ { ++ perror (dirfile_tmp); ++ exit (EXIT_FAILURE); ++ } ++ free (dirfile_tmp); + } + + /* Read through the input LINES, to find the section names and the diff --git a/texinfo-6.4-info-fix-following-more-than-one-line-cross-reference.patch b/texinfo-6.4-info-fix-following-more-than-one-line-cross-reference.patch new file mode 100644 index 0000000..59bebde --- /dev/null +++ b/texinfo-6.4-info-fix-following-more-than-one-line-cross-reference.patch @@ -0,0 +1,11 @@ +diff -up texinfo-6.4/info/info-utils.c.orig texinfo-6.4/info/info-utils.c +--- texinfo-6.4/info/info-utils.c.orig 2017-07-10 10:37:50.713333292 +0200 ++++ texinfo-6.4/info/info-utils.c 2017-07-10 10:38:16.342348756 +0200 +@@ -1280,6 +1280,7 @@ scan_reference_label (REFERENCE *entry, + &entry->nodename); + if (!len) + return 0; /* Input invalid. */ ++ canonicalize_whitespace (entry->nodename); + label_len += len; + } + else diff --git a/texinfo-6.4-info-fix-possible-incorrect-selection-of-already-loaded-file.patch b/texinfo-6.4-info-fix-possible-incorrect-selection-of-already-loaded-file.patch new file mode 100644 index 0000000..4b3d951 --- /dev/null +++ b/texinfo-6.4-info-fix-possible-incorrect-selection-of-already-loaded-file.patch @@ -0,0 +1,22 @@ +diff -up texinfo-6.4/info/nodes.c.orig texinfo-6.4/info/nodes.c +--- texinfo-6.4/info/nodes.c.orig 2017-06-18 14:50:42.000000000 +0200 ++++ texinfo-6.4/info/nodes.c 2017-07-10 09:39:10.195209219 +0200 +@@ -678,6 +678,7 @@ info_find_subfile (char *fullpath) + char *with_extension = 0; + int i; + FILE_BUFFER *file_buffer = 0; ++ int fullpath_len = strlen (fullpath); + + /* First try to find the file in our list of already loaded files. */ + if (info_loaded_files) +@@ -685,7 +686,9 @@ info_find_subfile (char *fullpath) + for (i = 0; (file_buffer = info_loaded_files[i]); i++) + /* Check if fullpath starts the name of the recorded file (extra + extensions like ".info.gz" could be added.) */ +- if (!strncmp (file_buffer->fullpath, fullpath, strlen (fullpath))) ++ if (!strncmp (file_buffer->fullpath, fullpath, fullpath_len) ++ && (file_buffer->fullpath[fullpath_len] == '\0' ++ || file_buffer->fullpath[fullpath_len] == '.')) + { + struct stat new_info, *old_info; + diff --git a/texinfo-6.4-info-fix-search.patch b/texinfo-6.4-info-fix-search.patch new file mode 100644 index 0000000..d05f5de --- /dev/null +++ b/texinfo-6.4-info-fix-search.patch @@ -0,0 +1,37 @@ +diff -up texinfo-6.4/info/search.c.orig texinfo-6.4/info/search.c +--- texinfo-6.4/info/search.c.orig 2017-04-17 09:39:56.000000000 +0200 ++++ texinfo-6.4/info/search.c 2017-12-04 11:31:09.180059724 +0100 +@@ -201,6 +201,7 @@ regexp_search (char *regexp, int is_lite + char *buf = xmalloc (size); + regerror (result, &preg, buf, size); + info_error (_("regexp error: %s"), buf); ++ free (buf); + return search_invalid; + } + +@@ -215,7 +216,10 @@ regexp_search (char *regexp, int is_lite + extend_matches (match_state); + + if (match_state->match_count == 0) +- return search_not_found; ++ { ++ free_matches (match_state); ++ return search_not_found; ++ } + else + return search_success; + } +diff -up texinfo-6.4/info/session.c.orig texinfo-6.4/info/session.c +--- texinfo-6.4/info/session.c.orig 2017-12-04 11:31:15.023062714 +0100 ++++ texinfo-6.4/info/session.c 2017-12-04 11:31:41.870076452 +0100 +@@ -3953,10 +3953,7 @@ info_search_in_node_internal (WINDOW *wi + } + + if (result != search_success) +- { +- free_matches (&matches); + return result; +- } + + if (node->flags & N_Simple) + { diff --git a/texinfo-6.5-fix-info-dir.patch b/texinfo-6.5-fix-info-dir.patch deleted file mode 100644 index cdb26f2..0000000 --- a/texinfo-6.5-fix-info-dir.patch +++ /dev/null @@ -1,41 +0,0 @@ -This fixes two issues: - -https://bugzilla.redhat.com/show_bug.cgi?id=1592433 -This is a bug in fix-info-dir --delete -(Hunk 3) - -https://bugzilla.redhat.com/show_bug.cgi?id=1614162 -This is a weird infinite loop that happens when fix-info-dir is run with stderr -redirected to /dev/null while /dev/null doesn't exist (or isn't a device) -(Hunks 1 and 2) - -diff --git a/contrib/fix-info-dir b/contrib/fix-info-dir -index 4439ada..9240060 100755 ---- a/contrib/fix-info-dir -+++ b/contrib/fix-info-dir -@@ -124,6 +124,7 @@ if test "$CREATE_NODE"; then - fi - shift - else -+ SKIP_READ=yes - SKELETON=/dev/null - - fi -@@ -188,7 +189,7 @@ DIR_FILE_END_OF_FILE - - # Read one line from the file. This is so that we can echo lines with - # whitespace and quoted characters in them. -- while read fileline; do -+ while test -z "$SKIP_READ" && read fileline; do - # flag fancy features - if test ! -z "$echoline"; then # echo line - echo "$fileline" -@@ -294,7 +295,7 @@ else - DONE_MSG="total invalid menu item(s) were removed from `pwd`/$DIR_FILE" - for Info_Name in `comm -23 $TMP_FILE1 $TMP_FILE2`; do - Changed="y" -- if install-info --remove $Info_Name $DIR_FILE; then -+ if install-info --remove --remove-exactly $Info_Name $DIR_FILE; then - Total=`expr "$Total" + "1"` - fi - done diff --git a/texinfo-6.7-zstd-compression.patch b/texinfo-6.7-zstd-compression.patch deleted file mode 100644 index a08a454..0000000 --- a/texinfo-6.7-zstd-compression.patch +++ /dev/null @@ -1,69 +0,0 @@ -diff -up texinfo-6.7/info/filesys.c.omv~ texinfo-6.7/info/filesys.c ---- texinfo-6.7/info/filesys.c.omv~ 2020-01-05 02:24:32.094858726 +0100 -+++ texinfo-6.7/info/filesys.c 2020-01-05 02:25:59.789854472 +0100 -@@ -58,9 +58,11 @@ static COMPRESSION_ALIST compress_suffix - #if STRIP_DOT_EXE - { ".gz", "gunzip" }, - { ".lz", "lunzip" }, -+ { ".zst", "unzstd" }, - #else - { ".gz", "gzip -d" }, - { ".lz", "lzip -d" }, -+ { ".zst", "zstd -d" }, - #endif - { ".xz", "unxz" }, - { ".bz2", "bunzip2" }, -diff -up texinfo-6.7/install-info/install-info.c.omv~ texinfo-6.7/install-info/install-info.c ---- texinfo-6.7/install-info/install-info.c.omv~ 2020-01-05 02:20:38.837870043 +0100 -+++ texinfo-6.7/install-info/install-info.c 2020-01-05 02:24:03.029860136 +0100 -@@ -451,6 +451,16 @@ strip_info_suffix (char *fname) - len -= 4; - ret[len] = 0; - } -+ else if (len > 4 && FILENAME_CMP (ret + len - 4, ".zst") == 0) -+ { -+ len -= 4; -+ ret[len] = 0; -+ } -+ else if (len > 5 && FILENAME_CMP (ret + len - 5, ".zstd") == 0) -+ { -+ len -= 5; -+ ret[len] = 0; -+ } - #ifdef __MSDOS__ - else if (len > 4 && (FILENAME_CMP (ret + len - 4, ".inz") == 0 - || FILENAME_CMP (ret + len - 4, ".igz") == 0)) -@@ -727,6 +737,18 @@ open_possibly_compressed_file (char *fil - *opened_filename = concat (filename, ".lzma", ""); - f = fopen (*opened_filename, FOPEN_RBIN); - } -+ if (!f) -+ { -+ free (*opened_filename); -+ *opened_filename = concat (filename, ".zst", ""); -+ f = fopen (*opened_filename, FOPEN_RBIN); -+ } -+ if (!f) -+ { -+ free (*opened_filename); -+ *opened_filename = concat (filename, ".zstd", ""); -+ f = fopen (*opened_filename, FOPEN_RBIN); -+ } - #ifdef __MSDOS__ - if (!f) - { -@@ -850,6 +872,14 @@ determine_file_type: - *compression_program = "lzma"; - #endif - -+ else if (data[0] == 0x28 && data[1] == 0xb5 && data[2] == 0x2f -+ && data[3] == 0xfd) -+#ifndef STRIP_DOT_EXE -+ *compression_program = "zstd.exe"; -+#else -+ *compression_program = "zstd"; -+#endif -+ - else - *compression_program = NULL; - diff --git a/texinfo-7.1-make-tainted-data-safe.patch b/texinfo-7.1-make-tainted-data-safe.patch deleted file mode 100644 index aafae60..0000000 --- a/texinfo-7.1-make-tainted-data-safe.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up texinfo-7.1/info/makedoc.c.orig texinfo-7.1/info/makedoc.c ---- texinfo-7.1/info/makedoc.c.orig 2023-08-14 20:53:20.000000000 +0200 -+++ texinfo-7.1/info/makedoc.c 2024-10-09 10:13:13.476369921 +0200 -@@ -296,7 +296,7 @@ process_one_file (char *filename, FILE * - char *func, *doc; - char *func_name; - -- for (; offset < (file_size - decl_len); offset++) -+ for (; offset < (file_size - decl_len) && offset < (LONG_MAX - decl_len); offset++) - { - if (buffer[offset] == '\n') - { diff --git a/texinfo-7.1-various-sast-fixes.patch b/texinfo-7.1-various-sast-fixes.patch deleted file mode 100644 index 77c912b..0000000 --- a/texinfo-7.1-various-sast-fixes.patch +++ /dev/null @@ -1,26 +0,0 @@ -diff -up texinfo-7.1.90/info/infokey.c.orig texinfo-7.1.90/info/infokey.c ---- texinfo-7.1.90/info/infokey.c.orig 2024-10-21 14:26:11.000000000 +0200 -+++ texinfo-7.1.90/info/infokey.c 2024-11-07 12:55:41.197343929 +0100 -@@ -208,7 +208,7 @@ compile (FILE *fp, const char *filename, - int oval = 0; - char comment[10]; - unsigned int clen = 0; -- int seq[20]; -+ int seq[20] = { 0 }; - unsigned int slen = 0; - char act[80]; - unsigned int alen = 0; -diff -up texinfo-7.1.90/info/session.c.orig texinfo-7.1.90/info/session.c ---- texinfo-7.1.90/info/session.c.orig 2024-10-21 14:26:11.000000000 +0200 -+++ texinfo-7.1.90/info/session.c 2024-11-07 12:59:30.401861317 +0100 -@@ -2941,7 +2941,7 @@ DECLARE_INFO_COMMAND (info_menu_sequence - static int - info_handle_pointer (const char *label, WINDOW *window) - { -- char *description; -+ char *description = NULL; - NODE *node; - - if (!strcmp (label, "Up")) -diff -up texinfo-7.1.90/info/util.c.orig texinfo-7.1.90/info/util.c -diff -up texinfo-7.1.90/install-info/install-info.c.orig texinfo-7.1.90/install-info/install-info.c diff --git a/texinfo-7.2-fix-perl-precedence-warnings.patch b/texinfo-7.2-fix-perl-precedence-warnings.patch deleted file mode 100644 index e2a29cb..0000000 --- a/texinfo-7.2-fix-perl-precedence-warnings.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -up texinfo-7.2/tp/Texinfo/Convert/Converter.pm.orig texinfo-7.2/tp/Texinfo/Convert/Converter.pm ---- texinfo-7.2/tp/Texinfo/Convert/Converter.pm.orig 2024-12-19 19:31:42.000000000 +0100 -+++ texinfo-7.2/tp/Texinfo/Convert/Converter.pm 2025-08-01 10:31:55.845929864 +0200 -@@ -386,7 +386,7 @@ sub output_tree($$) - - my $fh; - my $encoded_output_file; -- if (! $output_file eq '') { -+ if ($output_file ne '') { - my $path_encoding; - ($encoded_output_file, $path_encoding) - = $self->encoded_output_file_name($output_file); -diff -up texinfo-7.2/tp/Texinfo/Convert/LaTeX.pm.orig texinfo-7.2/tp/Texinfo/Convert/LaTeX.pm ---- texinfo-7.2/tp/Texinfo/Convert/LaTeX.pm.orig 2024-12-19 19:31:42.000000000 +0100 -+++ texinfo-7.2/tp/Texinfo/Convert/LaTeX.pm 2025-08-01 10:32:57.790836873 +0200 -@@ -1085,7 +1085,7 @@ sub output($$) - - my $fh; - my $encoded_output_file; -- if (! $output_file eq '') { -+ if ($output_file ne '') { - my $path_encoding; - ($encoded_output_file, $path_encoding) - = $self->encoded_output_file_name($output_file); diff --git a/texinfo.spec b/texinfo.spec index 719db85..84c2aca 100644 --- a/texinfo.spec +++ b/texinfo.spec @@ -1,33 +1,34 @@ -%global tex_texinfo %{_datadir}/texlive/texmf-dist/tex/texinfo +%global tex_texinfo %{_datadir}/texmf/tex/texinfo Summary: Tools needed to create Texinfo format documentation files Name: texinfo -Version: 7.2 -Release: 7%{?dist} -License: GPL-3.0-or-later +Version: 6.4 +Release: 6%{?dist} +License: GPLv3+ +Group: Applications/Publishing Url: http://www.gnu.org/software/texinfo/ Source0: ftp://ftp.gnu.org/gnu/texinfo/texinfo-%{version}.tar.xz Source1: ftp://ftp.gnu.org/gnu/texinfo/texinfo-%{version}.tar.xz.sig -Source2: fix-info-dir -# Patch0: we need to fix template fix-info-dir generates -Patch0: info-6.5-sync-fix-info-dir.patch -# Patch1: rhbz#1592433, bug in fix-info-dir --delete -Patch1: texinfo-6.5-fix-info-dir.patch -# Patch3: fixes issues detected by static analysis -Patch3: texinfo-7.1-various-sast-fixes.patch -# Patch4: fixes issues detected by static analysis -Patch4: texinfo-7.1-make-tainted-data-safe.patch -# Patch5: fixes Perl precedence warnings (already upstream) -Patch5: texinfo-7.2-fix-perl-precedence-warnings.patch -# Patch6: add support for zstd compression -Patch6: texinfo-6.7-zstd-compression.patch - -BuildRequires: make -BuildRequires: gcc +Source2: info-dir +# Source5: macro definitions +Source5: macros.info +Patch0: texinfo-4.12-zlib.patch +# Patch1: this is needed just for koji/mock, all tests pass fine in local build +Patch1: texinfo-6.0-disable-failing-info-test.patch +# Patch2: rhbz#1348671, because of OSTree +Patch2: texinfo-6.1-install-info-use-create-tmp-then-rename-pattern.patch +# Patches 3-5 are already upstream +Patch3: texinfo-6.4-info-fix-following-more-than-one-line-cross-reference.patch +Patch4: texinfo-6.4-info-fix-possible-incorrect-selection-of-already-loaded-file.patch +Patch5: texinfo-6.4-info-fix-search.patch +Requires(post): /sbin/install-info +Requires(preun): /sbin/install-info +Requires: perl-interpreter >= 5.7.3, perl(Text::Unidecode) +Requires: perl(Unicode::EastAsianWidth), perl(Data::Dumper), perl(Locale::Messages) BuildRequires: perl-generators -BuildRequires: ncurses-devel, help2man, perl(Data::Dumper) +BuildRequires: zlib-devel, ncurses-devel, help2man, perl(Data::Dumper) BuildRequires: perl(Locale::Messages), perl(Unicode::EastAsianWidth), perl(Text::Unidecode) -BuildRequires: perl(Storable), perl(Unicode::Normalize), perl(File::Copy) +BuildRequires: perl(Storable) # Texinfo perl packages are not installed in default perl library dirs %global __provides_exclude ^perl\\(.*Texinfo.*\\)$ @@ -44,7 +45,7 @@ are going to write documentation for the GNU Project. %package -n info Summary: A stand-alone TTY-based reader for GNU texinfo documentation -Provides: /sbin/install-info +Group: System Environment/Base %description -n info The GNU project uses the texinfo file format for much of its @@ -53,15 +54,11 @@ browser program for viewing texinfo files. %package tex Summary: Tools for formatting Texinfo documentation files using TeX +Group: Applications/Publishing Requires: texinfo = %{version}-%{release} Requires: tex(tex) tex(epsf.tex) -Requires: /usr/bin/cmp -Requires: /usr/bin/diff Requires(post): %{_bindir}/texconfig-sys Requires(postun): %{_bindir}/texconfig-sys -Provides: tex-texinfo -Provides: texlive-texinfo -Obsoletes: texlive-texinfo <= 9:2019-15 %description tex Texinfo is a documentation system that can produce both online @@ -73,31 +70,68 @@ for printing using TeX. %prep %setup -q -mkdir contrib -install -Dpm0755 -t contrib %{SOURCE2} -%autopatch -p1 +%patch0 -p1 -b .zlib +%patch1 -p1 -b .disable-failing-info-test +%patch2 -p1 -b .install-info-use-create-tmp-then-rename-pattern +%patch3 -p1 -b .info-fix-following-more-than-one-line-cross-reference +%patch4 -p1 -b .info-fix-possible-incorrect-selection-of-already-loaded-file +%patch5 -p1 -b .info-fix-search %build %configure --with-external-Text-Unidecode \ --with-external-libintl-perl \ --with-external-Unicode-EastAsianWidth \ --disable-perl-xs -%make_build +make %{?_smp_mflags} %install -%make_install +mkdir -p ${RPM_BUILD_ROOT}/sbin -mkdir -p %{buildroot}%{tex_texinfo} -install -p -m644 doc/texinfo.tex doc/txi-??.tex %{buildroot}%{tex_texinfo} +make install DESTDIR=$RPM_BUILD_ROOT INSTALL='install -p' -install -Dpm0755 -t %{buildroot}%{_sbindir} contrib/fix-info-dir +mkdir -p $RPM_BUILD_ROOT%{tex_texinfo} +install -p -m644 doc/texinfo.tex doc/txi-??.tex $RPM_BUILD_ROOT%{tex_texinfo} + +install -p -m644 %{SOURCE2} $RPM_BUILD_ROOT%{_infodir}/dir +mv $RPM_BUILD_ROOT%{_bindir}/install-info $RPM_BUILD_ROOT/sbin + +mkdir -p $RPM_BUILD_ROOT%{_rpmconfigdir}/macros.d +cp %{SOURCE5} $RPM_BUILD_ROOT%{_rpmconfigdir}/macros.d %find_lang %{name} %find_lang %{name}_document %check export ALL_TESTS=yes -%make_build check +make %{?_smp_mflags} check + +%post +if [ -f %{_infodir}/texinfo.gz ]; then # --excludedocs? + /sbin/install-info %{_infodir}/texinfo.gz %{_infodir}/dir || : +fi + +%preun +if [ $1 = 0 ]; then + if [ -f %{_infodir}/texinfo.gz ]; then # --excludedocs? + /sbin/install-info --delete %{_infodir}/texinfo.gz %{_infodir}/dir || : + fi +fi + +%post -n info +if [ -f %{_infodir}/info-stnd.info ]; then # --excludedocs? + /sbin/install-info %{_infodir}/info-stnd.info %{_infodir}/dir +fi +if [ -x /bin/sed ]; then + /bin/sed -i '/^This is.*produced by makeinfo.*from/d' %{_infodir}/dir || : +fi + +%preun -n info +if [ $1 = 0 ]; then + if [ -f %{_infodir}/info-stnd.info ]; then # --excludedocs? + /sbin/install-info --delete %{_infodir}/info-stnd.info %{_infodir}/dir \ + || : + fi +fi %post tex %{_bindir}/texconfig-sys rehash 2> /dev/null || : @@ -105,40 +139,32 @@ export ALL_TESTS=yes %postun tex %{_bindir}/texconfig-sys rehash 2> /dev/null || : -%transfiletriggerin -n info -- %{_infodir} -[ -f %{_infodir}/dir ] && create_arg="" || create_arg="--create" -%{_sbindir}/fix-info-dir $create_arg %{_infodir}/dir &>/dev/null - -%transfiletriggerpostun -n info -- %{_infodir} -[ -f %{_infodir}/dir ] && %{_sbindir}/fix-info-dir --delete %{_infodir}/dir &>/dev/null %files -f %{name}.lang -f %{name}_document.lang %doc AUTHORS ChangeLog NEWS README TODO +%{!?_licensedir:%global license %%doc} %license COPYING %{_bindir}/makeinfo %{_bindir}/texi2any %{_bindir}/pod2texi %{_datadir}/texinfo -%{_datadir}/texi2any %{_infodir}/texinfo* -%{_infodir}/texi2any_api.info* -%{_infodir}/texi2any_internals.info* %{_mandir}/man1/makeinfo.1* %{_mandir}/man5/texinfo.5* %{_mandir}/man1/texi2any.1* %{_mandir}/man1/pod2texi.1* %files -n info +%config(noreplace) %verify(not md5 size mtime) %{_infodir}/dir +%{!?_licensedir:%global license %%doc} %license COPYING %{_bindir}/info %{_infodir}/info-stnd.info* -%{_sbindir}/install-info -%{_sbindir}/fix-info-dir +/sbin/install-info %{_mandir}/man1/info.1* %{_mandir}/man1/install-info.1* %{_mandir}/man5/info.5* -%ghost %{_infodir}/dir -%ghost %attr(644, root, root) %{_infodir}/dir.old +%{_rpmconfigdir}/macros.d/macros.info %files tex %{_bindir}/texindex @@ -152,177 +178,9 @@ export ALL_TESTS=yes %{_mandir}/man1/pdftexi2dvi.1* %changelog -* Sat Nov 29 2025 Neal Gompa - 7.2-7 -- Add patch to support zstd compressed info pages - -* Fri Aug 01 2025 Vitezslav Crhonek - 7.2-6 -- Fix FTBFS (Perl precedence warnings) - Resolves: #2385687 - -* Fri Jul 25 2025 Fedora Release Engineering - 7.2-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild - -* Wed Jun 25 2025 Vitezslav Crhonek - 7.2-4 -- Fix texi2dvi missing dependencies - Resolves: #2374602 - -* Tue Jan 21 2025 Vitezslav Crhonek - 7.2-3 -- Changes related to bin and sbin unify - -* Sun Jan 19 2025 Fedora Release Engineering - 7.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Mon Jan 13 2025 Vitezslav Crhonek - 7.2-1 -- Update to texinfo-7.2 - Resolves: #2333829 - -* Tue Oct 15 2024 Vitezslav Crhonek - 7.1.1-2 -- Another batch of fixes for issues detected by static analysis - -* Mon Sep 09 2024 Vitezslav Crhonek - 7.1.1-1 -- Update to texinfo-7.1.1 - Resolves: #2310652 - -* Sat Jul 20 2024 Fedora Release Engineering - 7.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Sat Jan 27 2024 Fedora Release Engineering - 7.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Tue Oct 24 2023 Vitezslav Crhonek - 7.1-1 -- Update to texinfo-7.1 - Resolves: #2244846 - -* Sat Jul 22 2023 Fedora Release Engineering - 7.0.3-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Wed May 31 2023 Vitezslav Crhonek - 7.0.3-2 -- SPDX migration - -* Thu Mar 30 2023 Vitezslav Crhonek - 7.0.3-1 -- Update to texinfo-7.0.3 - Resolves: #2181837 - -* Wed Feb 22 2023 Vitezslav Crhonek - 7.0.2-2 -- Fix possible use of an undefined value as an ARRAY reference in ParserNonXS.pm - (causes FTBFS of a2ps) - Resolves: #2171433 - -* Mon Jan 23 2023 Vitezslav Crhonek - 7.0.2-1 -- Update to texinfo-7.0.2 - Resolves: #2162979 - -* Sat Jan 21 2023 Fedora Release Engineering - 7.0.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Thu Dec 01 2022 Vitezslav Crhonek - 7.0.1-1 -- Update to texinfo-7.0.1 - Resolves: #2149772 - -* Fri Nov 18 2022 Vitezslav Crhonek - 7.0-1 -- Update to texinfo-7.0 - Resolves: #2140872 - -* Sat Jul 23 2022 Fedora Release Engineering - 6.8-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Sat Jan 22 2022 Fedora Release Engineering - 6.8-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Fri Jul 23 2021 Fedora Release Engineering - 6.8-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Tue Jul 20 2021 Vitezslav Crhonek - 6.8-1 -- Update to texinfo-6.8 - Resolves: #1978903 - -* Mon Jun 14 2021 Vitezslav Crhonek - 6.7-11 -- Fix install path of install-info - -* Tue Feb 02 2021 Vitezslav Crhonek - 6.7-10 -- Fix problem in shell code found by ShellCheck in test script - -* Wed Jan 27 2021 Fedora Release Engineering - 6.7-9 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Wed Jul 29 2020 Fedora Release Engineering - 6.7-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Mon Mar 16 2020 Jitka Plesnikova - 6.7-7 -- Add BR: perl(Unicode::Normalize) - -* Thu Mar 5 2020 Tom Callaway - 6.7-6 -- add additional Provides: tex-texinfo ("it's an older code sir, but it checks out") - -* Fri Jan 31 2020 Fedora Release Engineering - 6.7-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Fri Jan 24 2020 Vitezslav Crhonek - 6.7-4 -- Move texlive-tex files to more approriate location again, this - time in sync with dropping texlive-texinfo from texlive - Resolves: #1719379 - -* Thu Jan 09 2020 Vitezslav Crhonek - 6.7-3 -- Fix mode of dir.old - -* Tue Oct 08 2019 Vitezslav Crhonek - 6.7-2 -- Revert move of texinfo-tex files - Resolves: #1758817 - -* Thu Sep 26 2019 Vitezslav Crhonek - 6.7-1 -- Update to texinfo-6.7 - Resolves: #1754648 -- Move texlive-tex files to more approriate location - Resolves: #1719379 - -* Sat Jul 27 2019 Fedora Release Engineering - 6.6-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Mon Feb 18 2019 Vitezslav Crhonek - 6.6-1 -- Update to texinfo-6.6 - Resolves: #1677911 - -* Sun Feb 03 2019 Fedora Release Engineering - 6.5-12 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Thu Oct 04 2018 Jason L Tibbitts III - 6.5-11 -- Fix another issue in fix-info-dir which could lead to an infinite loop in odd - circumstances. - Resolves: #1614162 - -* Thu Aug 09 2018 Igor Gnatenko - 6.5-10 -- Drop macros.info - -* Wed Aug 08 2018 Vitezslav Crhonek - 6.5-9 -- Fix issues detected by static analysis - -* Sat Jul 14 2018 Fedora Release Engineering - 6.5-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Fri Jun 29 2018 Jitka Plesnikova - 6.5-7 -- Perl 5.28 rebuild - -* Thu Jun 21 2018 Vitezslav Crhonek - 6.5-6 -- Fix fail of test because of unescaped left brace with Perl 5.28 - (patch by Jitka Plesnikova) - Resolves: #1590308 - -* Tue Jun 19 2018 Jason L Tibbitts III - 6.5-5 -- Fix bug in fix-info-dir which prevented the transfiletriggerpostun script - from working properly. - -* Fri Mar 30 2018 Tom Callaway - 6.5-4 -- update texinfo.tex - -* Tue Feb 13 2018 Igor Gnatenko - 6.5-3 -- Implement transaction filetriggers for crating info/dir - -* Fri Feb 09 2018 Fedora Release Engineering - 6.5-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Wed Sep 13 2017 Vitezslav Crhonek - 6.5-1 -- Update to texinfo-6.5 - Resolves: #1491075 +* Mon Dec 04 2017 Vitezslav Crhonek - 6.4-6 +- Fix crash in search + Resolves: #1516326 * Thu Aug 03 2017 Fedora Release Engineering - 6.4-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild