- Version update to 1.22.4:

* Many fixes for hyphenation helping
  * Various build tweaks
  * See the NEWS file for details
- New signature -> update keyring file
- Remove upstream merged patches:
  * groff-multi-thread.patch
  * groff-reproducible-mdate.patch
  * groff-use-SDE.patch
- Remove groff-1.21-groffer-libexecdir.patch as upstream redid
  the autotools rules and uses configure option now
- Rebase patch groff-1.20.1-deunicode.patch
- Rebase patch groff-1.21-CVE-2009-5081.patch
- Drop patch groff-1.21-CVE-2009-5080.patch as it seems the shell
  script now properly safeguards against this
- Rebase patch 0002-documentation-for-the-locale-keyword.patch
- Recreate groff-force-locale-usage.patch for autotools buildsystem
- Add patch 0004-don-t-use-usr-bin-env-in-shebang.patch
- Remove groff_1.22.3-1.debian.diff and replace it with split
  debian patches:
  * bash-scripts.patch
  * sort-perl-hash-keys.patch
- Remove not really needed patch groff-1.20.1-destbufferoverflow.patch

OBS-URL: https://build.opensuse.org/package/show/M17N/groff?expand=0&rev=68
This commit is contained in:
Tomáš Chvátal 2019-01-04 14:23:17 +00:00 committed by Git OBS Bridge
parent 81b0e36542
commit f473dfa0d3
21 changed files with 585 additions and 1368 deletions

View File

