X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;ds=sidebyside;f=src%2FMakefile;h=f68eb5d1eab08492ae1a4ccead7ea0567776312a;hb=3c049a1260972409fb96fe8d30f750a9273e78c8;hp=6bc06fa277b865d1a9fa4ed1dac2968e6011eaa7;hpb=9beee926e3c4eed60d618b1d23b8798bcbf48d74;p=pve-container.git diff --git a/src/Makefile b/src/Makefile index 6bc06fa..f68eb5d 100644 --- a/src/Makefile +++ b/src/Makefile @@ -2,58 +2,75 @@ PACKAGE=pve-container PREFIX=${DESTDIR}/usr BINDIR=${PREFIX}/bin +LIBDIR=${PREFIX}/lib SBINDIR=${PREFIX}/sbin MANDIR=${PREFIX}/share/man DOCDIR=${PREFIX}/share/doc/${PACKAGE} LXC_SCRIPT_DIR=${PREFIX}/share/lxc LXC_TMPL_DIR=${LXC_SCRIPT_DIR}/templates LXC_HOOK_DIR=${LXC_SCRIPT_DIR}/hooks -LXC_COMMON_CONFIG_DIR=${LXC_SCRIPT_DIR}/config/common.conf.d +LXC_CONFIG_DIR=${LXC_SCRIPT_DIR}/config +LXC_COMMON_CONFIG_DIR=${LXC_CONFIG_DIR}/common.conf.d +SERVICEDIR=${DESTDIR}/lib/systemd/system PODDIR=${DOCDIR}/pod MAN1DIR=${MANDIR}/man1/ MAN5DIR=${MANDIR}/man5/ BASHCOMPLDIR=${PREFIX}/share/bash-completion/completions/ export PERLDIR=${PREFIX}/share/perl5 -all: - -%.1.gz: %.1.pod - rm -f $@ - cat $<|pod2man -n $* -s 1 -r ${VERSION} -c "Proxmox Documentation"|gzip -c9 >$@ +# this require package pve-doc-generator +export NOVIEW=1 +include /usr/share/pve-doc-generator/pve-doc-generator.mk -%.5.gz: %.5.pod - rm -f $@ - cat $<|pod2man -n $* -s 5 -r ${VERSION} -c "Proxmox Documentation"|gzip -c9 >$@ +all: -pct.1.pod: pct - perl -I. -T -e "use PVE::CLI::pct; PVE::CLI::pct->generate_pod_manpage();" >$@ +pct.bash-completion: + PVE_GENERATING_DOCS=1 perl -I. -T -e "use PVE::CLI::pct; PVE::CLI::pct->generate_bash_completions();" >$@.tmp + mv $@.tmp $@ -pct.conf.5.pod: gen-pct-conf-pod.pl PVE/LXC.pm - perl -I. ./gen-pct-conf-pod.pl >$@ +.PHONY: check +check: test + make -C test .PHONY: install -install: pct lxc-pve.conf lxc-pve-prestart-hook lxc-pve-mount-hook lxc-pve-poststop-hook lxcnetaddbr pct.1.pod pct.1.gz pct.conf.5.pod pct.conf.5.gz pve-update-lxc-config pct.bash-completion - perl -I. -T -e "use PVE::CLI::pct; PVE::CLI::pct->verify_api();" +install: pct lxc-pve.conf lxc-pve-prestart-hook lxc-pve-autodev-hook lxc-pve-poststop-hook lxcnetaddbr pct.1 pct.conf.5 pct.bash-completion pve-userns.seccomp + PVE_GENERATING_DOCS=1 perl -I. -T -e "use PVE::CLI::pct; PVE::CLI::pct->verify_api();" install -d ${SBINDIR} install -m 0755 pct ${SBINDIR} - install -m 0755 pve-update-lxc-config ${SBINDIR} install -d ${LXC_SCRIPT_DIR} install -m 0755 lxcnetaddbr ${LXC_SCRIPT_DIR} + install -m 0755 pve-container-stop-wrapper ${LXC_SCRIPT_DIR} + install -d -m0755 ${SERVICEDIR} + install -m0644 pve-container@.service ${SERVICEDIR}/ + install -m0644 'system-pve\x2dcontainer.slice' ${SERVICEDIR}/ install -d ${LXC_HOOK_DIR} install -m 0755 lxc-pve-prestart-hook ${LXC_HOOK_DIR} - install -m 0755 lxc-pve-mount-hook ${LXC_HOOK_DIR} + install -m 0755 lxc-pve-autodev-hook ${LXC_HOOK_DIR} install -m 0755 lxc-pve-poststop-hook ${LXC_HOOK_DIR} + install -d ${LXC_CONFIG_DIR} + install -m 0644 pve-userns.seccomp ${LXC_CONFIG_DIR}/pve-userns.seccomp install -d ${LXC_COMMON_CONFIG_DIR} install -m 0644 lxc-pve.conf ${LXC_COMMON_CONFIG_DIR}/01-pve.conf install -m 0644 -D pct.bash-completion ${BASHCOMPLDIR}/pct make -C PVE install install -d ${MAN1DIR} install -d ${MAN5DIR} - install -d ${PODDIR} - install -m 0644 pct.1.gz ${MAN1DIR} - install -m 0644 pct.1.pod ${PODDIR} - install -m 0644 pct.conf.5.pod ${PODDIR} - install -m 0644 pct.conf.5.gz ${MAN5DIR} + install -m 0644 pct.1 ${MAN1DIR} + gzip -9 ${MAN1DIR}/pct.1 + install -m 0644 pct.conf.5 ${MAN5DIR} + gzip -9 ${MAN5DIR}/pct.conf.5 + cd ${MAN5DIR}; ln -s pct.conf.5.gz ct.conf.5.gz + + # Note: for backwards compatibility only + # lxc@.service.d, snippet and reboot script can be removed in PVE 6.0 + install -d -m 0755 ${SERVICEDIR}/lxc@.service.d + install -m 0644 pve-reboot.conf ${SERVICEDIR}/lxc@.service.d/ + install -m 0755 lxc-pve-reboot-trigger ${LXC_SCRIPT_DIR} + +pve-userns.seccomp: /usr/share/lxc/config/common.seccomp + cp $< $@ + echo 'keyctl errno 38' >> $@ + .PHONY: test test: @@ -62,7 +79,8 @@ test: .PHONY: clean clean: make -C test clean - rm -rf *.1.pod *.1.gz + make cleanup-docgen + rm -rf *.1 *.5 *.tmp *.bash-completion find . -name '*~' -exec rm {} ';' .PHONY: distclean