Richard W.M. Jones
2016-Jan-04 15:18 UTC
[Libguestfs] [PATCH 0/3] podwrapper: Generate consistent WARNING sections (RHBZ#1293527).
Fix for: https://bugzilla.redhat.com/show_bug.cgi?id=1293527 Note that patches 2/3 and 3/3 are dependent on each other, ie. applying 2/3 on its own will break the build. So I may combine these when applying the series. Rich.
Richard W.M. Jones
2016-Jan-04 15:18 UTC
[Libguestfs] [PATCH 1/3] podwrapper: Enforce that every manual page must have a DESCRIPTION section.
For every user command line tool (eg. guestfish or virt-cat) require that the manual page has a DESCRIPTION section. This doesn't apply to non-CLI man pages (eg. guestfs-perl, guestfs-faq). --- podwrapper.pl.in | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/podwrapper.pl.in b/podwrapper.pl.in index 771782e..37e3e84 100755 --- a/podwrapper.pl.in +++ b/podwrapper.pl.in @@ -218,6 +218,9 @@ die "$progname: $input: no output format specified. Use --man and/or --html and $name = basename ($input, ".pod") unless defined $name; $section = 1 unless defined $section; +# Is it a user command line tool? +my $cli_tool = $section == 1 && $name !~ /^guestfs-/; + # Note that these @...@ are substituted by ./configure. my $abs_top_srcdir = "@abs_top_srcdir@"; my $abs_top_builddir = "@abs_top_builddir@"; @@ -300,6 +303,8 @@ $content =~ s/^=(.*)/\n=encoding utf8\n\n=$1/m; if ($strict_checks) { # Verify sections present / not present. + die "$progname: $input: missing DESCRIPTION section\n" + if $cli_tool && $content !~ /^=head1 DESCRIPTION/m; die "$progname: $input: missing AUTHOR or AUTHORS section\n" unless $content =~ /^=head1 AUTHOR/m; die "$progname: $input: missing SEE ALSO section\n" -- 2.5.0
Richard W.M. Jones
2016-Jan-04 15:18 UTC
[Libguestfs] [PATCH 2/3] podwrapper: Generate consistent WARNING sections (RHBZ#1293527).
--- podwrapper.pl.in | 75 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 73 insertions(+), 2 deletions(-) diff --git a/podwrapper.pl.in b/podwrapper.pl.in index 37e3e84..fd7a502 100755 --- a/podwrapper.pl.in +++ b/podwrapper.pl.in @@ -47,6 +47,7 @@ podwrapper.pl - Generate libguestfs documentation from POD input files --man virt-foo.1 \ --html $(top_builddir)/website/virt-foo.1.html \ --license GPLv2+ \ + --warning general \ $< touch $@ @@ -182,6 +183,31 @@ patterns, in fact you can use any string as the pattern. =cut +my $warning = "not-set"; + +=item B<--warning general> + +=item B<--warning ro-option> + +Add a standard warning section near the top of the manual page, +warning the user not to use the tool in write mode or concurrently. + +There are two variations of the warning: The I<--warning ro-option> +variation should be used with tools such as L<guestfish(1)> which have +an I<--ro> option. The I<--warning general> variation should be used +with other tools that open the disk image for writes, with no +read-only option. + +=item B<--warning custom> + +Use I<--warning custom> if there is already a warning section in the +manual page. + +=item B<--warning safe> + +Use I<--warning safe> for tools which are safe, ie. only open disk +images in read-only mode, or just don't need a warning section. + =back =cut @@ -200,7 +226,8 @@ GetOptions ("help|?" => \$help, "section=s" => \$section, "strict-checks!" => \$strict_checks, "text=s" => \$text, - "verbatim=s" => \@verbatims + "verbatim=s" => \@verbatims, + "warning=s" => \$warning, ) or pod2usage (2); pod2usage (1) if $help; @@ -221,6 +248,13 @@ $section = 1 unless defined $section; # Is it a user command line tool? my $cli_tool = $section == 1 && $name !~ /^guestfs-/; +# Warning parameter is mandatory for user tools in section 1. +if ($strict_checks && $cli_tool) { + die "$progname: $input: missing argument: --warning parameter is missing or invalid\n" + unless $warning eq "general" || $warning eq "ro-option" || + $warning eq "custom" || $warning eq "safe"; +} + # Note that these @...@ are substituted by ./configure. my $abs_top_srcdir = "@abs_top_srcdir@"; my $abs_top_builddir = "@abs_top_builddir@"; @@ -266,6 +300,7 @@ my $release = "$package_name-$package_version"; #print "name=$name\n"; #print "section=$section\n"; #print "date=$date\n"; +#print "warning=$warning\n"; # Read the input. my $content = read_whole_file ($input); @@ -318,9 +353,18 @@ if ($strict_checks) { die "$progname: $input: GPL/LGPL should be specified using the --license parameter, not included in the POD file\n" if $content =~ /^This program is free software/ || $content =~ /^This library is free software/; + if ($warning eq "general" || $warning eq "ro-option" || + $warning eq "safe") { + die "$progname: $input: WARNING is now added automatically using the --warning parameter\n" + if $content =~ /^=head1 WARNING/m + } + elsif ($warning eq "custom") { + die "$progname: $input: missing WARNING section\n" + unless $content =~ /^=head1 WARNING/m; + } } -# Add standard LICENSE and BUGS sections. +# Add standard LICENSE, BUGS and WARNING sections. my $LGPLv2plus "This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published @@ -393,6 +437,25 @@ output into the bug report. \=back "; +my $warning_general +"Using C<$name> +on live virtual machines, or concurrently with other +disk editing tools, can be dangerous, potentially causing disk +corruption. The virtual machine must be shut down before you use this +command, and disk images must not be edited concurrently."; + +my $warning_ro_option +"Using C<$name> in write mode +on live virtual machines, or concurrently with other +disk editing tools, can be dangerous, potentially causing disk +corruption. The virtual machine must be shut down before you use this +command, and disk images must not be edited concurrently. + +Use the I<--ro> (read-only) option to use C<$name> safely if the disk +image or virtual machine might be live. You may see strange or +inconsistent results if running concurrently with other changes, but +with this option you won't risk disk corruption."; + $content .= "\n\n=head1 LICENSE\n\n"; foreach (@licenses) { @@ -412,6 +475,14 @@ foreach (@licenses) { $content .= "\n\n$reporting_bugs"; +if ($warning eq "general") { + $content =~ s/^=head1 DESCRIPTION/=head1 WARNING\n\n$warning_general\n\n=head1 DESCRIPTION/m or die; +} +elsif ($warning eq "ro-option") { + $content =~ s/^=head1 DESCRIPTION/=head1 WARNING\n\n$warning_ro_option\n\n=head1 DESCRIPTION/m or die; +} +# else do nothing for $warning "custom", "safe" or "not-set" + # Output man page. SUBMAN: { package Podwrapper::Man; -- 2.5.0
Richard W.M. Jones
2016-Jan-04 15:18 UTC
[Libguestfs] [PATCH 3/3] podwrapper: Add --warning flag for manual pages of CLI tools (RHBZ#1293527).
This doesn't add --warning flags to the translated pages, which is a bug to be fixed at some point. --- .gitignore | 1 + align/Makefile.am | 1 + appliance/Makefile.am | 1 + builder/Makefile.am | 2 ++ cat/Makefile.am | 4 ++++ customize/Makefile.am | 1 + df/Makefile.am | 1 + dib/Makefile.am | 1 + diff/Makefile.am | 1 + edit/Makefile.am | 1 + edit/virt-edit.pod | 6 ------ fish/Makefile.am | 5 +++++ fish/guestfish.pod | 7 ------- fish/virt-copy-in.pod | 6 ------ fish/virt-tar-in.pod | 6 ------ format/Makefile.am | 1 + fuse/Makefile.am | 2 ++ fuse/guestmount.pod | 5 ----- get-kernel/Makefile.am | 1 + inspector/Makefile.am | 1 + make-fs/Makefile.am | 1 + p2v/Makefile.am | 3 +++ po-docs/language.mk | 4 ++++ rescue/Makefile.am | 1 + rescue/virt-rescue.pod | 10 --------- resize/Makefile.am | 1 + sparsify/Makefile.am | 1 + sysprep/Makefile.am | 1 + test-tool/Makefile.am | 1 + tools/Makefile.am | 49 ++++++++++++++++++++++++++++++++++++-------- v2v/Makefile.am | 2 ++ v2v/test-harness/Makefile.am | 1 + 32 files changed, 80 insertions(+), 49 deletions(-) diff --git a/.gitignore b/.gitignore index abc7f64..c58898c 100644 --- a/.gitignore +++ b/.gitignore @@ -552,6 +552,7 @@ Makefile.in /test-tool/libguestfs-test-tool.1 /test-tool/libguestfs-test-tool-helper /test-tool/stamp-libguestfs-test-tool.pod +/tools/stamp-virt-*.pod /tools/virt-*.1 /v2v/.depend /v2v/centos-6.img diff --git a/align/Makefile.am b/align/Makefile.am index 43cd4f9..04eea16 100644 --- a/align/Makefile.am +++ b/align/Makefile.am @@ -85,6 +85,7 @@ stamp-virt-alignment-scan.pod: virt-alignment-scan.pod --man virt-alignment-scan.1 \ --html $(top_builddir)/website/virt-alignment-scan.1.html \ --license GPLv2+ \ + --warning safe \ $< touch $@ diff --git a/appliance/Makefile.am b/appliance/Makefile.am index f219f9b..d8fb15b 100644 --- a/appliance/Makefile.am +++ b/appliance/Makefile.am @@ -134,6 +134,7 @@ stamp-libguestfs-make-fixed-appliance.pod: libguestfs-make-fixed-appliance.pod --man libguestfs-make-fixed-appliance.1 \ --html $(top_builddir)/website/libguestfs-make-fixed-appliance.1.html \ --license GPLv2+ \ + --warning safe \ $< touch $@ diff --git a/builder/Makefile.am b/builder/Makefile.am index a2509d7..e036721 100644 --- a/builder/Makefile.am +++ b/builder/Makefile.am @@ -227,6 +227,7 @@ stamp-virt-builder.pod: virt-builder.pod $(top_srcdir)/customize/customize-synop --insert $(top_srcdir)/customize/customize-synopsis.pod:__CUSTOMIZE_SYNOPSIS__ \ --insert $(top_srcdir)/customize/customize-options.pod:__CUSTOMIZE_OPTIONS__ \ --license GPLv2+ \ + --warning safe \ $< touch $@ @@ -366,6 +367,7 @@ stamp-virt-index-validate.pod: virt-index-validate.pod --man virt-index-validate.1 \ --html $(top_builddir)/website/virt-index-validate.1.html \ --license GPLv2+ \ + --warning safe \ $< touch $@ diff --git a/cat/Makefile.am b/cat/Makefile.am index d91b2d6..e2fe84d 100644 --- a/cat/Makefile.am +++ b/cat/Makefile.am @@ -160,6 +160,7 @@ stamp-virt-cat.pod: virt-cat.pod --man virt-cat.1 \ --html $(top_builddir)/website/virt-cat.1.html \ --license GPLv2+ \ + --warning safe \ $< touch $@ @@ -170,6 +171,7 @@ stamp-virt-filesystems.pod: virt-filesystems.pod --man virt-filesystems.1 \ --html $(top_builddir)/website/virt-filesystems.1.html \ --license GPLv2+ \ + --warning safe \ $< touch $@ @@ -180,6 +182,7 @@ stamp-virt-log.pod: virt-log.pod --man virt-log.1 \ --html $(top_builddir)/website/virt-log.1.html \ --license GPLv2+ \ + --warning safe \ $< touch $@ @@ -190,6 +193,7 @@ stamp-virt-ls.pod: virt-ls.pod --man virt-ls.1 \ --html $(top_builddir)/website/virt-ls.1.html \ --license GPLv2+ \ + --warning safe \ $< touch $@ diff --git a/customize/Makefile.am b/customize/Makefile.am index a8ceb25..66df686 100644 --- a/customize/Makefile.am +++ b/customize/Makefile.am @@ -161,6 +161,7 @@ stamp-virt-customize.pod: virt-customize.pod $(top_srcdir)/customize/customize-s --insert $(top_srcdir)/customize/customize-synopsis.pod:__CUSTOMIZE_SYNOPSIS__ \ --insert $(top_srcdir)/customize/customize-options.pod:__CUSTOMIZE_OPTIONS__ \ --license GPLv2+ \ + --warning general \ $< touch $@ diff --git a/df/Makefile.am b/df/Makefile.am index 6bbf88d..256263d 100644 --- a/df/Makefile.am +++ b/df/Makefile.am @@ -88,6 +88,7 @@ stamp-virt-df.pod: virt-df.pod --man virt-df.1 \ --html $(top_builddir)/website/virt-df.1.html \ --license GPLv2+ \ + --warning safe \ $< touch $@ diff --git a/dib/Makefile.am b/dib/Makefile.am index ad1fd6a..5a3a7c7 100644 --- a/dib/Makefile.am +++ b/dib/Makefile.am @@ -121,6 +121,7 @@ stamp-virt-dib.pod: virt-dib.pod --man virt-dib.1 \ --html $(top_builddir)/website/virt-dib.1.html \ --license GPLv2+ \ + --warning safe \ $< touch $@ diff --git a/diff/Makefile.am b/diff/Makefile.am index d3b5ff6..13e86c7 100644 --- a/diff/Makefile.am +++ b/diff/Makefile.am @@ -74,6 +74,7 @@ stamp-virt-diff.pod: virt-diff.pod --man virt-diff.1 \ --html $(top_builddir)/website/virt-diff.1.html \ --license GPLv2+ \ + --warning safe \ $< touch $@ diff --git a/edit/Makefile.am b/edit/Makefile.am index cc46587..eb36142 100644 --- a/edit/Makefile.am +++ b/edit/Makefile.am @@ -77,6 +77,7 @@ stamp-virt-edit.pod: virt-edit.pod --man virt-edit.1 \ --html $(top_builddir)/website/virt-edit.1.html \ --license GPLv2+ \ + --warning general \ $< touch $@ diff --git a/edit/virt-edit.pod b/edit/virt-edit.pod index 0f6b16a..a4fa02b 100644 --- a/edit/virt-edit.pod +++ b/edit/virt-edit.pod @@ -16,12 +16,6 @@ Old-style: virt-edit disk.img [disk.img ...] file -=head1 WARNING - -You must I<not> use C<virt-edit> on live virtual machines. If you do -this, you risk disk corruption in the VM. C<virt-edit> tries to stop -you from doing this, but doesn't catch all cases. - =head1 DESCRIPTION C<virt-edit> is a command line tool to edit C<file> where each C<file> diff --git a/fish/Makefile.am b/fish/Makefile.am index f365bc3..fc7c729 100644 --- a/fish/Makefile.am +++ b/fish/Makefile.am @@ -211,6 +211,7 @@ stamp-guestfish.pod: guestfish.pod guestfish-actions.pod guestfish-commands.pod --insert $(srcdir)/guestfish-commands.pod:__FISH_COMMANDS__ \ --insert $(srcdir)/guestfish-prepopts.pod:__PREPOPTS__ \ --license GPLv2+ \ + --warning ro-option \ $< touch $@ @@ -232,6 +233,7 @@ stamp-virt-copy-in.pod: virt-copy-in.pod --man virt-copy-in.1 \ --html $(top_builddir)/website/virt-copy-in.1.html \ --license GPLv2+ \ + --warning general \ $< touch $@ @@ -242,6 +244,7 @@ stamp-virt-copy-out.pod: virt-copy-out.pod --man virt-copy-out.1 \ --html $(top_builddir)/website/virt-copy-out.1.html \ --license GPLv2+ \ + --warning safe \ $< touch $@ @@ -252,6 +255,7 @@ stamp-virt-tar-in.pod: virt-tar-in.pod --man virt-tar-in.1 \ --html $(top_builddir)/website/virt-tar-in.1.html \ --license GPLv2+ \ + --warning general \ $< touch $@ @@ -262,6 +266,7 @@ stamp-virt-tar-out.pod: virt-tar-out.pod --man virt-tar-out.1 \ --html $(top_builddir)/website/virt-tar-out.1.html \ --license GPLv2+ \ + --warning safe \ $< touch $@ diff --git a/fish/guestfish.pod b/fish/guestfish.pod index a9eeed6..c6f5663 100644 --- a/fish/guestfish.pod +++ b/fish/guestfish.pod @@ -18,13 +18,6 @@ guestfish - the guest filesystem shell guestfish -d libvirt-domain -i -=head1 WARNING - -Using guestfish in read/write mode on live virtual machines can be -dangerous, potentially causing disk corruption. Use the I<--ro> -(read-only) option to use guestfish safely if the disk image or -virtual machine might be live. - =head1 DESCRIPTION Guestfish is a shell and command-line tool for examining and modifying diff --git a/fish/virt-copy-in.pod b/fish/virt-copy-in.pod index 37d96df..8c56c0e 100644 --- a/fish/virt-copy-in.pod +++ b/fish/virt-copy-in.pod @@ -8,12 +8,6 @@ virt-copy-in - Copy files and directories into a virtual machine disk image. virt-copy-in -d domain file|dir [file|dir ...] /destination -=head1 WARNING - -Using C<virt-copy-in> on live virtual machines can be dangerous, -potentially causing disk corruption. The virtual machine must be -shut down before you use this command. - =head1 DESCRIPTION C<virt-copy-in> copies files and directories from the local disk into diff --git a/fish/virt-tar-in.pod b/fish/virt-tar-in.pod index 9ccad1d..8974b5e 100644 --- a/fish/virt-tar-in.pod +++ b/fish/virt-tar-in.pod @@ -10,12 +10,6 @@ virt-tar-in - Unpack a tarball into a virtual machine disk image. zcat data.tar.gz | virt-tar-in -d domain - /destination -=head1 WARNING - -Using C<virt-tar-in> on live virtual machines can be dangerous, -potentially causing disk corruption. The virtual machine must be shut -down before you use this command. - =head1 DESCRIPTION C<virt-tar-in> unpacks an uncompressed tarball into a virtual machine diff --git a/format/Makefile.am b/format/Makefile.am index b6f7ecf..cc0489b 100644 --- a/format/Makefile.am +++ b/format/Makefile.am @@ -73,6 +73,7 @@ stamp-virt-format.pod: virt-format.pod --man virt-format.1 \ --html $(top_builddir)/website/virt-format.1.html \ --license GPLv2+ \ + --warning general \ $< touch $@ diff --git a/fuse/Makefile.am b/fuse/Makefile.am index d15a2cf..1fad440 100644 --- a/fuse/Makefile.am +++ b/fuse/Makefile.am @@ -113,6 +113,7 @@ stamp-guestmount.pod: guestmount.pod --man guestmount.1 \ --html $(top_builddir)/website/guestmount.1.html \ --license GPLv2+ \ + --warning ro-option \ $< touch $@ @@ -123,6 +124,7 @@ stamp-guestunmount.pod: guestunmount.pod --man guestunmount.1 \ --html $(top_builddir)/website/guestunmount.1.html \ --license GPLv2+ \ + --warning safe \ $< touch $@ diff --git a/fuse/guestmount.pod b/fuse/guestmount.pod index 5369041..e7f37ae 100644 --- a/fuse/guestmount.pod +++ b/fuse/guestmount.pod @@ -10,11 +10,6 @@ guestmount - Mount a guest filesystem on the host using FUSE and libguestfs guestmount [--options] -d Guest -i [--ro] mountpoint -=head1 WARNING - -You must I<not> use C<guestmount> in read-write mode on live virtual -machines. If you do this, you risk disk corruption in the VM. - =head1 DESCRIPTION The guestmount program can be used to mount virtual machine diff --git a/get-kernel/Makefile.am b/get-kernel/Makefile.am index 85428a7..d807877 100644 --- a/get-kernel/Makefile.am +++ b/get-kernel/Makefile.am @@ -120,6 +120,7 @@ stamp-virt-get-kernel.pod: virt-get-kernel.pod --man virt-get-kernel.1 \ --html $(top_builddir)/website/virt-get-kernel.1.html \ --license GPLv2+ \ + --warning safe \ $< touch $@ diff --git a/inspector/Makefile.am b/inspector/Makefile.am index 9a8f23d..127bf03 100644 --- a/inspector/Makefile.am +++ b/inspector/Makefile.am @@ -102,6 +102,7 @@ stamp-virt-inspector.pod: virt-inspector.pod --man virt-inspector.1 \ --html $(top_builddir)/website/virt-inspector.1.html \ --license GPLv2+ \ + --warning safe \ $< touch $@ diff --git a/make-fs/Makefile.am b/make-fs/Makefile.am index 20545f9..f7d9734 100644 --- a/make-fs/Makefile.am +++ b/make-fs/Makefile.am @@ -68,6 +68,7 @@ stamp-virt-make-fs.pod: virt-make-fs.pod --man virt-make-fs.1 \ --html $(top_builddir)/website/virt-make-fs.1.html \ --license GPLv2+ \ + --warning safe \ $< touch $@ diff --git a/p2v/Makefile.am b/p2v/Makefile.am index 7d722ab..624086f 100644 --- a/p2v/Makefile.am +++ b/p2v/Makefile.am @@ -132,6 +132,7 @@ stamp-virt-p2v.pod: virt-p2v.pod --man virt-p2v.1 \ --html $(top_builddir)/website/virt-p2v.1.html \ --license GPLv2+ \ + --warning safe \ $< touch $@ @@ -142,6 +143,7 @@ stamp-virt-p2v-make-disk.pod: virt-p2v-make-disk.pod --man virt-p2v-make-disk.1 \ --html $(top_builddir)/website/virt-p2v-make-disk.1.html \ --license GPLv2+ \ + --warning safe \ $< touch $@ @@ -152,6 +154,7 @@ stamp-virt-p2v-make-kickstart.pod: virt-p2v-make-kickstart.pod --man virt-p2v-make-kickstart.1 \ --html $(top_builddir)/website/virt-p2v-make-kickstart.1.html \ --license GPLv2+ \ + --warning safe \ $< touch $@ diff --git a/po-docs/language.mk b/po-docs/language.mk index 3d3dd6f..9319f86 100644 --- a/po-docs/language.mk +++ b/po-docs/language.mk @@ -108,6 +108,10 @@ guestfs.3: guestfs.pod guestfs-actions.pod guestfs-availability.pod guestfs-stru --insert $(srcdir)/guestfs-structs.pod:__STRUCTS__ \ $< +# XXX --warning parameter is not passed, so no WARNING section is +# generated in any translated manual. To fix this we need to expand +# out all the %.1 pattern rules below. + guestfish.1: guestfish.pod guestfish-actions.pod guestfish-commands.pod guestfish-prepopts.pod $(PODWRAPPER) \ --no-strict-checks \ diff --git a/rescue/Makefile.am b/rescue/Makefile.am index 9a91c6b..144a255 100644 --- a/rescue/Makefile.am +++ b/rescue/Makefile.am @@ -75,6 +75,7 @@ stamp-virt-rescue.pod: virt-rescue.pod --man virt-rescue.1 \ --html $(top_builddir)/website/virt-rescue.1.html \ --license GPLv2+ \ + --warning ro-option \ $< touch $@ diff --git a/rescue/virt-rescue.pod b/rescue/virt-rescue.pod index 45fe784..bb563bc 100644 --- a/rescue/virt-rescue.pod +++ b/rescue/virt-rescue.pod @@ -16,16 +16,6 @@ Old style: virt-rescue [--options] disk.img [disk.img ...] -=head1 WARNING - -You must I<not> use C<virt-rescue> on live virtual machines. Doing so -will probably result in disk corruption in the VM. C<virt-rescue> -tries to stop you from doing this, but doesn't catch all cases. - -However if you use the I<--ro> (read only) option, then you can attach -a shell to a live virtual machine. The results might be strange or -inconsistent at times but you won't get disk corruption. - =head1 DESCRIPTION virt-rescue is like a Rescue CD, but for virtual machines, and without diff --git a/resize/Makefile.am b/resize/Makefile.am index 0139e91..9b1e17c 100644 --- a/resize/Makefile.am +++ b/resize/Makefile.am @@ -122,6 +122,7 @@ stamp-virt-resize.pod: virt-resize.pod --man virt-resize.1 \ --html $(top_builddir)/website/virt-resize.1.html \ --license GPLv2+ \ + --warning safe \ $< touch $@ diff --git a/sparsify/Makefile.am b/sparsify/Makefile.am index 78d75bd..68f7fe7 100644 --- a/sparsify/Makefile.am +++ b/sparsify/Makefile.am @@ -118,6 +118,7 @@ stamp-virt-sparsify.pod: virt-sparsify.pod --man virt-sparsify.1 \ --html $(top_builddir)/website/virt-sparsify.1.html \ --license GPLv2+ \ + --warning general \ $< touch $@ diff --git a/sysprep/Makefile.am b/sysprep/Makefile.am index 285deb5..b3ad3c3 100644 --- a/sysprep/Makefile.am +++ b/sysprep/Makefile.am @@ -188,6 +188,7 @@ stamp-virt-sysprep.pod: virt-sysprep.pod sysprep-extra-options.pod sysprep-opera --insert sysprep-operations.pod:__OPERATIONS__ \ --html $(top_builddir)/website/virt-sysprep.1.html \ --license GPLv2+ \ + --warning general \ $< touch $@ diff --git a/test-tool/Makefile.am b/test-tool/Makefile.am index c63e4e5..f7d1c7f 100644 --- a/test-tool/Makefile.am +++ b/test-tool/Makefile.am @@ -47,6 +47,7 @@ stamp-libguestfs-test-tool.pod: libguestfs-test-tool.pod --man libguestfs-test-tool.1 \ --html $(top_builddir)/website/libguestfs-test-tool.1.html \ --license GPLv2+ \ + --warning safe \ $< touch $@ diff --git a/tools/Makefile.am b/tools/Makefile.am index 699c117..8296b37 100644 --- a/tools/Makefile.am +++ b/tools/Makefile.am @@ -39,24 +39,55 @@ bin_SCRIPTS = $(tools:%=virt-%) # Manual pages and HTML files for the website. -# XXX Bug in automake? If you list virt-tar.1 explicitly, then it -# builds and installs the man pages. However if this is removed, -# then the man pages are neither built nor installed. -man_MANS = virt-tar.1 $(patsubst %,virt-%.1,$(filter-out tar,$(tools))) +man_MANS = \ + virt-list-filesystems.1 \ + virt-list-partitions.1 \ + virt-tar.1 \ + virt-win-reg.1 -noinst_DATA = $(tools:%=$(top_builddir)/website/virt-%.1.html) +virt-list-filesystems.1 $(top_builddir)/website/virt-list-filesystems.1.html: stamp-virt-list-filesystems.pod -virt-%.1: virt-% +stamp-virt-list-filesystems.pod: virt-list-filesystems $(PODWRAPPER) \ - --man $@ \ + --man virt-list-filesystems.1 \ + --html $(top_builddir)/website/virt-list-filesystems.1.html \ --license GPLv2+ \ + --warning safe \ $< + touch $@ -$(top_builddir)/website/virt-%.1.html: virt-% +virt-list-partitions.1 $(top_builddir)/website/virt-list-partitions.1.html: stamp-virt-list-partitions.pod + +stamp-virt-list-partitions.pod: virt-list-partitions + $(PODWRAPPER) \ + --man virt-list-partitions.1 \ + --html $(top_builddir)/website/virt-list-partitions.1.html \ + --license GPLv2+ \ + --warning safe \ + $< + touch $@ + +virt-tar.1 $(top_builddir)/website/virt-tar.1.html: stamp-virt-tar.pod + +stamp-virt-tar.pod: virt-tar + $(PODWRAPPER) \ + --man virt-tar.1 \ + --html $(top_builddir)/website/virt-tar.1.html \ + --license GPLv2+ \ + --warning custom \ + $< + touch $@ + +virt-win-reg.1 $(top_builddir)/website/virt-win-reg.1.html: stamp-virt-win-reg.pod + +stamp-virt-win-reg.pod: virt-win-reg $(PODWRAPPER) \ - --html $@ \ + --man virt-win-reg.1 \ + --html $(top_builddir)/website/virt-win-reg.1.html \ --license GPLv2+ \ + --warning custom \ $< + touch $@ # Tests. diff --git a/v2v/Makefile.am b/v2v/Makefile.am index db01574..af7b05e 100644 --- a/v2v/Makefile.am +++ b/v2v/Makefile.am @@ -247,6 +247,7 @@ stamp-virt-v2v.pod: virt-v2v.pod --man virt-v2v.1 \ --html $(top_builddir)/website/virt-v2v.1.html \ --license GPLv2+ \ + --warning safe \ $< touch $@ @@ -257,6 +258,7 @@ stamp-virt-v2v-copy-to-local.pod: virt-v2v-copy-to-local.pod --man virt-v2v-copy-to-local.1 \ --html $(top_builddir)/website/virt-v2v-copy-to-local.1.html \ --license GPLv2+ \ + --warning safe \ $< touch $@ diff --git a/v2v/test-harness/Makefile.am b/v2v/test-harness/Makefile.am index dd18d2c..cab9b70 100644 --- a/v2v/test-harness/Makefile.am +++ b/v2v/test-harness/Makefile.am @@ -143,6 +143,7 @@ stamp-virt-v2v-test-harness.pod: virt-v2v-test-harness.pod --man virt-v2v-test-harness.1 \ --html $(top_builddir)/website/virt-v2v-test-harness.1.html \ --license LGPLv2+ \ + --warning safe \ $< touch $@ -- 2.5.0
Apparently Analagous Threads
- [PATCH v2 0/3] options: Describe --key SELECTOR in a single file.
- [PATCH libguestfs 0/3] options: Describe --key SELECTOR in a single file.
- [p2v PATCH 0/4] More imports and fixes
- [PATCH] fuse: Add guestmount-cleanup program to handle unmounting (RHBZ#916780).
- [PATCH v2] fuse: Add guestunmount program to handle unmounting (RHBZ#916780)