#!/usr/bin/make -f

export DH_VERBOSE=1
DPKG_EXPORT_BUILDFLAGS = 1
include /usr/share/dpkg/buildflags.mk

DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
INSTDIR:=debian/libgridtools-dev
LIBDIR:=/usr/lib/$(DEB_HOST_MULTIARCH)
CMAKE_DIR:=$(INSTDIR)/$(LIBDIR)/cmake/gridtools

NO_NATIVE_ARCHS := powerpc ppc64el ppc64 riscv64 sh4 s390x  hppa m68k mipsel
NATIVE :=   $(if $(filter $(DEB_TARGET_ARCH), $(NO_NATIVE_ARCHS)), \
	 -DGT_ENABLE_BACKEND_X86=Off -DGT_ENABLE_BACKEND_NAIVE=Off ) 


BUILD_FLAGS = \
	-DCMAKE_MODULE_PATH=/usr/share/ecbuild/cmake \
	-DINSTALL_GTEST=Off \
	-DBUILD_TESTING=Off $(NATIVE)

# Test suite requires 4 processors. Fake it on OpenMPI
export OMPI_MCA_rmaps_base_oversubscribe=1

%:
	dh $@ --buildsystem=cmake 

override_dh_auto_configure:
	dh_auto_configure -- ${BUILD_FLAGS} 

override_dh_auto_install:
	dh_auto_install
	# Shuffle to correct locations
	install -d $(INSTDIR)/$(LIBDIR)/cmake
	install -d $(INSTDIR)/usr/share/doc/libgridtools-dev
	mv $(INSTDIR)/usr/lib/libgcl.a $(INSTDIR)/$(LIBDIR)
	mv $(INSTDIR)/usr/lib/cmake $(INSTDIR)/$(LIBDIR)/cmake/gridtools
	mv $(INSTDIR)/usr/gridtools_examples $(INSTDIR)/usr/share/doc/libgridtools-dev
	for d in \
                $(CMAKE_DIR)/GridToolsConfig.cmake \
                $(CMAKE_DIR)/GridToolsTargets-none.cmake ; do \
                cat $$d | \
                        sed -e 's%$${_IMPORT_PREFIX}/include%$(INCDIR)%g' | \
                        sed -e 's%$${_IMPORT_PREFIX}/lib%$(LIBDIR)%g' | \
                        sed -e 's%$${_IMPORT_PREFIX}/bin%/usr/bin%g' | \
                        sed -e 's%$${PACKAGE_PREFIX_DIR}/lib/cmake%$(LIBDIR)/cmake/gridtools%g' | \
                > $(CMAKE_DIR)/tmp ; \
                mv $(CMAKE_DIR)/tmp $$d ; \
                done

