From 93634ac3cff78f5e83856404f4f5732cd1256892 Mon Sep 17 00:00:00 2001
From: Chris Ridd <chrisridd@mac.com>
Date: Wed, 28 Oct 2009 19:02:09 +0000
Subject: [PATCH] Use DESTDIR when installing Solaris modules

The rest of open-vm-tools seems to install files using the optional DESTDIR
environment variable. However kernel modules are just copied to the absolute
/kernel/drv directory, which makes it hard to install to other boot
environments, local trees for packaging purposes, etc.

I have only been able to build the vmblock and vmhgfs modules, but the vmxnet
and vmxnet3 modules have very similar-looking install rules. The install rule
for vmmemctl looks quite different and has possibly bit-rotted - it isn't
updated in this change.

Signed-off-by: Chris Ridd <chrisridd@mac.com>
---
 open-vm-tools/modules/solaris/vmblock/Makefile |    9 +++++----
 open-vm-tools/modules/solaris/vmhgfs/Makefile  |    9 +++++----
 open-vm-tools/modules/solaris/vmxnet/Makefile  |    9 +++++----
 open-vm-tools/modules/solaris/vmxnet3/Makefile |   13 +++++++------
 4 files changed, 22 insertions(+), 18 deletions(-)

diff --git a/open-vm-tools/modules/solaris/vmblock/Makefile b/open-vm-tools/modules/solaris/vmblock/Makefile
index 1f7b0e4..2ec4edf 100644
--- a/open-vm-tools/modules/solaris/vmblock/Makefile
+++ b/open-vm-tools/modules/solaris/vmblock/Makefile
@@ -120,7 +120,8 @@ clean:
 
 install:
 	@echo "Installing modules"
-	cp $(MODULE_32) /kernel/drv/
-	chmod 755 /kernel/drv/$(MODULE)
-	cp $(MODULE_64) /kernel/drv/amd64
-	chmod 755 /kernel/drv/amd64/$(MODULE)
+	mkdir -p $(DESTDIR)/kernel/drv/amd64
+	cp $(MODULE_32) $(DESTDIR)/kernel/drv/
+	chmod 755 $(DESTDIR)/kernel/drv/$(MODULE)
+	cp $(MODULE_64) $(DESTDIR)/kernel/drv/amd64
+	chmod 755 $(DESTDIR)/kernel/drv/amd64/$(MODULE)
diff --git a/open-vm-tools/modules/solaris/vmhgfs/Makefile b/open-vm-tools/modules/solaris/vmhgfs/Makefile
index 8132c96..8a6058e 100644
--- a/open-vm-tools/modules/solaris/vmhgfs/Makefile
+++ b/open-vm-tools/modules/solaris/vmhgfs/Makefile
@@ -168,7 +168,8 @@ clean:
 
 install:
 	@echo "Installing modules"
-	cp $(MODULE_32) /kernel/drv/
-	chmod 755 /kernel/drv/$(MODULE)
-	cp $(MODULE_64) /kernel/drv/amd64
-	chmod 755 /kernel/drv/amd64/$(MODULE)
+	mkdir -p $(DESTDIR)/kernel/drv/amd64
+	cp $(MODULE_32) $(DESTDIR)/kernel/drv/
+	chmod 755 $(DESTDIR)/kernel/drv/$(MODULE)
+	cp $(MODULE_64) $(DESTDIR)/kernel/drv/amd64
+	chmod 755 $(DESTDIR)/kernel/drv/amd64/$(MODULE)
diff --git a/open-vm-tools/modules/solaris/vmxnet/Makefile b/open-vm-tools/modules/solaris/vmxnet/Makefile
index 6f76ddb..86a7bf7 100644
--- a/open-vm-tools/modules/solaris/vmxnet/Makefile
+++ b/open-vm-tools/modules/solaris/vmxnet/Makefile
@@ -110,7 +110,8 @@ clean:
 
 install:
 	@echo "Installing modules"
-	cp $(MODULE_32) /kernel/drv/
-	chmod 755 /kernel/drv/$(MODULE)
-	cp $(MODULE_64) /kernel/drv/amd64
-	chmod 755 /kernel/drv/amd64/$(MODULE)
+	mkdir -p $(DESTDIR)/kernel/drv/amd64
+	cp $(MODULE_32) $(DESTDIR)/kernel/drv/
+	chmod 755 $(DESTDIR)/kernel/drv/$(MODULE)
+	cp $(MODULE_64) $(DESTDIR)/kernel/drv/amd64
+	chmod 755 $(DESTDIR)/kernel/drv/amd64/$(MODULE)
diff --git a/open-vm-tools/modules/solaris/vmxnet3/Makefile b/open-vm-tools/modules/solaris/vmxnet3/Makefile
index 7c3a769..0a6269b 100644
--- a/open-vm-tools/modules/solaris/vmxnet3/Makefile
+++ b/open-vm-tools/modules/solaris/vmxnet3/Makefile
@@ -100,9 +100,10 @@ clean:
 
 install:
 	@echo "Installing modules"
-	cp $(MODULE_32) /kernel/drv/
-	chmod 755 /kernel/drv/$(MODULE)
-	cp $(MODULE_64) /kernel/drv/amd64
-	chmod 755 /kernel/drv/amd64/$(MODULE)
-	cp docs/vmxnet3s.conf /kernel/drv/vmxnet3s.conf
-	chmod 644 /kernel/drv/vmxnet3s.conf
+	mkdir -p $(DESTDIR)/kernel/drv/amd64
+	cp $(MODULE_32) $(DESTDIR)/kernel/drv/
+	chmod 755 $(DESTDIR)/kernel/drv/$(MODULE)
+	cp $(MODULE_64) $(DESTDIR)/kernel/drv/amd64
+	chmod 755 $(DESTDIR)/kernel/drv/amd64/$(MODULE)
+	cp docs/vmxnet3s.conf $(DESTDIR)/kernel/drv/vmxnet3s.conf
+	chmod 644 $(DESTDIR)/kernel/drv/vmxnet3s.conf
-- 
1.5.6.5

