SHA256
1
0
forked from pool/texinfo

6 Commits

Author SHA256 Message Date
bdc1bbdd08 Accepting request 1293113 from Publishing
OBS-URL: https://build.opensuse.org/request/show/1293113
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/texinfo?expand=0&rev=73
2025-07-15 14:41:21 +00:00
Jan Fooken
59098328fc - Add texinfo-perl-5.42.patch: Fix syntax to be unambiguous
if (! $str eq '') is not really clear; is it
    (!$str) eq ''
  or
    !($str eq '')
  Perl 5.42 rightly flagges this syntax with:
    Possible precedence problem between ! and string eq
  Assuming !($str eq '') was meant, we can rewrite this as
  $str ne '', which happens to also be used in multiple places
  already (sometimes just a few lines further down in the same
  files)

OBS-URL: https://build.opensuse.org/package/show/Publishing/texinfo?expand=0&rev=136
2025-07-14 10:57:37 +00:00
084b9436c9 Accepting request 1267482 from Publishing
add -std=gnu17 to CFLAGS to fix gcc15 compile time error (flag can be dropped w/ release 7.2) (forwarded request 1267205 from hsk17)

OBS-URL: https://build.opensuse.org/request/show/1267482
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/texinfo?expand=0&rev=72
2025-04-08 15:49:53 +00:00
52ebd08ea3 Accepting request 1267205 from home:hsk17:branches:openSUSE:Factory:Staging:Gcc7
add -std=gnu17 to CFLAGS to fix gcc15 compile time error (flag can be dropped w/ release 7.2)

OBS-URL: https://build.opensuse.org/request/show/1267205
OBS-URL: https://build.opensuse.org/package/show/Publishing/texinfo?expand=0&rev=134
2025-04-07 06:05:43 +00:00
079b7c7d2d Accepting request 1145451 from Publishing
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/1145451
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/texinfo?expand=0&rev=71
2025-02-20 15:31:54 +00:00
07bc834679 Update to texinfo 7.1
OBS-URL: https://build.opensuse.org/package/show/Publishing/texinfo?expand=0&rev=132
2024-02-02 13:08:53 +00:00
8 changed files with 297 additions and 65 deletions

BIN
texinfo-7.0.3.tar.xz (Stored with Git LFS)

Binary file not shown.

View File

@@ -1,8 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iI8EABEIADcWIQTq9mmzHjHh3svRFRPdvFedqzf7qQUCZCA15BkcZ2F2aW5zbWl0
aDAxMjNAZ21haWwuY29tAAoJEN28V52rN/upzwABAI2fLUksBxG7Zs/MXc6nTzFV
vM/ujEry9Xc+dXwpD1H7AP99udrll7XijKAMJG0G2/w2RVPu56x5l6UGrLhJB8Wt
PQ==
=A5eq
-----END PGP SIGNATURE-----

BIN
texinfo-7.1.tar.xz (Stored with Git LFS) Normal file

Binary file not shown.

8
texinfo-7.1.tar.xz.sig Normal file
View File

@@ -0,0 +1,8 @@
-----BEGIN PGP SIGNATURE-----
iI8EABEIADcWIQTq9mmzHjHh3svRFRPdvFedqzf7qQUCZS/iphkcZ2F2aW5zbWl0
aDAxMjNAZ21haWwuY29tAAoJEN28V52rN/up5LYBALwlhLMF0ms2VhWq8mXvHbii
L2ySgaLsL1Pe3bFv6UC5AP0XSWsH5VQGq3wRVvo5KCH9TIi2aAMZ3RrfJbaPmxHS
xA==
=bAky
-----END PGP SIGNATURE-----

52
texinfo-perl-5.42.patch Normal file
View File

