X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=tools%2Fmake-man-rules.py;h=5e61917d6032d62551219fc43f92e8012d712c89;hp=6224de3cc01d15a7bce1e2a9fb2b29bf4124355d;hb=d76bb3c179b7a32b109e39aa87ff09c8f5a8c178;hpb=c0652d453e2329fa465f71d4c68f5fe8618a7de2 diff --git a/tools/make-man-rules.py b/tools/make-man-rules.py index 6224de3cc..5e61917d6 100644 --- a/tools/make-man-rules.py +++ b/tools/make-man-rules.py @@ -42,8 +42,14 @@ endif HEADER = '''\ # Do not edit. Generated by make-man-rules.py. -# Regenerate with 'make all update-man-list'. - +# To regenerate: +# 1. Create, update, or remove source .xml files in man/ +# 2. Run 'make update-man-list' +# 3. Run 'make man' to generate manpages +# +# To make a man page conditional on a configure switch add +# attribute conditional="ENABLE_WHAT" or conditional="WITH_WHAT" +# to element. ''' HTML_ALIAS_RULE = '''\ @@ -53,8 +59,10 @@ HTML_ALIAS_RULE = '''\ FOOTER = '''\ +# Really, do not edit this file. + EXTRA_DIST += \\ - {files} + {dist_files} ''' def man(page, number): @@ -98,7 +106,7 @@ def create_rules(xml_files): def mjoin(files): return ' \\\n\t'.join(sorted(files) or '#') -def make_makefile(rules, files): +def make_makefile(rules, dist_files): return HEADER + '\n'.join( (CONDITIONAL if conditional else SECTION).format( manpages=mjoin(set(rulegroup.values())), @@ -111,9 +119,11 @@ def make_makefile(rules, files): if k != v), conditional=conditional) for conditional,rulegroup in sorted(rules.items()) - ) + FOOTER.format(files=mjoin(sorted(files))) + ) + FOOTER.format(dist_files=mjoin(sorted(dist_files))) if __name__ == '__main__': rules = create_rules(sys.argv[1:]) - files = (xml(file) for file in sys.argv[1:]) - print(make_makefile(rules, files), end='') + dist_files = (xml(file) for file in sys.argv[1:] + if not file.endswith(".directives.xml") and + not file.endswith(".index.xml")) + print(make_makefile(rules, dist_files), end='')