#!/usr/bin/make -f

DEBHELPER_VERSION = $(strip $(shell dpkg-query -f '$${Version}' -W debhelper))
DEBHELPER_SYSTEMD_OK = $(strip $(shell dpkg --compare-versions $(DEBHELPER_VERSION) ge 10.9.1~; echo $$?))

%:
	dh ${@} --sourcedirectory=open-vm-tools --with=autotools_dev,autoreconf,systemd

override_dh_auto_configure:
	dh_auto_configure --sourcedirectory=open-vm-tools -- \
			--prefix=/usr \
			--libdir=\$${prefix}/lib \
			--without-kernel-modules \
			--with-pic \
			--enable-xmlsec1 \
			--with-gtk3  \
			CFLAGS="-fPIC -Wno-deprecated-declarations $(CFLAGS)" \
			CUSTOM_PROCPS_NAME=procps

override_dh_auto_install:
	dh_auto_install --sourcedirectory=open-vm-tools -- DESTDIR=$(CURDIR)/debian/open-vm-tools

	if [ -e debian/open-vm-tools/etc/pam.d/vmtoolsd-x64 ]; \
	then \
		sed -i -e "s|lib64|lib|g" debian/open-vm-tools/etc/pam.d/vmtoolsd-x64; \
		mv debian/open-vm-tools/etc/pam.d/vmtoolsd-x64 debian/open-vm-tools/etc/pam.d/vmtoolsd; \
	fi

	# permissions
	chmod 0644 debian/*/etc/pam.d/*
	chmod 4755 debian/*/usr/bin/vmware-user-suid-wrapper

	install -D -m 0644 debian/local/xautostart.conf debian/open-vm-tools-desktop/etc/vmware-tools/xautostart.conf
	install -D -m 0644 debian/local/tools.conf debian/open-vm-tools/etc/vmware-tools/tools.conf

	install -D -m 0644 debian/local/run-vmblock\\x2dfuse.mount debian/open-vm-tools-desktop/lib/systemd/system/run-vmblock\\x2dfuse.mount
	install -D -m 0644 debian/local/open-vm-tools-desktop.conf debian/open-vm-tools-desktop/usr/lib/modules-load.d/open-vm-tools-desktop.conf

	# open-vm-tools-dev
	mkdir -p debian/open-vm-tools-dev/usr/share/doc/open-vm-tools
	mv debian/open-vm-tools/usr/share/doc/open-vm-tools/api debian/open-vm-tools-dev/usr/share/doc/open-vm-tools
	mkdir -p debian/open-vm-tools-dev/usr/lib
	mv \
	    debian/open-vm-tools/usr/lib/*.a \
	    debian/open-vm-tools/usr/lib/*.so \
	    debian/open-vm-tools/usr/lib/pkgconfig \
	    debian/open-vm-tools-dev/usr/lib
	mv debian/open-vm-tools/usr/include debian/open-vm-tools-dev/usr


	# removing useless files
	rm -f debian/open-vm-tools/usr/lib/*.la
	rm -f debian/open-vm-tools/usr/lib/open-vm-tools/plugins/*/*.la
	rm -rf debian/open-vm-tools/usr/share/open-vm-tools/tests

	# mount(8) calls the program as /sbin/mount.vmhgfs
	mv debian/open-vm-tools/usr/sbin/mount.vmhgfs debian/open-vm-tools/sbin/

	# moving open-vm-tools-desktop files
	mkdir -p debian/open-vm-tools-desktop/usr/lib/open-vm-tools/plugins
	mv debian/open-vm-tools/usr/lib/open-vm-tools/plugins/vmusr debian/open-vm-tools-desktop/usr/lib/open-vm-tools/plugins

	mkdir -p debian/open-vm-tools-desktop/usr/bin
	mv debian/open-vm-tools/usr/bin/vmware-user-suid-wrapper debian/open-vm-tools-desktop/usr/bin

	mkdir -p debian/open-vm-tools-desktop/etc/xdg/autostart
	mv debian/open-vm-tools/etc/xdg/autostart/vmware-user.desktop debian/open-vm-tools-desktop/etc/xdg/autostart
	rm -rf debian/open-vm-tools/etc/xdg

override_dh_builddeb:
	dh_builddeb -- -Zxz

override_dh_fixperms:
	dh_testroot
	find debian/open-vm-tools/etc -type f -print0 | xargs -0 chmod ugo-x
	chmod ugo+x debian/open-vm-tools/etc/vmware-tools/scripts/vmware/*
	chmod ugo+x debian/open-vm-tools/etc/vmware-tools/vm-support
	chmod ugo+x debian/open-vm-tools/etc/vmware-tools/*-vm-default

	dh_fixperms -Xvmware-user-suid-wrapper

override_dh_systemd_enable:
	dh_systemd_enable -popen-vm-tools
	dh_systemd_enable -popen-vm-tools --name vgauth
	dh_systemd_enable -popen-vm-tools-desktop run-vmblock\\x2dfuse.mount

override_dh_systemd_start:
	dh_systemd_start -popen-vm-tools
	dh_systemd_start -popen-vm-tools --name vgauth
	# "deb-systemd-invoke start" (and only that) as generated by
	# dh_systemd_start will fail for run-vmblock\\x2dfuse.mount on xenial.
	# A custom section in the Maintainer scripts will take care of it
	# Disabled on Backport: dh_systemd_start -popen-vm-tools-desktop -r run-vmblock\\x2dfuse.mount
	# The following sed's are needed in Xenial as well to fix dh_installinit and dh_systemd_enable behavior
	sed -i 's,run-vmblock\\x2dfuse,run-vmblock\\\\x2dfuse,g' debian/*.debhelper
	sed -i 's,run-vmblock-fuse,run-vmblock\\\\x2dfuse,g' debian/*.debhelper

override_dh_installchangelogs:
	dh_installchangelogs ReleaseNotes.md

override_dh_md5sums-arch:
	dh_md5sums
	# remove broken \ escaping from md5sums
	sed -i -e 's,^\\,,' -e 's,\\\\,\\,' debian/open-vm-tools-desktop/DEBIAN/md5sums