@@ -0,0 +1,52 @@
Index: texinfo-7.1/tp/Texinfo/Convert/DocBook.pm
===================================================================
--- texinfo-7.1.orig/tp/Texinfo/Convert/DocBook.pm
+++ texinfo-7.1/tp/Texinfo/Convert/DocBook.pm
@@ -340,7 +340,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);
Index: texinfo-7.1/tp/Texinfo/Convert/Info.pm
===================================================================
--- texinfo-7.1.orig/tp/Texinfo/Convert/Info.pm
+++ texinfo-7.1/tp/Texinfo/Convert/Info.pm
@@ -100,7 +100,7 @@ sub output($)
my $tree_units = Texinfo::Structuring::split_by_node($root);
my $fh;
- if (! $output_file eq '') {
+ if ($output_file ne '') {
if ($self->get_conf('VERBOSE')) {
print STDERR "Output file $output_file\n";
}
Index: texinfo-7.1/tp/Texinfo/Convert/LaTeX.pm
===================================================================
--- texinfo-7.1.orig/tp/Texinfo/Convert/LaTeX.pm
+++ texinfo-7.1/tp/Texinfo/Convert/LaTeX.pm
@@ -1065,7 +1065,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);
Index: texinfo-7.1/tp/Texinfo/Convert/TexinfoMarkup.pm
===================================================================
--- texinfo-7.1.orig/tp/Texinfo/Convert/TexinfoMarkup.pm
+++ texinfo-7.1/tp/Texinfo/Convert/TexinfoMarkup.pm
@@ -298,7 +298,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);

View File

