3 # Support both Python 2 and 3
4 from __future__ import print_function
6 import os, sys, argparse, subprocess
10 xsltproc = '@XSLTPROC@'
12 parser = argparse.ArgumentParser(description='gtkdoc-mkman version %s - generate documentation in man format' % version)
14 parser.add_argument('--verbose', default=False, action='store_true',
15 help='Print extra output while processing')
16 parser.add_argument('--path', default='',
17 help='Extra source directories')
18 parser.add_argument('version', default=False, action='store_true',
19 help='Print the version of this program')
20 parser.add_argument('args', nargs=2,
21 help='MODULE DRIVER_FILE')
22 parser.add_argument('--uninstalled', action='store_true', default=False,
25 options = parser.parse_args()
30 module=options.args[0]
31 document=options.args[1]
37 if options.uninstalled:
38 # this does not work from buiddir!=srcdir
39 gtkdocdir=os.path.split(sys.argv[0])[0]
40 #echo "uninstalled, gtkdocdir=$gtkdocdir"
42 # the first vars are needed to resolve datadir
44 datarootdir="@datarootdir@".replace('${prefix}', prefix)
45 datadir="@datadir@".replace('${datarootdir}', datarootdir)
46 gtkdocdir=os.path.join(datadir, 'gtk-doc/data')
48 # we could do "$path_option $PWD "
49 # to avoid needing rewriting entities that are copied from the header
51 if options.path == '':
54 path_arg=[path_option, options.path]
56 # would it make sense to create man pages only for certain refentries
58 # see http://bugzilla.gnome.org/show_bug.cgi?id=467488
59 subprocess.check_call([xsltproc] + path_arg +[
72 'chunker.output.quiet',
74 'http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl',