Compare commits

...

1 Commits
c8s ... c10

Author SHA1 Message Date
cecff02a1d import UBI groff-1.23.0-10.el10 2025-05-14 15:44:51 +00:00
19 changed files with 645 additions and 10944 deletions

3
.gitignore vendored
View File

@ -1,2 +1 @@
SOURCES/groff-1.22.3.tar.gz groff-1.23.0.tar.gz
/groff-1.22.3.tar.gz

View File

@ -1,30 +1,30 @@
From 103f1f6b4e4cfd007375cd127b8e69cd102d4097 Mon Sep 17 00:00:00 2001 From 20f199d608d7aa4c8eb21067480dc3a682f6188c Mon Sep 17 00:00:00 2001
From: Jan Vcelak <jvcelak@redhat.com> From: groff owner <groff-owner@fedoraproject.org>
Date: Tue, 1 Jan 2013 15:32:01 +0100 Date: Mon, 10 Jul 2023 10:54:23 +0000
Subject: [PATCH] missing groff-x11 info message when gxditview not found Subject: [PATCH] missing groff-x11 info message when gxditview not found
Adds info message that 'groff-x11' package might be missing when Adds info message that 'groff-x11' package might be missing when
executing 'groff -X' and 'gxditview' is not found. executing 'groff -X' and 'gxditview' is not found.
Resolves: #530788 Resolves: #530788
Signed-off-by: Jan Vcelak <jvcelak@redhat.com>
--- ---
src/roff/groff/pipeline.c | 2 ++ src/roff/groff/pipeline.c | 2 ++
1 file changed, 2 insertions(+) 1 file changed, 2 insertions(+)
diff --git a/src/roff/groff/pipeline.c b/src/roff/groff/pipeline.c diff --git a/src/roff/groff/pipeline.c b/src/roff/groff/pipeline.c
index cea7593..fce0abc 100644 index defafc2..188b98e 100644
--- a/src/roff/groff/pipeline.c --- a/src/roff/groff/pipeline.c
+++ b/src/roff/groff/pipeline.c +++ b/src/roff/groff/pipeline.c
@@ -486,6 +486,8 @@ int run_pipeline(int ncommands, char ***commands, int no_pipe) @@ -485,6 +485,8 @@ int run_pipeline(int ncommands, char ***commands, int no_pipe)
execvp(commands[i][0], commands[i]); execvp(commands[i][0], commands[i]);
error("couldn't exec %1: %2", c_error("couldn't exec %1: %2",
commands[i][0], strerror(errno), (char *)0); commands[i][0], strerror(errno), (char *)0);
+ if (strcmp(commands[i][0], "gxditview") == 0) + if (strcmp(commands[i][0], "gxditview") == 0)
+ fprintf(stderr, "You might be missing 'groff-x11' package.\n"); + fprintf(stderr, "You might be missing 'groff-x11' package.\n");
fflush(stderr); /* just in case error() doesn't */
_exit(EXEC_FAILED_EXIT_STATUS); _exit(EXEC_FAILED_EXIT_STATUS);
} }
/* in the parent */
-- --
1.8.0.2 2.41.0

View File

@ -1,43 +1,42 @@
From c6d8bb3e0ebc03274564d7b2c768e9932cc5f79d Mon Sep 17 00:00:00 2001 From c59b56642d10997a35553ae08e6b341b565794f7 Mon Sep 17 00:00:00 2001
From: Jan Vcelak <jvcelak@redhat.com> From: groff owner <groff-owner@fedoraproject.org>
Date: Tue, 1 Jan 2013 15:33:45 +0100 Date: Mon, 10 Jul 2023 11:51:30 +0000
Subject: [PATCH] load site-font and site-tmac from /etc/groff Subject: [PATCH] load site-font and site-tmac from /etc/groff
Move site-font and site-tmac configuration from /usr/share/groff to Move site-font and site-tmac configuration from /usr/share/groff to
/etc/groff. That allows permanent custom changes. (Symlinking brought /etc/groff. That allows permanent custom changes. (Symlinking brought
a lot of problems with RPM. This is safer and cleaner.) a lot of problems with RPM. This is safer and cleaner.)
Signed-off-by: Jan Vcelak <jvcelak@redhat.com>
--- ---
Makefile.in | 6 +++--- Makefile.in | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-) 1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/Makefile.in b/Makefile.in diff --git a/Makefile.in b/Makefile.in
index 7534e56..d97d1b9 100644 index a47df30..e9618d1 100644
--- a/Makefile.in --- a/Makefile.in
+++ b/Makefile.in +++ b/Makefile.in
@@ -167,7 +167,7 @@ fontdir=$(datasubdir)/font @@ -3857,7 +3857,7 @@ fontdir = $(datasubdir)/font
oldfontdir=$(datasubdir)/oldfont oldfontdir = $(datasubdir)/oldfont
# `localfontdir' says where local fonts will be installed (as dev*/*). # `localfontdir' says where local fonts will be installed (as dev*/*).
-localfontdir=$(dataprogramdir)/site-font -localfontdir = $(dataprogramdir)/site-font
+localfontdir=@sysconfdir@/groff/site-font +localfontdir = @sysconfdir@/groff/site-font
# `legacyfontdir' is for compatibility with non-GNU troff. # `legacyfontdir' is for compatibility with AT&T/DWB troff.
legacyfontdir=/usr/lib/font legacyfontdir = /usr/lib/font
@@ -179,10 +179,10 @@ fontpath=$(localfontdir)$(RT_SEP)$(fontdir)$(RT_SEP)$(legacyfontdir) @@ -3869,10 +3869,10 @@ fontpath = $(localfontdir)$(RT_SEP)$(fontdir)$(RT_SEP)$(legacyfontdir)
tmacdir=$(datasubdir)/tmac tmacdir = $(datasubdir)/tmac
# `systemtmacdir' says where to install platform-dependent macros. # `systemtmacdir' says where to install platform-dependent macros.
-systemtmacdir=$(libprogramdir)/site-tmac -systemtmacdir = $(libprogramdir)/site-tmac
+systemtmacdir=@sysconfdir@/groff/site-tmac +systemtmacdir = @sysconfdir@/groff/site-tmac
# `localtmacdir' says where local files will be installed. # `localtmacdir' says where local files will be installed.
-localtmacdir=$(dataprogramdir)/site-tmac -localtmacdir = $(dataprogramdir)/site-tmac
+localtmacdir=@sysconfdir@/groff/site-tmac +localtmacdir = @sysconfdir@/groff/site-tmac
# `appresdir' says where to install the application resource file for # appdefdir
# gxditview. # `appdefdir' says where to install the application defaults file for
-- --
1.8.0.2 2.41.0

View File

