#!/usr/bin/make -f

export DEB_BUILD_MAINT_OPTIONS = hardening=+all

BUILD_TESTS := $(if $(or $(filter nocheck,$(DEB_BUILD_OPTIONS)),$(filter armhf armel,$(DEB_HOST_ARCH))),OFF,ON)
BUILD_HIP := $(if $(filter amd64 ppc64el,$(DEB_HOST_ARCH)),ON,OFF)
SOVERSION := 0d
SOVERSION_ISH := 0t64
SOVERSION_HIP := 0d

%:
	dh $@ --buildsystem=cmake

override_dh_auto_configure:
	dh_auto_configure --buildsystem=cmake  --builddirectory=obj-openmp -- \
		-DSTDGPU_SETUP_COMPILER_FLAGS=ON \
		-DSTDGPU_BUILD_TESTS=$(BUILD_TESTS) \
		-DSTDGPU_BUILD_EXAMPLES=OFF \
		-DSTDGPU_BUILD_BENCHMARKS=OFF \
		-DSTDGPU_BUILD_SHARED_LIBS=ON \
		-DSTDGPU_BACKEND=STDGPU_BACKEND_OPENMP \
		-DSTDGPU_SOVERSION=$(SOVERSION) \
		-DSTDGPU_OUTPUT_NAME=stdgpu_openmp
ifeq ($(BUILD_HIP),ON)
	dh_auto_configure --buildsystem=cmake  --builddirectory=obj-hip -- \
		-DSTDGPU_SETUP_COMPILER_FLAGS=ON \
		-DSTDGPU_BUILD_TESTS=OFF \
		-DSTDGPU_BUILD_EXAMPLES=OFF \
		-DSTDGPU_BUILD_BENCHMARKS=OFF \
		-DSTDGPU_BUILD_SHARED_LIBS=ON \
		-DSTDGPU_BACKEND=STDGPU_BACKEND_HIP \
		-DCMAKE_HIP_ARCHITECTURES=OFF \
		-DSTDGPU_SOVERSION=$(SOVERSION_HIP) \
		-DSTDGPU_OUTPUT_NAME=stdgpu_hip
endif

override_dh_auto_build:
	dh_auto_build --buildsystem=cmake --builddirectory=obj-openmp
ifeq ($(BUILD_HIP),ON)
	dh_auto_build --buildsystem=cmake --builddirectory=obj-hip
endif

override_dh_auto_test:
	dh_auto_test --buildsystem=cmake --builddirectory=obj-openmp
ifeq ($(BUILD_HIP),ON)
	dh_auto_test --buildsystem=cmake --builddirectory=obj-hip
endif

override_dh_auto_install:
	dh_auto_install --buildsystem=cmake --builddirectory=obj-openmp --destdir=debian/tmp-openmp
ifeq ($(BUILD_HIP),ON)
	dh_auto_install --buildsystem=cmake --builddirectory=obj-hip --destdir=debian/tmp-hip
endif

override_dh_install:
	dh_install --package=libstdgpu-openmp$(SOVERSION_ISH) --package=libstdgpu-openmp-dev --sourcedir=debian/tmp-openmp
ifeq ($(BUILD_HIP),ON)
	dh_install --package=libstdgpu-hip$(SOVERSION_HIP) --package=libstdgpu-hip-dev --sourcedir=debian/tmp-hip
endif

