From 9b2cca4817fa4bd8d520fed05e9560fc7183dcdf Mon Sep 17 00:00:00 2001 From: Vitezslav Crhonek Date: Tue, 20 Jul 2021 12:25:21 +0200 Subject: [PATCH] Update to texinfo-6.8 Signed-off-by: Vitezslav Crhonek --- .gitignore | 4 +- sources | 4 +- texinfo-4.12-zlib.patch | 236 --------------------------- texinfo-6.5-covscan-fixes.patch | 143 ++-------------- texinfo-6.7-fix-function-exit.patch | 12 -- texinfo-6.8-undo-gnulib-nonnul.patch | 182 +++++++++++++++++++++ texinfo.spec | 38 +++-- 7 files changed, 217 insertions(+), 402 deletions(-) delete mode 100644 texinfo-4.12-zlib.patch delete mode 100644 texinfo-6.7-fix-function-exit.patch create mode 100644 texinfo-6.8-undo-gnulib-nonnul.patch diff --git a/.gitignore b/.gitignore index 815816f..108f7be 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,2 @@ -/texinfo-6.7.tar.xz -/texinfo-6.7.tar.xz.sig +/texinfo-6.8.tar.xz +/texinfo-6.8.tar.xz.sig diff --git a/sources b/sources index 5019262..8653407 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (texinfo-6.7.tar.xz) = da55a0d0a760914386393c5e8e864540265d8550dc576f784781a6d72501918e8afce716ff343e5c2a0ce09cf921bfaf0a48ecb49f6182a7d10e920ae3ea17e7 -SHA512 (texinfo-6.7.tar.xz.sig) = 5306769ae7802f5b0643cef82ca7d219e0da922c4706d8802251a6e2f3361b4c244b3b67f3c4a27990b3e5dc75268cc6de6080e76071f74b7dbbcc8b6d3fe407 +SHA512 (texinfo-6.8.tar.xz) = 0ff9290b14e4d83e32b889cfa24e6d065f98b2a764daf6b92c6c895fddbb35258398da6257c113220d5a4d886f7b54b09c4b117ca5eacfee6797f9bffde0f909 +SHA512 (texinfo-6.8.tar.xz.sig) = 3b41ddf6b5a04c7f5fe1b4708a76f96b042cc3da0c786a2858d16c3db62d5506cc56e66199f69df92a6f039d42a8d670455f24f4c94056a9c0f500dfad51fabf diff --git a/texinfo-4.12-zlib.patch b/texinfo-4.12-zlib.patch deleted file mode 100644 index 78ef437..0000000 --- a/texinfo-4.12-zlib.patch +++ /dev/null @@ -1,236 +0,0 @@ -diff -up texinfo-6.5.91/install-info/install-info.c.orig texinfo-6.5.91/install-info/install-info.c ---- texinfo-6.5.91/install-info/install-info.c.orig 2019-01-13 12:43:10.000000000 +0100 -+++ texinfo-6.5.91/install-info/install-info.c 2019-01-14 09:31:45.322849494 +0100 -@@ -19,6 +19,7 @@ - #include - #include - #include -+#include - - #define TAB_WIDTH 8 - -@@ -681,15 +682,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. */ -@@ -697,48 +698,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) -@@ -754,7 +755,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; - } -@@ -764,26 +765,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 */ - } -@@ -854,35 +855,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; -@@ -901,7 +907,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); -@@ -909,14 +916,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) -@@ -935,8 +948,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.5.91/install-info/Makefile.in.orig texinfo-6.5.91/install-info/Makefile.in ---- texinfo-6.5.91/install-info/Makefile.in.orig 2019-01-14 09:32:31.729895052 +0100 -+++ texinfo-6.5.91/install-info/Makefile.in 2019-01-14 09:32:52.574914503 +0100 -@@ -218,7 +218,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) $(am__DEPENDENCIES_1) diff --git a/texinfo-6.5-covscan-fixes.patch b/texinfo-6.5-covscan-fixes.patch index 522d511..63e5167 100644 --- a/texinfo-6.5-covscan-fixes.patch +++ b/texinfo-6.5-covscan-fixes.patch @@ -1,17 +1,6 @@ -diff -up texinfo-6.5.91/contrib/fix-info-dir.p7 texinfo-6.5.91/contrib/fix-info-dir ---- texinfo-6.5.91/contrib/fix-info-dir.p7 2019-01-21 10:52:18.453973008 +0100 -+++ texinfo-6.5.91/contrib/fix-info-dir 2019-01-21 10:52:18.456973012 +0100 -@@ -28,7 +28,6 @@ if test -z "$LINENO"; then - fi - - MENU_BEGIN='^\*\([ ]\)\{1,\}Menu:' --MENU_ITEM='^\* ([^ ]).*:([ ])+\(' - MENU_FILTER1='s/^\*\([ ]\)\{1,\}/* /' - MENU_FILTER2='s/\([ ]\)\{1,\}$//g' - -diff -up texinfo-6.5.91/info/infomap.c.p7 texinfo-6.5.91/info/infomap.c ---- texinfo-6.5.91/info/infomap.c.p7 2019-01-13 12:43:10.000000000 +0100 -+++ texinfo-6.5.91/info/infomap.c 2019-01-21 10:52:18.457973013 +0100 +diff -up texinfo-6.7.90/info/infomap.c.orig texinfo-6.7.90/info/infomap.c +--- texinfo-6.7.90/info/infomap.c.orig 2019-12-01 12:26:46.000000000 +0100 ++++ texinfo-6.7.90/info/infomap.c 2021-02-24 12:56:06.865568572 +0100 @@ -589,6 +589,7 @@ fetch_user_maps (char *init_file) compile (inf, filename, &sup_info, &sup_ea); @@ -20,74 +9,9 @@ diff -up texinfo-6.5.91/info/infomap.c.p7 texinfo-6.5.91/info/infomap.c return 1; } -diff -up texinfo-6.5.91/info/makedoc.c.p7 texinfo-6.5.91/info/makedoc.c ---- texinfo-6.5.91/info/makedoc.c.p7 2019-01-13 12:43:10.000000000 +0100 -+++ texinfo-6.5.91/info/makedoc.c 2019-01-21 10:52:18.457973013 +0100 -@@ -425,7 +425,11 @@ process_one_file (char *filename, FILE * - - offset++; - if (offset >= file_size) -- break; -+ { -+ free (func_name); -+ free (func); -+ break; -+ } - - doc = xmalloc (1 + (offset - point)); - strncpy (doc, buffer + point, offset - point); -diff -up texinfo-6.5.91/info/m-x.c.p7 texinfo-6.5.91/info/m-x.c ---- texinfo-6.5.91/info/m-x.c.p7 2019-01-13 12:43:10.000000000 +0100 -+++ texinfo-6.5.91/info/m-x.c 2019-01-21 10:52:18.457973013 +0100 -@@ -79,7 +79,10 @@ DECLARE_INFO_COMMAND (describe_command, - InfoCommand *cmd = named_function (line); - - if (!cmd) -- return; -+ { -+ free (line); -+ return; -+ } - - window_message_in_echo_area ("%s: %s.", - line, function_documentation (cmd)); -diff -up texinfo-6.5.91/info/nodes.c.p7 texinfo-6.5.91/info/nodes.c ---- texinfo-6.5.91/info/nodes.c.p7 2019-01-13 12:43:10.000000000 +0100 -+++ texinfo-6.5.91/info/nodes.c 2019-01-21 10:52:18.457973013 +0100 -@@ -303,7 +303,10 @@ get_nodes_of_tags_table (FILE_BUFFER *fi - for (p = 0; nodedef[p] && nodedef[p] != INFO_TAGSEP; p++) - ; - if (nodedef[p] != INFO_TAGSEP) -- continue; -+ { -+ free (entry); -+ continue; -+ } - - entry->nodename = xmalloc (p + 1); - strncpy (entry->nodename, nodedef, p); -@@ -477,6 +480,7 @@ get_tags_of_indirect_tags_table (FILE_BU - } - file_buffer->subfiles = NULL; - free_file_buffer_tags (file_buffer); -+ free (subfiles); - return; - } - -diff -up texinfo-6.5.91/info/session.c.p7 texinfo-6.5.91/info/session.c ---- texinfo-6.5.91/info/session.c.p7 2019-01-13 12:43:10.000000000 +0100 -+++ texinfo-6.5.91/info/session.c 2019-01-21 10:52:18.458973014 +0100 -@@ -3552,6 +3552,7 @@ DECLARE_INFO_COMMAND (info_goto_invocati - if (!line) - { - info_abort_key (window, 0); -+ free (default_program_name); - return; - } - if (*line) -diff -up texinfo-6.5.91/info/variables.c.p7 texinfo-6.5.91/info/variables.c ---- texinfo-6.5.91/info/variables.c.p7 2019-01-13 12:43:10.000000000 +0100 -+++ texinfo-6.5.91/info/variables.c 2019-01-21 10:52:18.459973015 +0100 +diff -up texinfo-6.7.90/info/variables.c.orig texinfo-6.7.90/info/variables.c +--- texinfo-6.7.90/info/variables.c.orig 2021-02-24 13:00:21.056060523 +0100 ++++ texinfo-6.7.90/info/variables.c 2021-02-24 13:36:27.089318922 +0100 @@ -359,6 +359,7 @@ read_variable_name (char *prompt, WINDOW { char *line; @@ -107,57 +31,10 @@ diff -up texinfo-6.5.91/info/variables.c.p7 texinfo-6.5.91/info/variables.c } /* Make an array of REFERENCE which actually contains the names of the -diff -up texinfo-6.5.91/install-info/install-info.c.p7 texinfo-6.5.91/install-info/install-info.c ---- texinfo-6.5.91/install-info/install-info.c.p7 2019-01-21 10:52:18.447973002 +0100 -+++ texinfo-6.5.91/install-info/install-info.c 2019-01-21 10:52:18.460973016 +0100 -@@ -864,10 +864,16 @@ determine_file_type: - char *command = concat (*compression_program, " -d", ""); - - if (gzclose (f) < 0) -- return 0; -+ { -+ free (command); -+ return 0; -+ } - p = freopen (*opened_filename, FOPEN_RBIN, stdin); - if (!p) -- return 0; -+ { -+ free (command); -+ return 0; -+ } - p = popen (command, "r"); - if (!p) - { -@@ -877,6 +883,7 @@ determine_file_type: - } - else - *is_pipe = 1; -+ free (command); - return p; - } - else -@@ -920,7 +927,10 @@ readfile (char *filename, int *sizep, - &pipe_p); - - if (!f) -- return 0; -+ { -+ free (data); -+ return 0; -+ } - - for (;;) - { -@@ -980,6 +990,7 @@ output_dirfile (char *dirfile, int dir_n - { - char *command = concat (compression_program, ">", dirfile_tmp); - output = popen (command, "w"); -+ free (command); - } - else - output = fopen (dirfile_tmp, "w"); -@@ -1721,6 +1732,8 @@ reformat_new_entries (struct spec_entry +diff -up texinfo-6.7.90/install-info/install-info.c.orig texinfo-6.7.90/install-info/install-info.c +--- texinfo-6.7.90/install-info/install-info.c.orig 2021-02-24 13:36:42.839472560 +0100 ++++ texinfo-6.7.90/install-info/install-info.c 2021-02-24 13:41:36.219280631 +0100 +@@ -1717,6 +1728,8 @@ reformat_new_entries (struct spec_entry format_entry (name, name_len, desc, desc_len, calign, align, maxwidth, &entry->text, &entry->text_len); diff --git a/texinfo-6.7-fix-function-exit.patch b/texinfo-6.7-fix-function-exit.patch deleted file mode 100644 index bacfc3b..0000000 --- a/texinfo-6.7-fix-function-exit.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up texinfo-6.7/tp/tests/run_parser_all.sh.orig texinfo-6.7/tp/tests/run_parser_all.sh ---- texinfo-6.7/tp/tests/run_parser_all.sh.orig 2019-08-25 19:11:47.000000000 +0200 -+++ texinfo-6.7/tp/tests/run_parser_all.sh 2021-02-02 14:36:15.290152957 +0100 -@@ -46,7 +46,7 @@ check_latex2html_and_tex4ht () - if echo "$remaining" | grep '[-]init mediawiki.pm' >/dev/null; then - if test "$no_html2wiki" = 'yes' ; then - echo "S: (no html2wiki) $current" -- continue 2 -+ return 2 - fi - fi - fi diff --git a/texinfo-6.8-undo-gnulib-nonnul.patch b/texinfo-6.8-undo-gnulib-nonnul.patch new file mode 100644 index 0000000..ef60038 --- /dev/null +++ b/texinfo-6.8-undo-gnulib-nonnul.patch @@ -0,0 +1,182 @@ +diff -up texinfo-6.8/gnulib/lib/cdefs.h.orig texinfo-6.8/gnulib/lib/cdefs.h +--- texinfo-6.8/gnulib/lib/cdefs.h.orig 2021-03-11 19:57:53.000000000 +0100 ++++ texinfo-6.8/gnulib/lib/cdefs.h 2021-07-19 12:26:46.985176475 +0200 +@@ -321,15 +321,15 @@ + + /* The nonnull function attribute marks pointer parameters that + must not be NULL. */ +-#ifndef __attribute_nonnull__ ++#ifndef __nonnull + # if __GNUC_PREREQ (3,3) || __glibc_has_attribute (__nonnull__) +-# define __attribute_nonnull__(params) __attribute__ ((__nonnull__ params)) ++# define __nonnull(params) __attribute__ ((__nonnull__ params)) + # else +-# define __attribute_nonnull__(params) ++# define __nonnull(params) + # endif +-#endif +-#ifndef __nonnull +-# define __nonnull(params) __attribute_nonnull__ (params) ++#elif !defined __GLIBC__ ++# undef __nonnull ++# define __nonnull(params) _GL_ATTRIBUTE_NONNULL (params) + #endif + + /* If fortification mode, we warn about unused results of certain +diff -up texinfo-6.8/gnulib/lib/libc-config.h.orig texinfo-6.8/gnulib/lib/libc-config.h +--- texinfo-6.8/gnulib/lib/libc-config.h.orig 2021-03-11 19:57:54.000000000 +0100 ++++ texinfo-6.8/gnulib/lib/libc-config.h 2021-07-19 12:27:58.810590975 +0200 +@@ -33,9 +33,9 @@ + #include + + /* On glibc this includes and and #defines +- _FEATURES_H, __WORDSIZE, and __set_errno. On FreeBSD 11 and +- DragonFlyBSD 5.9 it includes which defines __nonnull. +- Elsewhere it is harmless. */ ++ _FEATURES_H, __WORDSIZE, and __set_errno. On FreeBSD 11 it ++ includes which defines __nonnull. Elsewhere it ++ is harmless. */ + #include + + /* From glibc . */ +diff -up texinfo-6.8/gnulib/lib/malloc/dynarray-skeleton.c.orig texinfo-6.8/gnulib/lib/malloc/dynarray-skeleton.c +--- texinfo-6.8/gnulib/lib/malloc/dynarray-skeleton.c.orig 2021-03-11 19:57:54.000000000 +0100 ++++ texinfo-6.8/gnulib/lib/malloc/dynarray-skeleton.c 2021-07-19 12:24:46.878419397 +0200 +@@ -192,7 +192,7 @@ DYNARRAY_NAME (free__array__) (struct DY + + /* Initialize a dynamic array object. This must be called before any + use of the object. */ +-__attribute_nonnull__ ((1)) ++__nonnull ((1)) + static void + DYNARRAY_NAME (init) (struct DYNARRAY_STRUCT *list) + { +@@ -202,7 +202,7 @@ DYNARRAY_NAME (init) (struct DYNARRAY_ST + } + + /* Deallocate the dynamic array and its elements. */ +-__attribute_maybe_unused__ __attribute_nonnull__ ((1)) ++__attribute_maybe_unused__ __nonnull ((1)) + static void + DYNARRAY_FREE (struct DYNARRAY_STRUCT *list) + { +@@ -213,7 +213,7 @@ DYNARRAY_FREE (struct DYNARRAY_STRUCT *l + } + + /* Return true if the dynamic array is in an error state. */ +-__attribute_nonnull__ ((1)) ++__nonnull ((1)) + static inline bool + DYNARRAY_NAME (has_failed) (const struct DYNARRAY_STRUCT *list) + { +@@ -222,7 +222,7 @@ DYNARRAY_NAME (has_failed) (const struct + + /* Mark the dynamic array as failed. All elements are deallocated as + a side effect. */ +-__attribute_nonnull__ ((1)) ++__nonnull ((1)) + static void + DYNARRAY_NAME (mark_failed) (struct DYNARRAY_STRUCT *list) + { +@@ -236,7 +236,7 @@ DYNARRAY_NAME (mark_failed) (struct DYNA + + /* Return the number of elements which have been added to the dynamic + array. */ +-__attribute_nonnull__ ((1)) ++__nonnull ((1)) + static inline size_t + DYNARRAY_NAME (size) (const struct DYNARRAY_STRUCT *list) + { +@@ -245,7 +245,7 @@ DYNARRAY_NAME (size) (const struct DYNAR + + /* Return a pointer to the array element at INDEX. Terminate the + process if INDEX is out of bounds. */ +-__attribute_nonnull__ ((1)) ++__nonnull ((1)) + static inline DYNARRAY_ELEMENT * + DYNARRAY_NAME (at) (struct DYNARRAY_STRUCT *list, size_t index) + { +@@ -257,7 +257,7 @@ DYNARRAY_NAME (at) (struct DYNARRAY_STRU + /* Return a pointer to the first array element, if any. For a + zero-length array, the pointer can be NULL even though the dynamic + array has not entered the failure state. */ +-__attribute_nonnull__ ((1)) ++__nonnull ((1)) + static inline DYNARRAY_ELEMENT * + DYNARRAY_NAME (begin) (struct DYNARRAY_STRUCT *list) + { +@@ -267,7 +267,7 @@ DYNARRAY_NAME (begin) (struct DYNARRAY_S + /* Return a pointer one element past the last array element. For a + zero-length array, the pointer can be NULL even though the dynamic + array has not entered the failure state. */ +-__attribute_nonnull__ ((1)) ++__nonnull ((1)) + static inline DYNARRAY_ELEMENT * + DYNARRAY_NAME (end) (struct DYNARRAY_STRUCT *list) + { +@@ -294,7 +294,7 @@ DYNARRAY_NAME (add__) (struct DYNARRAY_S + /* Add ITEM at the end of the array, enlarging it by one element. + Mark *LIST as failed if the dynamic array allocation size cannot be + increased. */ +-__attribute_nonnull__ ((1)) ++__nonnull ((1)) + static inline void + DYNARRAY_NAME (add) (struct DYNARRAY_STRUCT *list, DYNARRAY_ELEMENT item) + { +@@ -348,8 +348,7 @@ DYNARRAY_NAME (emplace__) (struct DYNARR + /* Allocate a place for a new element in *LIST and return a pointer to + it. The pointer can be NULL if the dynamic array cannot be + enlarged due to a memory allocation failure. */ +-__attribute_maybe_unused__ __attribute_warn_unused_result__ +-__attribute_nonnull__ ((1)) ++__attribute_maybe_unused__ __attribute_warn_unused_result__ __nonnull ((1)) + static + /* Avoid inlining with the larger initialization code. */ + #if !(defined (DYNARRAY_ELEMENT_INIT) || defined (DYNARRAY_ELEMENT_FREE)) +@@ -373,7 +372,7 @@ DYNARRAY_NAME (emplace) (struct DYNARRAY + existing size, new elements are added (which can be initialized). + Otherwise, the list is truncated, and elements are freed. Return + false on memory allocation failure (and mark *LIST as failed). */ +-__attribute_maybe_unused__ __attribute_nonnull__ ((1)) ++__attribute_maybe_unused__ __nonnull ((1)) + static bool + DYNARRAY_NAME (resize) (struct DYNARRAY_STRUCT *list, size_t size) + { +@@ -418,7 +417,7 @@ DYNARRAY_NAME (resize) (struct DYNARRAY_ + } + + /* Remove the last element of LIST if it is present. */ +-__attribute_maybe_unused__ __attribute_nonnull__ ((1)) ++__attribute_maybe_unused__ __nonnull ((1)) + static void + DYNARRAY_NAME (remove_last) (struct DYNARRAY_STRUCT *list) + { +@@ -435,7 +434,7 @@ DYNARRAY_NAME (remove_last) (struct DYNA + + /* Remove all elements from the list. The elements are freed, but the + list itself is not. */ +-__attribute_maybe_unused__ __attribute_nonnull__ ((1)) ++__attribute_maybe_unused__ __nonnull ((1)) + static void + DYNARRAY_NAME (clear) (struct DYNARRAY_STRUCT *list) + { +@@ -453,8 +452,7 @@ DYNARRAY_NAME (clear) (struct DYNARRAY_S + stored in *RESULT if LIST refers to an empty list. On success, the + pointer in *RESULT is heap-allocated and must be deallocated using + free. */ +-__attribute_maybe_unused__ __attribute_warn_unused_result__ +-__attribute_nonnull__ ((1, 2)) ++__attribute_maybe_unused__ __attribute_warn_unused_result__ __nonnull ((1, 2)) + static bool + DYNARRAY_NAME (finalize) (struct DYNARRAY_STRUCT *list, + DYNARRAY_FINAL_TYPE *result) +@@ -485,8 +483,7 @@ DYNARRAY_NAME (finalize) (struct DYNARRA + have a sentinel at the end). If LENGTHP is not NULL, the array + length is written to *LENGTHP. *LIST is re-initialized and can be + reused. */ +-__attribute_maybe_unused__ __attribute_warn_unused_result__ +-__attribute_nonnull__ ((1)) ++__attribute_maybe_unused__ __attribute_warn_unused_result__ __nonnull ((1)) + static DYNARRAY_ELEMENT * + DYNARRAY_NAME (finalize) (struct DYNARRAY_STRUCT *list, size_t *lengthp) + { diff --git a/texinfo.spec b/texinfo.spec index e1c4eaf..10bcfad 100644 --- a/texinfo.spec +++ b/texinfo.spec @@ -2,32 +2,32 @@ Summary: Tools needed to create Texinfo format documentation files Name: texinfo -Version: 6.7 -Release: 11%{?dist} +Version: 6.8 +Release: 1%{?dist} License: GPLv3+ 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 -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 -# Patch3: we need to fix template fix-info-dir generates -Patch3: info-6.5-sync-fix-info-dir.patch -# Patch4: rhbz#1592433, bug in fix-info-dir --delete -Patch4: texinfo-6.5-fix-info-dir.patch -# Patch5: fixes issues detected by static analysis -Patch5: texinfo-6.5-covscan-fixes.patch -# Patch6: fixes issue found by ShellCheck in test script -Patch6: texinfo-6.7-fix-function-exit.patch +# Patch0: this is needed just for koji/mock, all tests pass fine in local build +Patch0: texinfo-6.0-disable-failing-info-test.patch +# Patch1: rhbz#1348671, because of OSTree +Patch1: texinfo-6.1-install-info-use-create-tmp-then-rename-pattern.patch +# Patch2: we need to fix template fix-info-dir generates +Patch2: info-6.5-sync-fix-info-dir.patch +# Patch3: rhbz#1592433, bug in fix-info-dir --delete +Patch3: texinfo-6.5-fix-info-dir.patch +# Patch4: fixes issues detected by static analysis +Patch4: texinfo-6.5-covscan-fixes.patch +# Patch5: undos change done in gnulib that causes build to fail +# https://lists.gnu.org/r/bug-gnulib/2021-03/msg00066.html +Patch5: texinfo-6.8-undo-gnulib-nonnul.patch BuildRequires: make BuildRequires: gcc BuildRequires: perl-generators -BuildRequires: zlib-devel, ncurses-devel, help2man, perl(Data::Dumper) +BuildRequires: ncurses-devel, help2man, perl(Data::Dumper) BuildRequires: perl(Locale::Messages), perl(Unicode::EastAsianWidth), perl(Text::Unidecode) -BuildRequires: perl(Storable), perl(Unicode::Normalize) +BuildRequires: perl(Storable), perl(Unicode::Normalize), perl(File::Copy) # Texinfo perl packages are not installed in default perl library dirs %global __provides_exclude ^perl\\(.*Texinfo.*\\)$ @@ -149,6 +149,10 @@ export ALL_TESTS=yes %{_mandir}/man1/pdftexi2dvi.1* %changelog +* 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