use pve-doc-generator to generate man pages

This commit is contained in:
Dietmar Maurer 2016-04-08 07:36:29 +02:00
parent bee1e0ad90
commit f625f7f62f
4 changed files with 12 additions and 158 deletions

View File

@ -15,7 +15,6 @@ LIBDIR=${PREFIX}/lib/${PACKAGE}
VARLIBDIR=/var/lib/${PACKAGE}
MANDIR=${PREFIX}/share/man
DOCDIR=${PREFIX}/share/doc
PODDIR=${PREFIX}/share/doc/${PACKAGE}/pod
MAN1DIR=${MANDIR}/man1/
BASHCOMPLDIR=${PREFIX}/share/bash-completion/completions/
export PERLDIR=${PREFIX}/share/perl5
@ -26,6 +25,10 @@ GITVERSION:=$(shell cat .git/refs/heads/master)
DEB=${PACKAGE}_${VERSION}-${PKGREL}_${ARCH}.deb
# this requires package pve-doc-generator
export NOVIEW=1
include /usr/share/pve-doc-generator/pve-doc-generator.mk
all: ${DEB}
.PHONY: dinstall
@ -44,44 +47,21 @@ vmtar: vmtar.c utils.c
sparsecp: sparsecp.c utils.c
gcc ${CFLAGS} -o sparsecp sparsecp.c
%.1.gz: %.1.pod
rm -f $@
cat $<|pod2man -n $* -s 1 -r ${VERSION} -c "Proxmox Documentation"|gzip -c9 >$@
%.5.gz: %.5.pod
rm -f $@
cat $<|pod2man -n $* -s 5 -r ${VERSION} -c "Proxmox Documentation"|gzip -c9 >$@
%.1.pod: %
podselect $*>$@
qm.1.pod: PVE/CLI/qm.pm PVE/QemuServer.pm
perl -I. -T -e "use PVE::CLI::qm; PVE::CLI::qm->generate_pod_manpage();" >$@.tmp
mv $@.tmp $@
qm.bash-completion:
perl -I. -T -e "use PVE::CLI::qm; PVE::CLI::qm->generate_bash_completions();" >$@.tmp
mv $@.tmp $@
qmrestore.1.pod: PVE/CLI/qmrestore.pm
perl -I. -T -e "use PVE::CLI::qmrestore; PVE::CLI::qmrestore->generate_pod_manpage();" >$@.tmp
mv $@.tmp $@
qmrestore.bash-completion:
perl -I. -T -e "use PVE::CLI::qmrestore; PVE::CLI::qmrestore->generate_bash_completions();" >$@.tmp
mv $@.tmp $@
vm.conf.5.pod: gen-vmconf-pod.pl PVE/QemuServer.pm
perl -I. ./gen-vmconf-pod.pl >$@
PKGSOURCES=qm qm.1.gz qm.1.pod qmrestore qmrestore.1.pod qmrestore.1.gz qmextract sparsecp vmtar control vm.conf.5.pod vm.conf.5.gz qm.bash-completion qmrestore.bash-completion
PKGSOURCES=qm qm.1 qmrestore qmrestore.1 qmextract sparsecp vmtar control vm.conf.5 qm.bash-completion qmrestore.bash-completion
.PHONY: install
install: ${PKGSOURCES}
install -d ${DESTDIR}/${SBINDIR}
install -d ${DESTDIR}${LIBDIR}
install -d ${DESTDIR}${VARLIBDIR}
install -d ${DESTDIR}${PODDIR}
install -d ${DESTDIR}/usr/share/man/man1
install -d ${DESTDIR}/usr/share/man/man5
install -d ${DESTDIR}/usr/share/${PACKAGE}
@ -99,12 +79,12 @@ install: ${PKGSOURCES}
install -s -m 0755 sparsecp ${DESTDIR}${LIBDIR}
install -D -m 0644 modules-load.conf ${DESTDIR}/etc/modules-load.d/qemu-server.conf
install -m 0755 qmextract ${DESTDIR}${LIBDIR}
install -m 0644 qm.1.gz ${DESTDIR}/usr/share/man/man1/
install -m 0644 qm.1.pod ${DESTDIR}/${PODDIR}
install -m 0644 qmrestore.1.gz ${DESTDIR}/usr/share/man/man1/
install -m 0644 qmrestore.1.pod ${DESTDIR}/${PODDIR}
install -m 0644 vm.conf.5.pod ${DESTDIR}/${PODDIR}
install -m 0644 vm.conf.5.gz ${DESTDIR}/usr/share/man/man5/
install -m 0644 qm.1 ${DESTDIR}/usr/share/man/man1/
gzip -9 ${DESTDIR}/usr/share/man/man1/qm.1
install -m 0644 qmrestore.1 ${DESTDIR}/usr/share/man/man1/
gzip -9 ${DESTDIR}/usr/share/man/man1/qmrestore.1
install -m 0644 vm.conf.5 ${DESTDIR}/usr/share/man/man5/
gzip -9 ${DESTDIR}/usr/share/man/man5/vm.conf.5
.PHONY: deb ${DEB}
deb ${DEB}: ${PKGSOURCES}
@ -136,6 +116,7 @@ upload:
.PHONY: clean
clean:
make cleanup-docgen
rm -rf build *.deb control vzsyscalls.ph _h2ph_pre.ph ${PACKAGE}-*.tar.gz dist *.1.gz *.pod vmtar sparsecp *.tmp *.bash-completion
find . -name '*~' -exec rm {} ';'

