#!/usr/bin/make -f
# See debhelper(7) (uncomment to enable)
# output every command that modifies files on the build system.
#DH_VERBOSE = 1

# see EXAMPLES in dpkg-buildflags(1) and read /usr/share/dpkg/*
DPKG_EXPORT_BUILDFLAGS = 1
include /usr/share/dpkg/default.mk
include /usr/share/dpkg/pkg-info.mk

# see FEATURE AREAS in dpkg-buildflags(1)
export DEB_BUILD_MAINT_OPTIONS = hardening=+all

# see ENVIRONMENT in dpkg-buildflags(1)
# package maintainers to append CFLAGS
#export DEB_CFLAGS_MAINT_APPEND  = -Wall -pedantic
# package maintainers to append LDFLAGS
export DEB_LDFLAGS_MAINT_APPEND := -lpthread
# Link with libatomic on riscv64 to get access to the __atomic_*_1 functions
ifeq ($(DEB_HOST_ARCH),riscv64)
	export DEB_LDFLAGS_MAINT_APPEND += -Wl,--no-as-needed -latomic -Wl,--as-needed
endif

ifneq (,$(findstring nodoc,$(DEB_BUILD_OPTIONS)))
	DOCS=OFF
else
	DOCS=ON
endif

# main packaging script based on dh7 syntax
%:
	dh $@

override_dh_auto_configure:
	[ "$(DOCS)" = "ON" ] || echo "Found 'nodoc' in 'DEB_BUILD_OPTIONS'; not building documentation"
	echo $(DEB_VERSION_UPSTREAM) > VERSION_CURRENT
	dh_auto_configure -- \
	-DENABLE_AUTOMATIC_INIT_AND_CLEANUP=OFF \
	-DENABLE_MONGOC=ON \
	-DENABLE_MAN_PAGES=$(DOCS) \
	-DENABLE_HTML_DOCS=$(DOCS) \
	-DENABLE_MAINTAINER_FLAGS=ON \
	-DENABLE_TESTS=OFF \
	-DENABLE_ZLIB=SYSTEM \
	-DUSE_BUNDLED_UTF8PROC=OFF

override_dh_auto_clean:
	rm -f VERSION_CURRENT
	dh_auto_clean

override_dh_auto_install:
	dh_auto_install
	find $(CURDIR)/debian/tmp/usr/include -type f -name "*.h" -print0 | \
		xargs -0r sed -i -e 's@\([" ]\)[^ ]*-f\(file\|debug\)-prefix-map=[^ ]*\([" ]\)@\1\3@g'

#override_dh_install:
#	dh_install -a -X.la -Xmongoc-stat -Xdoc/mongo-c-driver -Xdoc/libbson -Xman/man3 -X-priv.so -X-priv.pc --fail-missing

override_dh_makeshlibs:
	dh_makeshlibs -V

override_dh_auto_test:
	echo "Skip dh_auto_test because upstream CI already tests extensively"