]>
git.proxmox.com Git - pmg-api.git/blob - Makefile
1 PACKAGE
=proxmox-mailgateway-api
5 DEB
=${PACKAGE}_
${PKGVER}-${PKGREL}_all.deb
9 PERL5DIR
=${DESTDIR}/usr
/share
/perl5
10 DOCDIR
=${DESTDIR}/usr
/share
/doc
/${PACKAGE}
11 BASHCOMPLDIR
=${DESTDIR}/usr
/share
/bash-completion
/completions
/
13 REPOID
=`./repoid.pl .git`
15 SERVICES
= pmgdaemon pmgproxy
18 CLI_CLASSES
= $(addprefix, 'PMG/API2/', $(addsuffix '.pm', ${CLITOOLS}))
19 CLI_BINARIES
= $(addprefix, 'bin/', ${CLITOOLS})
31 PMG
/AccessControl.pm \
40 PMG
/RuleDB
/Object.pm \
41 PMG
/RuleDB
/Quarantine.pm \
42 PMG
/RuleDB
/WhoRegex.pm \
43 PMG
/RuleDB
/IPAddress.pm \
45 PMG
/RuleDB
/ModField.pm \
46 PMG
/RuleDB
/MatchFilename.pm \
47 PMG
/RuleDB
/ReceiverRegex.pm \
49 PMG
/RuleDB
/Receiver.pm \
50 PMG
/RuleDB
/Domain.pm \
51 PMG
/RuleDB
/ReceiverDomain.pm \
52 PMG
/RuleDB
/TimeFrame.pm \
53 PMG
/RuleDB
/MatchField.pm \
54 PMG
/RuleDB
/ContentTypeFilter.pm \
57 PMG
/RuleDB
/ReportSpam.pm \
58 PMG
/RuleDB
/Remove.pm \
59 PMG
/RuleDB
/Attach.pm \
61 PMG
/RuleDB
/Counter.pm \
62 PMG
/RuleDB
/Notify.pm \
63 PMG
/RuleDB
/Disclaimer.pm \
64 PMG
/RuleDB
/Accept.pm \
70 PMG
/API2
/Services.pm \
73 PMG
/API2
/AccessControl.pm \
77 all: ${LIBSOURCES} ${CLI_BINARIES}
80 deb
${DEB}: ${LIBSOURCES} ${CLI_BINARIES}
83 cd build
; dpkg-buildpackage
-b
-us
-uc
87 PMG
/pmgcfg.pm
: PMG
/pmgcfg.pm.in
88 sed
-e s
/@VERSION@
/${PKGVER}/ -e s
/@PACKAGERELEASE@
/${PKGREL}/ -e s
/@PACKAGE@
/${PACKAGE}/ -e s
/@REPOID@
/${REPOID}/ $< >$@.tmp
92 perl
-I.
-T
-e
"use PMG::CLI::$*; PMG::CLI::$*->generate_bash_completions();" >$@.tmp
95 %.service-bash-completion
:
96 perl
-I.
-T
-e
"use PMG::Service::$*; PMG::Service::$*->generate_bash_completions();" >$@.tmp
99 install: ${BTDATA} $(addsuffix .pm
, $(addprefix PMG
/Service
/, ${SERVICES})) $(addsuffix .service-bash-completion
, ${SERVICES}) ${LIBSOURCES} ${CLI_BINARIES} $(addsuffix .bash-completion
, ${CLITOOLS})
100 for i in
${SERVICES}; do perl
-I.
-T
-e
"use PMG::Service::$$i; PMG::Service::$$i->verify_api();"; done
101 for i in
${CLITOOLS}; do perl
-I.
-T
-e
"use PMG::CLI::$$i; PMG::CLI::$$i->verify_api();"; done
102 install -d
-m
0755 ${DESTDIR}/usr
/bin
103 install -d
-m
0700 -o www-data
-g www-data
${DESTDIR}/var
/log
/pmgproxy
104 install -d
-m
0755 ${DOCDIR}
105 # TODO: is there a better location ?
106 install -m
0644 favicon.ico
${DOCDIR}
107 for i in
${LIBSOURCES}; do
install -D
-m
0644 $$i ${PERL5DIR}/$$i; done
108 for i in
${SERVICES}; do
install -D
-m
0644 PMG
/Service
/$$i.pm
${PERL5DIR}/PMG
/Service
/$$i.pm
; done
109 for i in
${SERVICES}; do
install -m
0755 bin
/$$i ${DESTDIR}/usr
/bin
; done
110 for i in
${SERVICES}; do
install -m
0644 -D
$$i.service-bash-completion
${BASHCOMPLDIR}/$$i; done
111 for i in
${CLITOOLS}; do
install -D
-m
0644 PMG
/CLI
/$$i.pm
${PERL5DIR}/PMG
/CLI
/$$i.pm
; done
112 for i in
${CLITOOLS}; do
install -D
-m
0755 bin
/$$i ${DESTDIR}/usr
/bin
/$$i; done
113 for i in
${CLITOOLS}; do
install -D
-m
0644 $$i.bash-completion
${BASHCOMPLDIR}/$$i; done
117 .
/repoid.pl .git
/ check
118 # fixme tar cf - ${DEB} | ssh repoman@repo.proxmox.com upload
128 rm -rf .
/build
*.deb
*.changes
*.buildinfo
*.bash-completion
*.service-bash-completion
129 if
test -d .git
; then
rm -f PMG
/pmgcfg.pm
; fi
130 find .
-name
'*~' -exec
rm {} ';'