File: rules

package info (click to toggle)
open-vm-tools 2%3A10.1.5-5055683-4%2Bdeb9u2
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 33,880 kB
  • sloc: ansic: 198,544; cpp: 85,889; sh: 12,044; makefile: 3,772; xml: 545
file content (137 lines) | stat: -rwxr-xr-x 5,622 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
#!/usr/bin/make -f

VERSION = $(shell dpkg-parsechangelog | awk '/^Version: / { print $$2 }' | sed -e 's|^.*:||' -e 's|-.*$$||')

UPSTREAM_VERSION = $(strip $(shell grep '^TOOLS_VERSION' open-vm-tools/configure.ac | sed 's,.*=",,;s,",,'))

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

override_dh_autoreconf:
	set -e; \
	    cd open-vm-tools ; \
	    cp configure.ac configure.ac.autoreconf ; \
	    cp modules/linux/dkms.sh modules/linux/dkms.sh.autoreconf ;\
	    sed -i 's,$(UPSTREAM_VERSION),$(VERSION),g' configure.ac ;\
	    sed -i 's,$(UPSTREAM_VERSION),$(VERSION),g' modules/linux/dkms.sh
	dh_autoreconf --sourcedirectory=open-vm-tools

override_dh_autoreconf_clean:
	dh_autoreconf_clean 
	set -e ;\
	    cd open-vm-tools ; \
	    if [ -f configure.ac.autoreconf ]; then \
	        mv configure.ac.autoreconf configure.ac ;\
	    fi ;\
	    if [ -f modules/linux/dkms.sh.autoreconf ]; then \
	        mv modules/linux/dkms.sh.autoreconf modules/linux/dkms.sh ;\
	    fi

override_dh_auto_configure:
	dh_auto_configure --sourcedirectory=open-vm-tools -- \
			--prefix=/usr \
			--libdir=\$${prefix}/lib \
			--without-kernel-modules \
			--with-pic \
			CFLAGS="-fPIC -Wno-deprecated-declarations $(CFLAGS)" \
			CUSTOM_PROCPS_NAME=procps \
			CXXFLAGS='-std=gnu++11'
	find . -name Makefile -exec sed -i '/.*CPPFLAGS.*/s,-std=c++11,,' '{}' \;

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 0755 debian/local/vmxnet.hook debian/open-vm-tools-dkms/usr/share/initramfs-tools/hooks/vmxnet
	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


	# open-vm-tools-dkms
	mkdir -p debian/open-vm-tools-dkms/usr/src
	cd open-vm-tools && sh modules/linux/dkms.sh . ../debian/open-vm-tools-dkms/usr/src
	find debian/open-vm-tools-dkms/usr/src -name COPYING | xargs rm -f
	find debian/open-vm-tools-dkms/usr/src -name "Makefile*" | xargs chmod 0755

	# 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

	# fix dkms folder, upstream fails on it sometimes...
	if ! test -d debian/open-vm-tools-dkms/usr/src/open-vm-tools-$(VERSION); then \
	    mv debian/open-vm-tools-dkms/usr/src/open-vm-tools-* debian/open-vm-tools-dkms/usr/src/open-vm-tools-$(VERSION) ; \
	fi

override_dh_builddeb:
	dh_builddeb -- -Zxz

override_dh_dkms:
	sed 's,DEBIAN_VERSION,$(VERSION),g' debian/open-vm-tools-dkms.dkms.in > debian/open-vm-tools-dkms.dkms
	dh_dkms -popen-vm-tools-dkms -V $(VERSION)

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
	dh_systemd_start -popen-vm-tools-desktop -r --no-restart-after-upgrade run-vmblock\\x2dfuse.mount
	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