@ -4,14 +4,14 @@ Date: Thu, 29 Sep 2011 09:19:01 +0200
Subject: [PATCH] documentation for the locale keyword Subject: [PATCH] documentation for the locale keyword
--- ---
doc/groff.texinfo | 28 +++++++++++++++++++++++++++- doc/groff.texi | 28 +++++++++++++++++++++++++++-
man/groff_font.man | 8 +++++++- man/groff_font.5.man | 8 +++++++-
2 files changed, 34 insertions(+), 2 deletions(-) 2 files changed, 34 insertions(+), 2 deletions(-)
diff --git a/doc/groff.texinfo b/doc/groff.texinfo diff --git a/doc/groff.texi b/doc/groff.texi
index 7b09e0f..1cff7b4 100644 index 7b09e0f..1cff7b4 100644
--- a/doc/groff.texinfo --- a/doc/groff.texi
+++ b/doc/groff.texinfo +++ b/doc/groff.texi
@@ -16530,7 +16530,7 @@ types @code{A0}-@code{A7}, @code{B0}-@code{B7}, @code{C0}-@code{C7}, @@ -16530,7 +16530,7 @@ types @code{A0}-@code{A7}, @code{B0}-@code{B7}, @code{C0}-@code{C7},
significant for @var{string} if it holds predefined paper types. significant for @var{string} if it holds predefined paper types.
Alternatively, @var{string} can be a file name (e.g.@: Alternatively, @var{string} can be a file name (e.g.@:
@ -54,10 +54,10 @@ index 7b09e0f..1cff7b4 100644
More than one argument can be specified; @code{groff} scans from left to More than one argument can be specified; @code{groff} scans from left to
right and uses the first valid paper specification. right and uses the first valid paper specification.
diff --git a/man/groff_font.man b/man/groff_font.man diff --git a/man/groff_font.5.man b/man/groff_font.5.man
index 64bd212..29a7136 100644 index 64bd212..29a7136 100644
--- a/man/groff_font.man --- a/man/groff_font.5.man
+++ b/man/groff_font.man +++ b/man/groff_font.5.man
@@ -150,7 +150,7 @@ can be a file name (e.g.\& `/etc/papersize'); if the file can be opened, @@ -150,7 +150,7 @@ can be a file name (e.g.\& `/etc/papersize'); if the file can be opened,
.B groff .B groff
reads the first line and tests for the above paper sizes. reads the first line and tests for the above paper sizes.

View File

@ -0,0 +1,156 @@
From e263e19aa1c63dbcbe710e8aae79c8e298606e4c Mon Sep 17 00:00:00 2001
From: Peter Schiffer <pschiffe@redhat.com>
Date: Tue, 4 Nov 2014 14:49:57 +0100
Subject: [PATCH] don't use /usr/bin/env in shebang
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.
Resolves: #987069
---
contrib/chem/chem.pl | 2 +-
contrib/groffer/groffer.pl | 2 +-
contrib/groffer/roff2.pl | 2 +-
src/roff/grog/grog.pl | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
Index: groff-1.22.4/contrib/chem/chem.pl
===================================================================
--- groff-1.22.4.orig/contrib/chem/chem.pl
+++ groff-1.22.4/contrib/chem/chem.pl
@@ -1,4 +1,4 @@
-#! /usr/bin/env perl
+#! /usr/bin/perl
# chem - a groff preprocessor for producing chemical structure diagrams
Index: groff-1.22.4/contrib/groffer/groffer.pl
===================================================================
--- groff-1.22.4.orig/contrib/groffer/groffer.pl
+++ groff-1.22.4/contrib/groffer/groffer.pl
@@ -1,4 +1,4 @@
-#! /usr/bin/env perl
+#! /usr/bin/perl
# groffer - display groff files
Index: groff-1.22.4/contrib/groffer/roff2.pl
===================================================================
--- groff-1.22.4.orig/contrib/groffer/roff2.pl
+++ groff-1.22.4/contrib/groffer/roff2.pl
@@ -1,4 +1,4 @@
-#! /usr/bin/env perl
+#! /usr/bin/perl
# roff2* - transform roff files into other formats
Index: groff-1.22.4/src/roff/grog/grog.pl
===================================================================
--- groff-1.22.4.orig/src/roff/grog/grog.pl
+++ groff-1.22.4/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.
Index: groff-1.22.4/contrib/glilypond/glilypond.pl
===================================================================
--- groff-1.22.4.orig/contrib/glilypond/glilypond.pl
+++ groff-1.22.4/contrib/glilypond/glilypond.pl
@@ -1,4 +1,4 @@
-#! /usr/bin/env perl
+#! /usr/bin/perl
package main;
Index: groff-1.22.4/contrib/gperl/gperl.pl
===================================================================
--- groff-1.22.4.orig/contrib/gperl/gperl.pl
+++ groff-1.22.4/contrib/gperl/gperl.pl
@@ -1,4 +1,4 @@
-#! /usr/bin/env perl
+#! /usr/bin/perl
# gperl - add Perl part to groff files, this is the preprocessor for that
Index: groff-1.22.4/contrib/gpinyin/gpinyin.pl
===================================================================
--- groff-1.22.4.orig/contrib/gpinyin/gpinyin.pl
+++ groff-1.22.4/contrib/gpinyin/gpinyin.pl
@@ -1,4 +1,4 @@
-#! /usr/bin/env perl
+#! /usr/bin/perl
# gpinyin - European-like Chinese writing 'pinyin' into 'groff'
Index: groff-1.22.4/contrib/gpinyin/subs.pl
===================================================================
--- groff-1.22.4.orig/contrib/gpinyin/subs.pl
+++ groff-1.22.4/contrib/gpinyin/subs.pl
@@ -1,4 +1,4 @@
-#! /usr/bin/env perl
+#! /usr/bin/perl
# gpinyin - European-like Chinese writing 'pinyin' into 'groff'
Index: groff-1.22.4/contrib/groffer/main_subs.pl
===================================================================
--- groff-1.22.4.orig/contrib/groffer/main_subs.pl
+++ groff-1.22.4/contrib/groffer/main_subs.pl
@@ -1,4 +1,4 @@
-#! /usr/bin/env perl
+#! /usr/bin/perl
# groffer - display groff files
Index: groff-1.22.4/contrib/groffer/man.pl
===================================================================
--- groff-1.22.4.orig/contrib/groffer/man.pl
+++ groff-1.22.4/contrib/groffer/man.pl
@@ -1,4 +1,4 @@
-#! /usr/bin/env perl
+#! /usr/bin/perl
# groffer - display groff files
Index: groff-1.22.4/contrib/groffer/subs.pl
===================================================================
--- groff-1.22.4.orig/contrib/groffer/subs.pl
+++ groff-1.22.4/contrib/groffer/subs.pl
@@ -1,4 +1,4 @@
-#! /usr/bin/env perl
+#! /usr/bin/perl
# groffer - display groff files
Index: groff-1.22.4/mdate.pl
===================================================================
--- groff-1.22.4.orig/mdate.pl
+++ groff-1.22.4/mdate.pl
@@ -1,4 +1,4 @@
-#! /usr/bin/env perl
+#! /usr/bin/perl
#
# Copyright (C) 1991-2018 Free Software Foundation, Inc.
#
Index: groff-1.22.4/src/roff/grog/subs.pl
===================================================================
--- groff-1.22.4.orig/src/roff/grog/subs.pl
+++ groff-1.22.4/src/roff/grog/subs.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.
Index: groff-1.22.4/tmac/hyphenex.pl
===================================================================
--- groff-1.22.4.orig/tmac/hyphenex.pl
+++ groff-1.22.4/tmac/hyphenex.pl
@@ -1,4 +1,4 @@
-#! /usr/bin/env perl
+#! /usr/bin/perl
#
#
# hyphenex.pl

45
bash-scripts.patch Normal file
View File

@ -0,0 +1,45 @@
From b5636fe1b680fff8dbf8c2d002806f37b32a10df Mon Sep 17 00:00:00 2001
From: Colin Watson <cjwatson@debian.org>
Date: Thu, 2 Jan 2014 13:13:09 +0000
Subject: The *2graph scripts use $RANDOM, which is bash-specific
Forwarded: https://lists.gnu.org/archive/html/groff/2014-01/msg00008.html
Last-Update: 2018-03-05
Patch-Name: bash-scripts.patch
---
contrib/eqn2graph/eqn2graph.sh | 2 +-
contrib/grap2graph/grap2graph.sh | 2 +-
contrib/pic2graph/pic2graph.sh | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/contrib/eqn2graph/eqn2graph.sh b/contrib/eqn2graph/eqn2graph.sh
index 3e9c3748..454754b5 100644
--- a/contrib/eqn2graph/eqn2graph.sh
+++ b/contrib/eqn2graph/eqn2graph.sh
@@ -1,4 +1,4 @@
-#! /bin/sh
+#! /bin/bash
#
# eqn2graph -- compile EQN equation descriptions to bitmap images
#
diff --git a/contrib/grap2graph/grap2graph.sh b/contrib/grap2graph/grap2graph.sh
index 29df25bb..062f2eec 100644
--- a/contrib/grap2graph/grap2graph.sh
+++ b/contrib/grap2graph/grap2graph.sh
@@ -1,4 +1,4 @@
-#! /bin/sh
+#! /bin/bash
#
# grap2graph -- compile graph description descriptions to bitmap images
#
diff --git a/contrib/pic2graph/pic2graph.sh b/contrib/pic2graph/pic2graph.sh
index b2299148..cc92ce07 100644
--- a/contrib/pic2graph/pic2graph.sh
+++ b/contrib/pic2graph/pic2graph.sh
@@ -1,4 +1,4 @@
-#! /bin/sh
+#! /bin/bash
#
# pic2graph -- compile PIC image descriptions to bitmap images
#

View File

@ -1,13 +0,0 @@
Index: src/devices/grops/ps.cpp
===================================================================
--- src/devices/grops/ps.cpp.orig 2009-01-09 15:25:52.000000000 +0100
+++ src/devices/grops/ps.cpp 2010-08-23 15:29:15.848156800 +0200
@@ -833,7 +833,7 @@
{
if (next_encoding_index == 0)
return;
- char *done_encoding = new char[next_encoding_index];
+ char *done_encoding = new char[next_encoding_index +1];
for (int i = 0; i < next_encoding_index; i++)
done_encoding[i] = 0;
for (font_pointer_list *f = font_list; f; f = f->next) {

View File

@ -1,9 +1,9 @@
Index: groff-1.20.1/tmac/tty.tmac Index: groff-1.22.4/tmac/tty.tmac
=================================================================== ===================================================================
--- groff-1.20.1.orig/tmac/tty.tmac 2009-01-09 15:25:52.000000000 +0100 --- groff-1.22.4.orig/tmac/tty.tmac
+++ groff-1.20.1/tmac/tty.tmac 2011-06-08 11:06:28.611516653 +0200 +++ groff-1.22.4/tmac/tty.tmac
@@ -65,8 +65,11 @@ @@ -68,8 +68,11 @@
.fchar \[.i] i .fchar \[.j] j
.fchar \[bq] , .fchar \[bq] ,
. .
-.if '\*[.T]'utf8' \ -.if '\*[.T]'utf8' \

View File

@ -1,40 +0,0 @@
Index: groff-1.21/contrib/eqn2graph/eqn2graph.sh
===================================================================
--- groff-1.21.orig/contrib/eqn2graph/eqn2graph.sh 2011-09-22 14:15:22.000000000 +0200
+++ groff-1.21/contrib/eqn2graph/eqn2graph.sh 2011-09-22 14:23:55.754494862 +0200
@@ -69,6 +69,8 @@
tmp=$d/eqn2graph$$-$RANDOM
(umask 077 && mkdir $tmp) 2> /dev/null && break
+
+ tmp=
done;
if test -z "$tmp"; then
echo "$0: cannot create temporary directory" >&2
Index: groff-1.21/contrib/grap2graph/grap2graph.sh
===================================================================
--- groff-1.21.orig/contrib/grap2graph/grap2graph.sh 2011-09-22 14:15:22.000000000 +0200
+++ groff-1.21/contrib/grap2graph/grap2graph.sh 2011-09-22 14:23:55.754494862 +0200
@@ -65,6 +65,8 @@
tmp=$d/grap2graph$$-$RANDOM
(umask 077 && mkdir $tmp) 2> /dev/null && break
+
+ tmp=
done;
if test -z "$tmp"; then
echo "$0: cannot create temporary directory" >&2
Index: groff-1.21/contrib/pic2graph/pic2graph.sh
===================================================================
--- groff-1.21.orig/contrib/pic2graph/pic2graph.sh 2011-09-22 14:15:22.000000000 +0200
+++ groff-1.21/contrib/pic2graph/pic2graph.sh 2011-09-22 14:23:55.794496246 +0200
@@ -80,6 +80,8 @@
tmp=$d/pic2graph$$-$RANDOM
(umask 077 && mkdir $tmp) 2> /dev/null \
&& break
+
+ tmp=
done;
if test -z "$tmp"; then
echo "$0: cannot create temporary directory" >&2

View File

@ -1,18 +1,18 @@
Index: groff-1.22.3/contrib/pdfmark/pdfroff.man Index: groff-1.22.4/contrib/pdfmark/pdfroff.1.man
=================================================================== ===================================================================
--- groff-1.22.3.orig/contrib/pdfmark/pdfroff.man --- groff-1.22.4.orig/contrib/pdfmark/pdfroff.1.man
+++ groff-1.22.3/contrib/pdfmark/pdfroff.man +++ groff-1.22.4/contrib/pdfmark/pdfroff.1.man
@@ -555,7 +555,7 @@ defaults to @@ -540,7 +540,7 @@ gs \-dBATCH \-dQUIET \-dNOPAUSE \-dSAFER
.B GROFF_TMPDIR .I GROFF_TMPDIR
Identifies the directory in which Identifies the directory in which
.B pdfroff .B 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 @@ -553,7 +553,8 @@ and
.B TEMP .I TEMP
are considered in turn, as possible temporary file repositories. are considered in turn, as possible temporary file repositories.
If none of these are set, then temporary files are created If none of these are set, then temporary files are created
-in the current directory. -in the current directory.
@ -20,15 +20,15 @@ Index: groff-1.22.3/contrib/pdfmark/pdfroff.man
+.BR /tmp . +.BR /tmp .
. .
.TP .TP
.B GROFF_GHOSTSCRIPT_INTERPRETER .I GROFF_GHOSTSCRIPT_INTERPRETER
Index: groff-1.22.3/doc/fixinfo.sh Index: groff-1.22.4/doc/fixinfo.sh
=================================================================== ===================================================================
--- groff-1.22.3.orig/doc/fixinfo.sh --- groff-1.22.4.orig/doc/fixinfo.sh
+++ groff-1.22.3/doc/fixinfo.sh +++ groff-1.22.4/doc/fixinfo.sh
@@ -22,7 +22,9 @@ @@ -24,7 +24,9 @@
# groff.texinfo macro code. Hopefully, a new texinfo version makes it #
# unnecessary. # 09-2014: no more problem with texinfo 5.0 or higher
#
-t=${TMPDIR-.}/gro$$.tmp -t=${TMPDIR-.}/gro$$.tmp
+t="`mktemp -t groff-fixinfo.XXXXXXXXXX`" || exit +t="`mktemp -t groff-fixinfo.XXXXXXXXXX`" || exit
+trap 'rm -f -- "$t"' EXIT +trap 'rm -f -- "$t"' EXIT
@ -36,28 +36,11 @@ Index: groff-1.22.3/doc/fixinfo.sh
cat $1 | sed ' cat $1 | sed '
1 { 1 {
Index: groff-1.22.3/doc/groff.info-2 Index: groff-1.22.4/doc/groff.texi
=================================================================== ===================================================================
--- groff-1.22.3.orig/doc/groff.info-2 --- groff-1.22.4.orig/doc/groff.texi
+++ groff-1.22.3/doc/groff.info-2 +++ groff-1.22.4/doc/groff.texi
@@ -1697,9 +1697,9 @@ not there, 'groff' would not know when t @@ -13857,9 +13857,9 @@ into a document:
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')
Index: groff-1.22.3/doc/groff.texinfo
===================================================================
--- groff-1.22.3.orig/doc/groff.texinfo
+++ groff-1.22.3/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",\
@ -70,10 +53,10 @@ Index: groff-1.22.3/doc/groff.texinfo
\nH:\nM:\nS \nH:\nM:\nS
@endExample @endExample
Index: groff-1.22.3/gendef.sh Index: groff-1.22.4/gendef.sh
=================================================================== ===================================================================
--- groff-1.22.3.orig/gendef.sh --- groff-1.22.4.orig/gendef.sh
+++ groff-1.22.3/gendef.sh +++ groff-1.22.4/gendef.sh
@@ -33,11 +33,9 @@ do @@ -33,11 +33,9 @@ do
#define $def" #define $def"
done done
@ -98,23 +81,23 @@ Index: groff-1.22.3/gendef.sh
exit 0 exit 0
# eof # eof
Index: groff-1.22.3/src/roff/groff/pipeline.c Index: groff-1.22.4/src/roff/groff/pipeline.c
=================================================================== ===================================================================
--- groff-1.22.3.orig/src/roff/groff/pipeline.c --- groff-1.22.4.orig/src/roff/groff/pipeline.c
+++ groff-1.22.3/src/roff/groff/pipeline.c +++ groff-1.22.4/src/roff/groff/pipeline.c
@@ -376,6 +376,7 @@ int run_pipeline(int ncommands, char *** @@ -379,6 +379,7 @@ int run_pipeline(int ncommands, char ***
/* Don't use `tmpnam' here: Microsoft's implementation yields unusable /* Don't use 'tmpnam' here: Microsoft's implementation yields unusable
file names if current directory is on network share with read-only file names if current directory is on network share with read-only
root. */ root. */
+#error AUDIT: This code is only compiled under DOS +#error AUDIT: This code is only compiled under DOS
tmpfiles[0] = tempnam(tmpdir, NULL); tmpfiles[0] = tempnam(tmpdir, NULL);
tmpfiles[1] = tempnam(tmpdir, NULL); tmpfiles[1] = tempnam(tmpdir, NULL);
Index: groff-1.22.3/contrib/groffer/main_subs.pl Index: groff-1.22.4/contrib/groffer/main_subs.pl
=================================================================== ===================================================================
--- groff-1.22.3.orig/contrib/groffer/main_subs.pl --- groff-1.22.4.orig/contrib/groffer/main_subs.pl
+++ groff-1.22.3/contrib/groffer/main_subs.pl +++ groff-1.22.4/contrib/groffer/main_subs.pl
@@ -1239,7 +1239,7 @@ sub main_temp { @@ -1244,7 +1244,7 @@ sub main_temp {
our $fh_stdin; our $fh_stdin;
our $tmp_cat; our $tmp_cat;
our $tmp_stdin; our $tmp_stdin;
@ -123,7 +106,7 @@ Index: groff-1.22.3/contrib/groffer/main_subs.pl
foreach ($ENV{'GROFF_TMPDIR'}, $ENV{'TMPDIR'}, $ENV{'TMP'}, $ENV{'TEMP'}, foreach ($ENV{'GROFF_TMPDIR'}, $ENV{'TMPDIR'}, $ENV{'TMP'}, $ENV{'TEMP'},
$ENV{'TEMPDIR'}, File::Spec->catfile($ENV{'HOME'}, 'tmp')) { $ENV{'TEMPDIR'}, File::Spec->catfile($ENV{'HOME'}, 'tmp')) {
if ($_ && -d $_ && -w $_) { if ($_ && -d $_ && -w $_) {
@@ -1271,12 +1271,12 @@ sub main_temp { @@ -1276,12 +1276,12 @@ sub main_temp {
# further argument: SUFFIX => '.sh' # further argument: SUFFIX => '.sh'
if ($Debug{'KEEP'}) { if ($Debug{'KEEP'}) {
@ -140,10 +123,10 @@ Index: groff-1.22.3/contrib/groffer/main_subs.pl
DIR => $tmpdir); DIR => $tmpdir);
} }
} # main_temp() } # main_temp()
Index: groff-1.22.3/contrib/groffer/roff2.pl Index: groff-1.22.4/contrib/groffer/roff2.pl
=================================================================== ===================================================================
--- groff-1.22.3.orig/contrib/groffer/roff2.pl --- groff-1.22.4.orig/contrib/groffer/roff2.pl
+++ groff-1.22.3/contrib/groffer/roff2.pl +++ groff-1.22.4/contrib/groffer/roff2.pl
@@ -123,7 +123,7 @@ if ($Has_Groffer) { @@ -123,7 +123,7 @@ if ($Has_Groffer) {
last; last;
} }

View File

@ -1,47 +0,0 @@
Index: groff-1.22.3/contrib/groffer/Makefile.sub
===================================================================
--- groff-1.22.3.orig/contrib/groffer/Makefile.sub
+++ groff-1.22.3/contrib/groffer/Makefile.sub
@@ -57,7 +57,7 @@ groffer: $(GROFFER_PERL) $(GROFFER_REST)
sed -f "$(SH_DEPS_SED_SCRIPT)" \
-e "s|@g@|$(g)|g" \
-e "s|@BINDIR@|$(DESTDIR)$(bindir)|g" \
- -e "s|@libdir@|$(DESTDIR)$(libdir)|g" \
+ -e "s|@libexecdir@|$(DESTDIR)$(libexecdir)|g" \
-e "s|@groffer_dir@|$(DESTDIR)$(groffer_dir)|g" \
-e "s|@VERSION@|$(version)$(revision)|g" \
-e "$(SH_SCRIPT_SED_CMD)" \
@@ -96,8 +96,8 @@ uninstall_sub:
-for f in $(GROFFER_PERL) version.sh; do \
$(RM) $(DESTDIR)$(groffer_dir)/$$f;\
done
- -test -d $(DESTDIR)$(libdir)/groff/groffer && \
- rmdir $(DESTDIR)$(libdir)/groff/groffer
+ -test -d $(DESTDIR)$(libexecdir)/groff/groffer && \
+ rmdir $(DESTDIR)$(libexecdir)/groff/groffer
########################################################################
Index: groff-1.22.3/Makefile.in
===================================================================
--- groff-1.22.3.orig/Makefile.in
+++ groff-1.22.3/Makefile.in
@@ -138,6 +138,9 @@ bindir=@bindir@
libdir=@libdir@
libprogramdir=$(libdir)/groff
+# `libexecdir` says where to install script not intended to run as user
+libexecdir=@libexecdir@
+
# `datasubdir' says where to install platform-independent data files.
datadir=@datadir@
datarootdir=@datarootdir@
@@ -907,7 +910,7 @@ $(INCDIRS) $(PROGDEPDIRS) $(SHPROGDIRS)
fi; \
test -d $@ || $(mkinstalldirs) $@; \
cd $@; \
- $(MAKE) $(MAKE_K_FLAG) $(MDEFINES) srcdir=$$srcdir VPATH=$$srcdir \
+ $(MAKE) $(MAKE_K_FLAG) $(MDEFINES) srcdir=$$srcdir libexecdir=$(libexecdir) VPATH=$$srcdir \
-f $(top_srcdir)/Makefile.comm \
-f $$srcdir/Makefile.sub \
-f $(top_srcdir)/Makefile.man $(do)

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3a48a9d6c97750bfbd535feeb5be0111db6406ddb7bb79fc680809cda6d828a5
size 4188772

View File

@ -1,7 +0,0 @@
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.19 (GNU/Linux)
iD8DBQBUWJSIwaYOrOcH/aURAtxrAJ9+Ou+hyN+XEP9Xy3D6oGVaiIgGKwCff7DH
0aip4dfybulQhKv61XW6ViA=
=QkhF
-----END PGP SIGNATURE-----

3
groff-1.22.4.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e78e7b4cb7dec310849004fa88847c44701e8d133b5d4c13057d876c1bad0293
size 4137480

16
groff-1.22.4.tar.gz.sig Normal file
View File

@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEELQwI0rCtDT2GJmcCctI/usmdTnUFAlwfpGIACgkQctI/usmd
TnXDmw//cpZmQ2Ll8VWziyqOcY/37dmlFht2TNBXxfmUrlBYtv7mlgYOoBb6k5a5
JqoK5GUm8MlEOkeptnrS+cti9JAmC1jzAijilF8BdXRKZHvE1OUKvqkWBFum+Zo7
qsOaoYT/h+za3WSXdDOIgAqXn0mhcUGmD3Y/hVb3UdMn+MjzOLit8bCt2UtyKyeL
oalHbnTxnctYhwUwVqkYD3tsTwo8FubW99f+m4ylBaVysUQg9w9Aikwuzv72oYDF
Sp6GXsru9Zj+lRK1oASPTZi95FUKkiFvZFU+izZmprvGLnSWtUmBmkds7KuB9gwX
ADI8f3oO4WGuy9imuDHv+oPrf+pjlbkNUZIaUwC4XeafvP0P7QraPWClUhmD0z7I
4vn7uHVFEiECB+s9FwgWKiIe/9EkdIILw3n0jc5R9IvQzl/wFV1G7XMSw2RcZgv4
cMQb2U2AuqOmsZ0fxaEUYrXM98WDi/5jJ3WEDNG+sjTgjFLl2c6HZgT0z9Y18N+S
5A401GG0kHt6T2H7QXHFECeiffKGJ7n5hgUz1T4KVN2LXtOrEF0ivnxre9/9r3Om
yeAsrp+ajB40Yfs2NU57UxcTUHp/Ae0+MXa3uYwDr+JtzRk0mv9obbj5LEIa2t0a
S1zPh+DVMBoHRqbM9j3ZBe5fTdwwtl8oKY/hOKZGXkr95pzkhl8=
=x7ud
-----END PGP SIGNATURE-----

View File

@ -1,64 +1,80 @@
Index: groff-1.22.3/font/devdvi/Makefile.sub Index: groff-1.22.4/font/devdvi/devdvi.am
=================================================================== ===================================================================
--- groff-1.22.3.orig/font/devdvi/Makefile.sub --- groff-1.22.4.orig/font/devdvi/devdvi.am
+++ groff-1.22.3/font/devdvi/Makefile.sub +++ groff-1.22.4/font/devdvi/devdvi.am
@@ -43,9 +43,9 @@ MOSTLYCLEANADD=DESC @@ -83,9 +83,9 @@ font/devdvi/DESC: $(devdvi_srcdir)/DESC.
DESC: DESC.in $(AM_V_GEN)$(MKDIR_P) `dirname $@` \
cat $(srcdir)/DESC.in >DESC && cat $(devdvi_srcdir)/DESC.in >$@ \
if test "$(PAGE)" = A4; then \ && if test "$(PAGE)" = A4; then \
- echo "papersize a4" >>DESC; \ - echo "papersize a4" >>$@; \
+ echo "papersize locale a4" >>DESC; \ + echo "papersize locale a4" >>$@; \
else \ else \
- echo "papersize letter" >>DESC; \ - echo "papersize letter" >>$@; \
+ echo "papersize locale letter" >>DESC; \ + echo "papersize locale letter" >>$@; \
fi fi \
test -z '$(DVIPRINT)' || echo print '$(DVIPRINT)' >>DESC && (test -z '$(DVIPRINT)' \
|| echo print '$(DVIPRINT)' >>$@)
Index: groff-1.22.3/font/devlbp/Makefile.sub Index: groff-1.22.4/font/devlbp/devlbp.am
=================================================================== ===================================================================
--- groff-1.22.3.orig/font/devlbp/Makefile.sub --- groff-1.22.4.orig/font/devlbp/devlbp.am
+++ groff-1.22.3/font/devlbp/Makefile.sub +++ groff-1.22.4/font/devlbp/devlbp.am
@@ -39,9 +39,9 @@ MOSTLYCLEANADD=DESC @@ -47,9 +47,9 @@ font/devlbp/DESC: $(devlbp_srcdir)/DESC.
DESC: DESC.in $(AM_V_GEN)$(MKDIR_P) `dirname $@` \
cat $(srcdir)/DESC.in >DESC && cat $(devlbp_srcdir)/DESC.in >$@ \
if test "$(PAGE)" = A4; then \ && if test "$(PAGE)" = A4; then \
- echo "papersize a4" >>DESC; \ - echo "papersize a4" >>$@; \
+ echo "papersize locale a4" >>DESC; \ + echo "papersize locale a4" >>$@; \
else \ else \
- echo "papersize letter" >>DESC; \ - echo "papersize letter" >>$@; \
+ echo "papersize locale letter" >>DESC; \ + echo "papersize locale letter" >>$@; \
fi fi \
test -z '$(LBPPRINT)' || echo print '$(LBPPRINT)' >>DESC && (test -z '$(LBPPRINT)' \
|| echo print '$(LBPPRINT)' >>$@)
Index: groff-1.22.3/font/devlj4/Makefile.sub Index: groff-1.22.4/font/devlj4/devlj4.am
=================================================================== ===================================================================
--- groff-1.22.3.orig/font/devlj4/Makefile.sub --- groff-1.22.4.orig/font/devlj4/devlj4.am
+++ groff-1.22.3/font/devlj4/Makefile.sub +++ groff-1.22.4/font/devlj4/devlj4.am
@@ -58,9 +58,9 @@ DESC: DESC.in @@ -92,9 +92,9 @@ font/devlj4/DESC: $(devlj4_srcdir)/DESC.
echo "unitwidth `expr 7620000 / $(LJ4RES)`" >>DESC && echo "unitwidth `expr 7620000 / $(LJ4RES)`" >>$@ \
cat $(srcdir)/DESC.in >>DESC && cat $(devlj4_srcdir)/DESC.in >>$@ \
if test "$(PAGE)" = A4; then \ && if test "$(PAGE)" = A4; then \
- echo "papersize a4" >>DESC; \ - echo "papersize a4" >>$@; \
+ echo "papersize locale a4" >>DESC; \ + echo "papersize locale a4" >>$@; \
else \ else \
- echo "papersize letter" >>DESC; \ - echo "papersize letter" >>$@; \
+ echo "papersize locale letter" >>DESC; \ + echo "papersize locale letter" >>$@; \
fi fi \
test -z '$(LJ4PRINT)' || echo print '$(LJ4PRINT)' >>DESC && (test -z '$(LJ4PRINT)' \
|| echo print '$(LJ4PRINT)' >>$@)
Index: groff-1.22.3/font/devps/Makefile.sub Index: groff-1.22.4/font/devpdf/devpdf.am
=================================================================== ===================================================================
--- groff-1.22.3.orig/font/devps/Makefile.sub --- groff-1.22.4.orig/font/devpdf/devpdf.am
+++ groff-1.22.3/font/devps/Makefile.sub +++ groff-1.22.4/font/devpdf/devpdf.am
@@ -65,9 +65,9 @@ DESC: DESC.in @@ -95,9 +95,9 @@ font/devpdf/DESC: $(devpdf_srcdir)/DESC.
cat $(srcdir)/DESC.in >DESC && $(RM) $(top_builddir)/font/devpdf/DESC \
echo broken $(BROKEN_SPOOLER_FLAGS) >>DESC && cat $(devpdf_srcdir)/DESC.in >$(top_builddir)/font/devpdf/DESC \
if test "$(PAGE)" = A4; then \ && if test "$(PAGE)" = A4; then \
- echo "papersize a4" >>DESC; \ - echo "papersize a4" >>$(top_builddir)/font/devpdf/DESC; \
+ echo "papersize locale a4" >>DESC; \ + echo "papersize locale a4" >>$(top_builddir)/font/devpdf/DESC; \
else \ else \
- echo "papersize letter" >>DESC; \ - echo "papersize letter" >>$(top_builddir)/font/devpdf/DESC; \
+ echo "papersize locale letter" >>DESC; \ + echo "papersize locale letter" >>$(top_builddir)/font/devpdf/DESC; \
fi fi
test -z '$(PSPRINT)' || echo print '$(PSPRINT)' >>DESC
font/devpdf/Foundry:
Index: groff-1.22.4/font/devps/devps.am
===================================================================
--- groff-1.22.4.orig/font/devps/devps.am
+++ groff-1.22.4/font/devps/devps.am
@@ -143,9 +143,9 @@ font/devps/DESC: $(devps_srcdir)/DESC.in
&& cat $(devps_srcdir)/DESC.in >$@ \
&& echo broken $(BROKEN_SPOOLER_FLAGS) >>$@ \
&& if test "$(PAGE)" = A4; then \
- echo "papersize a4" >>$@; \
+ echo "papersize locale a4" >>$@; \
else \
- echo "papersize letter" >>$@; \
+ echo "papersize locale letter" >>$@; \
fi \
&& (test -z '$(PSPRINT)' \
|| echo print '$(PSPRINT)' >>$@)

View File

@ -1,13 +0,0 @@
Index: Makefile.in
===================================================================
--- Makefile.in.orig
+++ Makefile.in
@@ -903,6 +903,8 @@ $(GNULIBDIRS): FORCE
$(MAKE) ACLOCAL=: AUTOCONF=: AUTOHEADER=: AUTOMAKE=: $(do) ;; \
esac
+$(SHPROGDIRS): $(PROGDEPDIRS)
+
$(OTHERDIRS): $(PROGDEPDIRS) $(CCPROGDIRS) $(CPROGDIRS) $(SHPROGDIRS)
$(INCDIRS) $(PROGDEPDIRS) $(SHPROGDIRS) $(OTHERDIRS): FORCE

View File

@ -1,25 +0,0 @@
Author: Bernhard M. Wiedemann <bwiedemann suse de>
Date: 2018-11-01
Subject: make package build reproducible
sometimes our patches touch .man input files
and mdate picks up their mtime for use in man-page headers
so we clamp the mtime to SOURCE_DATE_EPOCH if set
similar to https://www.fabiankeil.de/sourcecode/electrobsd/ElectroBSD-r312620-6cfa243f1516/0079-contrib-groff-mdate.sh-Use-EPOCH_DATE-when-set.diff
upstream commit 677274dafc5dd5f79f2a6d16270b21d2f5a16c5b
rewrote it to similar perl, too
Index: groff-1.22.3/mdate.sh
===================================================================
--- groff-1.22.3.orig/mdate.sh
+++ groff-1.22.3/mdate.sh
@@ -19,4 +19,7 @@
#
# Print the modification date of $1 `nicely'.
-perl -MPOSIX -le 'print strftime("%d %B %Y", localtime((stat $ARGV[0])[9]))' $1
+perl -MPOSIX -le '
+$t=((stat $ARGV[0])[9]);
+$t=$ENV{SOURCE_DATE_EPOCH} if($ENV{SOURCE_DATE_EPOCH} && $t > $ENV{SOURCE_DATE_EPOCH});
+print strftime("%d %B %Y", gmtime($t))' $1

View File

@ -1,221 +0,0 @@
commit e4290210f2c1db5292d97678197a986d6822d044
Author: Colin Watson <cjwatson@debian.org>
Date: Fri Jul 29 03:25:26 2016 +0100
Implement `SOURCE_DATE_EPOCH' for reproducible builds.
* src/include/curtime.h: New file.
* src/libs/libgroff/curtime.cpp: New file.
* src/libs/libgroff/libgroff.am (libgroff_a_SOURCES): Add
src/libs/libgroff/curtime.cpp.
* src/roff/troff/input.cpp (init_registers): Use `current_time'
instead of `time(0)'.
* src/devices/grohtml/post-html.cpp
(html_printer::do_file_components): Likewise.
(html_printer::~html_printer): Likewise.
* src/devices/grops/ps.cpp (ps_printer::~ps_printer): Likewise.
* src/devices/gropdf/gropdf.pl: Use `$ENV{SOURCE_DATE_EPOCH}` if
available in preference to `time`.
* doc/groff.texi (Environment): Document `SOURCE_DATE_EPOCH'.
* src/devices/grohtml/grohtml.1.man (ENVIRONMENT): Likewise.
* src/devices/gropdf/gropdf.1.man (ENVIRONMENT): Likewise.
* src/devices/grops/grops.1.man (ENVIRONMENT): Likewise.
Index: groff-1.22.3/src/devices/grohtml/post-html.cpp
===================================================================
--- groff-1.22.3.orig/src/devices/grohtml/post-html.cpp
+++ groff-1.22.3/src/devices/grohtml/post-html.cpp
@@ -28,6 +28,7 @@ along with this program. If not, see <ht
#include "html.h"
#include "html-text.h"
#include "html-table.h"
+#include "curtime.h"
#include <time.h>
@@ -5013,7 +5014,7 @@ void html_printer::do_file_components (v
.put_string(Version_string)
.end_comment();
- t = time(0);
+ t = current_time();
html.begin_comment("CreationDate: ")
.put_string(ctime(&t), strlen(ctime(&t))-1)
.end_comment();
@@ -5126,7 +5127,7 @@ html_printer::~html_printer()
.put_string(Version_string)
.end_comment();
- t = time(0);
+ t = current_time();
html.begin_comment("CreationDate: ")
.put_string(ctime(&t), strlen(ctime(&t))-1)
.end_comment();
Index: groff-1.22.3/src/devices/gropdf/gropdf.pl
===================================================================
--- groff-1.22.3.orig/src/devices/gropdf/gropdf.pl
+++ groff-1.22.3/src/devices/gropdf/gropdf.pl
@@ -239,13 +239,14 @@ elsif (exists($ppsz{$papersz}))
@defaultmb=@mediabox=(0,0,$ppsz{$papersz}->[0],$ppsz{$papersz}->[1]);
}
-my (@dt)=localtime(time);
+my (@dt)=localtime($ENV{SOURCE_DATE_EPOCH} || time);
my $dt=PDFDate(\@dt);
my %info=('Creator' => "(groff version $cfg{GROFF_VERSION})",
'Producer' => "(gropdf version $cfg{GROFF_VERSION})",
'ModDate' => "($dt)",
'CreationDate' => "($dt)");
+
while (<>)
{
chomp;
Index: groff-1.22.3/src/devices/grops/ps.cpp
===================================================================
--- groff-1.22.3.orig/src/devices/grops/ps.cpp
+++ groff-1.22.3/src/devices/grops/ps.cpp
@@ -28,6 +28,7 @@ along with this program. If not, see <ht
#include "cset.h"
#include "nonposix.h"
#include "paper.h"
+#include "curtime.h"
#include "ps.h"
#include <time.h>
@@ -1390,7 +1391,7 @@ ps_printer::~ps_printer()
#else
time_t
#endif
- t = time(0);
+ t = current_time();
fputs(ctime(&t), out.get_file());
}
for (font_pointer_list *f = font_list; f; f = f->next) {
Index: groff-1.22.3/src/include/curtime.h
===================================================================
--- /dev/null
+++ groff-1.22.3/src/include/curtime.h
@@ -0,0 +1,23 @@
+/* Copyright (C) 2015 Free Software Foundation, Inc.
+
+This file is part of groff.
+
+groff is free software; you can redistribute it and/or modify it under
+the terms of the GNU General Public License as published by the Free
+Software Foundation, either version 2 of the License, or
+(at your option) any later version.
+
+groff is distributed in the hope that it will be useful, but WITHOUT ANY
+WARRANTY; without even the implied warranty of MERCHANTABILITY or
+FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+for more details.
+
+The GNU General Public License version 2 (GPL2) is available in the
+internet at <http://www.gnu.org/licenses/gpl-2.0.txt>. */
+
+#ifdef LONG_FOR_TIME_T
+long
+#else
+time_t
+#endif
+current_time();
Index: groff-1.22.3/src/libs/libgroff/curtime.cpp
===================================================================
--- /dev/null
+++ groff-1.22.3/src/libs/libgroff/curtime.cpp
@@ -0,0 +1,51 @@
+/* Copyright (C) 2015 Free Software Foundation, Inc.
+
+This file is part of groff.
+
+groff is free software; you can redistribute it and/or modify it under
+the terms of the GNU General Public License as published by the Free
+Software Foundation, either version 2 of the License, or
+(at your option) any later version.
+
+groff is distributed in the hope that it will be useful, but WITHOUT ANY
+WARRANTY; without even the implied warranty of MERCHANTABILITY or
+FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+for more details.
+
+The GNU General Public License version 2 (GPL2) is available in the
+internet at <http://www.gnu.org/licenses/gpl-2.0.txt>. */
+
+#include <errno.h>
+#include <limits.h>
+#include <stdlib.h>
+#include <string.h>
+#include <time.h>
+
+#include "errarg.h"
+#include "error.h"
+
+#ifdef LONG_FOR_TIME_T
+long
+#else
+time_t
+#endif
+current_time()
+{
+ char *source_date_epoch = getenv("SOURCE_DATE_EPOCH");
+
+ if (source_date_epoch) {
+ errno = 0;
+ char *endptr;
+ long epoch = strtol(source_date_epoch, &endptr, 10);
+
+ if ((errno == ERANGE && (epoch == LONG_MAX || epoch == LONG_MIN)) ||
+ (errno != 0 && epoch == 0))
+ fatal("$SOURCE_DATE_EPOCH: strtol: %1", strerror(errno));
+ if (endptr == source_date_epoch)
+ fatal("$SOURCE_DATE_EPOCH: no digits found: %1", endptr);
+ if (*endptr != '\0')
+ fatal("$SOURCE_DATE_EPOCH: trailing garbage: %1", endptr);
+ return epoch;
+ } else
+ return time(0);
+}
Index: groff-1.22.3/src/roff/troff/input.cpp
===================================================================
--- groff-1.22.3.orig/src/roff/troff/input.cpp
+++ groff-1.22.3/src/roff/troff/input.cpp
@@ -36,6 +36,7 @@ along with this program. If not, see <ht
#include "input.h"
#include "defs.h"
#include "unicode.h"
+#include "curtime.h"
// Needed for getpid() and isatty()
#include "posix.h"
@@ -8138,7 +8139,7 @@ static void init_registers()
#else /* not LONG_FOR_TIME_T */
time_t
#endif /* not LONG_FOR_TIME_T */
- t = time(0);
+ t = current_time();
// Use struct here to work around misfeature in old versions of g++.
struct tm *tt = localtime(&t);
set_number_reg("seconds", int(tt->tm_sec));
Index: groff-1.22.3/src/libs/libgroff/Makefile.sub
===================================================================
--- groff-1.22.3.orig/src/libs/libgroff/Makefile.sub
+++ groff-1.22.3/src/libs/libgroff/Makefile.sub
@@ -32,6 +32,7 @@ OBJS=\
cmap.$(OBJEXT) \
color.$(OBJEXT) \
cset.$(OBJEXT) \
+ curtime.$(OBJEXT) \
device.$(OBJEXT) \
errarg.$(OBJEXT) \
error.$(OBJEXT) \
@@ -82,6 +83,7 @@ CCSRCS=\
$(srcdir)/cmap.cpp \
$(srcdir)/color.cpp \
$(srcdir)/cset.cpp \
+ $(srcdir)/curtime.cpp \
$(srcdir)/device.cpp \
$(srcdir)/errarg.cpp \
$(srcdir)/error.cpp \

View File

@ -1,3 +1,29 @@
-------------------------------------------------------------------
Fri Jan 4 12:44:27 UTC 2019 - Tomáš Chvátal <tchvatal@suse.com>
- Version update to 1.22.4:
* Many fixes for hyphenation helping
* Various build tweaks
* See the NEWS file for details
- New signature -> update keyring file
- Remove upstream merged patches:
* groff-multi-thread.patch
* groff-reproducible-mdate.patch
* groff-use-SDE.patch
- Remove groff-1.21-groffer-libexecdir.patch as upstream redid
the autotools rules and uses configure option now
- Rebase patch groff-1.20.1-deunicode.patch
- Rebase patch groff-1.21-CVE-2009-5081.patch
- Drop patch groff-1.21-CVE-2009-5080.patch as it seems the shell
script now properly safeguards against this
- Rebase patch 0002-documentation-for-the-locale-keyword.patch
- Recreate groff-force-locale-usage.patch for autotools buildsystem
- Add patch 0004-don-t-use-usr-bin-env-in-shebang.patch
- Remove groff_1.22.3-1.debian.diff and replace it with split
debian patches:
* bash-scripts.patch
* sort-perl-hash-keys.patch
------------------------------------------------------------------- -------------------------------------------------------------------
Thu Jan 3 12:52:35 UTC 2019 - Tomáš Chvátal <tchvatal@suse.com> Thu Jan 3 12:52:35 UTC 2019 - Tomáš Chvátal <tchvatal@suse.com>
@ -129,6 +155,7 @@ Thu May 9 09:16:49 UTC 2013 - mvyskocil@suse.com
- gxdview.spec is removed as gxdview is built from groff-full.spec - gxdview.spec is removed as gxdview is built from groff-full.spec
- verify the tarball using gpg-offline - this is done in groff-full only - verify the tarball using gpg-offline - this is done in groff-full only
to retain a limited list of dependencies for base groff to retain a limited list of dependencies for base groff
- Remove not really needed patch groff-1.20.1-destbufferoverflow.patch
------------------------------------------------------------------- -------------------------------------------------------------------
Tue May 7 14:40:06 UTC 2013 - schwab@suse.de Tue May 7 14:40:06 UTC 2013 - schwab@suse.de

View File

@ -1,28 +1,60 @@
pub 1024D/E707FDA5 2003-10-25
uid Werner Lemberg <wl@gnu.org>
sub 1024g/A5638324 2003-10-25
-----BEGIN PGP PUBLIC KEY BLOCK----- -----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v2.0.19 (GNU/Linux)
mQGiBD+Z+pwRBACnK1FszJzA033xBE6MVbjhP1DLFNBLwhw+2hcTLOWvcsdbQh74 mQINBFp7hioBEACxAXpGe0dXlZDu3uwVu+d1crzXt4Tb111S+nEsbX1suX2Xl2J1
BTSjR61QnFj0JcfmGXa2Qk6wsLL8r3mY2CrAtYf3MnXDU7ZImmVO4VJ4YvVO7FMz e5B5cB9elGdRtG6U/GxQ8DPIoj5jrSt9XrvYn02nNSwito3UaOs8A3/lhs3f7NZT
7Xl7TyEfz32aWT/FUMRbFsT8HTIv0gVimpvnOC5z0U53LbgI7TK2gp+UXwCgiNJC r85hHW+6YvhQ/ELUnR+odFj4E3hvuWEBTNcw+3Eg76iX2DQMRYOKShqU4niwMPgR
+/0b9pskbjH8V5lyNPTR6pMD/0pjqPrWynPfuG015Bpc4GtfduB7RR7wWJwQq1s7 ZZ2a8D8H6sORyy07WeTGrzAG3WtgfCyl0eNCHBXnhToStJzgI4PFNsRWelk7HzXb
5E/peGYqPk/yyGWfnSlhyW9+OuPxnCIxtoosqD5/gcaEK64qTzSmvdhP7csU6zk6 r7rrs24ijL3B9ZIU+CtSIXmoKIbxFUFxC4rH7KHENWWZ1VlKYnAsg83tbkv4BUoT
Emb2RLfMX17fOWKTF5cfjpvGvhr0P4jukJ3q3q4JL+ZQLNuxW0ZrItujorG44jlc Zy1wa/5HV5Og0N9gfr+ZQ0dKd+aqCC8qajGG9HCq+ToZTsmac6GNTpYSjgJTBn2F
dSIZA/9VEegNNz5OnvrvWfU/jK/inXoSisdNunkxDpIshxCpph0xdMJqKcIsAfG0 GUw/MqnpvBveS++zmy+yYr6WEM5J3LXtD2cOul585Lk1Nzy+j9QrkF3x4yMF4Oe4
CsuNkDlDQSW1bGIS9zrK41PcYWs/2P/6lgEStiEPVXziqMZsXnDKuMRN32edLM9Z IHiimc0ie4cC92RFC5lvucUAsOHAB+r49W642BOneeWWmRknbMeUBxm21DM9h5YZ
oGCoUFxWkGl8gtZqJUtOS86IABPG/5unldCfAulL1qDU267QcLQbV2VybmVyIExl WuhiFJoXYXYXU3tz0pax9zFj/ITPi+VpJ4IaDQHmp1eTUq8vUr/D5daVLIy40ZNr
bWJlcmcgPHdsQGdudS5vcmc+iF8EExECABcFAj+Z+pwFCwcKAwQDFQMCAxYCAQIX QSUROG6rHOablE1tkFvSGzzD+g4P7cisdQfrlel5upAk2EirX+N1i5/lGGB6l+IW
gAASCRDBpg6s5wf9pQdlR1BHAAEBTb0An2+FGaqF6B+L98SwovRKTj6RNHRDAKCH 4OzLE4kQtOKB/pptESt+jGqExVvilEkrOXBXpebo6xJ2cqe6jAQf69+npwARAQAB
8XAgZBXmnJkuFZdehXUeaELcMLkBDQQ/mfqiEAQA/GIc47GVhBUfmH1QzUhm4Y6W tDNCZXJ0cmFuZCBHYXJyaWd1ZXMgPGJlcnRyYW5kLmdhcnJpZ3Vlc0BsYXBvc3Rl
YY+i2Rc6+ZpY94VUgZfF4Uc6T7bcNI/lsKfp7JlU3NOMnCbSpPDbWnlJk3O/w79y Lm5ldD6IRgQQEQIABgUCWn4tGgAKCRDBpg6s5wf9pbIdAJ9CiQRgaXCWc1Ph8ACD
Eq5uxSGxIkXQSNd6X7K31DpgdhO05GDXGlmy9uQIknqxyT5J2LVp3T8UXFMDdPkh t2RCW2TR8QCbBBqd+V7GD73MbzfYCncpWtKJruuJATMEEAEIAB0WIQSymTZBgctQ
MfDLwo5Ku9PxTmMajUsAAwUEAKIZgRV4Hn4sbgFz0oYVuwa/RywQ25t5j4fCh2D9 VJiLcdoLZsMoW+BHhAUCWnuGywAKCRALZsMoW+BHhDVKCACA+l0Qd08jWalqdqle
F2dN+RvacgqZS4JJVKJgXT9dVkXMo/3CBPx5gXTyJv/Xfk5GZxX3i1Cf6xn7Bz4z ByPsDDW87nwkPTsT9W9FOkLlDjLG9jv3DeJ4t/Xm+iKPpM4YrUGpggoARKv3iOxM
sy5P1dapDdI+wpnqn/S7Zm6oqJQJkrKl3F0JiReo7xZZuuoEyOxPI/6MLSKpBnjL h1xi9L3bsYc+IUjcarEjfP2mW2KGmOBaIIbX32LSVJ6EfwGZf/+UebJLBCVeSyEc
Vx6giE4EGBECAAYFAj+Z+qIAEgkQwaYOrOcH/aUHZUdQRwABAVwZAKCBYF9/CYty di0tTdRmBGTDCguH/rRO3ij/KDYj638iVVQUIAVTm/40zb9hP3/Xsdu8pEZFNiYh
NErAzbX8HQVZqExjKwCfctp0iVHu49WYBxGYpTb6kiuRL7c= mc3PfKnldIXz/tAOBZjUu0aJV0PBvhmbO5GBjwvk541uvG7bM9TdfVxGvIYCqsHV
=wMZR OgBNbL9U2VYZewGjQvoJ8bFxz4LO3hT+ZpPAlUIMBoZd8BFQefOv7SmHHdIBRoVM
4bWoiQJUBBMBCAA+FiEELQwI0rCtDT2GJmcCctI/usmdTnUFAlp7hioCGwMFCQPC
ZwAFCwkIBwIGFQoJCAsCBBYCAwECHgECF4AACgkQctI/usmdTnV5eQ/+Olmdh8LZ
1JkZRP4m7+PE8vtBXGBf5sjC3StoPELMu+7bfK9xRCuKMVCm7cJ7+ImwHn0P9chZ
d3yo3G+mYdk41Xa39mv7rWvTO5XcI4FNQXDDi04wJA5E4fBbL+frbcOIjRkAL3iH
12ZJU9HBOP338P6yqK6FWDVxKo8wZYyq86XPU5yNLTlMmPfj8XPT9x5UZRHWRo4g
Xg9mrymUyOeMyxCRV4GIc5CtaJI7SK6ys/1aFOWwNHQUKm4l6QzAX40TP0vmHuyV
6Ka7HSJx6GAA95BIceF0Bx648xzQzgXW+9d5VHsV031WKfjOt0eLmoJ/4R7kQADJ
zoih6IxSrnNfpztRPxCDQSFXgWATlKaidBqNNHEAlIVYhFTtrxDIL6zkuXzfGvAg
U2qFJ75xL8TTWJ03mH+3U0gjkd4BZGxwc4tvIoS4IsPZMV6vpujvnvASHsGpeOo8
Xmp40uQh/ef9eycapZF40BbUgaTLLdhAihGAYMGNQ88xSRwIBjl4MbBBIXOoqzRG
E7pOzOOZI9ak37WcdFl9t3Rizchae8cuUxzqctYWfwq7QPDUq7/ZqNzxHbdF9Na9
/w0tpApcFNQZRX6XkdmLpHCgclBEBr808c3JIE/RQvuaNZs1OTtWHc4ZhN0OFLv8
NNJNTExIPUUr5+FgIjUVpe5McauGqPFPJ765Ag0EWnuGKgEQAK3zEaXCCGZrEOAR
9hMrOsbE04JHvwgkqK0rlFwflGwHq4yaRqxQ9aUrXDxlZsgAARzaVNjwi08qvR07
NM4YPj4dClwgvaSN3QFY0iEwyQdCFbWl9EAJs1KvytwMWCePqCVBxzW3ozSZ1ATy
5JRB/TGrwj8Y8IksMJ+rXaJKcP3hFV/F3q7PxHQA2W654KNkoc+UkdjA1sN7uGVS
0//jkriRC7Fyw+7axAcVSN2dI3wMwZGZb7slLErRjnpHI/Ov+RPy8k2Ywot6RwSk
M29EOtu6PbSXAcCrDxNApE8WYwL6bDDPHX6i7/bPLBvetuQDTRFvsdXlzHIfYmVG
nPyz3azC29AIh3KwOImph+nRSyV8b14hOxjno0lADOxjeNHkEMdhfBqru06VMX4G
Bx9IaVJiL4Ah6GAExlvUTagofmTIOfZd3WNwPADRUnUwVipDV0aTeDpGCQsfgRBw
/tyIVnG3IN9uGHxV2PaXBekSqUsDiPUiyJCFW7O1cfzN/sz0f5oRZSrn8iMnV+dY
lHmNYJXrhvrjjpy1GjQKIZfRdXpnCA8wq1InAC2TBoTcgi+5HaQz065A9mzyS/pJ
iuG3bUjnguIY+6wLMeM6rI4Df3mJSbjj/J3dyNXO71TxgDhAdpQR4BJmynjH3Lni
KjB8MvHzYq4hU9nDiMLWVa/4Vx85ABEBAAGJAjwEGAEIACYWIQQtDAjSsK0NPYYm
ZwJy0j+6yZ1OdQUCWnuGKgIbDAUJA8JnAAAKCRBy0j+6yZ1OdVEoEACZ5X/C60ic
MDb2Gtb/bT8Q/qARBTJ8R5+qcGAEiFuDx/FXWU6pJgf71bIPsTXnMi4N80YGQ4hd
Z/BVO3mcNtIg72vH6YUd+eTljp9iO6E5e86z4SD6knZ/Ntw2OM0Pctq/VAkPLLkR
fBohuHK6gIk00jkTfLd5wxfHfbCBwgRAlAA+Ryf0OnUBoc8ppvUl5zllIvNBreSF
eIjY3rGAFZm5FfvfFtxpQnmSegO16JS5HoIRJzwM+sMOqs1x3vTo4/sVXZ38ksgh
CsafAxVQqImJlpulgKbOADJMR0BrBcoU9HwN+LLhs7tIn3WiE+L8Ttnzh68hNQey
GgiEdQJlo2M++QvmrGHVp/bhjvSTtUWpC9wAo33o1NXEPP28Cweyqhf6qvtEudNW
qMsskD/dkgkY4HtvK9XK37T4opjQ5QRMBob0E6p/pX8LvxmJya6RpEGWw1CT0sHK
ORovxI6J7sieMMhlDgD/7wIG5zd+iot2eyvB5xmcikFjKRUmf30b91Ip0WYiqV3j
1LWGAS9rPP7fXF5fV7jxzKfwbQT1N2xZadxyYq8Ojp+y3p0nLdUGRxSzvLXWPiXR
6gfTrSaL93iivh+QxMWB43/nF7ko2lKbfsyIsEfqBEcBhnoh0zG7ZZ79YpJWHVE6
ZuOpTKvL3rZxpvTCPBzmJIFsK8LdnIbxUQ==
=KVbR
-----END PGP PUBLIC KEY BLOCK----- -----END PGP PUBLIC KEY BLOCK-----

View File

@ -23,7 +23,7 @@
%bcond_with full_build %bcond_with full_build
%endif %endif
Name: groff Name: groff
Version: 1.22.3 Version: 1.22.4
Release: 0 Release: 0
Summary: GNU troff Document Formatting System Summary: GNU troff Document Formatting System
License: GPL-3.0-or-later License: GPL-3.0-or-later
@ -34,49 +34,36 @@ Source1: ftp://ftp.gnu.org/gnu/groff/groff-%{version}.tar.gz.sig
Source2: groff.keyring Source2: groff.keyring
Source3: zzz-groff.sh Source3: zzz-groff.sh
Source4: zzz-groff.csh Source4: zzz-groff.csh
# rm -f foo Patch0: groff-1.20.1-nroff-empty-LANGUAGE.patch
# for file in `cat series | grep -v '^#' | grep '^[a-z]' `; do Patch1: groff-1.20.1-deunicode.patch
# cat $file >> foo Patch2: groff-1.21-CVE-2009-5044.patch
# done # http://cvsweb.openwall.com/cgi/cvsweb.cgi/Owl/packages/groff/groff-1.20.1-owl-tmp.diff?rev=1.2;content-type=text%2Fplain
##remove a part related to src/preproc/html/pre-html.cpp - see bnc#755533 Patch3: groff-1.21-CVE-2009-5081.patch
# filterdiff -x 'src/preproc/html/pre-html.cpp' foo > groff_1.22.2-2.debian.diff # PATCH-FIX-OPENSUSE: FATE#312586
##remove Debian package string for openSUSE package string # sent upstream http://lists.gnu.org/archive/html/bug-groff/2011-09/msg00002.html
##delete the papersize /etc settings patch Patch4: 0001-locale-support-in-papersize-definition.patch
Patch0: groff_1.22.3-1.debian.diff Patch5: 0002-documentation-for-the-locale-keyword.patch
Patch1: groff-1.20.1-destbufferoverflow.patch
Patch2: groff-1.20.1-nroff-empty-LANGUAGE.patch
Patch3: groff-1.21-groffer-libexecdir.patch
Patch4: groff-1.20.1-deunicode.patch
Patch5: groff-1.21-CVE-2009-5044.patch
#PATCH-FIX-OPENSUSE: splitted patch6 and patch7 from
#http://cvsweb.openwall.com/cgi/cvsweb.cgi/Owl/packages/groff/groff-1.20.1-owl-tmp.diff?rev=1.2;content-type=text%2Fplain
Patch6: groff-1.21-CVE-2009-5080.patch
Patch7: groff-1.21-CVE-2009-5081.patch
#PATCH-FIX-OPENSUSE: FATE#312586
#sent upstream http://lists.gnu.org/archive/html/bug-groff/2011-09/msg00002.html
#so they would be available on next release of groff
Patch8: 0001-locale-support-in-papersize-definition.patch
Patch9: 0002-documentation-for-the-locale-keyword.patch
# change the papersize definition to force the locale usage # change the papersize definition to force the locale usage
# it can be supressed by /etc/papersize if needed # it can be supressed by /etc/papersize if needed
Patch10: groff-force-locale-usage.patch Patch6: groff-force-locale-usage.patch
# PATCH-FIX-UPSTREAM fix build with multiple threads ; taken from upstream Patch7: 0004-don-t-use-usr-bin-env-in-shebang.patch
Patch11: groff-multi-thread.patch # Patches from debian
# PATCH-FIX-UPSTREAM e4290210f2c1db5292d97678197a986d6822d044 Patch100: https://salsa.debian.org/debian/groff/raw/master/debian/patches/bash-scripts.patch
Patch12: groff-use-SDE.patch Patch101: https://salsa.debian.org/debian/groff/raw/master/debian/patches/sort-perl-hash-keys.patch
# PATCH-FIX-UPSTREAM 677274dafc5dd5f79f2a6d16270b21d2f5a16c5b BuildRequires: autoconf
Patch13: groff-reproducible-mdate.patch BuildRequires: automake
BuildRequires: bison BuildRequires: bison
BuildRequires: fdupes BuildRequires: fdupes
BuildRequires: gcc-c++ BuildRequires: gcc-c++
BuildRequires: libtool
BuildRequires: makeinfo BuildRequires: makeinfo
%if !%{with full_build} BuildRequires: pkgconfig
Recommends: groff-full %if %{with full_build}
%else
BuildRequires: ghostscript-library BuildRequires: ghostscript-library
BuildRequires: groff BuildRequires: groff
BuildRequires: netpbm BuildRequires: netpbm
BuildRequires: psutils BuildRequires: psutils
BuildRequires: pkgconfig(uchardet)
# for gxditview and X fontx # for gxditview and X fontx
BuildRequires: pkgconfig(x11) BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xaw7) BuildRequires: pkgconfig(xaw7)
@ -95,6 +82,8 @@ Obsoletes: jgroff < %{version}
# X fonts were moved back # X fonts were moved back
Provides: groff-devx = %{version}-%{release} Provides: groff-devx = %{version}-%{release}
Obsoletes: groff-devx <= 1.21 Obsoletes: groff-devx <= 1.21
%else
Recommends: groff-full
%endif %endif
%description %description
@ -146,163 +135,54 @@ the -X option.
%prep %prep
%setup -q -n groff-%{version} %setup -q -n groff-%{version}
%patch0 -p1 -b .debian %autopatch -p1
%patch1
%patch2 -p1 -b .bnc540600 # remove hardcoded docdir
%patch3 -p1 -b .groffer-libexecdir sed -i \
%patch4 -p1 -b .deunicode -e '/^docdir=/d' \
%patch5 -p1 -b .CVE-2009-5044 Makefile.am
%patch6 -p1 -b .CVE-2009-5080
%patch7 -p1
%patch8 -p1 -b .locale
%patch9 -p1 -b .locale2
%patch10 -p1 -b .force-locale
%patch11 -b .multithread
%patch12 -p1
%patch13 -p1
%build %build
PATH=$PWD/src/roff/troff:$PWD/src/preproc/pic:$PWD/src/preproc/eqn:$PWD/src/preproc/tbl:$PWDsrc/preproc/refer:$PWD/src/preproc/soelim:$PATH autoreconf -fvi
PATH=$PWD/src/roff/grog:$PWD/src/roff/groff:$PWD/src/devices/grops:$PWD/src/devices/grotty:$PWD/src/devices/grodvi:$PWD/src/devices/grohtml:$PATH # libdir redefined as it is just bunch of perl scripts
GROFF_COMMAND_PREFIX=
GROFF_FONT_PATH=$PWD
GROFF_TMAC_PATH=$PWD/tmac:$PWD/src/roff/troff
export PATH GROFF_COMMAND_PREFIX GROFF_FONT_PATH GROFF_TMAC_PATH
export CFLAGS="%{optflags} -fno-strict-aliasing -fPIE"
export CXXFLAGS="%{optflags} -fno-strict-aliasing -fPIE"
export LDFLAGS="-pie"
# Libdir override as we don't have any arch dependant code just pl scripts
%configure \ %configure \
--disable-silent-rules \
--docdir=%{_defaultdocdir}/groff \
--libdir=%{_libexecdir} \ --libdir=%{_libexecdir} \
--with-appresdir=%{_datadir}/X11/app-defaults \ --with-appresdir=%{_datadir}/X11/app-defaults \
--with-grofferdir=%{_libexecdir}/groff/groffer --with-grofferdir=%{_libexecdir}/groff/groffer
make %{?_smp_mflags} make %{?_smp_mflags}
%install %install
%if !%{with full_build} %make_install
install -d -m 0755 %{buildroot}%{_bindir}
install -d -m 0755 %{buildroot}%{_mandir}/man1 %if %{with full_build}
install -d -m 0755 %{buildroot}%{_datadir}/%{name}/%{version}/ # remove groff basic files from bellow
install -d -m 0755 %{buildroot}%{_datadir}/%{name}/%{version}/font/ exit 1
install -d -m 0755 %{buildroot}%{_datadir}/%{name}/%{version}/tmac/
install -d -m 0755 %{buildroot}%{_datadir}/%{name}/%{version}/tmac/mdoc/
install -d -m 0755 %{buildroot}%{_datadir}/%{name}/site-tmac/
install -d -m 0755 %{buildroot}%{_libexecdir}/groff/grog/
%else %else
make DESTDIR=%{buildroot} install %{?_smp_mflags} docdir=%{_defaultdocdir}/groff # FIXME: remove all that is not present in current groff in TW
%endif # and personalize the filelist to be exact here
# remove all not really wanted files
rm -rf %{buildroot}%{_mandir}/man5/
rm -rf %{buildroot}%{_mandir}/man7/
rm -rf %{buildroot}%{_infodir}/
### see Debian's groff-base.install.in ### rm -rf %{buildroot}%{_libexecdir}/groff/groffer/
for BIN in eqn groff grog grops grotty neqn nroff pic preconv soelim tbl troff; do rm -rf %{buildroot}%{_libexecdir}/groff/gpinyin/
rm -rf %{buildroot}%{_libexecdir}/groff/glilypond/
rm -f %{buildroot}%{_libexecdir}/groff/{groff_opts_no_arg.txt,groff_opts_with_arg.txt}
%if !%{with full_build} rm -rf %{buildroot}%{_docdir}/groff
# install binary
install -m 0755 $(find . -type f -name ${BIN}) %{buildroot}/%{_bindir}/
# install man
MAN_SOURCE=$(find src -name "${BIN}.n")
MAN_DEST="${MAN_SOURCE%.n}.1" # replace suffix .n by .1
MAN_DEST="${MAN_DEST##*/}" # remove the path/before/
install -m 0644 "${MAN_SOURCE}" "%{buildroot}%{_mandir}/man1/${MAN_DEST}"
%else
# remove binary already in groff.rpm
rm %{buildroot}/%{_bindir}/${BIN}
# remove manual already in groff.rpm
rm %{buildroot}/%{_mandir}/man1/${BIN}.*
%endif
done
%if !%{with full_build}
# datadir
install -m 0644 src/utils/indxbib/eign %{buildroot}%{_datadir}/%{name}/%{version}/
%else
rm %{buildroot}%{_datadir}/groff/%{version}/eign
%endif
%if !%{with full_build}
install -m 0644 src/roff/grog/subs.pl %{buildroot}%{_libexecdir}/groff/grog/subs.pl
%else
rm %{buildroot}%{_libexecdir}/groff/grog/subs.pl
%endif
for FONT in devascii devlatin1 devps devutf8; do
%if !%{with full_build}
cp -pr "font/${FONT}" %{buildroot}%{_datadir}/%{name}/%{version}/font/
%else
rm -r %{buildroot}%{_datadir}/groff/%{version}/font/${FONT}
%endif
done
for TMAC in a4.tmac an-ext.tmac an-old.tmac an.tmac andoc.tmac composite.tmac \
cp1047.tmac cs.tmac de.tmac den.tmac devtag.tmac doc.tmac \
doc-old.tmac e.tmac eqnrc europs.tmac fallbacks.tmac fr.tmac \
hyphen.cs hyphen.den hyphen.det hyphen.fr hyphen.sv hyphen.us \
hyphenex.cs hyphenex.det hyphenex.us ja.tmac latin1.tmac latin2.tmac \
latin5.tmac latin9.tmac man.tmac mandoc.tmac mdoc.tmac me.tmac \
ms.tmac papersize.tmac pic.tmac ps.tmac psatk.tmac psold.tmac \
pspic.tmac refer-me.tmac refer-ms.tmac refer.tmac s.tmac \
safer.tmac sv.tmac trace.tmac trans.tmac troffrc troffrc-end \
tty-char.tmac tty.tmac unicode.tmac www.tmac
do
%if !%{with full_build}
install -m 0644 tmac/${TMAC} %{buildroot}%{_datadir}/%{name}/%{version}/tmac/
%else
rm %{buildroot}%{_datadir}/groff/%{version}/tmac/${TMAC}
%endif
done
%if !%{with full_build}
install -m 0644 tmac/{man,mdoc}.local %{buildroot}%{_datadir}/%{name}/site-tmac/
%else
rm %{buildroot}%{_datadir}/groff/site-tmac/{man,mdoc}.local
%endif
pushd contrib/mm/
%if !%{with full_build}
install -d -m 0755 %{buildroot}%{_datadir}/%{name}/%{version}/tmac/mm
install -c -m 0755 mmroff %{buildroot}%{_bindir}/mmroff
install -c -m 0644 mmroff.n %{buildroot}%{_mandir}/man1/mmroff.1
for f in 0.MT 5.MT 4.MT ms.cov se_ms.cov ; do
install -c -m 644 mm/$f %{buildroot}%{_datadir}/%{name}/%{version}/tmac/mm/$f
done
for f in locale se_locale; do
touch %{buildroot}%{_datadir}/%{name}/%{version}/tmac/mm/$f
chmod 0644 %{buildroot}%{_datadir}/%{name}/%{version}/tmac/mm/$f
done
for f in *.tmac; do
install -c -m 644 $f %{buildroot}%{_datadir}/%{name}/%{version}/tmac/$f
done
%else
rm %{buildroot}%{_bindir}/mmroff
rm %{buildroot}%{_mandir}/man1/mmroff.1*
rm -rf %{buildroot}%{_datadir}/groff/%{version}/tmac/mm/
for f in *.tmac; do
rm -f %{buildroot}%{_datadir}/groff/%{version}/tmac/$f
done
%endif
popd
%if !%{with full_build}
install -m 0644 tmac/doc-common tmac/doc-ditroff tmac/doc-nroff tmac/doc-syms \
%{buildroot}%{_datadir}/%{name}/%{version}/tmac/mdoc/
%else
rm -rf %{buildroot}%{_datadir}/groff/%{version}/tmac/mdoc
%endif
%if !%{with full_build}
ln -s -f current %{buildroot}%{_datadir}/%{name}/%{version}
# compat symlinks # compat symlinks
ln -s -f current %{buildroot}%{_datadir}/%{name}/%{version}
ln -s -f eqn %{buildroot}%{_bindir}/geqn ln -s -f eqn %{buildroot}%{_bindir}/geqn
ln -s -f tbl %{buildroot}%{_bindir}/gtbl ln -s -f tbl %{buildroot}%{_bindir}/gtbl
# install profiles to disable the use of ANSI colour sequences by default: # install profiles to disable the use of ANSI colour sequences by default:
install -d -m 0755 %{buildroot}/%{_sysconfdir}/profile.d install -d -m 0755 %{buildroot}/%{_sysconfdir}/profile.d
install -m 644 %{SOURCE3} %{SOURCE4} %{buildroot}/%{_sysconfdir}/profile.d/ install -m 644 %{SOURCE3} %{SOURCE4} %{buildroot}/%{_sysconfdir}/profile.d/
%endif
%endif #groff_base_only
%fdupes -s %{buildroot} %fdupes -s %{buildroot}
@ -317,7 +197,7 @@ install -m 644 %{SOURCE3} %{SOURCE4} %{buildroot}/%{_sysconfdir}/profile.d/
%if !%{with full_build} %if !%{with full_build}
%files %files
%license COPYING FDL LICENSES %license COPYING FDL LICENSES
%doc BUG-REPORT ChangeLog* MANIFEST MORE.STUFF NEWS PROBLEMS PROJECTS README REVISION VERSION %doc BUG-REPORT ChangeLog* MANIFEST MORE.STUFF NEWS PROBLEMS PROJECTS README
%{_mandir}/man1/* %{_mandir}/man1/*
%{_bindir}/* %{_bindir}/*
%config %{_sysconfdir}/profile.d/zzz-%{name}.*sh %config %{_sysconfdir}/profile.d/zzz-%{name}.*sh
@ -343,7 +223,8 @@ install -m 644 %{SOURCE3} %{SOURCE4} %{buildroot}/%{_sysconfdir}/profile.d/
%exclude %{_docdir}/groff/html %exclude %{_docdir}/groff/html
%exclude %{_docdir}/groff/examples %exclude %{_docdir}/groff/examples
%{_infodir}/groff* %{_infodir}/groff*
%{_mandir}/man*/* %{_mandir}/man5/*
%{_mandir}/man7/*
%exclude %{_mandir}/man1/gxditview.1* %exclude %{_mandir}/man1/gxditview.1*
%{_bindir}/* %{_bindir}/*
%exclude %{_bindir}/gxditview %exclude %{_bindir}/gxditview

View File

@ -1,676 +0,0 @@
From 10fefc49ea1116524fbafacb637de8605e303cdf Mon Sep 17 00:00:00 2001
From: Colin Watson <cjwatson@debian.org>
Date: Thu, 2 Jan 2014 13:13:09 +0000
Subject: The *2graph scripts use $RANDOM, which is bash-specific
Forwarded: no
Last-Update: 2010-03-01
Patch-Name: bash-scripts.patch
---
contrib/eqn2graph/eqn2graph.sh | 2 +-
contrib/grap2graph/grap2graph.sh | 2 +-
contrib/pic2graph/pic2graph.sh | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/contrib/eqn2graph/eqn2graph.sh b/contrib/eqn2graph/eqn2graph.sh
index ee7cc5f..fb6f7f5 100644
--- a/contrib/eqn2graph/eqn2graph.sh
+++ b/contrib/eqn2graph/eqn2graph.sh
@@ -1,4 +1,4 @@
-#! /bin/sh
+#! /bin/bash
#
# eqn2graph -- compile EQN equation descriptions to bitmap images
#
diff --git a/contrib/grap2graph/grap2graph.sh b/contrib/grap2graph/grap2graph.sh
index 58544e1..721c2b0 100644
--- a/contrib/grap2graph/grap2graph.sh
+++ b/contrib/grap2graph/grap2graph.sh
@@ -1,4 +1,4 @@
-#! /bin/sh
+#! /bin/bash
#
# grap2graph -- compile graph description descriptions to bitmap images
#
diff --git a/contrib/pic2graph/pic2graph.sh b/contrib/pic2graph/pic2graph.sh
index 72c5477..c4a7781 100644
--- a/contrib/pic2graph/pic2graph.sh
+++ b/contrib/pic2graph/pic2graph.sh
@@ -1,4 +1,4 @@
-#! /bin/sh
+#! /bin/bash
#
# pic2graph -- compile PIC image descriptions to bitmap images
#
From fb0bfc4eb5a8eb57554793712fee07de080678f0 Mon Sep 17 00:00:00 2001
From: Florian Lohoff <flo@rfc822.org>
Date: Thu, 2 Jan 2014 13:13:10 +0000
Subject: Avoid relying on awk in mdate.sh
The results were unpredictable on mips/mipsel.
Bug-Debian: http://bugs.debian.org/62554
Forwarded: no
Last-Update: 2010-03-01
Patch-Name: mdate-perl.patch
---
mdate.sh | 39 +--------------------------------------
1 file changed, 1 insertion(+), 38 deletions(-)
diff --git a/mdate.sh b/mdate.sh
index 2c24a00..d5ef413 100644
--- a/mdate.sh
+++ b/mdate.sh
@@ -19,41 +19,4 @@
#
# Print the modification date of $1 `nicely'.
-# Don't want foreign dates.
-
-LANGUAGE=
-LC_ALL=C; export LC_ALL
-
-
-(date;
-if ls -L /dev/null 1>/dev/null 2>&1; then ls -L -l $1; else ls -l $1; fi
-) | awk '
-BEGIN {
- full["Jan"] = "January"; number["Jan"] = 1;
- full["Feb"] = "February"; number["Feb"] = 2;
- full["Mar"] = "March"; number["Mar"] = 3;
- full["Apr"] = "April"; number["Apr"] = 4;
- full["May"] = "May"; number["May"] = 5;
- full["Jun"] = "June"; number["Jun"] = 6;
- full["Jul"] = "July"; number["Jul"] = 7;
- full["Aug"] = "August"; number["Aug"] = 8;
- full["Sep"] = "September"; number["Sep"] = 9;
- full["Oct"] = "October"; number["Oct"] = 10;
- full["Nov"] = "November"; number["Nov"] = 11;
- full["Dec"] = "December"; number["Dec"] = 12;
-}
-
-NR == 1 {
- month = $2;
- year = $NF;
-}
-
-NR == 2 {
- if ($(NF-1) ~ /:/) {
- if (number[$(NF-3)] > number[month])
- year--;
- }
- else
- year = $(NF-1);
- print $(NF-2), full[$(NF-3)], year
-}'
+perl -MPOSIX -le 'print strftime("%d %B %Y", localtime((stat $ARGV[0])[9]))' $1
From c5b8fb2e9c2d998677a92e73b280bbc49b87f13a Mon Sep 17 00:00:00 2001
From: Colin Watson <cjwatson@debian.org>
Date: Thu, 2 Jan 2014 13:13:12 +0000
Subject: Unset IFS at nroff startup
It's questionable whether we should forward this; as noted in the bug
trail, there's a decent argument that this is a dash bug.
Bug-Debian: http://bugs.debian.org/541621
Forwarded: no
Last-Update: 2010-03-01
Patch-Name: nroff-ifs.patch
---
src/roff/nroff/nroff.sh | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/roff/nroff/nroff.sh b/src/roff/nroff/nroff.sh
index fb227b3..82e85fd 100644
--- a/src/roff/nroff/nroff.sh
+++ b/src/roff/nroff/nroff.sh
@@ -20,6 +20,8 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
+unset IFS
+
prog="$0"
# Default device.
From 4298a68066f08589ea9d68318f67cf9e63a734c7 Mon Sep 17 00:00:00 2001
From: Colin Watson <cjwatson@debian.org>
Date: Thu, 2 Jan 2014 13:13:14 +0000
Subject: Adjust #! line of font/devlj4/generate/special.awk
awk is in /usr/bin/awk on Debian, not /bin/awk.
Forwarded: no
Last-Update: 2010-03-01
Patch-Name: awk-path.patch
---
font/devlj4/generate/special.awk | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/font/devlj4/generate/special.awk b/font/devlj4/generate/special.awk
index 26e8b92..318c53f 100644
--- a/font/devlj4/generate/special.awk
+++ b/font/devlj4/generate/special.awk
@@ -1,4 +1,4 @@
-#! /bin/awk -f
+#! /usr/bin/awk -f
# Correct Intellifont-based height metrics for several glyphs in
# special font for TrueType CG Times (LaserJet 4000 and later).
From 9a2ccf4225d8a8d6eb92861f2e3dfc3502840cd5 Mon Sep 17 00:00:00 2001
From: Colin Watson <cjwatson@debian.org>
Date: Thu, 2 Jan 2014 13:13:16 +0000
Subject: Add GFDL references to manual pages licensed under GFDL
Bug-Debian: http://bugs.debian.org/292229
Forwarded: not-needed
Last-Update: 2014-11-05
Patch-Name: doc-gfdl.patch
---
contrib/hdtbl/groff_hdtbl.man | 4 ++++
contrib/pdfmark/pdfroff.man | 4 ++++
man/ditroff.man | 4 ++++
man/groff.man | 4 ++++
man/groff_diff.man | 4 ++++
man/groff_out.man | 4 ++++
man/groff_tmac.man | 4 ++++
man/roff.man | 4 ++++
src/roff/groff/groff.man | 4 ++++
src/roff/troff/troff.man | 4 ++++
tmac/groff_trace.man | 4 ++++
11 files changed, 44 insertions(+)
diff --git a/contrib/hdtbl/groff_hdtbl.man b/contrib/hdtbl/groff_hdtbl.man
index 74012ae..e611b79 100644
--- a/contrib/hdtbl/groff_hdtbl.man
+++ b/contrib/hdtbl/groff_hdtbl.man
@@ -21,6 +21,10 @@ Front-Cover Texts, and with no Back-Cover Texts.
A copy of the Free Documentation License is included as a file called
FDL in the main directory of the groff source package.
..
+.ig
+A copy of the GNU Free Documentation License is also available in this
+openSUSE package as /usr/share/doc/groff/copyright.
+..
.
.de au
This document was written by
diff --git a/contrib/pdfmark/pdfroff.man b/contrib/pdfmark/pdfroff.man
index ec412bb..60a75a2 100644
--- a/contrib/pdfmark/pdfroff.man
+++ b/contrib/pdfmark/pdfroff.man
@@ -34,6 +34,10 @@ available in the internet at
the GNU copyleft site
.UE .
..
+.ig
+A copy of the GNU Free Documentation License is also available in this
+openSUSE package as /usr/share/doc/groff/copyright.
+..
.
.de au
It was originally written by
diff --git a/man/ditroff.man b/man/ditroff.man
index 16a6feb..ef01e04 100644
--- a/man/ditroff.man
+++ b/man/ditroff.man
@@ -23,6 +23,10 @@ available on-line at the
GNU copyleft site
.UE .
..
+.ig
+A copy of the GNU Free Documentation License is also available in this
+openSUSE package as /usr/share/doc/groff/copyright.
+..
.de au
It was written by
.MT groff-bernd.warken-72@\:web.de
diff --git a/man/groff.man b/man/groff.man
index ca80f02..31b91e1 100644
--- a/man/groff.man
+++ b/man/groff.man
@@ -26,6 +26,10 @@ available in the internet at
.UR http://\:www.gnu.org/\:copyleft/\:fdl.html
.UE .
..
+.ig
+A copy of the GNU Free Documentation License is also available in this
+openSUSE package as /usr/share/doc/groff/copyright.
+..
.
.de au
This documentation was written by
diff --git a/man/groff_diff.man b/man/groff_diff.man
index eacccd3..fb5f142 100644
--- a/man/groff_diff.man
+++ b/man/groff_diff.man
@@ -29,6 +29,10 @@ available in the internet at
GNU FDL license
.UE .
..
+.ig
+A copy of the GNU Free Documentation License is also available in this
+openSUSE package as /usr/share/doc/groff/copyright.
+..
.
.de au
This document was written by
diff --git a/man/groff_out.man b/man/groff_out.man
index f9ef631..ce13615 100644
--- a/man/groff_out.man
+++ b/man/groff_out.man
@@ -32,6 +32,10 @@ available in the internet at
GNU FDL license
.UE .
..
+.ig
+A copy of the GNU Free Documentation License is also available in this
+openSUSE package as /usr/share/doc/groff/copyright.
+..
.
.de au
In 2001, this document was rewritten from scrach by
diff --git a/man/groff_tmac.man b/man/groff_tmac.man
index 5017dcb..b85ab0c 100644
--- a/man/groff_tmac.man
+++ b/man/groff_tmac.man
@@ -28,6 +28,10 @@ available on\-line at the
GNU copyleft site
.UE .
..
+.ig
+A copy of the GNU Free Documentation License is also available in this
+openSUSE package as /usr/share/doc/groff/copyright.
+..
.
.de au
This file was written by
diff --git a/man/roff.man b/man/roff.man
index 6ce18e7..b970f5b 100644
--- a/man/roff.man
+++ b/man/roff.man
@@ -26,6 +26,10 @@ The license text is also available on-line at the
GNU copyleft site
.UE .
..
+.ig
+A copy of the GNU Free Documentation License is also available in this
+openSUSE package as /usr/share/doc/groff/copyright.
+..
.
.de au
This man-page was written by
diff --git a/src/roff/groff/groff.man b/src/roff/groff/groff.man
index e30d1b5..e5a6235 100644
--- a/src/roff/groff/groff.man
+++ b/src/roff/groff/groff.man
@@ -31,6 +31,10 @@ It is also available in the internet at the
GNU copyleft site
.UE .
..
+.ig
+A copy of the GNU Free Documentation License is also available in this
+openSUSE package as /usr/share/doc/groff-base/copyright.
+..
.
.\" Authors
.de au
diff --git a/src/roff/troff/troff.man b/src/roff/troff/troff.man
index 684f441..07fdff1 100644
--- a/src/roff/troff/troff.man
+++ b/src/roff/troff/troff.man
@@ -25,6 +25,10 @@ Front-Cover Texts, and with no Back-Cover Texts.
A copy of the Free Documentation License is included as a file called
FDL in the main directory of the groff source package.
..
+.ig
+A copy of the GNU Free Documentation License is also available in this
+openSUSE package as /usr/share/doc/groff-base/copyright.
+..
.
.de au
This file was originally written by James Clark, it was modified by
diff --git a/tmac/groff_trace.man b/tmac/groff_trace.man
index 7b04373..67990db 100644
--- a/tmac/groff_trace.man
+++ b/tmac/groff_trace.man
@@ -24,6 +24,10 @@ Front-Cover Texts, and with no Back-Cover Texts.
A copy of the Free Documentation License is included as a file called
FDL in the main directory of the groff source package.
..
+.ig
+A copy of the GNU Free Documentation License is also available in this
+openSUSE package as /usr/share/doc/groff/copyright.
+..
.
.de au
Written by
From 1e53207d1ee0986e9db4135bea80b5922dfaea00 Mon Sep 17 00:00:00 2001
From: Colin Watson <cjwatson@debian.org>
Date: Thu, 2 Jan 2014 13:13:17 +0000
Subject: Adjust documentation references to account for compression
Bug-Debian: http://bugs.debian.org/498356
Forwarded: not-needed
Last-Update: 2010-03-01
Patch-Name: doc-gzipped.patch
---
contrib/pdfmark/pdfroff.man | 2 +-
src/preproc/pic/pic.man | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/contrib/pdfmark/pdfroff.man b/contrib/pdfmark/pdfroff.man
index 60a75a2..ad87159 100644
--- a/contrib/pdfmark/pdfroff.man
+++ b/contrib/pdfmark/pdfroff.man
@@ -839,7 +839,7 @@ Detailed documentation on the use of these packages may be found,
in PDF format, in the reference guide
.BR "\*(lqPortable Document Format Publishing with GNU Troff\*(rq" ,
included in the installed documentation set as
-.BR \%@PDFDOCDIR@/pdfmark.pdf .
+.BR \%@PDFDOCDIR@/pdfmark.pdf.gz .
.
.
.\" --------------------------------------------------------------------
diff --git a/src/preproc/pic/pic.man b/src/preproc/pic/pic.man
index 04ea3e0..6dd8654 100644
--- a/src/preproc/pic/pic.man
+++ b/src/preproc/pic/pic.man
@@ -261,7 +261,7 @@ A complete documentation is available in the file
.
.LP
.RS
-.B @DOCDIR@/pic.ms
+.B @DOCDIR@/pic.ms.gz
.RE
.
.
From 15e68316a5f77c1a3f6554340f21e9a4c5cd1175 Mon Sep 17 00:00:00 2001
From: unknown <unknown>
Date: Thu, 2 Jan 2014 13:13:18 +0000
Subject: Adjust default recursive make targets
This has been in the groff packaging since records began, and the reason
for it is unclear. Needs investigation.
Forwarded: no
Last-Update: 2013-01-07
Patch-Name: make-targets.patch
---
Makefile.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile.in b/Makefile.in
index bc156ce..d29e856 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -793,7 +793,7 @@ ENVSETUP=\
fi
do=all
-dodirs=$(ALLDIRS) $(OTHERDIRS) dot
+dodirs=$(DISTDIRS)
# Default target for subdir_Makefile
subdir=src/roff/troff
From 369fdcbedc7f63479c31f69cae2edc025f45b491 Mon Sep 17 00:00:00 2001
From: Colin Watson <cjwatson@debian.org>
Date: Thu, 2 Jan 2014 13:13:19 +0000
Subject: Inhibit -wmac warnings due to pic and eqn
Define .PS and .PE to empty strings in pic output to inhibit -wmac
warnings; similarly, define .EQ and .EN to empty strings in eqn output.
Bug-Debian: http://bugs.debian.org/495713
Forwarded: no
Last-Update: 2013-01-07
Patch-Name: pic-eqn-warnings.patch
---
src/preproc/eqn/main.cpp | 2 ++
src/preproc/pic/main.cpp | 4 ++++
2 files changed, 6 insertions(+)
diff --git a/src/preproc/eqn/main.cpp b/src/preproc/eqn/main.cpp
index 57347f1..52615c4 100644
--- a/src/preproc/eqn/main.cpp
+++ b/src/preproc/eqn/main.cpp
@@ -373,6 +373,8 @@ int main(int argc, char **argv)
}
init_table(device);
init_char_table();
+ printf(".if !dEQ .ds EQ\n"
+ ".if !dEN .ds EN\n");
if (output_format == troff) {
printf(".if !'\\*(.T'%s' "
".if !'\\*(.T'html' " // the html device uses `-Tps' to render
diff --git a/src/preproc/pic/main.cpp b/src/preproc/pic/main.cpp
index 19065a6..236121d 100644
--- a/src/preproc/pic/main.cpp
+++ b/src/preproc/pic/main.cpp
@@ -615,7 +615,11 @@ int main(int argc, char **argv)
out = make_fig_output();
else
#endif
+ {
out = make_troff_output();
+ printf(".if !dPS .ds PS\n"
+ ".if !dPE .ds PE\n");
+ }
#ifdef FIG_SUPPORT
if (whole_file_flag) {
if (optind >= argc)
From dc0df203931b4509918cf978ea6674808c1f05fd Mon Sep 17 00:00:00 2001
From: Colin Watson <cjwatson@debian.org>
Date: Thu, 2 Jan 2014 13:13:20 +0000
Subject: Allow adding a version-independent directory to the macro path
This allows us to put /usr/share/groff/tmac at the end of groff's macro
path in Debian.
Forwarded: no
Last-Update: 2013-01-07
Patch-Name: extratmacdirs.patch
---
Makefile.in | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/Makefile.in b/Makefile.in
index d29e856..9b9d0e0 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -199,7 +199,11 @@ referdir=@referdir@
# directory will be always added.
# `troffrc' and `troffrc-end' (and `eqnrc') are searched neither in the
# current nor in the home directory.
+ifeq (,$(extratmacdirs))
tmacpath=$(systemtmacdir)$(RT_SEP)$(localtmacdir)$(RT_SEP)$(tmacdir)
+else
+tmacpath=$(systemtmacdir)$(RT_SEP)$(localtmacdir)$(RT_SEP)$(tmacdir)$(RT_SEP)$(extratmacdirs)
+endif
# `sys_tmac_prefix' is prefix (if any) for system macro packages.
sys_tmac_prefix=@sys_tmac_prefix@
From 293492eff0f0597dfe10d98823508ff5072e5baa Mon Sep 17 00:00:00 2001
From: Colin Watson <cjwatson@debian.org>
Date: Thu, 2 Jan 2014 13:13:22 +0000
Subject: Display more helpful output when failing to load a device
If the device is known to be one of the devices in the groff binary package
rather than groff-base, refer the user to that.
Forwarded: not-needed
Last-Update: 2013-01-07
Patch-Name: load-desc-failure.patch
---
src/roff/groff/groff.cpp | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/src/roff/groff/groff.cpp b/src/roff/groff/groff.cpp
index 9c613b1..63f620e 100644
--- a/src/roff/groff/groff.cpp
+++ b/src/roff/groff/groff.cpp
@@ -338,8 +338,16 @@ int main(int argc, char **argv)
commands[PIC_INDEX].append_arg("-U");
}
font::set_unknown_desc_command_handler(handle_unknown_desc_command);
- if (!font::load_desc())
- fatal("invalid device `%1'", device);
+ if (!font::load_desc()) {
+ if (strcmp(device, "X100") == 0 || strcmp(device, "X100-12") == 0 ||
+ strcmp(device, "X75") == 0 || strcmp(device, "X75-12") == 0 ||
+ strcmp(device, "dvi") == 0 || strcmp(device, "html") == 0 ||
+ strcmp(device, "lbp") == 0 || strcmp(device, "lj4") == 0)
+ fatal("invalid device `%1' (try installing the `groff' package?)",
+ device);
+ else
+ fatal("invalid device `%1'", device);
+ }
if (!postdriver)
fatal("no `postpro' command in DESC file for device `%1'", device);
if (predriver && !zflag) {
From eef761fe222fef4b32ce8f5b2f2e6bbad0931b80 Mon Sep 17 00:00:00 2001
From: Colin Watson <cjwatson@debian.org>
Date: Wed, 22 Jan 2014 09:46:26 +0000
Subject: Remove the W3C validation icons from generated HTML
As the Lintian privacy-breach-w3c-valid-html tag puts it:
"These badges may be displayed to tell readers that care has been
taken to make a page compliant with W3C standards. Unfortunately,
downloading the image from www.w3.org might expose the reader's IP
address to potential tracking."
Forwarded: no
Last-Update: 2014-11-05
Patch-Name: no-validation-icons.patch
---
doc/Makefile.in | 4 ++--
doc/Makefile.sub | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/doc/Makefile.in b/doc/Makefile.in
index 759b4b2..c1da5e4 100644
--- a/doc/Makefile.in
+++ b/doc/Makefile.in
@@ -96,7 +96,7 @@ imagedir=img
.ms.html:
$(GROFF) -P-p -P-b -P-I`basename $< | sed -e 's|.ms$$||'` \
- -P-D$(imagedir) -P-V -Thtml -ms >$@
+ -P-D$(imagedir) -Thtml -ms >$@
.ms.txt:
$(GROFF) -Tascii -ms -mwww >$@
.ms.ps:
@@ -135,7 +135,7 @@ gnu.eps: gnu.xpm
pic.html: pic.ms
$(GROFF) -P-p -P-I`basename $< | sed -e 's|.ms$$||'` \
-P-D$(imagedir) -P-j`basename $< | sed -e 's|.ms$$||'` \
- -Thtml -P-V -ms >$@
+ -Thtml -ms >$@
webpage.html: webpage.ms gnu.eps groff.css
$(GROFF) -P-j`basename $< | sed -e 's|.ms$$||'` \
diff --git a/doc/Makefile.sub b/doc/Makefile.sub
index b2325f9..3c9c560 100644
--- a/doc/Makefile.sub
+++ b/doc/Makefile.sub
@@ -118,7 +118,7 @@ RM=rm -f
.ms.html:
$(GROFF) -P-p -P-b -P-I`basename $< | sed -e 's|.ms$$||'` \
- -P-D$(imagedir) -P-V -Thtml -ms >$@
+ -P-D$(imagedir) -Thtml -ms >$@
.ms.ps:
$(GROFF) -Tps -ms -mwww >$@
@@ -158,7 +158,7 @@ gnu.eps: gnu.xpm
pic.html: pic.ms
$(GROFF) -P-p -P-I`basename $< | sed -e 's|.ms$$||'` \
-P-D$(imagedir) -P-j`basename $< | sed -e 's|.ms$$||'` \
- -Thtml -P-V -ms >$@
+ -Thtml -ms >$@
webpage.html: webpage.ms gnu.eps groff.css
$(GROFF) -P-j`basename $< | sed -e 's|.ms$$||'` \
From ec536f7cfd47346856a9966512ae2893383132e7 Mon Sep 17 00:00:00 2001
From: Colin Watson <cjwatson@debian.org>
Date: Sun, 26 Jan 2014 19:34:00 +0000
Subject: Note that groff_mmse(7) is only available in Swedish locales
Bug-Debian: http://bugs.debian.org/710431
Forwarded: no
Last-Update: 2014-11-05
Patch-Name: mmse-note.patch
---
contrib/mm/groff_mm.man | 1 +
contrib/mm/mmroff.man | 3 ++-
man/groff_tmac.man | 3 ++-
src/roff/groff/groff.man | 3 ++-
4 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/contrib/mm/groff_mm.man b/contrib/mm/groff_mm.man
index a58ce5d..0321c2b 100644
--- a/contrib/mm/groff_mm.man
+++ b/contrib/mm/groff_mm.man
@@ -3965,6 +3965,7 @@ then assigns the argument to the string variable
.BR @g@eqn (@MAN1EXT@)
.br
.BR groff_mmse (@MAN7EXT@)
+(only in Swedish locales)
.
.
.\" --------------------------------------------------------------------
diff --git a/contrib/mm/mmroff.man b/contrib/mm/mmroff.man
index dbd50b9..1fc5885 100644
--- a/contrib/mm/mmroff.man
+++ b/contrib/mm/mmroff.man
@@ -101,7 +101,8 @@ will only be run once.
.\" --------------------------------------------------------------------
.
.BR groff_mm (@MAN7EXT@),
-.BR groff_mmse (@MAN7EXT@),
+.BR groff_mmse (@MAN7EXT@)
+(only in Swedish locales),
.BR groff (@MAN1EXT@),
.BR @g@troff (@MAN1EXT@),
.BR @g@tbl (@MAN1EXT@),
diff --git a/man/groff_tmac.man b/man/groff_tmac.man
index b85ab0c..882e3b6 100644
--- a/man/groff_tmac.man
+++ b/man/groff_tmac.man
@@ -254,7 +254,8 @@ sets the input encoding to latin-9 to get proper support of the
Swedish localization support, including the me, mom, and ms macro packages.
.
Note that Swedish for the mm macros is handled separately; see
-.BR groff_mmse (@MAN7EXT@).
+.BR groff_mmse (@MAN7EXT@)
+(only in Swedish locales).
.
It should be used as the last macro package on the command line.
.
diff --git a/src/roff/groff/groff.man b/src/roff/groff/groff.man
index e5a6235..1bb8c3a 100644
--- a/src/roff/groff/groff.man
+++ b/src/roff/groff/groff.man
@@ -1993,7 +1993,8 @@ Groff macro packages and macro-specific utilities:
.BR \%groff_mdoc (@MAN7EXT@),
.BR \%groff_me (@MAN7EXT@),
.BR \%groff_mm (@MAN7EXT@),
-.BR \%groff_mmse (@MAN7EXT@),
+.BR \%groff_mmse (@MAN7EXT@)
+(only in Swedish locales),
.BR \%groff_mom (@MAN7EXT@),
.BR \%groff_ms (@MAN7EXT@),
.BR \%groff_www (@MAN7EXT@),

103
sort-perl-hash-keys.patch Normal file
View File

@ -0,0 +1,103 @@
From 3c7075d5a846ff178c8fe83f8479f5f98e98f32d Mon Sep 17 00:00:00 2001
From: Colin Watson <cjwatson@debian.org>
Date: Fri, 6 Nov 2015 11:53:02 +0000
Subject: Sort Perl hash keys
Hash iteration order may differ between runs, which makes builds harder
to reproduce. Sort hash keys in gropdf and afmtodit output to avoid
this.
Forwarded: https://lists.gnu.org/archive/html/groff/2018-03/msg00009.html
Last-Update: 2018-03-05
Patch-Name: sort-perl-hash-keys.patch
---
src/devices/gropdf/gropdf.pl | 8 ++++----
src/utils/afmtodit/afmtodit.pl | 12 ++++++------
2 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/src/devices/gropdf/gropdf.pl b/src/devices/gropdf/gropdf.pl
index 134b0962..9b624c33 100644
--- a/src/devices/gropdf/gropdf.pl
+++ b/src/devices/gropdf/gropdf.pl
@@ -377,7 +377,7 @@ my $info=BuildObj(++$objct,\%info);
PutObj($objct);
-foreach my $fontno (keys %fontlst)
+foreach my $fontno (sort keys %fontlst)
{
my $o=$fontlst{$fontno}->{FNT};
@@ -846,7 +846,7 @@ sub do_x
my @xwds=split(' ',"<< $1 >>");
my $docinfo=ParsePDFValue(\@xwds);
- foreach my $k (keys %{$docinfo})
+ foreach my $k (sort keys %{$docinfo})
{
$info{$k}=$docinfo->{$k} if $k ne 'Producer';
}
@@ -856,7 +856,7 @@ sub do_x
my @xwds=split(' ',"<< $1 >>");
my $docview=ParsePDFValue(\@xwds);
- foreach my $k (keys %{$docview})
+ foreach my $k (sort keys %{$docview})
{
$cat->{$k}=$docview->{$k} if !exists($cat->{$k});
}
@@ -1707,7 +1707,7 @@ sub MapInsHash
my $val=shift;
- foreach my $k (keys(%{$val}))
+ foreach my $k (sort keys(%{$val}))
{
MapInsValue($pdf,$o,$k,$insmap,$parent,$val->{$k}) if $k ne 'Contents';
}
diff --git a/src/utils/afmtodit/afmtodit.pl b/src/utils/afmtodit/afmtodit.pl
index 954c58e7..59d871fc 100644
--- a/src/utils/afmtodit/afmtodit.pl
+++ b/src/utils/afmtodit/afmtodit.pl
@@ -164,8 +164,8 @@ while (<AFM>) {
$depth{$n} = -$lly;
$left_side_bearing{$n} = -$llx;
$right_side_bearing{$n} = $urx - $w;
-# while ((my $lig, my $glyph2) = each %ligs) {
-# $ligatures{$lig} = $n . " " . $glyph2;
+# foreach my $lig (sort keys %ligs) {
+# $ligatures{$lig} = $n . " " . $ligs{$lig};
# }
}
}
@@ -267,7 +267,7 @@ $italic_angle = $opt_a if $opt_a;
if (!$opt_x) {
my %mapped;
my $i = ($#encoding > 256) ? ($#encoding + 1) : 256;
- while (my $ch = each %width) {
+ foreach my $ch (sort keys %width) {
# add unencoded characters
if (!$in_encoding{$ch}) {
$encoding[$i] = $ch;
@@ -407,9 +407,9 @@ my %default_ligatures = (
"ffl", "ff l",
);
-while (my ($lig, $components) = each %default_ligatures) {
+foreach my $lig (sort keys %default_ligatures) {
if (defined $width{$lig} && !defined $ligatures{$lig}) {
- $ligatures{$lig} = $components;
+ $ligatures{$lig} = $default_ligatures{$lig};
}
}
@@ -456,7 +456,7 @@ if ($opt_e) {
if (!$opt_n && %ligatures) {
print("ligatures");
- while (my $lig = each %ligatures) {
+ foreach my $lig (sort keys %ligatures) {
print(" $lig");
}
print(" 0\n");