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

export PYBUILD_NAME = vpp-api
export PYBUILD_DIR = @CMAKE_SOURCE_DIR@/vpp-api/python
export PYBUILD_DESTDIR_python3=debian/python3-vpp-api/
export PYBUILD_DISABLE_python3=test
export PYBUILD_SYSTEM=distutils
DH_WITH = systemd,python3

build3vers := $(shell py3versions -sv)

# main packaging script based on dh7 syntax
%:
	dh $@ --with $(DH_WITH) --buildsystem=pybuild

override_dh_strip:
	dh_strip --dbg-package=vpp-dbg

DEB_HOST_MULTIARCH = $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)

override_dh_install:
	@for c in @VPP_COMPONENTS@; do \
	  @CMAKE_COMMAND@ \
	    -D CMAKE_INSTALL_CONFIG_NAME=@CMAKE_BUILD_TYPE@ \
	    -D CMAKE_INSTALL_COMPONENT=$$c \
	    -D CMAKE_INSTALL_PREFIX=@VPP_BINARY_DIR@/debian/$$c \
	    -P @CMAKE_BINARY_DIR@/cmake_install.cmake 2>&1 \
	    | grep -v 'Set runtime path of' ; \
	  if [ -d debian/$$c/lib ] ; then \
	    mv debian/$$c/lib debian/$$c/$(DEB_HOST_MULTIARCH) ; \
	    mkdir -p debian/$$c/usr/lib ; \
	    mv debian/$$c/$(DEB_HOST_MULTIARCH) debian/$$c/usr/lib ; \
	  fi ; \
	  for d in bin include share ; do \
	    if [ -d debian/$$c/$$d ] ; then \
	      mkdir -p debian/$$c/usr ; \
	      mv debian/$$c/$$d debian/$$c/usr/$$d ; \
	    fi ; \
	  done ; \
	  if [ -d debian/$$c ] ; then \
	    @CMAKE_SOURCE_DIR@/scripts/remove-rpath debian/$$c ; \
	  fi ; \
	done
