mirror of https://github.com/rspamd/rspamd.git
Rapid spam filtering system
https://rspamd.com/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
89 lines
2.8 KiB
89 lines
2.8 KiB
#!/usr/bin/make -f
|
|
|
|
export DEB_BUILD_MAINT_OPTIONS = hardening=+all reproducible=+fixfilepath
|
|
export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed
|
|
export ASAN_OPTIONS=detect_leaks=0
|
|
|
|
DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)
|
|
builddir = debian/build/flavor-
|
|
FLAVORS = release asan
|
|
CONFIG_asan = -DCMAKE_BUILD_TYPE=Debug -DSANITIZE=address -DENABLE_LTO=OFF
|
|
CONFIG_release = -DCMAKE_BUILD_TYPE=RelWithDebInfo -DENABLE_LTO=ON
|
|
|
|
ENABLE_LUAJIT := -DENABLE_LUAJIT=ON -DLUA_ROOT=/luajit-build
|
|
|
|
# Can be filled by a build system
|
|
EXTRA_ARGS :=
|
|
ENABLE_JEMALLOC := -DENABLE_JEMALLOC=ON
|
|
ENABLE_HYPERSCAN := -DENABLE_HYPERSCAN=ON
|
|
|
|
ifneq ($(filter $(DEB_HOST_ARCH),arm64),)
|
|
ENABLE_JEMALLOC := -DENABLE_JEMALLOC=OFF
|
|
ENABLE_HYPERSCAN := -DENABLE_HYPERSCAN=ON -DHYPERSCAN_ROOT_DIR=/vectorscan
|
|
endif
|
|
|
|
%:
|
|
dh $@ --with systemd --parallel
|
|
|
|
override_dh_auto_configure: $(patsubst %,configure_%,$(FLAVORS))
|
|
configure_%:
|
|
mkdir -p $(builddir)$*
|
|
cd $(builddir)$* && cmake ../../../ -DCONFDIR=/etc/rspamd \
|
|
-DMANDIR=/usr/share/man \
|
|
-DRUNDIR=/run/rspamd \
|
|
-DDBDIR=/var/lib/rspamd \
|
|
-DLOGDIR=/var/log/rspamd \
|
|
-DSHAREDIR=/usr/share/rspamd \
|
|
-DLIBDIR=/usr/lib/rspamd \
|
|
-DINCLUDEDIR=/usr/include \
|
|
-DSYSTEMDDIR=/lib/systemd/system \
|
|
-DCMAKE_INSTALL_PREFIX:PATH=/usr \
|
|
-DCMAKE_BUILD_WITH_INSTALL_RPATH=ON \
|
|
-DDEBIAN_BUILD=1 \
|
|
-DENABLE_PCRE2=ON \
|
|
-DENABLE_LIBUNWIND=ON \
|
|
-DWANT_SYSTEMD_UNITS=ON \
|
|
-DENABLE_LIBCXX=AUTO \
|
|
$(ENABLE_HYPERSCAN) \
|
|
$(ENABLE_LUAJIT) \
|
|
$(ENABLE_JEMALLOC) \
|
|
$(CONFIG_$*) \
|
|
$(EXTRA_ARGS)
|
|
|
|
override_dh_auto_build: $(patsubst %,build_%,$(FLAVORS))
|
|
build_%:
|
|
dh_auto_build --sourcedirectory=$(builddir)$*
|
|
|
|
override_dh_strip: $(patsubst %,strip_%,$(FLAVORS))
|
|
strip_%:
|
|
if [ "$*" = "asan" ]; then \
|
|
dh_strip -prspamd-asan --dbg-package=rspamd-asan-dbg ; \
|
|
else \
|
|
dh_strip -prspamd --dbg-package=rspamd-dbg ; \
|
|
fi
|
|
|
|
override_dh_makeshlibs:
|
|
dh_makeshlibs -Xrspamd-actrie
|
|
|
|
override_dh_auto_install: $(patsubst %,install_%,$(FLAVORS))
|
|
install_%:
|
|
if [ "$*" = "asan" ]; then \
|
|
cd $(builddir)$* && make install DESTDIR=../../../debian/rspamd-asan ; \
|
|
cd ../../../debian/rspamd-asan && mkdir -p var/lib/rspamd \
|
|
var/log/rspamd \
|
|
etc/rspamd/local.d \
|
|
etc/rspamd/override.d ; \
|
|
else \
|
|
cd $(builddir)$* && make install DESTDIR=../../../debian/rspamd ; \
|
|
cd ../../../debian/rspamd && mkdir -p var/lib/rspamd \
|
|
var/log/rspamd \
|
|
etc/rspamd/local.d \
|
|
etc/rspamd/override.d ; \
|
|
fi
|
|
|
|
override_dh_fixperms:
|
|
dh_fixperms
|
|
chmod 750 $(CURDIR)/debian/rspamd/var/lib/rspamd
|
|
chmod 750 $(CURDIR)/debian/rspamd/var/log/rspamd
|
|
chmod 750 $(CURDIR)/debian/rspamd-asan/var/lib/rspamd
|
|
chmod 750 $(CURDIR)/debian/rspamd-asan/var/log/rspamd
|