#! /usr/bin/env perl

# roff2* - transform roff files into other formats

# Source file position: <groff-source>/contrib/groffer/perl/roff2.pl
# Installed position: <prefix>/bin/roff2*

# Copyright (C) 2006, 2008, 2009 Free Software Foundation, Inc.
# Written by Bernd Warken.

# Last update: 5 Jan 2009

# This file is part of `groffer', which 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 3 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.

# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.

########################################################################

require v5.6;

use strict;
use warnings;
use File::Spec;

# temporary dir and files
use File::Temp qw/ tempfile /;

my $Dev_Null = File::Spec->devnull();
my $Mode;
my $Name;
{
  my ($v, $d);
  ($v, $d, $Name) = File::Spec->splitpath($0);
  die "wrong program name: $Name;"
    if $Name !~ /^roff2[a-z]/;
}
$Mode = $Name;
$Mode =~ s/^roff2//;

my $Groff_Version = `groff --version 2>_Null = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = Full = F