#!/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

# 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 = -Wl,--as-needed

include /usr/share/dpkg/architecture.mk

ifneq (,$(findstring mips,$(DEB_TARGET_ARCH)))
  CXX_FLAGS="$(shell pkg-config --cflags-only-I mpi) -mxgot"
else
  CXX_FLAGS="$(shell pkg-config --cflags-only-I mpi)"
endif
EXE_LINKER_FLAGS="$(shell pkg-config --libs-only-l mpi)"
ifneq (,$(filter $(DEB_TARGET_ARCH),mips64el))
  BUILD_TYPE=MinSizeRel
  EXCLUDE_TESTS=-t\!eigen_suite
else
  BUILD_TYPE=none
  EXCLUDE_TESTS=
endif

%:
	dh $@  --buildsystem=cmake

override_dh_auto_configure:
	dh_auto_configure -- 					\
		-DCMAKE_BUILD_TYPE=${BUILD_TYPE}		\
		-DTA_BUILD_UNITTEST=ON				\
		-DTA_ERROR="throw"				\
		-DENABLE_SHARED_LIBRARIES=OFF			\
		-DCMAKE_CXX_FLAGS=${CXX_FLAGS}			\
		-DCMAKE_EXE_LINKER_FLAGS=${EXE_LINKER_FLAGS}

override_dh_auto_build:
	dh_auto_build
	(cd obj-*/tests; make ta_test)

ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
override_dh_auto_test:
	export OMPI_MCA_plm_rsh_agent=/bin/false
	-(cd obj-*/tests; mpiexec -np 2 ./ta_test --log_level=test_suite ${EXCLUDE_TESTS})
endif
