#!/usr/bin/make -f

include /usr/share/dpkg/pkg-info.mk

export UPSTREAM_VERSION := $(shell echo "$(DEB_VERSION)" | cut -d '+' -f 1)
export TARGET := libOrthancNeuro.so

export DEB_BUILD_MAINT_OPTIONS := hardening=+all

# Disable assert() checking from upstream project, for best performance
# https://lists.debian.org/debian-med/2018/04/msg00132.html
export DEB_CFLAGS_MAINT_APPEND=-DNDEBUG
export DEB_CXXFLAGS_MAINT_APPEND=-DNDEBUG

%:
	dh $@ --builddirectory=Build

CMAKE_EXTRA_FLAGS += \
	-DCMAKE_SKIP_RPATH:BOOL=ON \
	-DSTATIC_BUILD:BOOL=OFF \
	-DORTHANC_FRAMEWORK_SOURCE=system \
	-DUSE_GOOGLE_TEST_DEBIAN_PACKAGE:BOOL=ON \
	-DORTHANC_FRAMEWORK_USE_SHARED:BOOL=OFF \
	"-DORTHANC_FRAMEWORK_ADDITIONAL_LIBRARIES=dcmdata dcmjpls dcmimage dcmjpeg ofstd boost_filesystem boost_iostreams boost_locale boost_regex boost_thread pugixml uuid jsoncpp png jpeg z" \
	-DCMAKE_BUILD_TYPE=None  # The build type must be set to None, see #711515


# Automated generation of the "Built-Using" attribute in "d/control"
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=989128
# Adapted from:
# https://wiki.debian.org/SIMDEverywhere#Approach (Point 6)
override_dh_gencontrol:
	dh_gencontrol -- -Vorthancframework:Built-Using="$(shell dpkg-query -f '$${source:Package} (= $${source:Version}), ' -W liborthancframework-dev)"

override_dh_auto_configure:
	dh_auto_configure -- $(CMAKE_EXTRA_FLAGS)

override_dh_auto_test:
ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
	( cd Build; ./UnitTests )
endif

override_dh_auto_install:
	dh_install Build/${TARGET}.${UPSTREAM_VERSION} usr/lib/orthanc

override_dh_link:
	dh_link usr/lib/orthanc/${TARGET}.${UPSTREAM_VERSION} usr/share/orthanc/plugins/${TARGET}

override_dh_installchangelogs:
	dh_installchangelogs -k NEWS