]>
git.proxmox.com Git - pmg-api.git/blob - Makefile
8c5508f1534e8cacb4e0387e8a076f916c917620
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})
32 TEMPLATES_FILES
= $(addprefix, 'templates/', ${TEMPLATES})
44 PMG
/AccessControl.pm \
56 PMG
/RuleDB
/Object.pm \
57 PMG
/RuleDB
/Quarantine.pm \
58 PMG
/RuleDB
/WhoRegex.pm \
59 PMG
/RuleDB
/IPAddress.pm \
61 PMG
/RuleDB
/ModField.pm \
62 PMG
/RuleDB
/MatchFilename.pm \
63 PMG
/RuleDB
/ReceiverRegex.pm \
65 PMG
/RuleDB
/Receiver.pm \
66 PMG
/RuleDB
/Domain.pm \
67 PMG
/RuleDB
/ReceiverDomain.pm \
68 PMG
/RuleDB
/TimeFrame.pm \
69 PMG
/RuleDB
/MatchField.pm \
70 PMG
/RuleDB
/ContentTypeFilter.pm \
71 PMG
/RuleDB
/ArchiveFilter.pm \
74 PMG
/RuleDB
/ReportSpam.pm \
75 PMG
/RuleDB
/Remove.pm \
76 PMG
/RuleDB
/Attach.pm \
78 PMG
/RuleDB
/Counter.pm \
79 PMG
/RuleDB
/Notify.pm \
80 PMG
/RuleDB
/Disclaimer.pm \
81 PMG
/RuleDB
/Accept.pm \
87 PMG
/API2
/Services.pm \
90 PMG
/API2
/AccessControl.pm \
94 all: ${LIBSOURCES} ${CLI_BINARIES} ${TEMPLATES_FILES}
97 deb
${DEB}: ${LIBSOURCES} ${CLI_BINARIES} ${TEMPLATES_FILES}
100 cd build
; dpkg-buildpackage
-b
-us
-uc
104 PMG
/pmgcfg.pm
: PMG
/pmgcfg.pm.in
105 sed
-e s
/@VERSION@
/${PKGVER}/ -e s
/@PACKAGERELEASE@
/${PKGREL}/ -e s
/@PACKAGE@
/${PACKAGE}/ -e s
/@REPOID@
/${REPOID}/ $< >$@.tmp
109 perl
-I.
-T
-e
"use PMG::CLI::$*; PMG::CLI::$*->generate_bash_completions();" >$@.tmp
112 %.service-bash-completion
:
113 perl
-I.
-T
-e
"use PMG::Service::$*; PMG::Service::$*->generate_bash_completions();" >$@.tmp
116 install: ${BTDATA} $(addsuffix .pm
, $(addprefix PMG
/Service
/, ${SERVICES})) $(addsuffix .service-bash-completion
, ${SERVICES}) ${LIBSOURCES} ${CLI_BINARIES} $(addsuffix .bash-completion
, ${CLITOOLS}) ${TEMPLATES_FILES}
117 for i in
${SERVICES}; do perl
-I.
-T
-e
"use PMG::Service::$$i; PMG::Service::$$i->verify_api();"; done
118 for i in
${CLITOOLS}; do perl
-I.
-T
-e
"use PMG::CLI::$$i; PMG::CLI::$$i->verify_api();"; done
119 install -d
-m
0755 ${DESTDIR}/usr
/bin
120 install -d
-m
0700 -o www-data
-g www-data
${DESTDIR}/var
/log
/pmgproxy
121 install -d
-m
0755 ${DOCDIR}
122 # TODO: is there a better location ?
123 install -m
0644 favicon.ico
${DOCDIR}
124 for i in
${LIBSOURCES}; do
install -D
-m
0644 $$i ${PERL5DIR}/$$i; done
125 for i in
${SERVICES}; do
install -D
-m
0644 PMG
/Service
/$$i.pm
${PERL5DIR}/PMG
/Service
/$$i.pm
; done
126 for i in
${SERVICES}; do
install -m
0755 bin
/$$i ${DESTDIR}/usr
/bin
; done
127 for i in
${SERVICES}; do
install -m
0644 -D
$$i.service-bash-completion
${BASHCOMPLDIR}/$$i; done
128 for i in
${CLITOOLS}; do
install -D
-m
0644 PMG
/CLI
/$$i.pm
${PERL5DIR}/PMG
/CLI
/$$i.pm
; done
129 for i in
${CLITOOLS}; do
install -D
-m
0755 bin
/$$i ${DESTDIR}/usr
/bin
/$$i; done
130 for i in
${CLITOOLS}; do
install -D
-m
0644 $$i.bash-completion
${BASHCOMPLDIR}/$$i; done
131 for i in
${TEMPLATES}; do
install -D
-m
0644 templates
/$$i ${DESTDIR}/var
/lib
/pmg
/templates
/$$i; done
135 .
/repoid.pl .git
/ check
136 # fixme tar cf - ${DEB} | ssh repoman@repo.proxmox.com upload
146 rm -rf .
/build
*.deb
*.changes
*.buildinfo
*.bash-completion
*.service-bash-completion
147 if
test -d .git
; then
rm -f PMG
/pmgcfg.pm
; fi
148 find .
-name
'*~' -exec
rm {} ';'