#!/usr/bin/make -f

# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1

PY3VER = $(shell py3versions -d -v)
DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
CMAKE_ARGS = -DLIB_SUFFIX="/$(DEB_HOST_MULTIARCH)" \
  -DTARGET_PLUGIN_FOLDER="elektra4" \
  -DPLUGINS="ALL" \
  -DTOOLS="ALL" \
  -DBUILD_STATIC=OFF \
  -DBINDINGS="ALL" \
  -DSWIG_EXECUTABLE="/usr/bin/swig3.0" \
  -DPython_ADDITIONAL_VERSIONS="$(PY3VER)" \
  -DGTEST_ROOT="/usr/src/gtest" \
  -DTARGET_DOCUMENTATION_HTML_FOLDER="share/doc/elektra-doc/html"
T = $(CURDIR)/teststmp
EMPTY =
SPACE = $(EMPTY) $(EMPTY)
COMMA_SPACE = ,$(SPACE)
PKGS_ALL_PLUGINS = $(subst $(SPACE),$(COMMA_SPACE),$(filter libelektra4-%,$(shell dh_listpackages)))

export DEB_LDFLAGS_MAINT_APPEND := -Wl,--as-needed

%:
	dh $@ --parallel --buildsystem=cmake --with lua,python3

override_dh_auto_configure:
	dh_auto_configure --buildsystem=cmake -- $(CMAKE_ARGS)

override_dh_auto_test:
ifeq (,$(findstring nocheck,$(DEB_BUILD_OPTIONS)))
	mkdir -p "$(T)"
	cd obj-* && env HOME="$(T)" TMPDIR="$(T)" ctest --output-on-failure -E '(testscr|testkdb)_.*'
	find "$(T)" | sort
	rm -rf "$(T)"
endif

override_dh_auto_install:
	dh_auto_install
	find $(CURDIR)/debian/tmp \( -name '*.map' -o -name '*.md5' \) -delete

override_dh_install:
	dh_install --list-missing

override_dh_compress:
	dh_compress -X.lua -Xexamples

override_dh_strip:
	dh_strip --dbg-package=elektra-dbg

override_dh_makeshlibs:
	dh_makeshlibs -Xusr/lib/$(DEB_HOST_MULTIARCH)/elektra4 -Xlibelektragetenv.so

override_dh_shlibdeps:
	# to find libelektragetenv.so
	dh_shlibdeps -l$(CURDIR)/debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/

override_dh_gencontrol:
	dh_gencontrol -- -Velektra:allPlugins='$(PKGS_ALL_PLUGINS)'
