#!/usr/bin/make -f
# -*- makefile -*-

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

nv_libs_Debian	+= nvidia-driver-libs
#nv_libs_Debian	+= nvidia-driver-libs-nonglvnd
nv_libs_Debian	+= nvidia-tesla-418-driver-libs
nv_libs_Debian	+= nvidia-tesla-418-driver-libs-nonglvnd
nv_libs_Debian	+= nvidia-legacy-390xx-driver-libs
nv_libs_Debian	+= nvidia-legacy-390xx-driver-libs-nonglvnd
nv_libs_Debian	+= nvidia-driver-libs-any
nv_libs_Debian	+= bumblebee-nvidia

nv_libs_Ubuntu	+= bumblebee-nvidia

VENDOR		:= $(shell dpkg-vendor --derives-from Ubuntu && echo Ubuntu || echo Debian)

DPKG_EXPORT_BUILDFLAGS = 1
export DEB_BUILD_MAINT_OPTIONS = hardening=+all
include /usr/share/dpkg/default.mk

DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)

ifeq ($(VENDOR),Ubuntu)
	PRIMUS_libGLa=/usr/lib/$(DEB_HOST_MULTIARCH)/mesa/libGL.so.1
	PRIMUS_libGLd=/usr/lib/$(DEB_HOST_MULTIARCH)/mesa/libGL.so.1
else
	PRIMUS_libGLa=/usr/lib/$(DEB_HOST_MULTIARCH)/libGL.so.1
	PRIMUS_libGLd=/usr/lib/$(DEB_HOST_MULTIARCH)/libGL.so.1
endif

# Where to put the resulting library during build
BUILD_LIBDIR ?= lib

%:
	dh $@

override_dh_clean:
	rm -rf $(BUILD_LIBDIR)
	dh_clean

override_dh_auto_build:
	dh_auto_build -- LIBDIR=$(BUILD_LIBDIR) \
	    PRIMUS_libGLd=$(PRIMUS_libGLd) \
	    PRIMUS_libGLa=$(PRIMUS_libGLa) \
	    PRIMUS_UPLOAD=$(PRIMUS_UPLOAD)

override_dh_install:
	install -d debian/primus/usr/bin/
	install -m 0755 primusrun debian/primus/usr/bin/
	install -d debian/primus-libs/usr/lib/$(DEB_HOST_MULTIARCH)/primus/
	cp -r $(BUILD_LIBDIR)/* debian/primus-libs/usr/lib/$(DEB_HOST_MULTIARCH)/primus/
	install -d debian/primus/usr/share/bash-completion/completions/
	install -m 0644 -T primus.bash-completion debian/primus/usr/share/bash-completion/completions/primus
	dh_install

override_dh_gencontrol:
	dh_gencontrol -- -V'nvidia:Depends=$(foreach l,$(nv_libs_$(VENDOR)),$(l) |)'