@ -1,188 +1,88 @@
From 36115e102859badb08cb5b2398de6b0ba45421d3 Mon Sep 17 00:00:00 2001 From 2e14a9f44b79fe6a13cd1ecec3f8c50d44be2188 Mon Sep 17 00:00:00 2001
From: Jan Vcelak <jvcelak@redhat.com> From: groff owner <groff-owner@fedoraproject.org>
Date: Tue, 4 Nov 2014 14:36:47 +0100 Date: Mon, 10 Jul 2023 13:15:36 +0000
Subject: [PATCH] various security fixes Subject: [PATCH] various security fixes
CVE-2009-5044 (#709413) CVE-2009-5044 (#709413)
CVE-2009-5080 (#720058) CVE-2009-5080 (#720058)
CVE-2009-5081 (#720057) CVE-2009-5081 (#720057)
Based on: http://cvsweb.openwall.com/cgi/cvsweb.cgi/Owl/packages/groff/groff-1.20.1-owl-tmp.diff?rev=1.2;content-type=text%2Fplain
Resolves: #709415, #720060
Signed-off-by: Jan Vcelak <jvcelak@redhat.com>
--- ---
contrib/eqn2graph/eqn2graph.sh | 2 ++ contrib/eqn2graph/eqn2graph.sh | 2 ++
contrib/gdiffmk/tests/runtests.in | 5 +++-- contrib/grap2graph/grap2graph.sh | 2 ++
contrib/grap2graph/grap2graph.sh | 2 ++ contrib/pdfmark/pdfroff.1.man | 5 +++--
contrib/groffer/main_subs.pl | 10 +++++----- contrib/pic2graph/pic2graph.sh | 2 ++
contrib/groffer/roff2.pl | 2 +- doc/groff.texi | 6 +++---
contrib/pdfmark/pdfroff.man | 5 +++-- gendef.sh | 10 +++-------
contrib/pic2graph/pic2graph.sh | 2 ++ 6 files changed, 15 insertions(+), 12 deletions(-)
doc/fixinfo.sh | 5 +++--
doc/groff.info-2 | 6 +++---
doc/groff.texinfo | 6 +++---
gendef.sh | 10 +++-------
11 files changed, 30 insertions(+), 25 deletions(-)
diff --git a/contrib/eqn2graph/eqn2graph.sh b/contrib/eqn2graph/eqn2graph.sh diff --git a/contrib/eqn2graph/eqn2graph.sh b/contrib/eqn2graph/eqn2graph.sh
index ee7cc5f..13edf78 100644 index 3e9c374..4e4f11e 100644
--- a/contrib/eqn2graph/eqn2graph.sh --- a/contrib/eqn2graph/eqn2graph.sh
+++ b/contrib/eqn2graph/eqn2graph.sh +++ b/contrib/eqn2graph/eqn2graph.sh
@@ -67,6 +67,8 @@ for d in "$GROFF_TMPDIR" "$TMPDIR" "$TMP" "$TEMP" /tmp; do @@ -74,6 +74,8 @@ then
# but is supported by the stripped-down dash shell, for instance.
tmp=$d/eqn2graph$$-$RANDOM tmp="$d/eqn2graph$$-${RANDOM:-$PPID}"
(umask 077 && mkdir $tmp) 2> /dev/null && break (umask 077 && mkdir "$tmp") 2> /dev/null
+ +
+ tmp= + tmp=
done; fi
if test -z "$tmp"; then
echo "$0: cannot create temporary directory" >&2
diff --git a/contrib/gdiffmk/tests/runtests.in b/contrib/gdiffmk/tests/runtests.in
index 714ce48..40a35c4 100644
--- a/contrib/gdiffmk/tests/runtests.in
+++ b/contrib/gdiffmk/tests/runtests.in
@@ -56,8 +56,9 @@ function TestResult {
fi
}
-tmpfile=/tmp/$$
-trap 'rm -f ${tmpfile}' 0 1 2 3 15
+tmpfile="`mktemp -t gdiffmk-runtests.XXXXXXXXXX`" || exit
+trap 'rm -f -- "$tmpfile"' EXIT
+trap 'trap - EXIT; rm -f -- "$tmpfile"; exit 1' HUP INT QUIT TERM
# Run tests.
if ! test -d "$tmp"
diff --git a/contrib/grap2graph/grap2graph.sh b/contrib/grap2graph/grap2graph.sh diff --git a/contrib/grap2graph/grap2graph.sh b/contrib/grap2graph/grap2graph.sh
index 58544e1..aeab832 100644 index 29df25b..94c436b 100644
--- a/contrib/grap2graph/grap2graph.sh --- a/contrib/grap2graph/grap2graph.sh
+++ b/contrib/grap2graph/grap2graph.sh +++ b/contrib/grap2graph/grap2graph.sh
@@ -63,6 +63,8 @@ for d in "$GROFF_TMPDIR" "$TMPDIR" "$TMP" "$TEMP" /tmp; do @@ -76,6 +76,8 @@ then
# but is supported by the stripped-down dash shell, for instance.
tmp=$d/grap2graph$$-$RANDOM tmp="$d/grap2graph$$-${RANDOM:-$PPID}"
(umask 077 && mkdir $tmp) 2> /dev/null && break (umask 077 && mkdir "$tmp") 2> /dev/null
+ +
+ tmp= + tmp=
done; fi
if test -z "$tmp"; then
echo "$0: cannot create temporary directory" >&2
diff --git a/contrib/groffer/main_subs.pl b/contrib/groffer/main_subs.pl
index 90627cc..76896cd 100644
--- a/contrib/groffer/main_subs.pl
+++ b/contrib/groffer/main_subs.pl
@@ -1239,7 +1239,7 @@ sub main_temp {
our $fh_stdin;
our $tmp_cat;
our $tmp_stdin;
- my $template = 'groffer_' . "$$" . '_XXXX';
+ my $template = 'groffer_' . "$$" . '_XXXXXXXXXX';
foreach ($ENV{'GROFF_TMPDIR'}, $ENV{'TMPDIR'}, $ENV{'TMP'}, $ENV{'TEMP'},
$ENV{'TEMPDIR'}, File::Spec->catfile($ENV{'HOME'}, 'tmp')) {
if ($_ && -d $_ && -w $_) {
@@ -1271,12 +1271,12 @@ sub main_temp {
# further argument: SUFFIX => '.sh' if ! test -d "$tmp"
if ($Debug{'KEEP'}) { diff --git a/contrib/pdfmark/pdfroff.1.man b/contrib/pdfmark/pdfroff.1.man
- ($fh_cat, $tmp_cat) = tempfile(',cat_XXXX', DIR => $tmpdir); index 029a1f4..ee7ac13 100644
- ($fh_stdin, $tmp_stdin) = tempfile(',stdin_XXXX', DIR => $tmpdir); --- a/contrib/pdfmark/pdfroff.1.man
+ ($fh_cat, $tmp_cat) = tempfile(',cat_XXXXXXXXXX', DIR => $tmpdir); +++ b/contrib/pdfmark/pdfroff.1.man
+ ($fh_stdin, $tmp_stdin) = tempfile(',stdin_XXXXXXXXXX', DIR => $tmpdir); @@ -619,7 +619,7 @@ gs \-dBATCH \-dQUIET \-dNOPAUSE \-dSAFER \-sDEVICE=pdfwrite \e
} else { .I GROFF_TMPDIR
- ($fh_cat, $tmp_cat) = tempfile(',cat_XXXX', UNLINK => 1,
+ ($fh_cat, $tmp_cat) = tempfile(',cat_XXXXXXXXXX', UNLINK => 1,
DIR => $tmpdir);
- ($fh_stdin, $tmp_stdin) = tempfile(',stdin_XXXX', UNLINK => 1,
+ ($fh_stdin, $tmp_stdin) = tempfile(',stdin_XXXXXXXXXX', UNLINK => 1,
DIR => $tmpdir);
}
} # main_temp()
diff --git a/contrib/groffer/roff2.pl b/contrib/groffer/roff2.pl
index d8dad3f..f0ca9f2 100755
--- a/contrib/groffer/roff2.pl
+++ b/contrib/groffer/roff2.pl
@@ -123,7 +123,7 @@ if ($Has_Groffer) {
last;
}
}
- my $template = $Name . '_XXXX';
+ my $template = $Name . '_XXXXXXXXXX';
my ($fh, $stdin);
if ($tempdir) {
($fh, $stdin) = tempfile($template, UNLINK => 1, DIR => $tempdir) ||
diff --git a/contrib/pdfmark/pdfroff.man b/contrib/pdfmark/pdfroff.man
index ec412bb..faf2898 100644
--- a/contrib/pdfmark/pdfroff.man
+++ b/contrib/pdfmark/pdfroff.man
@@ -555,7 +555,7 @@ defaults to
.B GROFF_TMPDIR
Identifies the directory in which Identifies the directory in which
.B pdfroff .I pdfroff
-should create temporary files. -should create temporary files.
+should create a subdirectory for its temporary files. +should create a subdirectory for its temporary files.
. .
If If
.B \%GROFF_TMPDIR .I \%GROFF_TMPDIR
@@ -568,7 +568,8 @@ and @@ -635,7 +635,8 @@ are considered in turn as possible temporary file repositories.
.B TEMP .
are considered in turn, as possible temporary file repositories. If none of these are set,
If none of these are set, then temporary files are created then temporary files are created
-in the current directory. -in the current directory.
+in a subdirectory of +in a subdirectory of
+.BR /tmp . +.BR /tmp .
.
. .
.TP .TP
.B GROFF_GHOSTSCRIPT_INTERPRETER
diff --git a/contrib/pic2graph/pic2graph.sh b/contrib/pic2graph/pic2graph.sh diff --git a/contrib/pic2graph/pic2graph.sh b/contrib/pic2graph/pic2graph.sh
index 72c5477..6b3360d 100644 index b229914..2d6e77c 100644
--- a/contrib/pic2graph/pic2graph.sh --- a/contrib/pic2graph/pic2graph.sh
+++ b/contrib/pic2graph/pic2graph.sh +++ b/contrib/pic2graph/pic2graph.sh
@@ -78,6 +78,8 @@ for d in "$GROFF_TMPDIR" "$TMPDIR" "$TMP" "$TEMP" /tmp; do @@ -89,6 +89,8 @@ then
tmp=$d/pic2graph$$-$RANDOM # but is supported by the stripped-down dash shell, for instance.
(umask 077 && mkdir $tmp) 2> /dev/null \ tmp="$d/pic2graph$$-${RANDOM:-$PPID}"
&& break (umask 077 && mkdir "$tmp") 2> /dev/null
+ +
+ tmp= + tmp=
done; fi
if test -z "$tmp"; then
echo "$0: cannot create temporary directory" >&2
diff --git a/doc/fixinfo.sh b/doc/fixinfo.sh
index 2c853f8..6954e6a 100644
--- a/doc/fixinfo.sh
+++ b/doc/fixinfo.sh
@@ -22,8 +22,9 @@
# groff.texinfo macro code. Hopefully, a new texinfo version makes it
# unnecessary.
-t=${TMPDIR-.}/gro$$.tmp if ! test -d "$tmp"
- diff --git a/doc/groff.texi b/doc/groff.texi
+t="`mktemp -t groff-fixinfo.XXXXXXXXXX`" || exit index 2a6635e..1fdf632 100644
+trap 'rm -f -- "$t"' EXIT --- a/doc/groff.texi
+trap 'trap - EXIT; rm -f -- "$t"; exit 1' HUP INT QUIT TERM +++ b/doc/groff.texi
cat $1 | sed ' @@ -16005,9 +16005,9 @@ The following code fragment introduces the current time into a document.
1 {
N
diff --git a/doc/groff.info-2 b/doc/groff.info-2
index 7eaae86..e7dab72 100644
--- a/doc/groff.info-2
+++ b/doc/groff.info-2
@@ -1697,9 +1697,9 @@ not there, 'groff' would not know when to stop.
time into a document:
.sy perl -e 'printf ".nr H %d\\n.nr M %d\\n.nr S %d\\n",\
- (localtime(time))[2,1,0]' > /tmp/x\n[$$]
- .so /tmp/x\n[$$]
- .sy rm /tmp/x\n[$$]
+ (localtime(time))[2,1,0]' > timefile\n[$$]
+ .so timefile\n[$$]
+ .sy rm timefile\n[$$]
\nH:\nM:\nS
Note that this works by having the 'perl' script (run by 'sy')
diff --git a/doc/groff.texinfo b/doc/groff.texinfo
index 066b527..83684da 100644
--- a/doc/groff.texinfo
+++ b/doc/groff.texinfo
@@ -13736,9 +13736,9 @@ into a document:
@pindex perl @pindex perl
@Example @Example
.sy perl -e 'printf ".nr H %d\\n.nr M %d\\n.nr S %d\\n",\ .sy perl -e 'printf ".nr H %d\\n.nr M %d\\n.nr S %d\\n",\
@ -190,13 +90,13 @@ index 066b527..83684da 100644
-.so /tmp/x\n[$$] -.so /tmp/x\n[$$]
-.sy rm /tmp/x\n[$$] -.sy rm /tmp/x\n[$$]
+ (localtime(time))[2,1,0]' > timefile\n[$$] + (localtime(time))[2,1,0]' > timefile\n[$$]
++.so timefile\n[$$] +.so timefile\n[$$]
++.sy rm timefile\n[$$] +.sy rm timefile\n[$$]
\nH:\nM:\nS \nH:\nM:\nS
@endExample @endExample
diff --git a/gendef.sh b/gendef.sh diff --git a/gendef.sh b/gendef.sh
index 41a511b..050bcbe 100644 index bb30a4f..eb2e31c 100644
--- a/gendef.sh --- a/gendef.sh
+++ b/gendef.sh +++ b/gendef.sh
@@ -33,11 +33,9 @@ do @@ -33,11 +33,9 @@ do
@ -224,5 +124,5 @@ index 41a511b..050bcbe 100644
# eof # eof
-- --
1.9.3 2.41.0

View File

@ -1,7 +1,7 @@
From e263e19aa1c63dbcbe710e8aae79c8e298606e4c Mon Sep 17 00:00:00 2001 From 6c997078a8f74429f58e4679b7630de7962e18b0 Mon Sep 17 00:00:00 2001
From: Peter Schiffer <pschiffe@redhat.com> From: Peter Schiffer <pschiffe@redhat.com>
Date: Tue, 4 Nov 2014 14:49:57 +0100 Date: Tue, 4 Nov 2014 14:49:57 +0100
Subject: [PATCH] don't use /usr/bin/env in shebang Subject: [PATCH 4/4] don't use /usr/bin/env in shebang
There might be an issue that the script is executed with unwanted version of There might be an issue that the script is executed with unwanted version of
<lang> if that language is provided by enabled dynamic software collection. <lang> if that language is provided by enabled dynamic software collection.
@ -9,13 +9,10 @@ There might be an issue that the script is executed with unwanted version of
Resolves: #987069 Resolves: #987069
--- ---
contrib/chem/chem.pl | 2 +- contrib/chem/chem.pl | 2 +-
contrib/groffer/groffer.pl | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
contrib/groffer/roff2.pl | 2 +-
src/roff/grog/grog.pl | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/contrib/chem/chem.pl b/contrib/chem/chem.pl diff --git a/contrib/chem/chem.pl b/contrib/chem/chem.pl
index 1a8b3cc..15eda5f 100755 index 883907b..57e0216 100755
--- a/contrib/chem/chem.pl --- a/contrib/chem/chem.pl
+++ b/contrib/chem/chem.pl +++ b/contrib/chem/chem.pl
@@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
@ -24,36 +21,6 @@ index 1a8b3cc..15eda5f 100755
# chem - a groff preprocessor for producing chemical structure diagrams # chem - a groff preprocessor for producing chemical structure diagrams
diff --git a/contrib/groffer/groffer.pl b/contrib/groffer/groffer.pl
index 4e2e575..913e8eb 100755
--- a/contrib/groffer/groffer.pl
+++ b/contrib/groffer/groffer.pl
@@ -1,4 +1,4 @@
-#! /usr/bin/env perl
+#! /usr/bin/perl
# groffer - display groff files
diff --git a/contrib/groffer/roff2.pl b/contrib/groffer/roff2.pl
index f0ca9f2..1b8577f 100755
--- a/contrib/groffer/roff2.pl
+++ b/contrib/groffer/roff2.pl
@@ -1,4 +1,4 @@
-#! /usr/bin/env perl
+#! /usr/bin/perl
# roff2* - transform roff files into other formats
diff --git a/src/roff/grog/grog.pl b/src/roff/grog/grog.pl
index fb7b54c..9baa869 100644
--- a/src/roff/grog/grog.pl
+++ b/src/roff/grog/grog.pl
@@ -1,4 +1,4 @@
-#! /usr/bin/env perl
+#! /usr/bin/perl
# grog - guess options for groff command
# Inspired by doctype script in Kernighan & Pike, Unix Programming
# Environment, pp 306-8.
-- --
1.9.3 2.21.1

View File

@ -1,25 +0,0 @@
From 65c9f2f5152b3eebba8494cbead00d79d1dcbb1c Mon Sep 17 00:00:00 2001
From: Jan Chaloupka <jchaloup@redhat.com>
Date: Wed, 12 Nov 2014 08:23:00 +0100
Subject: [PATCH] Add missing rule for gropdf
---
Makefile.in | 2 ++
1 file changed, 2 insertions(+)
diff --git a/Makefile.in b/Makefile.in
index 4b5a5c6..7ae9ac2 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -896,6 +896,8 @@ $(GNULIBDIRS): FORCE
$(MAKE) ACLOCAL=: AUTOCONF=: AUTOHEADER=: AUTOMAKE=: $(do) ;; \
esac
+$(SHPROGDIRS): $(PROGDEPDIRS)
+
$(OTHERDIRS): $(PROGDEPDIRS) $(CCPROGDIRS) $(CPROGDIRS) $(SHPROGDIRS)
$(INCDIRS) $(PROGDEPDIRS) $(SHPROGDIRS) $(OTHERDIRS): FORCE
--
1.9.3

View File

@ -0,0 +1,28 @@
From ad194a6cadbb4718d238c85925ab8c646a3afdf7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Nikola=20Forr=C3=B3?= <nforro@redhat.com>
Date: Fri, 6 Mar 2020 10:40:09 +0100
Subject: [PATCH 5/5] do not overwrite docdir
---
Makefile.in | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/Makefile.in b/Makefile.in
index 5331dd3..21522e3 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -3378,9 +3378,8 @@ doc_dist_target_ok = @doc_dist_target_ok@
# `infodir' says where to install info files.
# docdir
-# `docdir' says where to install documentation files. The default
-# location is ${datarootdir}/doc/${PACKAGE}, but we add the version
-docdir = $(datarootdir)/doc/${PACKAGE}-$(SHORT_VERSION)
+# `docdir' says where to install documentation files.
+docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
g = @g@
--
2.21.1

View File

@ -0,0 +1,74 @@
From f4f76740ad4693cb967801e366f1d6410381dd71 Mon Sep 17 00:00:00 2001
From: groff owner <groff-owner@fedoraproject.org>
Date: Thu, 2 Nov 2023 13:09:37 +0000
Subject: [PATCH] Revert upstream change of mapping special characters for
UTF-8
Adopt Debian decision: https://salsa.debian.org/debian/groff/-/commit/d5394c68d70e6c5199b01d2522e094c8fd52e64e
---
tmac/man.local | 16 ++++++++++++++++
tmac/mdoc.local | 17 ++++++++++++++++-
2 files changed, 32 insertions(+), 1 deletion(-)
diff --git a/tmac/man.local b/tmac/man.local
index 5daa507..4bed937 100644
--- a/tmac/man.local
+++ b/tmac/man.local
@@ -2,6 +2,22 @@
.\"
.\" Put local modifications to groff_man(7)'s behavior here.
.\"
+.\" Adopting Debian's decision to preserve old mapping for UTF-8
+.\" Debian: As of groff 1.23.0, the "-", "'", "`", "^", and "~" input
+.\" characters are mapped to non-Basic Latin code points in output from
+.\" the "utf8" device, for consistency with other output devices such as
+.\" PDF. Unfortunately in practice this still causes far too much
+.\" disruption for innocent users of manual pages who just want to be able
+.\" to search for characters normally, so preserve the old behaviour.
+.\" Comment this out if you want to make sure that manual pages you're
+.\" writing are clear of these problems.
+.if '\*[.T]'utf8' \{\
+. char - \-
+. char ' \[aq]
+. char ` \[ga]
+. char ^ \[ha]
+. char ~ \[ti]
+.\}
.\" Change "0" to "1" to enable OSC 8 links on SGR-capable grotty(1)
.\" output devices.
.if !'\*[.T]'html' \
diff --git a/tmac/mdoc.local b/tmac/mdoc.local
index 94688ab..1bb47d6 100644
--- a/tmac/mdoc.local
+++ b/tmac/mdoc.local
@@ -2,6 +2,22 @@
.\"
.\" Put local modifications to groff_mdoc(7)'s behavior here.
.\"
+.\" Adopting Debian's decision to preserve old mapping for UTF-8
+.\" Debian: As of groff 1.23.0, the "-", "'", "`", "^", and "~" input
+.\" characters are mapped to non-Basic Latin code points in output from
+.\" the "utf8" device, for consistency with other output devices such as
+.\" PDF. Unfortunately in practice this still causes far too much
+.\" disruption for innocent users of manual pages who just want to be able
+.\" to search for characters normally, so preserve the old behaviour.
+.\" Comment this out if you want to make sure that manual pages you're
+.\" writing are clear of these problems.
+.if '\*[.T]'utf8' \{\
+. char - \-
+. char ' \[aq]
+. char ` \[ga]
+. char ^ \[ha]
+. char ~ \[ti]
+.\}
.\" "CW" is not a portable font name, but some man pages use it anyway.
.\" Uncomment this to suppress warnings produced by such pages. This
.\" test remaps the font to roman ("R") on nroff (terminal) devices. You
@@ -12,4 +28,3 @@
.\" mode: nroff
.\" fill-column: 72
.\" End:
-.\" vim: set filetype=groff textwidth=72:
--
2.41.0

View File

@ -0,0 +1,34 @@
From 73cf426409d3c9d097d650c7713c9d49d270623c Mon Sep 17 00:00:00 2001
From: Lukas Javorsky <ljavorsk@redhat.com>
Date: Thu, 1 Aug 2024 10:47:02 +0200
Subject: [PATCH] Fix the possible overrun of buf array
---
src/roff/troff/env.cpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/roff/troff/env.cpp b/src/roff/troff/env.cpp
index 1b3b4ba..8b91380 100644
--- a/src/roff/troff/env.cpp
+++ b/src/roff/troff/env.cpp
@@ -4003,7 +4003,7 @@ void hyphenate(hyphen_list *h, unsigned flags)
while (h && h->hyphenation_code == 0)
h = h->next;
int len = 0;
- char hbuf[WORD_MAX + 2];
+ char hbuf[WORD_MAX + 2 + 1];
char *buf = hbuf + 1;
hyphen_list *tem;
for (tem = h; tem && len < WORD_MAX; tem = tem->next) {
@@ -4063,7 +4063,7 @@ void hyphenate(hyphen_list *h, unsigned flags)
}
else {
hbuf[0] = hbuf[len + 1] = '.';
- int num[WORD_MAX + 3];
+ int num[WORD_MAX + 3 + 1];
current_language->patterns.hyphenate(hbuf, len + 2, num);
// The position of a hyphenation point gets marked with an odd
// number. Example:
--
2.45.2

View File

@ -0,0 +1,25 @@
From 2e548049590a455ce3824fa7950f03465b737501 Mon Sep 17 00:00:00 2001
From: Lukas Javorsky <ljavorsk@redhat.com>
Date: Thu, 1 Aug 2024 10:48:45 +0200
Subject: [PATCH 2/7] Fix for insufficient allocation of iterator
---
src/roff/troff/input.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/roff/troff/input.cpp b/src/roff/troff/input.cpp
index abf6198..18157a9 100644
--- a/src/roff/troff/input.cpp
+++ b/src/roff/troff/input.cpp
@@ -3630,9 +3630,10 @@ inline
#endif
temp_iterator::temp_iterator(const char *s, int len)
{
- base = new unsigned char[len];
+ base = new unsigned char[len + 1];
if (len > 0)
memcpy(base, s, len);
+ base[len] = '\0';
ptr = base;
eptr = base + len;
}

View File

@ -0,0 +1,28 @@
From a96155657b690a7de3a7670f3014867487cba838 Mon Sep 17 00:00:00 2001
From: Lukas Javorsky <ljavorsk@redhat.com>
Date: Mon, 12 Aug 2024 13:02:35 +0200
Subject: [PATCH 3/7] Safely handle the "name" argument in NewFile func
Since the NewFile func is called with argv[] arguments, there should be
a safety check in case that the arguments are tainted.
---
src/devices/xditview/xditview.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/devices/xditview/xditview.c b/src/devices/xditview/xditview.c
index 1f56940b2..9ee0470c2 100644
--- a/src/devices/xditview/xditview.c
+++ b/src/devices/xditview/xditview.c
@@ -364,7 +364,8 @@ NewFile (const char *name)
}
hadFile = 1;
SelectPageNumber ("1");
- strcpy (current_file_name, name);
+ strncpy(current_file_name, name, sizeof(current_file_name) - 1);
+ current_file_name[sizeof(current_file_name) - 1] = '\0'; // Ensure null-termination
current_file = new_file;
}
--
2.44.0

View File

@ -0,0 +1,26 @@
From d9e08e8d8687c32bc6f079fed91e708374aadde8 Mon Sep 17 00:00:00 2001
From: Lukas Javorsky <ljavorsk@redhat.com>
Date: Mon, 12 Aug 2024 14:38:00 +0200
Subject: [PATCH 4/7] Fix array comparison warning by comparing elements
individually
---
src/preproc/refer/ref.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/preproc/refer/ref.cpp b/src/preproc/refer/ref.cpp
index 5f6d5c63a..65b7edaf3 100644
--- a/src/preproc/refer/ref.cpp
+++ b/src/preproc/refer/ref.cpp
@@ -536,7 +536,7 @@ int same_reference(const reference &r1, const reference &r2)
return 0;
int i = 0;
for (i = 0; i < 256; i++)
- if (r1.field_index != r2.field_index)
+ if (r1.field_index[i] != r2.field_index[i])
return 0;
for (i = 0; i < r1.nfields; i++)
if (r1.field[i] != r2.field[i])
--
2.44.0

View File

@ -0,0 +1,36 @@
From c19274b6ec048aa8c9d5e78bec22609aadf0ff4c Mon Sep 17 00:00:00 2001
From: Lukas Javorsky <ljavorsk@redhat.com>
Date: Mon, 12 Aug 2024 15:45:45 +0200
Subject: [PATCH 5/7] Initialize "s" to prevent undefined behavior
---
src/roff/troff/env.cpp | 2 +-
src/roff/troff/input.cpp | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/roff/troff/env.cpp b/src/roff/troff/env.cpp
index 04eedd1..7d1c8d1 100644
--- a/src/roff/troff/env.cpp
+++ b/src/roff/troff/env.cpp
@@ -287,7 +287,7 @@ void leader_character()
void environment::add_char(charinfo *ci)
{
- int s;
+ int s = 0;
node *gc_np = 0;
if (interrupted)
;
diff --git a/src/roff/troff/input.cpp b/src/roff/troff/input.cpp
index bd586cb..4308926 100644
--- a/src/roff/troff/input.cpp
+++ b/src/roff/troff/input.cpp
@@ -7300,7 +7300,7 @@ void check_missing_character()
int token::add_to_zero_width_node_list(node **pp)
{
hunits w;
- int s;
+ int s = 0;
node *n = 0;
switch (type) {
case TOKEN_CHAR:

View File

@ -0,0 +1,36 @@
From afd4d3247df46f5ec21a86627203234f37d750ee Mon Sep 17 00:00:00 2001
From: Lukas Javorsky <ljavorsk@redhat.com>
Date: Mon, 12 Aug 2024 15:52:14 +0200
Subject: [PATCH 6/7] Initialize "x" and "y" elements of the "here" structure
Using uninitialized variables in the "path::follow" function could cause
an undefined behavior.
---
src/preproc/pic/object.cpp | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/preproc/pic/object.cpp b/src/preproc/pic/object.cpp
index d0b648c27..b197a02fa 100644
--- a/src/preproc/pic/object.cpp
+++ b/src/preproc/pic/object.cpp
@@ -891,6 +891,8 @@ int object_spec::position_rectangle(rectangle_object *p,
if (flags & HAS_WITH) {
place offset;
place here;
+ here.x = 0;
+ here.y = 0;
here.obj = p;
if (!with->follow(here, &offset))
return 0;
@@ -1512,6 +1514,8 @@ linear_object *object_spec::make_line(position *curpos, direction *dirp)
position pos = at;
place offset;
place here;
+ here.x = 0;
+ here.y = 0;
here.obj = &tmpobj;
if (!with->follow(here, &offset))
return 0;
--
2.44.0

View File

@ -0,0 +1,25 @@
From 02e7914f70f3afb37b5ebadc65da35e5df47ea8e Mon Sep 17 00:00:00 2001
From: Lukas Javorsky <ljavorsk@redhat.com>
Date: Mon, 12 Aug 2024 16:14:40 +0200
Subject: [PATCH 7/7] Fix uninitialized memory usage in override_sizes by
zero-initializing sizes array
If `strtok` returns `null`, we break early from for-loop before initializing any values to sizes. We then access uninitialized values. Only other case where we break out of the loop is when `lower` is 0, and we do only after adding this 0 to `sizes`. Function `init_size_table` uses "\0" to detect end of the array, so in this case we shouldn't be accessing any uninitialized values.
---
src/roff/troff/env.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/roff/troff/env.cpp b/src/roff/troff/env.cpp
index 62c251927..b54df35e9 100644
--- a/src/roff/troff/env.cpp
+++ b/src/roff/troff/env.cpp
@@ -1318,7 +1318,8 @@ void point_size()
void override_sizes()
{
int n = 16;
- int *sizes = new int[n];
+ int *sizes = new int[n]; // C++03: new int[n]();
+ (void) memset(sizes, 0, (n * sizeof(int)));
int i = 0;
char *buf = read_string();
if (!buf)

View File

@ -1,6 +0,0 @@
--- !Policy
product_versions:
- rhel-8
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}

File diff suppressed because it is too large Load Diff

View File

@ -2,12 +2,51 @@
Summary: A document formatting system Summary: A document formatting system
Name: groff Name: groff
Version: 1.22.3 Version: 1.23.0
Release: 18%{?dist} Release: 10%{?dist}
License: GPLv3+ and GFDL and BSD and MIT # Everything is under GPL-3.0-or-later, except for the following files:
Group: Applications/Publishing # MIT license
# -- tmac/hyphen.den
# tmac/hyphen.det
# GFDL license
# -- contrib/mom/momdoc/*
# contrib/pdfmark/pdfmark.ms
# contrib/pdfmark/pdfroff.1.man
# contrib/hdtbl/groff_hdtbl.7.man
# tmac/groff_trace.7.man
# src/roff/groff/groff.1.man
# src/roff/troff/troff.1.man
# man/groff_diff.7.man
# man/ditroff.7.man
# man/groff_out.5.man
# man/groff_tmac.5.man
# man/groff.7.man
# man/roff.7.man
# doc/fdl.texi
# doc/groff.texi
# BSD-4-Clause-UC
# -- tmac/doc.tmac
# tmac/doc-old.tmac
# tmac/doc-common
# tmac/doc-ditroff
# tmac/doc-nroff
# tmac/doc-syms
# tmac/groff_mdoc.man
# tmac/e.tmac
# tmac/groff_me.man
# doc/meintro.me
# doc/meintro_fr.me
# doc/meref.me
# X11 license
# -- src/devices/xditview/*
# Public domain
# -- src/preproc/grn
# contrib/grap2graph/grap2graph.sh
# contrib/pic2graph/pic2graph.sh
# contrib/eqn2graph/eqn2graph.sh
License: GPL-3.0-or-later AND GFDL-1.3-or-later AND BSD-4-Clause-UC AND MIT AND X11 AND LicenseRef-Fedora-Public-Domain
URL: http://www.gnu.org/software/groff/ URL: http://www.gnu.org/software/groff/
Source: ftp://ftp.gnu.org/gnu/groff/groff-%{version}.tar.gz Source: https://ftp.gnu.org/gnu/groff/groff-%{version}.tar.gz
# resolves: #530788 # resolves: #530788
Patch0: 0001-missing-groff-x11-info-message-when-gxditview-not-fo.patch Patch0: 0001-missing-groff-x11-info-message-when-gxditview-not-fo.patch
@ -16,17 +55,39 @@ Patch1: 0002-load-site-font-and-site-tmac-from-etc-groff.patch
Patch2: 0003-various-security-fixes.patch Patch2: 0003-various-security-fixes.patch
# resolves: #987069 # resolves: #987069
Patch3: 0004-don-t-use-usr-bin-env-in-shebang.patch Patch3: 0004-don-t-use-usr-bin-env-in-shebang.patch
# SSIA # allow to specify custom docdir
Patch4: 0005-Add-missing-rule-for-gropdf.patch Patch4: 0005-do-not-overwrite-docdir.patch
# resolves: #1602530 # Revert upstream change of mapping special characters for UTF-8 devices
Patch5: groff-1.22.3-coverity.patch # Debian commit: https://salsa.debian.org/debian/groff/-/commit/d5394c68d70e6c5199b01d2522e094c8fd52e64e
# SAST fixes
# Reported to upstream:
# https://savannah.gnu.org/bugs/?66052
# https://savannah.gnu.org/bugs/index.php?66076
# https://savannah.gnu.org/bugs/index.php?66078
# https://savannah.gnu.org/bugs/index.php?66079
# https://savannah.gnu.org/bugs/index.php?66080
# https://savannah.gnu.org/bugs/?66081
Patch5: 0006-Revert-upstream-change-of-mapping-special-characters.patch
Patch6: 0007-Fix-the-possible-overrun-of-buf-array.patch
Patch7: 0008-Fix-for-insufficient-allocation-of-iterator.patch
Patch8: 0009-Safely-handle-the-name-argument-in-NewFile-func.patch
Patch9: 0010-Fix-array-comparison-warning-by-comparing-elements-i.patch
Patch10: 0011-Initialize-s-to-prevent-undefined-behavior.patch
Patch11: 0012-Initialize-x-and-y-elements-of-the-here-structure.patch
Patch12: 0013-Fix-uninitialized-memory-usage-in-override_sizes-by-.patch
Requires: coreutils, groff-base = %{version}-%{release}
Recommends: psutils
Requires(post): /usr/sbin/update-alternatives
Requires(postun): /usr/sbin/update-alternatives
Requires(preun): /usr/sbin/update-alternatives
Requires: coreutils, /sbin/install-info, groff-base = %{version}-%{release}
Requires(post): info
Requires(preun): info
BuildRequires: gcc, gcc-c++ BuildRequires: gcc, gcc-c++
BuildRequires: byacc BuildRequires: bison, texinfo
BuildRequires: git, netpbm-progs, perl-generators, psutils, ghostscript BuildRequires: git, netpbm-progs, perl-generators, psutils, ghostscript
Provides: nroff-i18n = %{version}-%{release} Provides: nroff-i18n = %{version}-%{release}
Provides: bundled(gnulib) Provides: bundled(gnulib)
@ -46,7 +107,9 @@ groff-x11 package.
%package base %package base
Summary: Parts of the groff formatting system required to display manual pages Summary: Parts of the groff formatting system required to display manual pages
Group: Applications/Publishing Requires(post): /usr/sbin/update-alternatives
Requires(postun): /usr/sbin/update-alternatives
Requires(preun): /usr/sbin/update-alternatives
%description base %description base
The groff-base package contains only necessary parts of groff formatting The groff-base package contains only necessary parts of groff formatting
@ -55,7 +118,6 @@ display device (PostScript).
%package perl %package perl
Summary: Parts of the groff formatting system that require Perl Summary: Parts of the groff formatting system that require Perl
Group: Applications/Publishing
Requires: groff-base = %{version}-%{release} Requires: groff-base = %{version}-%{release}
%description perl %description perl
@ -70,9 +132,9 @@ roff2html roff2pdf roff2ps roff2text roff2x (roff code converters).
%if %{with_x} %if %{with_x}
%package x11 %package x11
Summary: Parts of the groff formatting system that require X Windows System Summary: Parts of the groff formatting system that require X Windows System
Group: Applications/Publishing
Requires: groff-base = %{version}-%{release} Requires: groff-base = %{version}-%{release}
BuildRequires: libXaw-devel, libXmu-devel BuildRequires: libXaw-devel, libXmu-devel
BuildRequires: make
Provides: groff-gxditview = %{version}-%{release} Provides: groff-gxditview = %{version}-%{release}
Obsoletes: groff-gxditview < 1.20.1 Obsoletes: groff-gxditview < 1.20.1
@ -85,11 +147,8 @@ xtotroff (converts X font metrics into groff font metrics).
%package doc %package doc
Summary: Documentation for groff document formatting system Summary: Documentation for groff document formatting system
Group: Documentation
BuildArch: noarch BuildArch: noarch
Requires: groff = %{version}-%{release} Requires: groff = %{version}-%{release}
Requires(post): info
Requires(preun): info
%description doc %description doc
The groff-doc package includes additional documentation for groff The groff-doc package includes additional documentation for groff
@ -105,7 +164,7 @@ git add .
git commit -n -m "release %{version}" git commit -n -m "release %{version}"
git am %{patches} git am %{patches}
for file in NEWS src/devices/grolbp/grolbp.man doc/{groff.info*,webpage.ms} \ for file in NEWS src/devices/grolbp/grolbp.1.man doc/webpage.ms \
contrib/mm/*.man contrib/mom/examples/{README.txt,*.mom,mom.vim}; do contrib/mm/*.man contrib/mom/examples/{README.txt,*.mom,mom.vim}; do
iconv -f iso-8859-1 -t utf-8 < "$file" > "${file}_" iconv -f iso-8859-1 -t utf-8 < "$file" > "${file}_"
mv "${file}_" "$file" mv "${file}_" "$file"
@ -114,12 +173,20 @@ done
%build %build
%configure \ %configure \
--docdir=%{_pkgdocdir} \ --docdir=%{_pkgdocdir} \
--with-appresdir=%{_datadir}/X11/app-defaults \ --with-appdefdir=%{_datadir}/X11/app-defaults \
--with-grofferdir=%{_datadir}/%{name}/%{version}/groffer --with-grofferdir=%{_datadir}/%{name}/%{version}/groffer
make %{?_smp_mflags} %make_build
%install %install
make install DESTDIR=%{buildroot} %make_install
# rename files for alternative usage
mv %{buildroot}%{_bindir}/soelim %{buildroot}%{_bindir}/soelim.%{name}
touch %{buildroot}%{_bindir}/soelim
mv %{buildroot}%{_mandir}/man1/soelim.1 %{buildroot}%{_mandir}/man1/soelim.%{name}.1
touch %{buildroot}%{_mandir}/man1/soelim.1
mv %{buildroot}%{_mandir}/man7/roff.7 %{buildroot}%{_mandir}/man7/roff.%{name}.7
touch %{buildroot}%{_mandir}/man7/roff.7
# some binaries need alias with 'g' or 'z' prefix # some binaries need alias with 'g' or 'z' prefix
for file in g{nroff,troff,tbl,pic,eqn,neqn,refer,lookbib,indxbib,soelim} zsoelim; do for file in g{nroff,troff,tbl,pic,eqn,neqn,refer,lookbib,indxbib,soelim} zsoelim; do
@ -141,10 +208,6 @@ sed --in-place 's/\.pfa$/.pfa_/' %{buildroot}%{_datadir}/%{name}/%{version}/font
# remove unnecessary files # remove unnecessary files
rm -f %{buildroot}%{_infodir}/dir rm -f %{buildroot}%{_infodir}/dir
# fix privileges
chmod 755 %{buildroot}%{_datadir}/groff/%{version}/groffer/version.sh
chmod 755 %{buildroot}%{_datadir}/groff/%{version}/font/devlj4/generate/special.awk
# remove CreationDate from documentation # remove CreationDate from documentation
pushd %{buildroot}%{_pkgdocdir} pushd %{buildroot}%{_pkgdocdir}
find -name "*.html" | xargs sed -i "/^<!-- CreationDate: /d" find -name "*.html" | xargs sed -i "/^<!-- CreationDate: /d"
@ -154,23 +217,59 @@ popd
# /bin/sed moved to /usr/bin/sed in Fedora # /bin/sed moved to /usr/bin/sed in Fedora
sed --in-place 's|#! /bin/sed -f|#! /usr/bin/sed -f|' %{buildroot}%{_datadir}/groff/%{version}/font/devps/generate/symbol.sed sed --in-place 's|#! /bin/sed -f|#! /usr/bin/sed -f|' %{buildroot}%{_datadir}/groff/%{version}/font/devps/generate/symbol.sed
%pre
# remove alternativized files if they are not symlinks
[ -L %{_mandir}/man7/roff.7.gz ] || %{__rm} -f %{_mandir}/man7/roff.7.gz >/dev/null 2>&1 || :
%post %post
/sbin/install-info %{_infodir}/%{name}.info %{_infodir}/dir || : # set up the alternatives files
/usr/sbin/update-alternatives --install %{_mandir}/man7/roff.7.gz roff.7.gz %{_mandir}/man7/roff.%{name}.7.gz 300 \
>/dev/null 2>&1 || :
%preun %preun
if [ $1 = 0 ]; then if [ $1 -eq 0 ]; then
/sbin/install-info --delete %{_infodir}/%{name}.info %{_infodir}/dir || : /usr/sbin/update-alternatives --remove roff.7.gz %{_mandir}/man7/roff.%{name}.7.gz >/dev/null 2>&1 || :
fi
%postun
if [ $1 -ge 1 ]; then
if [ "$(readlink /etc/alternatives/roff.7.gz)" == "%{_mandir}/man7/roff.%{name}.7.gz" ]; then
/usr/sbin/update-alternatives --set roff.7.gz %{_mandir}/man7/roff.%{name}.7.gz >/dev/null 2>&1 || :
fi
fi
%pre base
# remove alternativized files if they are not symlinks
[ -L %{_bindir}/soelim ] || %{__rm} -f %{_bindir}/soelim >/dev/null 2>&1 || :
[ -L %{_mandir}/man1/soelim.1.gz ] || %{__rm} -f %{_mandir}/man1/soelim.1.gz >/dev/null 2>&1 || :
%post base
# set up the alternatives files
/usr/sbin/update-alternatives --install %{_bindir}/soelim soelim %{_bindir}/soelim.%{name} 300 \
--slave %{_mandir}/man1/soelim.1.gz soelim.1.gz %{_mandir}/man1/soelim.%{name}.1.gz \
>/dev/null 2>&1 || :
%preun base
if [ $1 -eq 0 ]; then
/usr/sbin/update-alternatives --remove soelim %{_bindir}/soelim.%{name} >/dev/null 2>&1 || :
fi
%postun base
if [ $1 -ge 1 ]; then
if [ "$(readlink /etc/alternatives/soelim)" == "%{_bindir}/soelim.%{name}" ]; then
/usr/sbin/update-alternatives --set soelim %{_bindir}/soelim.%{name} >/dev/null 2>&1 || :
fi
fi fi
%files %files
# data # data
%{_datadir}/%{name}/%{version}/font/devcp1047/
%{_datadir}/%{name}/%{version}/font/devdvi/ %{_datadir}/%{name}/%{version}/font/devdvi/
%{_datadir}/%{name}/%{version}/font/devlbp/ %{_datadir}/%{name}/%{version}/font/devlbp/
%{_datadir}/%{name}/%{version}/font/devlj4/ %{_datadir}/%{name}/%{version}/font/devlj4/
%{_datadir}/%{name}/%{version}/oldfont/ %{_datadir}/%{name}/%{version}/oldfont/
%{_datadir}/%{name}/%{version}/pic/ %{_datadir}/%{name}/%{version}/pic/
%{_datadir}/%{name}/%{version}/tmac/62bit.tmac %{_datadir}/%{name}/%{version}/tmac/62bit.tmac
%{_datadir}/%{name}/%{version}/tmac/a4.tmac
%{_datadir}/%{name}/%{version}/tmac/dvi.tmac %{_datadir}/%{name}/%{version}/tmac/dvi.tmac
%{_datadir}/%{name}/%{version}/tmac/e.tmac %{_datadir}/%{name}/%{version}/tmac/e.tmac
%{_datadir}/%{name}/%{version}/tmac/ec.tmac %{_datadir}/%{name}/%{version}/tmac/ec.tmac
@ -195,6 +294,7 @@ fi
%{_datadir}/%{name}/%{version}/tmac/s.tmac %{_datadir}/%{name}/%{version}/tmac/s.tmac
%{_datadir}/%{name}/%{version}/tmac/spdf.tmac %{_datadir}/%{name}/%{version}/tmac/spdf.tmac
%{_datadir}/%{name}/%{version}/tmac/trace.tmac %{_datadir}/%{name}/%{version}/tmac/trace.tmac
%{_datadir}/%{name}/%{version}/tmac/zh.tmac
# programs # programs
%{_bindir}/addftinfo %{_bindir}/addftinfo
%{_bindir}/eqn2graph %{_bindir}/eqn2graph
@ -213,8 +313,6 @@ fi
%{_bindir}/pic2graph %{_bindir}/pic2graph
%{_bindir}/refer %{_bindir}/refer
%{_bindir}/tfmtodit %{_bindir}/tfmtodit
%{_libdir}/groff/groff_opts_no_arg.txt
%{_libdir}/groff/groff_opts_with_arg.txt
%{_mandir}/man1/addftinfo.* %{_mandir}/man1/addftinfo.*
%{_mandir}/man1/eqn2graph.* %{_mandir}/man1/eqn2graph.*
%{_mandir}/man1/gdiffmk.* %{_mandir}/man1/gdiffmk.*
@ -242,6 +340,7 @@ fi
%{_mandir}/man1/gindxbib.* %{_mandir}/man1/gindxbib.*
# groff processor documentation # groff processor documentation
%{_mandir}/man5/* %{_mandir}/man5/*
%ghost %{_mandir}/man7/roff.7*
%{_mandir}/man7/* %{_mandir}/man7/*
%{_infodir}/groff.info* %{_infodir}/groff.info*
@ -265,7 +364,6 @@ fi
%{_datadir}/%{name}/%{version}/font/devutf8/ %{_datadir}/%{name}/%{version}/font/devutf8/
%{_datadir}/%{name}/%{version}/font/devhtml/ %{_datadir}/%{name}/%{version}/font/devhtml/
%{_datadir}/%{name}/%{version}/tmac/an-ext.tmac %{_datadir}/%{name}/%{version}/tmac/an-ext.tmac
%{_datadir}/%{name}/%{version}/tmac/an-old.tmac
%{_datadir}/%{name}/%{version}/tmac/an.tmac %{_datadir}/%{name}/%{version}/tmac/an.tmac
%{_datadir}/%{name}/%{version}/tmac/andoc.tmac %{_datadir}/%{name}/%{version}/tmac/andoc.tmac
%{_datadir}/%{name}/%{version}/tmac/composite.tmac %{_datadir}/%{name}/%{version}/tmac/composite.tmac
@ -273,6 +371,7 @@ fi
%{_datadir}/%{name}/%{version}/tmac/cs.tmac %{_datadir}/%{name}/%{version}/tmac/cs.tmac
%{_datadir}/%{name}/%{version}/tmac/de.tmac %{_datadir}/%{name}/%{version}/tmac/de.tmac
%{_datadir}/%{name}/%{version}/tmac/den.tmac %{_datadir}/%{name}/%{version}/tmac/den.tmac
%{_datadir}/%{name}/%{version}/tmac/en.tmac
%{_datadir}/%{name}/%{version}/tmac/devtag.tmac %{_datadir}/%{name}/%{version}/tmac/devtag.tmac
%{_datadir}/%{name}/%{version}/tmac/doc-old.tmac %{_datadir}/%{name}/%{version}/tmac/doc-old.tmac
%{_datadir}/%{name}/%{version}/tmac/doc.tmac %{_datadir}/%{name}/%{version}/tmac/doc.tmac
@ -287,11 +386,16 @@ fi
%{_datadir}/%{name}/%{version}/tmac/hyphen.det %{_datadir}/%{name}/%{version}/tmac/hyphen.det
%{_datadir}/%{name}/%{version}/tmac/hyphen.fr %{_datadir}/%{name}/%{version}/tmac/hyphen.fr
%{_datadir}/%{name}/%{version}/tmac/hyphen.sv %{_datadir}/%{name}/%{version}/tmac/hyphen.sv
%{_datadir}/%{name}/%{version}/tmac/hyphen.us %{_datadir}/%{name}/%{version}/tmac/hyphen.en
%{_datadir}/%{name}/%{version}/tmac/hyphen.it
%{_datadir}/%{name}/%{version}/tmac/hyphenex.cs %{_datadir}/%{name}/%{version}/tmac/hyphenex.cs
%{_datadir}/%{name}/%{version}/tmac/hyphenex.det %{_datadir}/%{name}/%{version}/tmac/hyphenex.en
%{_datadir}/%{name}/%{version}/tmac/hyphenex.us
%{_datadir}/%{name}/%{version}/tmac/ja.tmac %{_datadir}/%{name}/%{version}/tmac/ja.tmac
%{_datadir}/%{name}/%{version}/tmac/ptx.tmac
%{_datadir}/%{name}/%{version}/tmac/it.tmac
%{_datadir}/%{name}/%{version}/tmac/rfc1345.tmac
%{_datadir}/%{name}/%{version}/tmac/sanitize.tmac
%{_datadir}/%{name}/%{version}/tmac/sboxes.tmac
%{_datadir}/%{name}/%{version}/tmac/latin1.tmac %{_datadir}/%{name}/%{version}/tmac/latin1.tmac
%{_datadir}/%{name}/%{version}/tmac/latin2.tmac %{_datadir}/%{name}/%{version}/tmac/latin2.tmac
%{_datadir}/%{name}/%{version}/tmac/latin5.tmac %{_datadir}/%{name}/%{version}/tmac/latin5.tmac
@ -301,19 +405,18 @@ fi
%{_datadir}/%{name}/%{version}/tmac/mdoc.tmac %{_datadir}/%{name}/%{version}/tmac/mdoc.tmac
%{_datadir}/%{name}/%{version}/tmac/mdoc/ %{_datadir}/%{name}/%{version}/tmac/mdoc/
%{_datadir}/%{name}/%{version}/tmac/papersize.tmac %{_datadir}/%{name}/%{version}/tmac/papersize.tmac
%{_datadir}/%{name}/%{version}/tmac/pdfpic.tmac
%{_datadir}/%{name}/%{version}/tmac/pic.tmac %{_datadir}/%{name}/%{version}/tmac/pic.tmac
%{_datadir}/%{name}/%{version}/tmac/ps.tmac %{_datadir}/%{name}/%{version}/tmac/ps.tmac
%{_datadir}/%{name}/%{version}/tmac/psatk.tmac %{_datadir}/%{name}/%{version}/tmac/psatk.tmac
%{_datadir}/%{name}/%{version}/tmac/psold.tmac %{_datadir}/%{name}/%{version}/tmac/psold.tmac
%{_datadir}/%{name}/%{version}/tmac/pspic.tmac %{_datadir}/%{name}/%{version}/tmac/pspic.tmac
%{_datadir}/%{name}/%{version}/tmac/safer.tmac
%{_datadir}/%{name}/%{version}/tmac/sv.tmac %{_datadir}/%{name}/%{version}/tmac/sv.tmac
%{_datadir}/%{name}/%{version}/tmac/trans.tmac %{_datadir}/%{name}/%{version}/tmac/trans.tmac
%{_datadir}/%{name}/%{version}/tmac/troffrc %{_datadir}/%{name}/%{version}/tmac/troffrc
%{_datadir}/%{name}/%{version}/tmac/troffrc-end %{_datadir}/%{name}/%{version}/tmac/troffrc-end
%{_datadir}/%{name}/%{version}/tmac/tty-char.tmac %{_datadir}/%{name}/%{version}/tmac/tty-char.tmac
%{_datadir}/%{name}/%{version}/tmac/tty.tmac %{_datadir}/%{name}/%{version}/tmac/tty.tmac
%{_datadir}/%{name}/%{version}/tmac/unicode.tmac
%{_datadir}/%{name}/%{version}/tmac/www.tmac %{_datadir}/%{name}/%{version}/tmac/www.tmac
# programs # programs
%{_bindir}/eqn %{_bindir}/eqn
@ -326,7 +429,8 @@ fi
%{_bindir}/post-grohtml %{_bindir}/post-grohtml
%{_bindir}/pre-grohtml %{_bindir}/pre-grohtml
%{_bindir}/preconv %{_bindir}/preconv
%{_bindir}/soelim %ghost %{_bindir}/soelim
%{_bindir}/soelim.%{name}
%{_bindir}/tbl %{_bindir}/tbl
%{_bindir}/troff %{_bindir}/troff
%{_mandir}/man1/eqn.* %{_mandir}/man1/eqn.*
@ -337,7 +441,8 @@ fi
%{_mandir}/man1/nroff.* %{_mandir}/man1/nroff.*
%{_mandir}/man1/pic.* %{_mandir}/man1/pic.*
%{_mandir}/man1/preconv.* %{_mandir}/man1/preconv.*
%{_mandir}/man1/soelim.* %ghost %{_mandir}/man1/soelim.1*
%{_mandir}/man1/soelim.%{name}.*
%{_mandir}/man1/tbl.* %{_mandir}/man1/tbl.*
%{_mandir}/man1/troff.* %{_mandir}/man1/troff.*
# compatibility symlinks # compatibility symlinks
@ -357,12 +462,10 @@ fi
%{_mandir}/man1/gneqn.* %{_mandir}/man1/gneqn.*
%{_mandir}/man1/gsoelim.* %{_mandir}/man1/gsoelim.*
%{_mandir}/man1/zsoelim.* %{_mandir}/man1/zsoelim.*
%dir %{_libdir}/groff/
%files perl %files perl
# data # data
%{_datadir}/%{name}/%{version}/font/devpdf/ %{_datadir}/%{name}/%{version}/font/devpdf/
%{_datadir}/%{name}/%{version}/groffer/
%{_datadir}/%{name}/%{version}/tmac/pdf.tmac %{_datadir}/%{name}/%{version}/tmac/pdf.tmac
# programs # programs
%{_bindir}/afmtodit %{_bindir}/afmtodit
@ -370,41 +473,19 @@ fi
%{_bindir}/gperl %{_bindir}/gperl
%{_bindir}/gpinyin %{_bindir}/gpinyin
%{_bindir}/glilypond %{_bindir}/glilypond
%{_bindir}/groffer
%{_bindir}/grog %{_bindir}/grog
%{_bindir}/gropdf %{_bindir}/gropdf
%{_bindir}/mmroff %{_bindir}/mmroff
%{_bindir}/pdfmom %{_bindir}/pdfmom
%{_bindir}/roff2dvi
%{_bindir}/roff2html
%{_bindir}/roff2pdf
%{_bindir}/roff2ps
%{_bindir}/roff2text
%{_bindir}/roff2x
%{_mandir}/man1/afmtodit.* %{_mandir}/man1/afmtodit.*
%{_mandir}/man1/chem.* %{_mandir}/man1/chem.*
%{_mandir}/man1/gperl.* %{_mandir}/man1/gperl.*
%{_mandir}/man1/gpinyin.* %{_mandir}/man1/gpinyin.*
%{_mandir}/man1/glilypond.* %{_mandir}/man1/glilypond.*
%{_mandir}/man1/groffer.*
%{_mandir}/man1/grog.* %{_mandir}/man1/grog.*
%{_mandir}/man1/gropdf.* %{_mandir}/man1/gropdf.*
%{_mandir}/man1/mmroff.* %{_mandir}/man1/mmroff.*
%{_mandir}/man1/pdfmom.* %{_mandir}/man1/pdfmom.*
%{_mandir}/man1/roff2dvi.*
%{_mandir}/man1/roff2html.*
%{_mandir}/man1/roff2pdf.*
%{_mandir}/man1/roff2ps.*
%{_mandir}/man1/roff2text.*
%{_mandir}/man1/roff2x.*
%dir %{_libdir}/groff/glilypond/
%dir %{_libdir}/groff/gpinyin/
%dir %{_libdir}/groff/grog/
%{_libdir}/groff/glilypond/args.pl
%{_libdir}/groff/glilypond/oop_fh.pl
%{_libdir}/groff/glilypond/subs.pl
%{_libdir}/groff/gpinyin/subs.pl
%{_libdir}/groff/grog/subs.pl
%if %{with_x} %if %{with_x}
%files x11 %files x11
@ -414,6 +495,7 @@ fi
%{_datadir}/%{name}/%{version}/tmac/Xps.tmac %{_datadir}/%{name}/%{version}/tmac/Xps.tmac
%{_datadir}/X11/app-defaults/GXditview %{_datadir}/X11/app-defaults/GXditview
%{_datadir}/X11/app-defaults/GXditview-color %{_datadir}/X11/app-defaults/GXditview-color
%{_datadir}/%{name}/%{version}/font/FontMap-X11
# programs # programs
%{_bindir}/gxditview %{_bindir}/gxditview
%{_bindir}/xtotroff %{_bindir}/xtotroff
@ -425,22 +507,109 @@ fi
%doc %{_pkgdocdir}/*.me %doc %{_pkgdocdir}/*.me
%doc %{_pkgdocdir}/*.ps %doc %{_pkgdocdir}/*.ps
%doc %{_pkgdocdir}/*.ms %doc %{_pkgdocdir}/*.ms
%doc %{_pkgdocdir}/groff*
%doc %{_pkgdocdir}/me-revisions
%doc %{_pkgdocdir}/automake.pdf
%doc %{_pkgdocdir}/examples/ %doc %{_pkgdocdir}/examples/
%doc %{_pkgdocdir}/html/ %doc %{_pkgdocdir}/html/
%doc %{_pkgdocdir}/pdf/ %doc %{_pkgdocdir}/pdf/
%changelog %changelog
* Wed Dec 05 2018 Nikola Forró <nforro@redhat.com> - 1.22.3-18 * Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 1.23.0-10
- Fix also SHELLCHECK_WARNING - Bump release for October 2024 mass rebuild:
related: #1602530 Resolves: RHEL-64018
* Wed Nov 28 2018 Nikola Forró <nforro@redhat.com> - 1.22.3-17 * Tue Aug 27 2024 Lukas Javorsky <ljavorsk@redhat.com> - 1.23.0-9
- Fix important Covscan defects - Rebase for added gating
resolves: #1602530
* Wed Nov 28 2018 Nikola Forró <nforro@redhat.com> - 1.22.3-16 * Wed Aug 21 2024 Lukas Javorsky <ljavorsk@redhat.com> - 1.23.0-8
- Fix SAST identified true positives
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 1.23.0-7
- Bump release for June 2024 mass rebuild
* Wed Jan 24 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.23.0-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sat Jan 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.23.0-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Tue Jan 16 2024 Yaakov Selkowitz <yselkowi@redhat.com> - 1.23.0-4
- Fix alternatives usage
* Thu Nov 02 2023 Lukas Javorsky <ljavorsk@redhat.com> - 1.23.0-3
- Revert upstream change of mapping special characters for UTF-8 devices
- Resolves: BZ#2224123
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.23.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Mon Jul 10 2023 Lukas Javorsky <ljavorsk@redhat.com> - 1.23.0-1
- Rebase to version 1.23.0
- Several files were removed from groff package
- Several files were added to groff package
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.4-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.4-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.4-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.4-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Wed Mar 17 2021 Nikola Forró <nforro@redhat.com> - 1.22.4-7
- Make psutils a weak dependency
* Mon Feb 22 2021 Nikola Forró <nforro@redhat.com> - 1.22.4-6
- Add psutils as a runtime dependency (needed for groff -Thtml)
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.4-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Tue Nov 03 2020 Nikola Forró <nforro@redhat.com> - 1.22.4-4
- Move pdfpic.tmac to groff-base
resolves: #1888370
* Fri Oct 02 2020 Nikola Forró <nforro@redhat.com> - 1.22.4-3
- Use make macros
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Thu Mar 05 2020 Nikola Forró <nforro@redhat.com> - 1.22.4-1
- Update to version 1.22.4
resolves: #1808072
* Sun Mar 01 2020 Nikola Forró <nforro@redhat.com> - 1.22.3-24
- Fix %pre scriptlets
* Fri Feb 28 2020 Nikola Forró <nforro@redhat.com> - 1.22.3-23
- Fix upgrades from non-alternativized versions
* Wed Feb 26 2020 Nikola Forró <nforro@redhat.com> - 1.22.3-22
- Use alternatives for soelim and roff.7
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.3-21
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.3-20
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.3-19
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Wed Nov 28 2018 Nikola Forró <nforro@redhat.com> - 1.22.3-18
- Add missing "bundled(gnulib)" provides - Add missing "bundled(gnulib)" provides
resolves: #1654251
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.3-17
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Tue Jun 19 2018 Nikola Forró <nforro@redhat.com> - 1.22.3-16
- Remove install-info from scriptlets
* Tue Feb 27 2018 Nikola Forró <nforro@redhat.com> - 1.22.3-15 * Tue Feb 27 2018 Nikola Forró <nforro@redhat.com> - 1.22.3-15
- Add unowned directories to groff-base and groff-perl - Add unowned directories to groff-base and groff-perl

View File

@ -1 +1 @@
SHA512 (groff-1.22.3.tar.gz) = c526ab203d13a9c9d110bcd3149fe50d1cd0d309437e9e2731a7ce90d890507ebc0a2331899ecf4dba2938daa756b6094cf76fd347a0ded59797c70ccfd0c95c SHA512 (groff-1.23.0.tar.gz) = eff473fd1d0e6b27527318452ef2b7c6c7aba0b1c27fc529036496eccba5717f3639df0b81a297a57f700e27543196d7086b15e43d7e3c7bf075f95feb7f4089