]> git.proxmox.com Git - pve-ha-manager.git/blob - src/Makefile
bump version to 1.0-17
[pve-ha-manager.git] / src / Makefile
1 PACKAGE=pve-ha-manager
2 SIMPACKAGE=pve-ha-simulator
3
4 PREFIX=/usr
5 BINDIR=${PREFIX}/bin
6 SBINDIR=${PREFIX}/sbin
7 MANDIR=${PREFIX}/share/man
8 DOCDIR=${PREFIX}/share/doc/${PACKAGE}
9 SIMDOCDIR=${PREFIX}/share/doc/${SIMPACKAGE}
10 PODDIR=${DOCDIR}/pod
11 MAN1DIR=${MANDIR}/man1/
12 BASHCOMPLDIR=${PREFIX}/share/bash-completion/completions/
13 export PERLDIR=${PREFIX}/share/perl5
14
15 all: watchdog-mux
16
17 %.1.gz: %.1.pod
18 rm -f $@
19 cat $<|pod2man -n $* -s 1 -r ${VERSION} -c "Proxmox Documentation"|gzip -c9 >$@.tmp
20 mv $@.tmp $@
21
22 pve-ha-crm.1.pod:
23 perl -I. -T -e "use PVE::Service::pve_ha_crm; PVE::Service::pve_ha_crm->generate_pod_manpage();" >$@.tmp
24 mv $@.tmp $@
25
26 pve-ha-crm.bash-completion:
27 perl -I. -T -e "use PVE::Service::pve_ha_crm; PVE::Service::pve_ha_crm->generate_bash_completions();" >$@.tmp
28 mv $@.tmp $@
29
30 pve-ha-lrm.1.pod:
31 perl -I. -T -e "use PVE::Service::pve_ha_lrm; PVE::Service::pve_ha_lrm->generate_pod_manpage();" >$@.tmp
32 mv $@.tmp $@
33
34 pve-ha-lrm.bash-completion:
35 perl -I. -T -e "use PVE::Service::pve_ha_lrm; PVE::Service::pve_ha_lrm->generate_bash_completions();" >$@.tmp
36 mv $@.tmp $@
37
38 ha-manager.1.pod:
39 perl -I. -T -e "use PVE::CLI::ha_manager; PVE::CLI::ha_manager->generate_pod_manpage();" >$@.tmp
40 mv $@.tmp $@
41
42 ha-manager.bash-completion:
43 perl -I. -T -e "use PVE::CLI::ha_manager; PVE::CLI::ha_manager->generate_bash_completions();" >$@.tmp
44 mv $@.tmp $@
45
46
47 watchdog-mux: watchdog-mux.c
48 gcc watchdog-mux.c -o watchdog-mux -Wall -Wl,-z,relro $$(pkg-config --libs --cflags libsystemd-daemon)
49
50 .PHONY: install
51 install: watchdog-mux pve-ha-crm pve-ha-lrm ha-manager.1.pod ha-manager.1.gz pve-ha-crm.1.pod pve-ha-crm.1.gz pve-ha-lrm.1.pod pve-ha-lrm.1.gz ha-manager.bash-completion pve-ha-lrm.bash-completion pve-ha-crm.bash-completion
52 perl -I. -T -e "use PVE::Service::pve_ha_crm; PVE::Service::pve_ha_crm->verify_api();"
53 perl -I. -T -e "use PVE::Service::pve_ha_lrm; PVE::Service::pve_ha_lrm->verify_api();"
54 perl -I. -T -e "use PVE::CLI::ha_manager; PVE::CLI::ha_manager->verify_api();"
55 install -d ${DESTDIR}${SBINDIR}
56 install -m 0755 pve-ha-crm ${DESTDIR}${SBINDIR}
57 install -m 0755 pve-ha-lrm ${DESTDIR}${SBINDIR}
58 install -m 0755 ha-manager ${DESTDIR}${SBINDIR}
59 install -m 0755 watchdog-mux ${DESTDIR}${SBINDIR}
60 install -m 0644 -D pve-ha-crm.bash-completion ${DESTDIR}${BASHCOMPLDIR}/pve-ha-crm
61 install -m 0644 -D pve-ha-lrm.bash-completion ${DESTDIR}${BASHCOMPLDIR}/pve-ha-lrm
62 install -m 0644 -D ha-manager.bash-completion ${DESTDIR}${BASHCOMPLDIR}/ha-manager
63 make -C PVE install
64 install -d ${DESTDIR}/usr/share/man/man1
65 install -d ${DESTDIR}${PODDIR}
66 install -m 0644 pve-ha-crm.1.gz ${DESTDIR}/usr/share/man/man1/
67 install -m 0644 pve-ha-crm.1.pod ${DESTDIR}/${PODDIR}
68 install -m 0644 pve-ha-lrm.1.gz ${DESTDIR}/usr/share/man/man1/
69 install -m 0644 pve-ha-lrm.1.pod ${DESTDIR}/${PODDIR}
70 install -m 0644 ha-manager.1.gz ${DESTDIR}/usr/share/man/man1/
71 install -m 0644 ha-manager.1.pod ${DESTDIR}/${PODDIR}
72
73 .PHONY: installsim
74 installsim: pve-ha-simulator
75 install -d ${DESTDIR}${SBINDIR}
76 install -m 0755 pve-ha-simulator ${DESTDIR}${SBINDIR}
77 make -C PVE PERLDIR=${PREFIX}/share/${SIMPACKAGE} installsim
78
79 .PHONY: test
80 test:
81 make -C test test
82
83 .PHONY: clean
84 clean:
85 make -C test clean
86 rm -rf watchdog-mux *.1.pod *.1.gz *.bash-completion *.tmp
87 find . -name '*~' -exec rm {} ';'
88
89 .PHONY: distclean
90 distclean: clean
91