2 # makemanpage - generate man page from --help output using help2man
4 # Copyright (C) 2007 Olly Betts
6 # This program is free software; you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 2 of the License, or
9 # (at your option) any later version.
11 # This program is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 # GNU General Public License for more details.
16 # You should have received a copy of the GNU General Public License
17 # along with this program; if not, write to the Free Software
18 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
22 # Parse command line parameters
24 print "usage: makemanpage <binary> <source> <manpage>\n";
28 my ($binary, $src, $manpage) = @ARGV;
31 open SRC, "<$src" or die "$src: $!\n";
33 if (/^(?:PROG_DESC=|\s*#\s*define\s+PROG_DESC\s+)"(.*?)"/) {
39 unless (defined $desc) {
40 die "$src: Failed to find PROG_DESC\n";
43 my $r = system("@HELP2MAN@", "-o", $manpage."T", "--no-info",
44 "-S", "@PACKAGE_STRING@", "-n", $desc, $binary);
47 die "@HELP2MAN@: $!\n";
49 rename $manpage."T", $manpage;