]> git.proxmox.com Git - proxmox-spamassassin.git/blame - Makefile
buildsys: add sbuild convenience target
[proxmox-spamassassin.git] / Makefile
CommitLineData
9e1a2302 1include /usr/share/dpkg/default.mk
63a37115
TL
2
3# howto add rule updates:
f803c821 4
df264c7c
SI
5# running `make update-sa` updates the core SA rules (in the sa-updates directory)
6# running `make update-kam` updates the KAM ruleset (in the kam-updates directory)
7
7b922beb 8
3e32306b
SI
9OPKGNAME = Mail-SpamAssassin-$(DEB_VERSION_UPSTREAM)
10NPKGNAME = proxmox-spamassassin_$(DEB_VERSION_UPSTREAM)
11DEB = proxmox-spamassassin_$(DEB_VERSION_UPSTREAM_REVISION)_amd64.deb
12DBG_DEB = proxmox-spamassassin-dbgsym_$(DEB_VERSION_UPSTREAM_REVISION)_amd64.deb
13DEBS = $(DEB) $(DBG_DEB)
14DSC = proxmox-spamassassin_$(DEB_VERSION_UPSTREAM_REVISION).dsc
7b922beb 15
bbb32883 16KAM_CHANNEL_FILE = debian/tree/etc/mail/spamassassin/channel.d/KAM_channel.conf
3e32306b 17KAM_KEYID = $(shell awk -F '=' '/^KEYID/ { print $$2 }' $(KAM_CHANNEL_FILE))
bbb32883 18
7a367109 19
ae1e4fd8
SI
20SA_UPDATE_GPG_DIR = .sa-update-gpghome
21
3e32306b 22deb: $(DEB)
f8a626c3 23
3e32306b
SI
24$(DEB) $(DBG_DEB): $(NPKGNAME)
25 cd $(NPKGNAME); dpkg-buildpackage -b -us -uc -rfakeroot
26 lintian $(DEB)
7b922beb 27
b870b07a
SI
28dsc:
29 $(MAKE) $(DSC)
30 lintian $(DSC)
73ae04ad 31
3e32306b
SI
32$(DSC): $(NPKGNAME)
33 cd $(NPKGNAME); dpkg-buildpackage -S -us -uc -rfakeroot -d
b870b07a
SI
34
35.PHONY: sbuild
36sbuild: $(DSC)
37 sbuild $(DSC)
426b8f0a 38
4da3759d 39.PHONY: update-upstream
3e32306b 40update-upstream: $(OPKGNAME).tar.gz
4da3759d 41 rm -rf upstream
426b8f0a 42 tar -xzf $<
3e32306b 43 mv $(OPKGNAME) upstream
14fcd860 44
3e32306b
SI
45$(NPKGNAME).orig.tar.gz: upstream/
46 rm -rf $(NPKGNAME)
47 cp -a upstream $(NPKGNAME)
48 tar -czf $@ $(NPKGNAME)
426b8f0a 49
3e32306b 50$(NPKGNAME): sa-updates kam-updates $(NPKGNAME).orig.tar.gz
426b8f0a
SI
51 cp -a debian $@
52 mkdir -p $@/debian/tree/usr/share/spamassassin
054f24db 53 rsync -av sa-updates/ $@/debian/tree/usr/share/spamassassin
426b8f0a 54 mkdir -p $@/debian/tree/usr/share/spamassassin-extra
bbb32883 55 rsync -av kam-updates/ $@/debian/tree/usr/share/spamassassin-extra
426b8f0a 56
3e32306b 57$(OPKGNAME).tar.gz:
ac5080f9
SI
58 rm -f $@*
59 curl -L -o '$@#1.tmp' 'https://www-eu.apache.org/dist/spamassassin/source/$@{,.asc}'
60 mv $@.tmp $@
61 mv $@.asc.tmp $@.asc
62 gpgv --keyring ./sa-releasekey.gpg $@.asc $@
63
3e32306b
SI
64$(SA_UPDATE_GPG_DIR)/.prepared: $(OPKGNAME).tar.gz
65 rm -rf $(SA_UPDATE_GPG_DIR)
66 mkdir --mode=0700 -p $(SA_UPDATE_GPG_DIR)
67 tar --strip-components 2 -xzf $(OPKGNAME).tar.gz $(OPKGNAME)/rules/sa-update-pubkey.txt
68 sa-update --gpghomedir $(SA_UPDATE_GPG_DIR) --import sa-update-pubkey.txt
69 sa-update --gpghomedir $(SA_UPDATE_GPG_DIR) --import $(KAM_CHANNEL_FILE)
ae1e4fd8
SI
70 rm sa-update-pubkey.txt
71 touch $@
72
27e14884 73.PHONY: update-sa
3e32306b 74update-sa: $(SA_UPDATE_GPG_DIR)/.prepared
d2ab4c52 75 rm -rf updates.tmp
3e32306b 76 sa-update --gpghomedir $(SA_UPDATE_GPG_DIR) --updatedir updates.tmp --channel updates.spamassassin.org
054f24db 77 rsync -av --delete --exclude=local.cf --exclude=regression_tests.cf --exclude=*.txt --exclude=MIRRORED.BY updates.tmp/updates_spamassassin_org/ sa-updates
7b922beb 78
bbb32883 79.PHONY: update-kam
3e32306b 80update-kam: $(SA_UPDATE_GPG_DIR)/.prepared
701fc746 81 rm -rf kam-updates.tmp kam-updates
3e32306b 82 sa-update --gpghomedir $(SA_UPDATE_GPG_DIR) --gpgkey $(KAM_KEYID) --updatedir kam-updates.tmp --channel kam.sa-channels.mcgrail.com
bbb32883
SI
83 rm -rf kam-updates.tmp/kam_sa-channels_mcgrail_com/MIRRORED.BY
84 mv kam-updates.tmp kam-updates
85
7b922beb 86.PHONY: upload
9e1a2302 87upload: UPLOAD_DIST ?= $(DEB_DISTRIBUTION)
3e32306b 88upload: $(DEBS)
9e1a2302 89 tar cf - $(DEBS) | ssh -X repoman@repo.proxmox.com -- upload --product pmg --dist $(UPLOAD_DIST)
7b922beb 90
feec84ce
TL
91.PHONY: clean distclean
92clean:
3e32306b 93 rm -rf *~ debian/*~ *.deb proxmox-spamassassin_* updates.tmp kam-updates.tmp $(SA_UPDATE_GPG_DIR) $(OPKGNAME).tar.gz.*
7b922beb 94
feec84ce 95distclean: clean
3e32306b 96 rm -rf $(OPKGNAME).*
19fb7ca6
DM
97
98.PHONY: dinstall
3e32306b
SI
99dinstall: $(DEB)
100 dpkg -i $(DEB)