]> git.proxmox.com Git - pve-ha-manager.git/blame - src/Makefile
1891 Add zsh command completion for ha-manager CLI tools
[pve-ha-manager.git] / src / Makefile
CommitLineData
ba878e35
DM
1PACKAGE=pve-ha-manager
2SIMPACKAGE=pve-ha-simulator
3
4PREFIX=/usr
5BINDIR=${PREFIX}/bin
6SBINDIR=${PREFIX}/sbin
7MANDIR=${PREFIX}/share/man
8DOCDIR=${PREFIX}/share/doc/${PACKAGE}
9SIMDOCDIR=${PREFIX}/share/doc/${SIMPACKAGE}
ba878e35 10MAN1DIR=${MANDIR}/man1/
5bd54a5c 11MAN8DIR=${MANDIR}/man8/
a3cf990d 12BASHCOMPLDIR=${PREFIX}/share/bash-completion/completions/
2dbc3669 13ZSHCOMPLDIR=${PREFIX}/share/zsh/vendor-completions/
ba878e35
DM
14export PERLDIR=${PREFIX}/share/perl5
15
08faa7f0
DM
16# this requires package pve-doc-generator
17export NOVIEW=1
18include /usr/share/pve-doc-generator/pve-doc-generator.mk
ba878e35 19
08faa7f0 20all: watchdog-mux
a802c337
TL
21
22pve-ha-crm.bash-completion:
a1c88626 23 PVE_GENERATING_DOCS=1 perl -I. -T -e "use PVE::Service::pve_ha_crm; PVE::Service::pve_ha_crm->generate_bash_completions();" >$@.tmp
9fbeceab 24 mv $@.tmp $@
ba878e35 25
e7148ee3 26pve-ha-lrm.bash-completion:
a1c88626 27 PVE_GENERATING_DOCS=1 perl -I. -T -e "use PVE::Service::pve_ha_lrm; PVE::Service::pve_ha_lrm->generate_bash_completions();" >$@.tmp
9fbeceab 28 mv $@.tmp $@
ba878e35 29
a3cf990d 30ha-manager.bash-completion:
a1c88626 31 PVE_GENERATING_DOCS=1 perl -I. -T -e "use PVE::CLI::ha_manager; PVE::CLI::ha_manager->generate_bash_completions();" >$@.tmp
9fbeceab 32 mv $@.tmp $@
a3cf990d 33
2dbc3669
CE
34pve-ha-crm.zsh-completion:
35 PVE_GENERATING_DOCS=1 perl -I. -T -e "use PVE::Service::pve_ha_crm; PVE::Service::pve_ha_crm->generate_zsh_completions();" >$@.tmp
36 mv $@.tmp $@
37
38pve-ha-lrm.zsh-completion:
39 PVE_GENERATING_DOCS=1 perl -I. -T -e "use PVE::Service::pve_ha_lrm; PVE::Service::pve_ha_lrm->generate_zsh_completions();" >$@.tmp
40 mv $@.tmp $@
41
42ha-manager.zsh-completion:
43 PVE_GENERATING_DOCS=1 perl -I. -T -e "use PVE::CLI::ha_manager; PVE::CLI::ha_manager->generate_zsh_completions();" >$@.tmp
44 mv $@.tmp $@
45
ba878e35 46watchdog-mux: watchdog-mux.c
f8a3fc80 47 gcc watchdog-mux.c -o watchdog-mux -Wall -Wl,-z,relro
ba878e35
DM
48
49.PHONY: install
2dbc3669
CE
50install: watchdog-mux pve-ha-crm pve-ha-lrm ha-manager.1 pve-ha-crm.8 pve-ha-lrm.8 ha-manager.bash-completion pve-ha-lrm.bash-completion \
51 pve-ha-crm.bash-completion ha-manager.zsh-completion pve-ha-lrm.zsh-completion pve-ha-crm.zsh-completion pve-ha-simulator
a1c88626
WB
52 PVE_GENERATING_DOCS=1 perl -I. -T -e "use PVE::Service::pve_ha_crm; PVE::Service::pve_ha_crm->verify_api();"
53 PVE_GENERATING_DOCS=1 perl -I. -T -e "use PVE::Service::pve_ha_lrm; PVE::Service::pve_ha_lrm->verify_api();"
54 PVE_GENERATING_DOCS=1 perl -I. -T -e "use PVE::CLI::ha_manager; PVE::CLI::ha_manager->verify_api();"
ba878e35
DM
55 install -d ${DESTDIR}${SBINDIR}
56 install -m 0755 pve-ha-crm ${DESTDIR}${SBINDIR}
57 install -m 0755 pve-ha-lrm ${DESTDIR}${SBINDIR}
aab4f80b 58 install -m 0755 ha-manager ${DESTDIR}${SBINDIR}
bcde32d4 59 install -m 0755 watchdog-mux ${DESTDIR}${SBINDIR}
c9748287
TL
60 install -d ${DESTDIR}${BINDIR}
61 install -m 0755 pve-ha-simulator ${DESTDIR}${BINDIR}
a802c337 62 install -m 0644 -D pve-ha-crm.bash-completion ${DESTDIR}${BASHCOMPLDIR}/pve-ha-crm
e7148ee3 63 install -m 0644 -D pve-ha-lrm.bash-completion ${DESTDIR}${BASHCOMPLDIR}/pve-ha-lrm
a3cf990d 64 install -m 0644 -D ha-manager.bash-completion ${DESTDIR}${BASHCOMPLDIR}/ha-manager
2dbc3669
CE
65 install -m 0644 -D pve-ha-crm.zsh-completion ${DESTDIR}${ZSHCOMPLDIR}/_pve-ha-crm
66 install -m 0644 -D pve-ha-lrm.zsh-completion ${DESTDIR}${ZSHCOMPLDIR}/_pve-ha-lrm
67 install -m 0644 -D ha-manager.zsh-completion ${DESTDIR}${ZSHCOMPLDIR}/_ha-manager
ba878e35 68 make -C PVE install
1116ca25 69 make -C PVE PERLDIR=${PREFIX}/share/${SIMPACKAGE} installsim
5bd54a5c
DM
70 install -d ${DESTDIR}/${MAN8DIR}
71 install -m 0644 pve-ha-crm.8 ${DESTDIR}/${MAN8DIR}
72 gzip -9 ${DESTDIR}/${MAN8DIR}/pve-ha-crm.8
73 install -m 0644 pve-ha-lrm.8 ${DESTDIR}/${MAN8DIR}
74 gzip -9 ${DESTDIR}/${MAN8DIR}/pve-ha-lrm.8
75 install -d ${DESTDIR}/${MAN1DIR}
76 install -m 0644 ha-manager.1 ${DESTDIR}/${MAN1DIR}
77 gzip -9 ${DESTDIR}/${MAN1DIR}/ha-manager.1
ba878e35 78
ba878e35
DM
79.PHONY: test
80test:
4189699e 81 make -C test test
ba878e35
DM
82
83.PHONY: clean
08faa7f0
DM
84clean:
85 make cleanup-docgen
ba878e35 86 make -C test clean
2dbc3669 87 rm -rf watchdog-mux *.1.pod *.1.gz *.bash-completion *.zsh-completion *.tmp
ba878e35
DM
88 find . -name '*~' -exec rm {} ';'
89
90.PHONY: distclean
91distclean: clean
92