View File

@ -499,59 +499,3 @@ our $cmddef = {
};
1;
__END__
=head1 NAME
qm - qemu/kvm virtual machine manager
=head1 SYNOPSIS
=include synopsis
=head1 DESCRIPTION
qm is a script to manage virtual machines with qemu/kvm. You can
create and destroy virtual machines, and control execution
(start/stop/suspend/resume). Besides that, you can use qm to set
parameters in the associated config file. It is also possible to
create and delete virtual disks.
=head1 CONFIGURATION
All configuration files consists of lines in the form
PARAMETER: value
See L<vm.conf|vm.conf> for a complete list of options.
Configuration files are stored inside the Proxmox configuration file system, and can be access at F</etc/pve/qemu-server/C<VMID>.conf>.
The default for option 'keyboard' is read from
F</etc/pve/datacenter.conf>.
=head1 Locks
Online migration and backups (vzdump) set a lock to prevent
unintentional action on such VMs. Sometimes you need remove such lock
manually (power failure).
qm unlock <vmid>
=head1 EXAMPLES
# create a new VM with 4 GB ide disk
qm create 300 -ide0 4 -net0 e1000 -cdrom proxmox-mailgateway_2.1.iso
# start the new VM
qm start 300
# send shutdown, then wait until VM is stopped
qm shutdown 300 && qm wait 300
# same as above, but only wait for 40 seconds
qm shutdown 300 && qm wait 300 -timeout 40
=include pve_copyright

View File

@ -70,25 +70,3 @@ our $cmddef = [ __PACKAGE__, 'qmrestore', ['archive', 'vmid'], undef,
}];
1;
__END__
=head1 NAME
qmrestore - restore QemuServer vzdump backups
=head1 SYNOPSIS
=include synopsis
=head1 DESCRIPTION
Restore the QemuServer vzdump backup C<archive> to virtual machine
C<vmid>. Volumes are allocated on the original storage if there is no
C<storage> specified.
=head1 SEE ALSO
vzdump(1) vzrestore(1)
=include pve_copyright

View File

@ -1,49 +0,0 @@
#!/usr/bin/perl
package main;
use strict;
use warnings;
use PVE::Tools;
use PVE::Cluster;
use PVE::PodParser;
use PVE::QemuServer;
my $prop = PVE::QemuServer::json_config_properties();
my $format = PVE::PodParser::dump_properties($prop);
my $parser = PVE::PodParser->new();
$parser->{include}->{format} = $format;
$parser->parse_from_file($0);
exit 0;
__END__
=head1 NAME
vm.conf - Proxmox VE virtual machine (qemu/kvm) configuration files.
=head1 SYNOPSYS
The F</etc/pve/qemu-server/C<VMID>.conf> files stores VM
configuration, where C<VMID> is the numeric ID of the given VM. Note
that C<VMID <= 100> are reserved for internal purposes.
=head1 FILE FORMAT
Configuration file use a simple colon separated key/value format. Each
line has the following format:
OPTION: value
Blank lines in the file are ignored, and lines starting with a C<#>
character are treated as comments and are also ignored.
One can use the F<qm> command to generate and modify those files.
=head1 OPTIONS
=include format
=include pve_copyright