freebsd-ports/textproc/sgmlformat/files/patch-sgmlfmt.pl
Mathieu Arnold f8fefc2abf newgetopt.pl was deprecated in 5.14, so, it doesn't work any more with 5.16+.
As Getopt::Long has been there for ages (and is in all supported perls in the
port tree,) this seemed the easiest way to fix it.

maintainer timeout
PR:		ports/183197
Submitted by:	mat
2013-11-06 12:30:49 +00:00

44 lines
1.3 KiB
Perl

--- sgmlfmt/sgmlfmt.pl.orig 1998-09-15 23:05:47.000000000 +0200
+++ sgmlfmt/sgmlfmt.pl 2013-10-22 12:52:49.000000000 +0200
@@ -32,7 +32,7 @@
# project.
-require 'newgetopt.pl';
+use Getopt::Long;
#
# Where to find DTDs and related files
@@ -151,19 +151,15 @@
open (outfile, ">$fileroot.trf");
&sgmlparse(infile, "roff");
while (<infile>) {
+ s,\\\(ru,_,g if /^\.GET[HP]N/;
+ s,tmac\.m,m\.tmac,g;
print outfile;
}
close(infile);
close(outfile);
+ system("groff -z -rRef=1 -T ${driver} -t ${fileroot}.trf 2>&1 | egrep '^\\.' > ${fileroot}.qrf");
system("groff -T ${driver} -t ${fileroot}.trf ${postproc} > ${fileroot}.${driver}");
-
- # If foo.tmp has been created, then there are cross references
- # in the file and we need a second pass to resolve them correctly.
-
- if (stat("${fileroot}.tmp")) {
- system("groff -T ${driver} -t ${fileroot}.trf ${postproc} > ${fileroot}.${driver}");
- unlink("${fileroot}.qrf");
- }
+ unlink("${fileroot}.qrf");
unlink("${fileroot}.trf");
}
@@ -655,7 +651,7 @@
sub main {
# Check arguments
- if (!&NGetOpt('d=s', 'f=s', 'links', 'i:s@', 'hdr=s', 'ftr=s', 'e=s')) {
+ if (!GetOptions('d=s', 'f=s', 'links', 'i:s@', 'hdr=s', 'ftr=s', 'e=s')) {
&usage;
exit 1;
}