#!/usr/bin/make -f

export DEB_BUILD_MAINT_OPTIONS := hardening=+bindnow

include /usr/share/dpkg/default.mk

EXTRA_FLAGS := --buildtype=release
EXTRA_FLAGS += -Dpackager="Kali Linux"
EXTRA_FLAGS += -Dpackager_version="$(DEB_UPSTREAM_VERSION)"
EXTRA_FLAGS += -Dlocal=disabled
EXTRA_FLAGS += -Drizin_bindings=lib/rizin-bindings
EXTRA_FLAGS += -Drizin_plugins=lib/rizin/plugins
EXTRA_FLAGS += -Dsubprojects_check=false
EXTRA_FLAGS += -Duse_sys_capstone=enabled
EXTRA_FLAGS += -Duse_sys_magic=enabled
EXTRA_FLAGS += -Duse_sys_openssl=enabled
EXTRA_FLAGS += -Duse_sys_libzip=enabled
EXTRA_FLAGS += -Duse_sys_lz4=enabled
#EXTRA_FLAGS += -Duse_sys_tree_sitter=enabled
EXTRA_FLAGS += -Duse_sys_xxhash=enabled
EXTRA_FLAGS += -Duse_sys_zlib=enabled
EXTRA_FLAGS += -Duse_sys_libmspack=enabled
EXTRA_FLAGS += -Duse_sys_lzma=enabled
EXTRA_FLAGS += -Duse_sys_pcre2=enabled
EXTRA_FLAGS += -Duse_sys_libzstd=enabled

# architectures with debugging support
DEBUG_SUPPORT := 0
debug_architectures := i386 amd64 arm arm64 mips mips64 powerpc ppc64
ifeq ($(DEB_HOST_ARCH_CPU),$(findstring $(DEB_HOST_ARCH_CPU),$(debug_architectures)))
DEBUG_SUPPORT := 1
endif

# kfreebsd and hurd are not supported
ifneq (linux,$(DEB_HOST_ARCH_OS))
DEBUG_SUPPORT := 0
endif

ifeq (0,$(DEBUG_SUPPORT))
EXTRA_FLAGS += -Ddebugger=false
else
EXTRA_FLAGS += -Ddebugger=true
endif

%:
	dh $@ --buildsystem=meson

override_dh_auto_configure:
	cp -av debian/subprojects/* subprojects/
	dh_auto_configure -- $(EXTRA_FLAGS)

override_dh_auto_test:
	# skip tests

override_dh_makeshlibs:
	dh_makeshlibs -V "librizin0 (>= $(DEB_VERSION_EPOCH_UPSTREAM)), librizin0 (<< $(DEB_VERSION_EPOCH_UPSTREAM).0)"

execute_after_dh_auto_install:
	# Remove incorrect executable flag
	chmod a-x debian/tmp/usr/share/rizin/magic/*
