| #!/usr/bin/make -f |
| # |
| # SpamAssassin debian/rules |
| # (C) 2004-2008 Duncan Findlay <duncf@debian.org> |
| # (C) 2008-2020 Noah Meyerhans <noahm@debian.org> |
| # (C) 2022 Andreas Metzler <ametzler@debian.org> |
| # |
| # Licensed to the Apache Software Foundation (ASF) under one or more |
| # contributor license agreements. See the NOTICE file distributed with |
| # this work for additional information regarding copyright ownership. |
| # The ASF licenses this file to you under the Apache License, Version 2.0 |
| # (the "License"); you may not use this file except in compliance with |
| # the License. You may obtain a copy of the License at: |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| |
| export DEB_BUILD_MAINT_OPTIONS := hardening=+all |
| |
| include /usr/share/dpkg/buildflags.mk |
| |
| # The architecture-dependent portion of this package can be built separately |
| # (i.e. without building the rest). |
| |
| SOURCE := $(shell dpkg-parsechangelog -SSource) |
| VERSION := $(shell dpkg-parsechangelog -SVersion) |
| VERSION_UPSTREAM := $(shell echo "$(VERSION)" | sed -e 's,-[^-]*$$,,') |
| |
| DIR_ORIG = ../orig/$(SOURCE)-$(VERSION_UPSTREAM) |
| TAR_ORIG_NAME = $(SOURCE)_$(VERSION_UPSTREAM).orig.tar.xz |
| TAR_ORIG = $(firstword $(wildcard ../$(TAR_ORIG_NAME)) $(wildcard ../orig/$(TAR_ORIG_NAME))) |
| |
| orig: $(DIR_ORIG) |
| rsync --delete --exclude /debian --exclude .svk --exclude .svn --exclude .git --link-dest=$(DIR_ORIG)/ -a $(DIR_ORIG)/ . |
| QUILT_PATCHES='$(CURDIR)/debian/patches' QUILT_PC=.pc quilt push --quiltrc - -a -q --fuzz=0 |
| |
| $(DIR_ORIG): |
| ifeq ($(TAR_ORIG),) |
| $(error Cannot find orig tarball $(TAR_ORIG_NAME)) |
| else |
| mkdir -p ../orig |
| tar -C ../orig -xaf $(TAR_ORIG) |
| endif |
| |
| |
| %: |
| dh $@ --no-parallel |
| |
| # For building both spamc and spamassassin |
| override_dh_auto_configure: |
| dh_auto_configure --verbose -- \ |
| LDFLAGS="$(LDFLAGS)" \ |
| DESTDIR=$(CURDIR)/debian/spamassassin \ |
| CONFDIR=/etc/spamassassin \ |
| ENABLE_SSL=yes |
| |
| override_dh_auto_clean: |
| dh_auto_clean --verbose |
| [ ! -f Makefile ] || $(MAKE) veryclean |
| |
| rm -f rules/70_sandbox.cf rules/72_active.cf |
| rm -f spamd/spamc.1p sa-awl.1p sa-check_spamd.1p |
| rm -Rf t/log/* t/home |
| rm -f debian/semantic.cache Mail-SpamAssassin-*.tar.gz |
| |
| maintainerclean: |
| dh_testdir |
| rm -f build-indep-stamp build-arch-stamp configure-stamp |
| rm -rf $(filter-out debian .svk .svn .git, $(wildcard * .[^.]*)) |
| |
| |
| override_dh_auto_test: |
| env CFLAGS="$(CPPFLAGS) $(CFLAGS)" \ |
| dh_auto_test --verbose --no-parallel -- HOME=$(CURDIR)/t/home \ |
| LDFLAGS="$(LDFLAGS)" |
| |
| override_dh_auto_build-indep: |
| dh_auto_build --verbose --no-parallel |
| |
| pod2man sa-awl.raw sa-awl.1p |
| pod2man sa-check_spamd.raw sa-check_spamd.1p |
| |
| override_dh_auto_build-arch: |
| env CFLAGS="$(CPPFLAGS) $(CFLAGS)" \ |
| dh_auto_build --verbose --no-parallel -- \ |
| spamc/spamc |
| |
| -mkdir -p blib/man1 |
| pod2man spamc/spamc.pod blib/man1/spamc.1p |
| |
| override_dh_installsystemd-indep: |
| dh_installsystemd -pspamassassin --no-enable --no-start --name spamassassin-maintenance |
| dh_installsystemd -Nspamassassin |
| |
| # SpamAssassin and sa-compile: |
| override_dh_auto_install-indep: |
| dh_auto_install --verbose --no-parallel \ |
| --destdir=$(CURDIR)/debian/spamassassin |
| |
| rm -f debian/spamassassin/usr/bin/spamc debian/spamassassin/usr/share/man/man1/spamc.1p |
| # ...and sa-compile |
| rm -f debian/spamassassin/usr/bin/sa-compile debian/spamassassin/usr/share/man/man1/sa-compile.1p |
| |
| # Move spamd to /usr/sbin + fix the man file |
| sed 's#SPAMD 1#SPAMD 8#' \ |
| debian/spamassassin/usr/share/man/man1/spamd.1p \ |
| > debian/spamd/usr/share/man/man8/spamd.8p |
| rm -f debian/spamassassin/usr/share/man/man1/spamd.1p |
| |
| mv debian/spamassassin/usr/bin/spamd debian/spamd/usr/sbin/ |
| |
| # These files are renamed upon installation, which dh_install |
| # doesn't support, so we do it "the old fashioned way": |
| install -m755 debian/spamassassin-maint.sh \ |
| debian/spamassassin/usr/sbin/spamassassin-maint |
| |
| install -m644 ldap/README \ |
| debian/spamd/usr/share/doc/spamd/README.ldap |
| install -m644 spamd/README \ |
| debian/spamd/usr/share/doc/spamd/README.spamd |
| |
| override_dh_install-indep: |
| dh_install |
| rm -f debian/spamassassin/usr/share/spamassassin/70_sandbox.cf \ |
| debian/spamassassin/usr/share/spamassassin/sandbox-*.pm \ |
| debian/spamassassin/usr/share/spamassassin/*.pre |
| |
| # File modes are inconsistent in upstream's rules repositories. Set them to something sane: |
| chmod 644 debian/spamassassin/usr/share/spamassassin/*.cf |
| |
| |
| # spamc (arch specific) rules follow |
| override_dh_auto_install-arch: |
| install -m755 spamc/spamc debian/spamc/usr/bin/spamc |