#!/usr/bin/make -f

# Hardening.
export DEB_BUILD_MAINT_OPTIONS=hardening=+all
export DEB_CXXFLAGS_MAINT_APPEND = -g1

BUILD_DOC = $(if $(shell dh_listpackages | grep libpcl-doc),-DWITH_DOCS=ON)

# use clang on some archs as gcc is running into "virtual memory exhausted"
ifneq (,$(filter $(DEB_BUILD_ARCH),mipsel armhf armel))
  PARALLEL=--max-parallel=2
  export CC=/usr/bin/clang-11
  export CXX=/usr/bin/clang++-11
  # fails with "Unknown debugging section .debug_addr"
  # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1016936
  # can be removed once dwz is fixed
override_dh_dwz:
else
  PARALLEL=
endif

ifneq (,$(filter $(DEB_BUILD_ARCH),s390x powerpc ppc64 riscv64))
  RUN_TESTS=
else
  RUN_TESTS=-DBUILD_global_tests=ON -DBUILD_TESTS=ON

override_dh_auto_test:
	make -C obj-${DEB_HOST_GNU_TYPE} tests

endif

override_dh_auto_configure:
	dh_auto_configure -- 						\
	-DLIB_INSTALL_DIR:STRING="lib/$(DEB_HOST_MULTIARCH)"		\
	-DCMAKE_SKIP_RPATH=ON -DPCL_ENABLE_SSE=OFF			\
	-DBUILD_apps_in_hand_scanner=ON \
	-DBUILD_apps_modeler=ON \
	-DBUILD_apps=ON \
	-DBUILD_apps_point_cloud_editor=ON \
	-DPCL_DISABLE_GPU_TESTS=ON \
	$(BUILD_DOC) $(RUN_TESTS)

%:
	dh $@ $(PARALLEL)