@@ -1,6 +1,21 @@
diff -Nur texinfo-6.8/install-info/install-info.c new/install-info/install-info.c
--- texinfo-6.8/install-info/install-info.c 2021-06-15 22:02:27.000000000 +0200
+++ new/install-info/install-info.c 2022-04-25 12:38:13.573744683 +0200
---
install-info/Makefile.in | 2 -
install-info/install-info.c | 76 +++++++++++++++++++++++++++++++-------------
2 files changed, 56 insertions(+), 22 deletions(-)
--- a/install-info/Makefile.in
+++ b/install-info/Makefile.in 2024-01-31 13:40:04.106538986 +0000
@@ -263,7 +263,7 @@ am__installdirs = "$(DESTDIR)$(bindir)"
PROGRAMS = $(bin_PROGRAMS)
am_ginstall_info_OBJECTS = install-info.$(OBJEXT)
ginstall_info_OBJECTS = $(am_ginstall_info_OBJECTS)
-ginstall_info_LDADD = $(LDADD)
+ginstall_info_LDADD = $(LDADD) -lzio
am__DEPENDENCIES_1 =
ginstall_info_DEPENDENCIES = $(top_builddir)/gnulib/lib/libgnu.a \
$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
--- a/install-info/install-info.c
+++ b/install-info/install-info.c 2024-01-31 14:05:20.746208687 +0000
@@ -19,6 +19,7 @@
#include <getopt.h>
#include <regex.h>
@@ -9,84 +24,113 @@ diff -Nur texinfo-6.8/install-info/install-info.c new/install-info/install-info.
#define TAB_WIDTH 8
@@ -852,22 +853,33 @@
@@ -823,25 +824,43 @@ determine_file_type:
if (*compression_program)
{
- /* Redirect stdin to the file and fork the decompression process
- reading from stdin. This allows shell metacharacters in filenames. */
- char *command = concat (*compression_program, " -d", "");
-
- FILE *f2;
+ FILE *fz = f;
if (fclose (f) < 0)
return 0;
- f = freopen (*opened_filename, FOPEN_RBIN, stdin);
- f2 = freopen (*opened_filename, FOPEN_RBIN, stdin);
- if (!f)
- return 0;
- f = popen (command, "r");
- fclose (f2);
- if (!f)
- {
+
+ if (**compression_program == 'g' || **compression_program == 'z')
+ f = fzopen (*opened_filename, "rg");
+ fz = fzopen (*opened_filename, "rg");
+ if (**compression_program == 'b')
+ f = fzopen (*opened_filename, "rb");
+ fz = fzopen (*opened_filename, "rb");
+ if (**compression_program == 'Z')
+ f = fzopen (*opened_filename, "rZ");
+ fz = fzopen (*opened_filename, "rZ");
+ if (**compression_program == 'l')
+ f = fzopen (*opened_filename, "rl");
+ fz = fzopen (*opened_filename, "rl");
+ if (**compression_program == 'x')
+ f = fzopen (*opened_filename, "rx");
+ if (!f) {
+ /* Redirect stdin to the file and fork the decompression process
+ reading from stdin. This allows shell metacharacters in filenames. */
+ char *command = concat (*compression_program, " -d", "");
+ f = freopen (*opened_filename, FOPEN_RBIN, stdin);
+ if (!f)
+ return 0;
+ f = popen (command, "r");
+ if (!f) {
/* Used for error message in calling code. */
*opened_filename = command;
return 0;
}
+ }
+ fz = fzopen (*opened_filename, "rx");
+ if (!fz)
{
- /* Used for error message in calling code. */
- *opened_filename = command;
- return 0;
- }
- free (command);
+ /* Redirect stdin to the file and fork the decompression process
+ reading from stdin. This allows shell metacharacters in filenames. */
+ char *command = concat (*compression_program, " -d", "");
+ FILE *f2;
+
+ f2 = freopen (*opened_filename, FOPEN_RBIN, stdin);
+ if (!f)
+ return 0;
+ f = popen (command, "r");
+ fclose (f2);
+ if (!f)
+ {
+ /* Used for error message in calling code. */
+ *opened_filename = command;
+ return 0;
+ }
+ free (command);
+ }
+ else
+ f = fz;
}
else
{
@@ -957,8 +969,22 @@
@@ -932,7 +951,7 @@ output_dirfile (char *dirfile, int dir_n
FILE *output;
int tempfile;
static char *tempname;
- int dirfile_len;
+ int dirfile_len, lzio;
mode_t um;
/* Create temporary file in the same directory as dirfile. This ensures
@@ -957,13 +976,28 @@ output_dirfile (char *dirfile, int dir_n
pfatal_with_name (tempname);
}
+ lzio = 1;
if (compression_program)
{
- char *command = concat (compression_program, ">", dirfile);
- char *command;
close (tempfile);
- command = concat (compression_program, ">", tempname);
- output = popen (command, "w");
- free (command);
+ output = NULL;
+ if (*compression_program == 'g' || *compression_program == 'z')
+ output = fzopen (dirfile, "wg");
+ output = fzopen (tempname, "wg");
+ if (*compression_program == 'b')
+ output = fzopen (dirfile, "wb");
+ output = fzopen (tempname, "wb");
+ if (*compression_program == 'Z')
+ output = fzopen (dirfile, "wZ");
+ output = fzopen (tempname, "wZ");
+ if (*compression_program == 'l')
+ output = fzopen (dirfile, "wl");
+ output = fzopen (tempname, "wl");
+ if (*compression_program == 'x')
+ output = fzopen (dirfile, "wx");
+ output = fzopen (tempname, "wx");
+ if (!output)
+ {
+ char *command = concat (compression_program, ">", dirfile);
+ output = popen (command, "w");
+ }
+ {
+ char *command = concat (compression_program, ">", tempname);
+ output = popen (command, "w");
+ free (command);
+ lzio = 0;
+ }
}
else
output = fopen (dirfile, "w");
diff -Nur texinfo-6.8/install-info/Makefile.in new/install-info/Makefile.in
--- texinfo-6.8/install-info/Makefile.in 2021-07-03 11:13:01.000000000 +0200
+++ new/install-info/Makefile.in 2022-04-25 12:30:06.593744741 +0200
@@ -239,7 +239,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) -lzio
am__DEPENDENCIES_1 =
ginstall_info_DEPENDENCIES = $(top_builddir)/gnulib/lib/libgnu.a \
$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
output = fdopen (tempfile, "w");
@@ -1076,7 +1110,7 @@ output_dirfile (char *dirfile, int dir_n
/* Some systems, such as MS-DOS, simulate pipes with temporary files.
On those systems, the compressor actually gets run inside pclose,
so we must call pclose. */
- if (compression_program)
+ if (lzio == 0)
pclose (output);
else
fclose (output);

View File

@@ -1,3 +1,128 @@
-------------------------------------------------------------------
Mon Jul 14 09:21:36 UTC 2025 - Dominique Leuenberger <dimstar@opensuse.org>
- Add texinfo-perl-5.42.patch: Fix syntax to be unambiguous
if (! $str eq '') is not really clear; is it
(!$str) eq ''
or
!($str eq '')
Perl 5.42 rightly flagges this syntax with:
Possible precedence problem between ! and string eq
Assuming !($str eq '') was meant, we can rewrite this as
$str ne '', which happens to also be used in multiple places
already (sometimes just a few lines further down in the same
files)
-------------------------------------------------------------------
Fri Apr 4 17:04:55 UTC 2025 - Friedrich Haubensak <hsk17@mail.de>
- add -std=gnu17 to CFLAGS to fix gcc15 compile time error
(flag can be dropped w/ release 7.2)
------------------------------------------------------------------
Fri Feb 2 13:05:43 UTC 2024 - Dr. Werner Fink <werner@suse.de>
- Update to version 7.1 (18 October 2023)
* Language
. new generic definition commands, @defblock, @defline and @deftypeline,
for definitions without automatic index entries
. new @linemacro facility eases use of generic definition commands
. new command @link creates plain links (supported output formats only)
. @cartouche takes an argument to specify the cartouche title
. you can use the new commands @nodedescription and @nodedescriptionblock
to give text to be used in menu descriptions in Info and HTML output
* texi2any
. @itemx at the beginning of a @table is now an error, not a warning
. better validity checking of deeply nested commands
. check that @set and @clear only appear at the start of a line
. warn about missing menu entries even if CHECK_NORMAL_MENU_STRUCTURE is
not set. you can turn this off by setting CHECK_MISSING_MENU_ENTRY to 0.
. no longer use --enable-encoding and --disable-encoding to determine
whether to output encoded characters (instead of entities or commands)
for HTML, XML, DocBook and LaTeX; instead, use the value of the
OUTPUT_CHARACTERS customization variable.
. stricter checks on input encoding, in particular more warnings and
errors with malformed UTF-8
. support any input file encoding if support exists in the operating
system, not just a selected list of encodings
. resolve an alias referring to another alias at definition time
. internally, use "source marks" to keep all Texinfo source information that
is not in the final tree (location of macros, values and included files
expansion, @if* blocks, DEL comment, and @ protecting end of line on @def*
lines)
. HTML output:
. format @subentry and index entries with @seealso or @seeentry in a more
similar way to printed output
. output @shortcontents before @contents by default
. omit colons after index entries by default. this can still be
configured with INDEX_ENTRY_COLON.
. add @example syntax highlighting as a texi2any extension
. no more capitalization of @sc argument in HTML Cross-references
. change @point expansion to U+22C6 in HTML Cross-references
. if a @node is not associated with a sectioning command but is
followed by a heading command not usually associated to nodes
such as @heading and this command appears before other formatted
content, the heading command is assumed to supply the node heading.
you can customize this with USE_NEXT_HEADING_FOR_LONE_NODE.
. Info output:
. new variable ASCII_DASHES_AND_QUOTES, on by default,
outputs ASCII characters for literal quote or hyphen characters
in source, rather than UTF-8. this makes it easier to search
Info files.
. new ASCII_GLYPH variable for using ASCII renditions for glyph
commands (like @bullet)
. ASCII_PUNCTUATION still includes the effect of these new variables.
. new variables AUTO_MENU_DESCRIPTION_ALIGN_COLUMN and AUTO_MENU_MAX_WIDTH
control the format of descriptions in generated menus
. XML output:
. place menu leading text and menu separators in elements instead
of attributes
* texi2dvi
. macro expansion with texi2any requires at least version 5.0 (only
happens with --expand option or with very old texinfo.tex)
* texinfo.tex
. in @code, ` and ' output by default with backtick and undirected
single quote glyphs in the typewriter font. you can still configure
this using the @codequoteundirected/@codequotebacktick commands.
. do not insert a space for @ def line continuation, matching the behavior
of texi2any
. align section titles in table of contents when more than 10 sections
. microtype is off by default, for speed
. page headings generation is no longer linked to the @titlepage command
* info
. when going Up, position cursor on menu entry for current node
. allow mouse scrolling support regardless of termcap entries. this
supports some more xterm configurations.
. do not use "/index" as a possible file extension for Info files
* texi2any
. fix performance regression when Perl binary extension (XS) modules
are not being used (e.g. with TEXINFO_XS=omit)
* info
. further fix of recoding of UTF-8 files to ASCII to avoid text
disappearing from nodes
. avoid possible freeze at start of a file with `-v nodeline=pointers'
* texi2any
. do not distribute architecture-dependent files
. build fixed on OpenIndiana 11
* info
. further fix of recoding of UTF-8 files to ASCII
. fix check for presence of man pages on Solaris
* install-info
. fix build by avoiding function name clash on some platforms
. compiler warning re strncat silenced
* texi2any
. avoid crashes on empty @image argument and other potential crashes
(with "Can't use an undefined value as an ARRAY reference" message)
. avoid hang on @ref command inside section command
* info
. fix recoding of UTF-8 files to ASCII when run in C locale
* js
. index search fixed for new HTML output
. some obsolete files removed from distribution
- Port patch texinfo-zlib.patch
- Use libzio 1.09 to support compressed 'dir' data base files
-------------------------------------------------------------------
Sun Mar 26 19:52:00 UTC 2023 - Andreas Stieger <andreas.stieger@gmx.de>

View File

@@ -1,7 +1,7 @@
#
# spec file for package texinfo
#
# Copyright (c) 2023 SUSE LLC
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -19,7 +19,7 @@
# perl modules are not installed in global path
%global __provides_exclude ^(libtool|perl)\\(
Name: texinfo
Version: 7.0.3
Version: 7.1
Release: 0
Summary: Tools for creating documentation from texinfo sources
License: GPL-3.0-or-later
@@ -30,17 +30,18 @@ Source2: %{name}.keyring
Source42: %{name}-rpmlintrc
Patch0: texinfo-zlib.patch
Patch1: install-info_exitcode.patch
Patch2: texinfo-perl-5.42.patch
BuildRequires: automake
BuildRequires: glibc-locale
BuildRequires: help2man
BuildRequires: libbz2-devel
BuildRequires: libzio-devel
BuildRequires: libzio-devel >= 1.09
BuildRequires: ncurses-devel
BuildRequires: perl
BuildRequires: perl-Text-Unidecode
BuildRequires: perl-gettext
BuildRequires: perl-macros
BuildRequires: zlib-devel
BuildRequires: perl(Locale::gettext)
Requires: makeinfo = %{version}
Requires: perl
Requires: perl-Text-Unidecode
@@ -111,6 +112,8 @@ or standalone GNU Info.
%build
LANG=en_GB.UTF-8
export LANG
## -std=gnu17 can be dropped w/ release 7.2
export CFLAGS=-std=gnu17
%configure \
--with-external-Text-Unidecode \
--enable-perl-xs
@@ -167,7 +170,11 @@ end
--
}
%if 0%{?suse_version} >= 1699
%transfiletriggerin -n info -p <lua> -- %{_infodir}
%else
%filetriggerin -n info -p <lua> -- %{_infodir}
%endif
%trigger_functions
file = rpm.next_file()
while file do
@@ -180,7 +187,11 @@ while file do
file = rpm.next_file()
end
%if 0%{?suse_version} >= 1699
%transfiletriggerun -n info -p <lua> -- %{_infodir}
%else
%filetriggerun -n info -p <lua> -- %{_infodir}
%endif
%trigger_functions
file = rpm.next_file()
while file do