Makefile.kmk revision 2084a447d1acb619df7c393fac41b79d517e4b3d
# $Id$
## @file
# Makefile for the Solaris guest additions base directory.
#
#
# Copyright (C) 2008 Sun Microsystems, Inc.
#
# This file is part of VirtualBox Open Source Edition (OSE), as
# available from http://www.virtualbox.org. This file is free software;
# you can redistribute it and/or modify it under the terms of the GNU
# General Public License (GPL) as published by the Free Software
# Foundation, in version 2 as it comes in the "COPYING" file of the
# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
#
# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
# Clara, CA 95054 USA or visit http://www.sun.com if you need
# additional information or have any questions.
#
SUB_DEPTH = ../../../..
include $(KBUILD_PATH)/subheader.kmk
ifneq ($(KBUILD_HOST),solaris)
$(error "The Solaris guest additions installer can only be built on Solaris!")
endif
ifeq ($(KBUILD_HOST),solaris)
include $(PATH_SUB_CURRENT)/SharedFolders/Makefile.kmk
include $(PATH_SUB_CURRENT)/DRM/Makefile.kmk
endif
ifdef VBOX_WITH_COMBINED_SOLARIS_PACKAGE ## @todo remove this when tinderclient.pl is updated.
VBOX_WITH_COMBINED_GUEST_PACKAGE := 1
endif
PKGFILENAME := VBoxSolarisAdditions.pkg
PKGINFO_ARCH = $(shell uname -p)
PKGINFO_REVSTAMP = $(date %Y.%m.%d.%H.%M)
VBOX_PATH_SOLARIS_ADDITION_INSTALLER := $(PATH_SUB_CURRENT)/Installer
VBOX_PATH_X11_ADDITION_INSTALLER := $(PATH_ROOT)/src/VBox/Additions/x11/Installer
SOLARIS_ADDDIR_NAME_64 := amd64
SOLARIS_ADDDIR_NAME_32 := i386
SOLARIS_ADDINST_OUT_DIR := $(PATH_TARGET)/AdditionsInstaller
SOLARIS_VBOXADDINST_SUBDIR := /opt/VirtualBoxAdditions
SOLARIS_VBOXADDINST_DIR := $(SOLARIS_ADDINST_OUT_DIR)$(SOLARIS_VBOXADDINST_SUBDIR)
SOLARIS_VBOXADDINST_DIR_32 := $(SOLARIS_VBOXADDINST_DIR)/$(SOLARIS_ADDDIR_NAME_32)
SOLARIS_VBOXADDINST_DIR_64 := $(SOLARIS_VBOXADDINST_DIR)/$(SOLARIS_ADDDIR_NAME_64)
SOLARIS_ADD_OUT_BIN_64 := $(PATH_OUT_BASE)/solaris.amd64/$(KBUILD_TYPE)/bin/additions
SOLARIS_ADD_OUT_BIN_32 := $(PATH_OUT_BASE)/solaris.x86/$(KBUILD_TYPE)/bin/additions
SOLARIS_ADD_OUT_BIN_ISA := $(PATH_OUT_BASE)/solaris.$(KBUILD_TARGET_ARCH)/$(KBUILD_TYPE)/bin/additions
SOLARIS_ADD_DRIVERINST_DIR := $(SOLARIS_ADDINST_OUT_DIR)/usr/kernel/drv
SOLARIS_ADD_DRIVERINST_DIR_32 := $(SOLARIS_ADD_DRIVERINST_DIR)
SOLARIS_ADD_DRIVERINST_DIR_64 := $(SOLARIS_ADD_DRIVERINST_DIR)/amd64
SOLARIS_ADD_SYSLIBINST_DIR_32 := $(SOLARIS_ADDINST_OUT_DIR)/usr/lib
SOLARIS_ADD_SYSLIBINST_DIR_64 := $(SOLARIS_ADDINST_OUT_DIR)/usr/lib/amd64
SOLARIS_ADD_USRBIN_DIR := $(SOLARIS_ADDINST_OUT_DIR)/usr/bin
SOLARIS_ADD_ETCFS_DIR := $(SOLARIS_ADDINST_OUT_DIR)/etc/fs/vboxfs
SOLARIS_ADD_SERVICESINST_DIR := $(SOLARIS_ADDINST_OUT_DIR)/var/svc/manifest/system/virtualbox
ifeq ($(KBUILD_TARGET_ARCH),x86)
SOLARIS_ADDDIR_NAME_ISA := $(SOLARIS_ADDDIR_NAME_32)
SOLARIS_VBOXADDINST_DIR_ISA := $(SOLARIS_VBOXADDINST_DIR_32)
SOLARIS_ADD_DRIVERINST_DIR_ISA := $(SOLARIS_ADD_DRIVERINST_DIR_32)
SOLARIS_ADD_SYSLIBINST_DIR_ISA := $(SOLARIS_ADD_SYSLIBINST_DIR_32)
else
SOLARIS_ADDDIR_NAME_ISA := $(SOLARIS_ADDDIR_NAME_64)
SOLARIS_VBOXADDINST_DIR_ISA := $(SOLARIS_VBOXADDINST_DIR_64)
SOLARIS_ADD_DRIVERINST_DIR_ISA := $(SOLARIS_ADD_DRIVERINST_DIR_64)
SOLARIS_ADD_SYSLIBINST_DIR_ISA := $(SOLARIS_ADD_SYSLIBINST_DIR_64)
endif
ifeq ($(KBUILD_TYPE),debug)
BIN_COPY := $(CP) -f
BIN_COPY_SYMBOLS := $(CP) -f
else
BIN_COPY := /usr/sfw/bin/gobjcopy -S -R .comment
BIN_COPY_SYMBOLS := /usr/sfw/bin/gobjcopy -g -R .comment
VBOX_COMPRESS := compress -f
endif
INSTALLS += solaris-addcommon solaris-addcommonbins
PROGRAMS += VBoxAddISAExec
PACKING += $(PATH_BIN)/additions/$(PKGFILENAME)
OTHER_CLEAN += $(PACKING)
#
# VBoxAddISAExec
#
VBoxAddISAExec_TEMPLATE = VBOXR3EXE
VBoxAddISAExec_NAME = VBoxISAExec
VBoxAddISAExec_INST = $(INST_ADDITIONS)
VBoxAddISAExec_DEPS = $(VBOX_SVN_REV_KMK)
VBoxAddISAExec_SOURCES = $(PATH_ROOT)/src/VBox/Installer/solaris/VBoxISAExec.c
#
# Install to $(PATH_BIN)/additions/ files from various source paths (to pack them using rules)
#
solaris-addcommonbins_INST = bin/additions/
solaris-addcommonbins_MODE = a+rx,u+w
solaris-addcommonbins_SOURCES = \
$(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxguest.sh \
$(VBOX_PATH_X11_ADDITION_INSTALLER)/x11config.pl \
$(VBOX_PATH_X11_ADDITION_INSTALLER)/x11config15sol.pl \
$(VBOX_PATH_X11_ADDITION_INSTALLER)/x11restore.pl \
$(VBOX_PATH_X11_ADDITION_INSTALLER)/VBoxRandR.sh \
$(VBOX_PATH_X11_ADDITION_INSTALLER)/98vboxadd-xclient=>1099.vboxclient \
$(VBOX_PATH_X11_ADDITION_INSTALLER)/solaris_xorg.conf \
$(VBOX_PATH_X11_ADDITION_INSTALLER)/solaris_xorg_modeless.conf \
$(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/VBox.sh
solaris-addcommon_INST = bin/additions/
solaris-addcommon_MODE = a+r,u+w
solaris-addcommon_SOURCES = \
$(PATH_ROOT)/src/VBox/Additions/common/VBoxGuest/VBoxGuest-solaris.conf=>vboxguest.conf \
$(VBOX_PATH_X11_ADDITION_INSTALLER)/vboxclient.desktop \
$(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxservice.xml
#
# Create full directory tree
#
BLDDIRS += \
$(SOLARIS_ADDINST_OUT_DIR) \
$(addprefix $(SOLARIS_ADDINST_OUT_DIR)/,\
opt \
opt/VirtualBoxAdditions \
opt/VirtualBoxAdditions/$(SOLARIS_ADDDIR_NAME_32) \
opt/VirtualBoxAdditions/$(SOLARIS_ADDDIR_NAME_64) \
usr \
usr/bin \
usr/lib \
usr/lib/amd64 \
usr/kernel \
usr/kernel/drv \
usr/kernel/drv/amd64 \
var \
var/svc \
var/svc/manifest \
var/svc/manifest/system \
var/svc/manifest/system/virtualbox \
)
SOLARIS_ADD_STRIP_BINS = \
VBoxClient \
VBoxService \
VBoxControl \
vboxfsmount \
vboxfs \
$(if $(VBOX_OSE),,vboxfs_s10)
SOLARIS_ADD_SYSLIBS = \
VBoxOGL.so \
VBoxOGLcrutil.so \
VBoxOGLfeedbackspu.so \
VBoxOGLpassthroughspu.so \
VBoxOGLarrayspu.so \
VBoxOGLerrorspu.so \
VBoxOGLpackspu.so
SOLARIS_ADD_DRIVERS = \
vboxguest
SOLARIS_ADD_DRIVERS_CONF = \
vboxguest.conf
SOLARIS_ADD_XORG_DRIVERS = \
vboxmouse_drv_14.so \
vboxmouse_drv_15.so \
vboxmouse_drv_16.so \
vboxmouse_drv_17.so \
vboxmouse_drv_70.so \
vboxmouse_drv_71.so \
vboxvideo_drv_13.so \
vboxvideo_drv_14.so \
vboxvideo_drv_15.so \
vboxvideo_drv_16.so \
vboxvideo_drv_17.so \
vboxvideo_drv_70.so \
vboxvideo_drv_71.so
SOLARIS_ADD_COMMON_BINS = \
vboxguest.sh \
x11config.pl \
x11config15sol.pl \
x11restore.pl \
VBoxRandR.sh \
VBox.sh \
1099.vboxclient \
VBoxISAExec
SOLARIS_ADD_USRBIN_LINKS = \
VBoxService \
VBoxClient \
VBoxControl
SOLARIS_ADD_COMMON = \
vboxclient.desktop \
solaris_xorg.conf \
solaris_xorg_modeless.conf
SOLARIS_ADD_SERVICES = \
vboxservice.xml
ifdef VBOX_COMPRESS
SOLARIS_ADD_COMPRESS_FILES = \
$(SOLARIS_ADD_XORG_DRIVERS) \
VBoxService \
VBoxClient \
VBoxControl
endif
ifdef VBOX_WITH_COMBINED_SOLARIS_GUEST_PACKAGE
SOLARIS_ARCH_ADD_DEPFILES = \
$(addprefix $(SOLARIS_VBOXADDINST_DIR_64)/,$(SOLARIS_ADD_STRIP_BINS)) \
$(addprefix $(SOLARIS_ADD_SYSLIBINST_DIR_32)/,$(SOLARIS_ADD_SYSLIBS)) \
$(addprefix $(SOLARIS_ADD_DRIVERINST_DIR_64)/,$(SOLARIS_ADD_DRIVERS)) \
$(addprefix $(SOLARIS_VBOXADDINST_DIR_64)/,$(SOLARIS_ADD_XORG_DRIVERS)) \
$(addprefix $(SOLARIS_VBOXADDINST_DIR_32)/,$(SOLARIS_ADD_STRIP_BINS)) \
$(addprefix $(SOLARIS_ADD_DRIVERINST_DIR_32)/,$(SOLARIS_ADD_DRIVERS)) \
$(addprefix $(SOLARIS_ADD_DRIVERINST_DIR)/,$(SOLARIS_ADD_DRIVERS_CONF)) \
$(addprefix $(SOLARIS_VBOXADDINST_DIR_32)/,$(SOLARIS_ADD_XORG_DRIVERS))
else
SOLARIS_ARCH_ADD_DEPFILES = \
$(addprefix $(SOLARIS_VBOXADDINST_DIR_ISA)/,$(SOLARIS_ADD_STRIP_BINS)) \
$(addprefix $(SOLARIS_ADD_SYSLIBINST_DIR_ISA)/,$(SOLARIS_ADD_SYSLIBS)) \
$(addprefix $(SOLARIS_ADD_DRIVERINST_DIR_ISA)/,$(SOLARIS_ADD_DRIVERS)) \
$(addprefix $(SOLARIS_ADD_DRIVERINST_DIR)/,$(SOLARIS_ADD_DRIVERS_CONF)) \
$(addprefix $(SOLARIS_VBOXADDINST_DIR_ISA)/,$(SOLARIS_ADD_XORG_DRIVERS))
endif
SOLARIS_ARCH_ADD_DEPFILES += \
$(addprefix $(SOLARIS_VBOXADDINST_DIR)/,$(SOLARIS_ADD_COMMON_BINS)) \
$(addprefix $(SOLARIS_VBOXADDINST_DIR)/,$(SOLARIS_ADD_COMMON)) \
$(addprefix $(SOLARIS_ADD_SERVICESINST_DIR)/,$(SOLARIS_ADD_SERVICES)) \
$(addprefix $(SOLARIS_ADD_USRBIN_DIR)/,$(SOLARIS_ADD_USRBIN_LINKS))
include $(KBUILD_PATH)/subfooter.kmk
#
# -=-=-=-=-=-=-=- Additions package -=-=-=-=-=-=-=-
#
$(PATH_BIN)/additions/$(PKGFILENAME): \
$(VBOX_VERSION_STAMP) \
$(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/makepackage.sh \
$(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/postinstall.sh \
$(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/preremove.sh \
$(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxguest.pkginfo \
$(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxguest.depend \
$(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxguest.sh \
$(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxservice.xml \
$(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/VBox.sh \
$(VBOX_PATH_X11_ADDITION_INSTALLER)/98vboxadd-xclient \
$(VBOX_PATH_X11_ADDITION_INSTALLER)/x11config.pl \
$(VBOX_PATH_X11_ADDITION_INSTALLER)/x11config15sol.pl \
$(VBOX_PATH_X11_ADDITION_INSTALLER)/x11restore.pl \
$(VBOX_PATH_X11_ADDITION_INSTALLER)/solaris_xorg.conf \
$(VBOX_PATH_X11_ADDITION_INSTALLER)/solaris_xorg_modeless.conf \
$(VBOX_PATH_X11_ADDITION_INSTALLER)/VBoxRandR.sh \
$(if $(VBOX_OSE),,$(VBOX_BRAND_LICENSE_TXT)) \
$(PATH_ROOT)/src/VBox/Additions/common/VBoxGuest/VBoxGuest-solaris.conf \
$(PATH_SUB_CURRENT)/solaris/Makefile.kmk \
$(SOLARIS_ARCH_ADD_DEPFILES)
$(call MSG_L1,Installing guest additions)
$(QUIET)$(SED) \
-e "s/@VBOX_VERSION_STRING@/$(VBOX_VERSION_STRING)/g" \
-e "s/@VBOX_SVN_REV@/$(VBOX_SVN_REV)/g" \
-e "s/@VBOX_VERSION_REVSTAMP@/$(PKGINFO_REVSTAMP)/g" \
-e "s/@UNAME_P@/$(PKGINFO_ARCH)/g" \
--output $(SOLARIS_ADDINST_OUT_DIR)/vboxguest.pkginfo \
$(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxguest.pkginfo
$(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/makepackage.sh $(SOLARIS_ADDINST_OUT_DIR)/makepackage.sh
$(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/postinstall.sh $(SOLARIS_ADDINST_OUT_DIR)/postinstall.sh
$(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/preremove.sh $(SOLARIS_ADDINST_OUT_DIR)/preremove.sh
$(QUIET)$(INSTALL) -m 0644 $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxguest.space $(SOLARIS_ADDINST_OUT_DIR)/vboxguest.space
$(QUIET)$(INSTALL) -m 0644 $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxguest.depend $(SOLARIS_ADDINST_OUT_DIR)/vboxguest.depend
$(QUIET)$(if $(VBOX_OSE),,$(INSTALL) -m 0644 $(VBOX_BRAND_LICENSE_TXT) $(SOLARIS_ADDINST_OUT_DIR)/vboxguest.copyright)
$(call MSG_L1,Creating install package: $@)
$(QUIET)$(MKDIR) -p $(SOLARIS_ADD_ETCFS_DIR)
$(QUIET)$(LN_SYMLINK) -f ../..$(SOLARIS_VBOXADDINST_SUBDIR)/VBoxRandR.sh $(SOLARIS_ADD_USRBIN_DIR)/VBoxRandR
$(QUIET)$(LN_SYMLINK) -f ../..$(SOLARIS_VBOXADDINST_SUBDIR)/1099.vboxclient $(SOLARIS_ADD_USRBIN_DIR)/VBoxClient-all
ifdef VBOX_WITH_COMBINED_SOLARIS_GUEST_PACKAGE
ifdef VBOX_COMPRESS
$(QUIET)$(VBOX_COMPRESS) $(addprefix $(SOLARIS_VBOXADDINST_DIR_32)/,$(SOLARIS_ADD_COMPRESS_FILES))
$(QUIET)$(VBOX_COMPRESS) $(addprefix $(SOLARIS_VBOXADDINST_DIR_64)/,$(SOLARIS_ADD_COMPRESS_FILES))
endif
$(QUIET)$(LN_SYMLINK) -f ../../..$(SOLARIS_VBOXADDINST_SUBDIR)/$(SOLARIS_ADDDIR_NAME_32)/vboxfsmount $(SOLARIS_ADD_ETCFS_DIR)/mount
else # !VBOX_WITH_COMBINED_SOLARIS_GUEST_PACKAGE
ifdef VBOX_COMPRESS
$(QUIET)$(VBOX_COMPRESS) $(addprefix $(SOLARIS_VBOXADDINST_DIR_ISA)/,$(SOLARIS_ADD_COMPRESS_FILES))
endif
$(LN_SYMLINK) -f ../../..$(SOLARIS_VBOXADDINST_SUBDIR)/$(SOLARIS_ADDDIR_NAME_ISA)/vboxfsmount $(SOLARIS_ADD_ETCFS_DIR)/mount
endif
$(QUIET)$(SOLARIS_ADDINST_OUT_DIR)/makepackage.sh $(SOLARIS_ADDINST_OUT_DIR) $(PKGFILENAME) $(VBOX_SVN_REV)
$(QUIET)$(INSTALL) -m 0644 $(SOLARIS_ADDINST_OUT_DIR)/$(PKGFILENAME) $(PATH_BIN)/additions/$(PKGFILENAME)
#
# -=-=-=-=-=-=-=- Package rules -=-=-=-=-=-=-=-
#
#
# 32-bit files
#
$(addprefix $(SOLARIS_VBOXADDINST_DIR_32)/,$(SOLARIS_ADD_STRIP_BINS)): \
$(SOLARIS_VBOXADDINST_DIR_32)/% : $(SOLARIS_ADD_OUT_BIN_32)/% | $$(dir $$@)
$(INSTALL) -m 0755 $(if $(VBOX_DO_STRIP),-s,) $< $@
$(addprefix $(SOLARIS_ADD_SYSLIBINST_DIR_32)/,$(SOLARIS_ADD_SYSLIBS)): \
$(SOLARIS_ADD_SYSLIBINST_DIR_32)/% : $(SOLARIS_ADD_OUT_BIN_32)/% | $$(dir $$@)
$(INSTALL) -m 0644 $(if $(VBOX_DO_STRIP),-s,) $< $@
$(addprefix $(SOLARIS_ADD_DRIVERINST_DIR_32)/,$(SOLARIS_ADD_DRIVERS)): \
$(SOLARIS_ADD_DRIVERINST_DIR_32)/% : $(SOLARIS_ADD_OUT_BIN_32)/% | $$(dir $$@)
$(INSTALL) -m 0644 $< $@
$(addprefix $(SOLARIS_VBOXADDINST_DIR_32)/,$(SOLARIS_ADD_XORG_DRIVERS)): \
$(SOLARIS_VBOXADDINST_DIR_32)/% : $(SOLARIS_ADD_OUT_BIN_32)/% | $$(dir $$@)
$(BIN_COPY) $< $@
#
# 64-bit files
#
$(addprefix $(SOLARIS_VBOXADDINST_DIR_64)/,$(SOLARIS_ADD_STRIP_BINS)): \
$(SOLARIS_VBOXADDINST_DIR_64)/% : $(SOLARIS_ADD_OUT_BIN_64)/% | $$(dir $$@)
$(INSTALL) -m 0755 $(if $(VBOX_DO_STRIP),-s,) $< $@
$(addprefix $(SOLARIS_ADD_SYSLIBINST_DIR_64)/,$(SOLARIS_ADD_SYSLIBS)): \
$(SOLARIS_ADD_SYSLIBINST_DIR_64)/% : $(SOLARIS_ADD_OUT_BIN_64)/% | $$(dir $$@)
$(INSTALL) -m 0644 $(if $(VBOX_DO_STRIP),-s,) $< $@
$(addprefix $(SOLARIS_ADD_DRIVERINST_DIR_64)/,$(SOLARIS_ADD_DRIVERS)): \
$(SOLARIS_ADD_DRIVERINST_DIR_64)/% : $(SOLARIS_ADD_OUT_BIN_64)/% | $$(dir $$@)
$(INSTALL) -m 0644 $< $@
$(addprefix $(SOLARIS_VBOXADDINST_DIR_64)/,$(SOLARIS_ADD_XORG_DRIVERS)): \
$(SOLARIS_VBOXADDINST_DIR_64)/% : $(SOLARIS_ADD_OUT_BIN_64)/% | $$(dir $$@)
$(BIN_COPY) $< $@
#
# Common files
#
$(addprefix $(SOLARIS_VBOXADDINST_DIR)/,$(SOLARIS_ADD_COMMON)): \
$(SOLARIS_VBOXADDINST_DIR)/% : $(SOLARIS_ADD_OUT_BIN_ISA)/% | $$(dir $$@)
$(INSTALL) -m 0644 $< $@
#
# Common binaries/shell scripts
#
$(addprefix $(SOLARIS_VBOXADDINST_DIR)/,$(SOLARIS_ADD_COMMON_BINS)): \
$(SOLARIS_VBOXADDINST_DIR)/% : $(SOLARIS_ADD_OUT_BIN_ISA)/% | $$(dir $$@)
$(INSTALL) -m 0755 $< $@
#
# Driver .conf files
#
$(addprefix $(SOLARIS_ADD_DRIVERINST_DIR)/,$(SOLARIS_ADD_DRIVERS_CONF)): \
$(SOLARIS_ADD_DRIVERINST_DIR)/% : $(SOLARIS_ADD_OUT_BIN_ISA)/% | $$(dir $$@)
$(INSTALL) -m 0644 $< $@
#
# SMF Service files
#
$(addprefix $(SOLARIS_ADD_SERVICESINST_DIR)/,$(SOLARIS_ADD_SERVICES)): \
$(SOLARIS_ADD_SERVICESINST_DIR)/% : $(SOLARIS_ADD_OUT_BIN_ISA)/% | $$(dir $$@)
$(INSTALL) -m 0644 $< $@
#
# Symlinks from /usr/bin/ to /opt/VirtualBoxAdditions (some like VBoxRandR created manually)
#
$(addprefix $(SOLARIS_ADD_USRBIN_DIR)/,$(SOLARIS_ADD_USRBIN_LINKS)): \
$(SOLARIS_ADD_USRBIN_DIR)/% : % | $$(dir $$@)
$(LN_SYMLINK) -f ../..$(SOLARIS_VBOXADDINST_SUBDIR)/$< $@
#
# @todo Delete once the new packaging works
#
ifdef OBSOLETE_PACKAGING
#
# If we are doing a combined package (x86+amd64) include the binaries from both
# architectures otherwise use the one from $(PATH_BIN)/additions
#
VBOX_CROGL_FILES = \
VBoxOGL.so \
VBoxOGLcrutil.so \
VBoxOGLfeedbackspu.so \
VBoxOGLpassthroughspu.so \
VBoxOGLarrayspu.so \
VBoxOGLerrorspu.so \
VBoxOGLpackspu.so
VBOX_CROGL_FILES_32 = $(addprefix $(SOLARIS_ADD_BIN_32)/,$(VBOX_CROGL_FILES))
VBOX_CROGL_FILES_64 = $(addprefix $(SOLARIS_ADD_BIN_64)/,$(VBOX_CROGL_FILES))
VBOX_CROGL_FILES_ISA = $(addprefix $(SOLARIS_ADD_BIN)/,$(VBOX_CROGL_FILES))
ifdef VBOX_WITH_COMBINED_SOLARIS_GUEST_PACKAGE
SOLARIS_ADD_BIN_64 := $(PATH_OUT_BASE)/solaris.amd64/$(KBUILD_TYPE)/bin/additions
SOLARIS_ADD_BIN_32 := $(PATH_OUT_BASE)/solaris.x86/$(KBUILD_TYPE)/bin/additions
SOLARIS_ADD_INST_DIR_64 := $(SOLARIS_ADD_INST_DIR)/amd64
SOLARIS_ADD_INST_DIR_32 := $(SOLARIS_ADD_INST_DIR)
VBOX_SOLPACKFILES = \
$(SOLARIS_ADD_BIN_64)/vboxguest \
$(SOLARIS_ADD_BIN_64)/vboxfs \
$(if $(VBOX_OSE),,$(SOLARIS_ADD_BIN_64)/vboxfs_s10) \
$(SOLARIS_ADD_BIN_64)/VBoxClient \
$(SOLARIS_ADD_BIN_64)/VBoxService \
$(SOLARIS_ADD_BIN_64)/VBoxControl \
$(SOLARIS_ADD_BIN_64)/vboxvideo_drv_13.so \
$(SOLARIS_ADD_BIN_64)/vboxvideo_drv_14.so \
$(SOLARIS_ADD_BIN_64)/vboxvideo_drv_15.so \
$(SOLARIS_ADD_BIN_64)/vboxvideo_drv_16.so \
$(SOLARIS_ADD_BIN_64)/vboxvideo_drv_17.so \
$(SOLARIS_ADD_BIN_64)/vboxvideo_drv_70.so \
$(SOLARIS_ADD_BIN_64)/vboxvideo_drv_71.so \
$(SOLARIS_ADD_BIN_64)/vboxmouse_drv_14.so \
$(SOLARIS_ADD_BIN_64)/vboxmouse_drv_15.so \
$(SOLARIS_ADD_BIN_64)/vboxmouse_drv_16.so \
$(SOLARIS_ADD_BIN_64)/vboxmouse_drv_17.so \
$(SOLARIS_ADD_BIN_64)/vboxmouse_drv_70.so \
$(SOLARIS_ADD_BIN_64)/vboxmouse_drv_71.so \
$(SOLARIS_ADD_BIN_32)/vboxguest \
$(SOLARIS_ADD_BIN_32)/vboxfs \
$(if $(VBOX_OSE),,$(SOLARIS_ADD_BIN_32)/vboxfs_s10) \
$(SOLARIS_ADD_BIN_32)/vboxfsmount \
$(SOLARIS_ADD_BIN_32)/VBoxClient \
$(SOLARIS_ADD_BIN_32)/VBoxService \
$(SOLARIS_ADD_BIN_32)/VBoxControl \
$(SOLARIS_ADD_BIN_32)/vboxvideo_drv_13.so \
$(SOLARIS_ADD_BIN_32)/vboxvideo_drv_14.so \
$(SOLARIS_ADD_BIN_32)/vboxvideo_drv_15.so \
$(SOLARIS_ADD_BIN_32)/vboxvideo_drv_16.so \
$(SOLARIS_ADD_BIN_32)/vboxvideo_drv_17.so \
$(SOLARIS_ADD_BIN_32)/vboxvideo_drv_70.so \
$(SOLARIS_ADD_BIN_32)/vboxvideo_drv_71.so \
$(SOLARIS_ADD_BIN_32)/vboxmouse_drv_14.so \
$(SOLARIS_ADD_BIN_32)/vboxmouse_drv_15.so \
$(SOLARIS_ADD_BIN_32)/vboxmouse_drv_16.so \
$(SOLARIS_ADD_BIN_32)/vboxmouse_drv_17.so \
$(SOLARIS_ADD_BIN_32)/vboxmouse_drv_70.so \
$(SOLARIS_ADD_BIN_32)/vboxmouse_drv_71.so
ifdef VBOX_WITH_CROGL
VBOX_SOLPACKFILES += \
$(VBOX_CROGL_FILES_32) \
$(VBOX_CROGL_FILES_64)
endif
else
SOLARIS_ADD_BIN := $(PATH_BIN)/additions
ifeq ($(KBUILD_TARGET_ARCH),x86)
SOLARIS_ADD_INST_DIR_ISA := $(SOLARIS_ADD_INST_DIR)
else
SOLARIS_ADD_INST_DIR_ISA := $(SOLARIS_ADD_INST_DIR)/amd64
endif
VBOX_SOLPACKFILES = \
$(SOLARIS_ADD_BIN)/vboxguest \
$(SOLARIS_ADD_BIN)/vboxfs \
$(if $(VBOX_OSE),,$(SOLARIS_ADD_BIN)/vboxfs_s10) \
$(SOLARIS_ADD_BIN)/vboxfsmount \
$(SOLARIS_ADD_BIN)/VBoxClient \
$(SOLARIS_ADD_BIN)/VBoxService \
$(SOLARIS_ADD_BIN)/VBoxControl \
$(SOLARIS_ADD_BIN)/vboxvideo_drv_13.so \
$(SOLARIS_ADD_BIN)/vboxvideo_drv_14.so \
$(SOLARIS_ADD_BIN)/vboxvideo_drv_15.so \
$(SOLARIS_ADD_BIN)/vboxvideo_drv_16.so \
$(SOLARIS_ADD_BIN)/vboxvideo_drv_17.so \
$(SOLARIS_ADD_BIN)/vboxvideo_drv_70.so \
$(SOLARIS_ADD_BIN)/vboxvideo_drv_71.so \
$(SOLARIS_ADD_BIN)/vboxmouse_drv_14.so \
$(SOLARIS_ADD_BIN)/vboxmouse_drv_15.so \
$(SOLARIS_ADD_BIN)/vboxmouse_drv_16.so \
$(SOLARIS_ADD_BIN)/vboxmouse_drv_17.so \
$(SOLARIS_ADD_BIN)/vboxmouse_drv_70.so \
$(SOLARIS_ADD_BIN)/vboxmouse_drv_71.so
ifdef VBOX_WITH_CROGL
VBOX_SOLPACKFILES += \
$(VBOX_CROGL_FILES_ISA)
endif
endif
include $(KBUILD_PATH)/subfooter.kmk
$(PATH_BIN)/additions/VBoxSolarisAdditions.pkg: \
$(VBOX_VERSION_STAMP) \
$(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/makepackage.sh \
$(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/postinstall.sh \
$(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/preremove.sh \
$(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxguest.pkginfo \
$(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxguest.depend \
$(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxguest.sh \
$(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxservice.xml \
$(VBOX_PATH_X11_ADDITION_INSTALLER)/98vboxadd-xclient \
$(VBOX_PATH_X11_ADDITION_INSTALLER)/x11config.pl \
$(VBOX_PATH_X11_ADDITION_INSTALLER)/x11config15sol.pl \
$(VBOX_PATH_X11_ADDITION_INSTALLER)/x11restore.pl \
$(VBOX_PATH_X11_ADDITION_INSTALLER)/solaris_xorg.conf \
$(VBOX_PATH_X11_ADDITION_INSTALLER)/solaris_xorg_modeless.conf \
$(VBOX_SOLPACKFILES) \
$(VBOX_PATH_X11_ADDITION_INSTALLER)/VBoxRandR.sh \
$(if $(VBOX_OSE),,$(VBOX_BRAND_LICENSE_TXT)) \
$(PATH_ROOT)/src/VBox/Additions/common/VBoxGuest/VBoxGuest-solaris.conf \
$(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/VBox.sh \
$(PATH_SUB_CURRENT)/solaris/Makefile.kmk
$(call MSG_L1,Installing guest additions)
@# Clear out the existing package files if needed
$(QUIET)rm -rf $(SOLARIS_ADD_INST_DIR)
$(QUIET)$(MKDIR) -p $(SOLARIS_ADD_INST_DIR)
$(QUIET)$(if $(VBOX_WITH_COMBINED_SOLARIS_GUEST_PACKAGE),$(MKDIR) -p $(SOLARIS_ADD_INST_DIR_64),$(MKDIR) -p $(SOLARIS_ADD_INST_DIR_ISA))
$(QUIET)$(MKDIR) -p $(SOLARIS_ADD_INST_DIR)/etc
$(QUIET)$(SED) \
-e "s/@VBOX_VERSION_STRING@/$(VBOX_VERSION_STRING)/g" \
-e "s/@VBOX_SVN_REV@/$(VBOX_SVN_REV)/g" \
-e "s/@VBOX_VERSION_REVSTAMP@/$(PKGINFO_REVSTAMP)/g" \
-e "s/@UNAME_P@/$(PKGINFO_ARCH)/g" \
--output $(SOLARIS_ADD_INST_DIR)/vboxguest.pkginfo \
$(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxguest.pkginfo
$(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/makepackage.sh $(SOLARIS_ADD_INST_DIR)/makepackage.sh
$(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/postinstall.sh $(SOLARIS_ADD_INST_DIR)/postinstall.sh
$(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/preremove.sh $(SOLARIS_ADD_INST_DIR)/preremove.sh
$(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxguest.sh $(SOLARIS_ADD_INST_DIR)/vboxguest.sh
$(QUIET)$(INSTALL) -m 0644 $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxservice.xml $(SOLARIS_ADD_INST_DIR)/vboxservice.xml
$(QUIET)$(INSTALL) -m 0644 $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxguest.space $(SOLARIS_ADD_INST_DIR)/vboxguest.space
$(QUIET)$(INSTALL) -m 0644 $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxguest.depend $(SOLARIS_ADD_INST_DIR)/vboxguest.depend
$(QUIET)$(if $(VBOX_OSE),,$(INSTALL) -m 0644 $(VBOX_BRAND_LICENSE_TXT) $(SOLARIS_ADD_INST_DIR)/vboxguest.copyright)
$(QUIET)$(INSTALL) -m 0644 $(VBOX_PATH_X11_ADDITION_INSTALLER)/vboxclient.desktop $(SOLARIS_ADD_INST_DIR)/vboxclient.desktop
$(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_X11_ADDITION_INSTALLER)/98vboxadd-xclient $(SOLARIS_ADD_INST_DIR)/1099.vboxclient
$(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_X11_ADDITION_INSTALLER)/x11config.pl $(SOLARIS_ADD_INST_DIR)/x11config.pl
$(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_X11_ADDITION_INSTALLER)/x11config15sol.pl $(SOLARIS_ADD_INST_DIR)/x11config15sol.pl
$(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_X11_ADDITION_INSTALLER)/x11restore.pl $(SOLARIS_ADD_INST_DIR)/x11restore.pl
$(QUIET)$(INSTALL) -m 0644 $(VBOX_PATH_X11_ADDITION_INSTALLER)/solaris_xorg.conf $(SOLARIS_ADD_INST_DIR)/solaris_xorg.conf
$(QUIET)$(INSTALL) -m 0644 $(VBOX_PATH_X11_ADDITION_INSTALLER)/solaris_xorg_modeless.conf $(SOLARIS_ADD_INST_DIR)/solaris_xorg_modeless.conf
$(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_X11_ADDITION_INSTALLER)/VBoxRandR.sh $(SOLARIS_ADD_INST_DIR)/VBoxRandR.sh
$(QUIET)$(INSTALL) -m 0644 $(PATH_ROOT)/src/VBox/Additions/common/VBoxGuest/VBoxGuest-solaris.conf $(SOLARIS_ADD_INST_DIR)/vboxguest.conf
ifdef VBOX_WITH_COMBINED_SOLARIS_GUEST_PACKAGE
$(QUIET)$(INSTALL) -m 0644 $(SOLARIS_ADD_BIN_64)/vboxguest $(SOLARIS_ADD_INST_DIR_64)/vboxguest
$(QUIET)$(INSTALL) -m 0644 $(SOLARIS_ADD_BIN_64)/vboxfs $(SOLARIS_ADD_INST_DIR_64)/vboxfs
$(QUIET)$(if $(VBOX_OSE),,$(INSTALL) -m 0644 $(SOLARIS_ADD_BIN_64)/vboxfs_s10 $(SOLARIS_ADD_INST_DIR_64)/vboxfs_s10)
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN_64)/VBoxClient $(SOLARIS_ADD_INST_DIR_64)/VBoxClient
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN_64)/VBoxService $(SOLARIS_ADD_INST_DIR_64)/VBoxService
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN_64)/VBoxControl $(SOLARIS_ADD_INST_DIR_64)/VBoxControl
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_64)/vboxvideo_drv_13.so $(SOLARIS_ADD_INST_DIR_64)/vboxvideo_drv_13.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_64)/vboxvideo_drv_14.so $(SOLARIS_ADD_INST_DIR_64)/vboxvideo_drv_14.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_64)/vboxvideo_drv_15.so $(SOLARIS_ADD_INST_DIR_64)/vboxvideo_drv_15.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_64)/vboxvideo_drv_16.so $(SOLARIS_ADD_INST_DIR_64)/vboxvideo_drv_16.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_64)/vboxvideo_drv_17.so $(SOLARIS_ADD_INST_DIR_64)/vboxvideo_drv_17.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_64)/vboxvideo_drv_70.so $(SOLARIS_ADD_INST_DIR_64)/vboxvideo_drv_70.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_64)/vboxvideo_drv_71.so $(SOLARIS_ADD_INST_DIR_64)/vboxvideo_drv_71.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_64)/vboxmouse_drv_14.so $(SOLARIS_ADD_INST_DIR_64)/vboxmouse_drv_14.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_64)/vboxmouse_drv_15.so $(SOLARIS_ADD_INST_DIR_64)/vboxmouse_drv_15.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_64)/vboxmouse_drv_16.so $(SOLARIS_ADD_INST_DIR_64)/vboxmouse_drv_16.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_64)/vboxmouse_drv_17.so $(SOLARIS_ADD_INST_DIR_64)/vboxmouse_drv_17.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_64)/vboxmouse_drv_70.so $(SOLARIS_ADD_INST_DIR_64)/vboxmouse_drv_70.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_64)/vboxmouse_drv_71.so $(SOLARIS_ADD_INST_DIR_64)/vboxmouse_drv_71.so
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN_64)/VBoxOGL.so $(SOLARIS_ADD_INST_DIR_64)/VBoxOGL.so
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN_64)/VBoxOGLcrutil.so $(SOLARIS_ADD_INST_DIR_64)/VBoxOGLcrutil.so
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN_64)/VBoxOGLfeedbackspu.so $(SOLARIS_ADD_INST_DIR_64)/VBoxOGLfeedbackspu.so
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN_64)/VBoxOGLpassthroughspu.so $(SOLARIS_ADD_INST_DIR_64)/VBoxOGLpassthroughspu.so
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN_64)/VBoxOGLarrayspu.so $(SOLARIS_ADD_INST_DIR_64)/VBoxOGLarrayspu.so
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN_64)/VBoxOGLerrorspu.so $(SOLARIS_ADD_INST_DIR_64)/VBoxOGLerrorspu.so
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN_64)/VBoxOGLpackspu.so $(SOLARIS_ADD_INST_DIR_64)/VBoxOGLpackspu.so
$(QUIET)$(INSTALL) -m 0644 $(SOLARIS_ADD_BIN_32)/vboxguest $(SOLARIS_ADD_INST_DIR_32)/vboxguest
$(QUIET)$(INSTALL) -m 0644 $(SOLARIS_ADD_BIN_32)/vboxfs $(SOLARIS_ADD_INST_DIR_32)/vboxfs
$(QUIET)$(if $(VBOX_OSE),,$(INSTALL) -m 0644 $(SOLARIS_ADD_BIN_32)/vboxfs_s10 $(SOLARIS_ADD_INST_DIR_32)/vboxfs_s10)
$(QUIET)$(INSTALL) -m 0755 $(SOLARIS_ADD_BIN_32)/vboxfsmount $(SOLARIS_ADD_INST_DIR_32)/vboxfsmount
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN_32)/VBoxClient $(SOLARIS_ADD_INST_DIR_32)/VBoxClient
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN_32)/VBoxService $(SOLARIS_ADD_INST_DIR_32)/VBoxService
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN_32)/VBoxControl $(SOLARIS_ADD_INST_DIR_32)/VBoxControl
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_32)/vboxvideo_drv_13.so $(SOLARIS_ADD_INST_DIR_32)/vboxvideo_drv_13.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_32)/vboxvideo_drv_14.so $(SOLARIS_ADD_INST_DIR_32)/vboxvideo_drv_14.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_32)/vboxvideo_drv_15.so $(SOLARIS_ADD_INST_DIR_32)/vboxvideo_drv_15.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_32)/vboxvideo_drv_16.so $(SOLARIS_ADD_INST_DIR_32)/vboxvideo_drv_16.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_32)/vboxvideo_drv_17.so $(SOLARIS_ADD_INST_DIR_32)/vboxvideo_drv_17.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_32)/vboxvideo_drv_70.so $(SOLARIS_ADD_INST_DIR_32)/vboxvideo_drv_70.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_32)/vboxvideo_drv_71.so $(SOLARIS_ADD_INST_DIR_32)/vboxvideo_drv_71.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_32)/vboxmouse_drv_14.so $(SOLARIS_ADD_INST_DIR_32)/vboxmouse_drv_14.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_32)/vboxmouse_drv_15.so $(SOLARIS_ADD_INST_DIR_32)/vboxmouse_drv_15.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_32)/vboxmouse_drv_16.so $(SOLARIS_ADD_INST_DIR_32)/vboxmouse_drv_16.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_32)/vboxmouse_drv_17.so $(SOLARIS_ADD_INST_DIR_32)/vboxmouse_drv_17.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_32)/vboxmouse_drv_70.so $(SOLARIS_ADD_INST_DIR_32)/vboxmouse_drv_70.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN_32)/vboxmouse_drv_71.so $(SOLARIS_ADD_INST_DIR_32)/vboxmouse_drv_71.so
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN_32)/VBoxOGL.so $(SOLARIS_ADD_INST_DIR_32)/VBoxOGL.so
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN_32)/VBoxOGLcrutil.so $(SOLARIS_ADD_INST_DIR_32)/VBoxOGLcrutil.so
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN_32)/VBoxOGLfeedbackspu.so $(SOLARIS_ADD_INST_DIR_32)/VBoxOGLfeedbackspu.so
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN_32)/VBoxOGLpassthroughspu.so $(SOLARIS_ADD_INST_DIR_32)/VBoxOGLpassthroughspu.so
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN_32)/VBoxOGLarrayspu.so $(SOLARIS_ADD_INST_DIR_32)/VBoxOGLarrayspu.so
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN_32)/VBoxOGLerrorspu.so $(SOLARIS_ADD_INST_DIR_32)/VBoxOGLerrorspu.so
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN_32)/VBoxOGLpackspu.so $(SOLARIS_ADD_INST_DIR_32)/VBoxOGLpackspu.so
ifdef VBOX_COMPRESS
# Compress binaries as we distribute uncompressed pkgs
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_64)/VBoxClient
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_64)/VBoxService
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_64)/VBoxControl
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_64)/vboxvideo_drv_13.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_64)/vboxvideo_drv_14.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_64)/vboxvideo_drv_15.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_64)/vboxvideo_drv_16.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_64)/vboxvideo_drv_17.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_64)/vboxvideo_drv_70.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_64)/vboxvideo_drv_71.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_64)/vboxmouse_drv_14.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_64)/vboxmouse_drv_15.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_64)/vboxmouse_drv_16.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_64)/vboxmouse_drv_17.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_64)/vboxmouse_drv_70.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_64)/vboxmouse_drv_71.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_32)/VBoxClient
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_32)/VBoxService
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_32)/VBoxControl
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_32)/vboxvideo_drv_13.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_32)/vboxvideo_drv_14.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_32)/vboxvideo_drv_15.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_32)/vboxvideo_drv_16.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_32)/vboxvideo_drv_17.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_32)/vboxvideo_drv_70.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_32)/vboxvideo_drv_71.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_32)/vboxmouse_drv_14.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_32)/vboxmouse_drv_15.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_32)/vboxmouse_drv_16.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_32)/vboxmouse_drv_17.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_32)/vboxmouse_drv_70.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_32)/vboxmouse_drv_71.so
endif # VBOX_COMPRESS
else # !VBOX_WITH_COMBINED_SOLARIS_GUEST_PACKAGE
$(QUIET)$(INSTALL) -m 0644 $(SOLARIS_ADD_BIN)/vboxguest $(SOLARIS_ADD_INST_DIR_ISA)/vboxguest
$(QUIET)$(INSTALL) -m 0644 $(SOLARIS_ADD_BIN)/vboxfs $(SOLARIS_ADD_INST_DIR_ISA)/vboxfs
$(QUIET)$(INSTALL) -m 0644 $(SOLARIS_ADD_BIN)/vboxfs_s10 $(SOLARIS_ADD_INST_DIR_ISA)/vboxfs_s10
$(QUIET)$(INSTALL) -m 0755 $(SOLARIS_ADD_BIN)/vboxfsmount $(SOLARIS_ADD_INST_DIR_ISA)/vboxfsmount
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN)/VBoxClient $(SOLARIS_ADD_INST_DIR_ISA)/VBoxClient
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN)/VBoxService $(SOLARIS_ADD_INST_DIR_ISA)/VBoxService
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN)/VBoxControl $(SOLARIS_ADD_INST_DIR_ISA)/VBoxControl
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN)/vboxvideo_drv_13.so $(SOLARIS_ADD_INST_DIR_ISA)/vboxvideo_drv_13.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN)/vboxvideo_drv_14.so $(SOLARIS_ADD_INST_DIR_ISA)/vboxvideo_drv_14.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN)/vboxvideo_drv_15.so $(SOLARIS_ADD_INST_DIR_ISA)/vboxvideo_drv_15.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN)/vboxvideo_drv_16.so $(SOLARIS_ADD_INST_DIR_ISA)/vboxvideo_drv_16.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN)/vboxvideo_drv_17.so $(SOLARIS_ADD_INST_DIR_ISA)/vboxvideo_drv_17.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN)/vboxvideo_drv_70.so $(SOLARIS_ADD_INST_DIR_ISA)/vboxvideo_drv_70.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN)/vboxvideo_drv_71.so $(SOLARIS_ADD_INST_DIR_ISA)/vboxvideo_drv_71.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN)/vboxmouse_drv_14.so $(SOLARIS_ADD_INST_DIR_ISA)/vboxmouse_drv_14.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN)/vboxmouse_drv_15.so $(SOLARIS_ADD_INST_DIR_ISA)/vboxmouse_drv_15.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN)/vboxmouse_drv_16.so $(SOLARIS_ADD_INST_DIR_ISA)/vboxmouse_drv_16.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN)/vboxmouse_drv_17.so $(SOLARIS_ADD_INST_DIR_ISA)/vboxmouse_drv_17.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN)/vboxmouse_drv_70.so $(SOLARIS_ADD_INST_DIR_ISA)/vboxmouse_drv_70.so
$(QUIET)$(BIN_COPY) $(SOLARIS_ADD_BIN)/vboxmouse_drv_71.so $(SOLARIS_ADD_INST_DIR_ISA)/vboxmouse_drv_71.so
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN)/VBoxOGL.so $(SOLARIS_ADD_INST_DIR_ISA)/VBoxOGL.so
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN)/VBoxOGLcrutil.so $(SOLARIS_ADD_INST_DIR_ISA)/VBoxOGLcrutil.so
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN)/VBoxOGLfeedbackspu.so $(SOLARIS_ADD_INST_DIR_ISA)/VBoxOGLfeedbackspu.so
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN)/VBoxOGLpassthroughspu.so $(SOLARIS_ADD_INST_DIR_ISA)/VBoxOGLpassthroughspu.so
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN)/VBoxOGLarrayspu.so $(SOLARIS_ADD_INST_DIR_ISA)/VBoxOGLarrayspu.so
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN)/VBoxOGLerrorspu.so $(SOLARIS_ADD_INST_DIR_ISA)/VBoxOGLerrorspu.so
$(QUIET)$(INSTALL) -s -m 0755 $(SOLARIS_ADD_BIN)/VBoxOGLpackspu.so $(SOLARIS_ADD_INST_DIR_ISA)/VBoxOGLpackspu.so
ifdef VBOX_COMPRESS
# Compress binaries as we distribute uncompressed pkgs
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_ISA)/VBoxClient
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_ISA)/VBoxService
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_ISA)/VBoxControl
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_ISA)/vboxvideo_drv_13.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_ISA)/vboxvideo_drv_14.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_ISA)/vboxvideo_drv_15.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_ISA)/vboxvideo_drv_16.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_ISA)/vboxvideo_drv_17.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_ISA)/vboxvideo_drv_70.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_ISA)/vboxvideo_drv_71.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_ISA)/vboxmouse_drv_14.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_ISA)/vboxmouse_drv_15.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_ISA)/vboxmouse_drv_16.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_ISA)/vboxmouse_drv_17.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_ISA)/vboxmouse_drv_70.so
$(QUIET)$(VBOX_COMPRESS) $(SOLARIS_ADD_INST_DIR_ISA)/vboxmouse_drv_71.so
endif # VBOX_COMPRESS
endif # !VBOX_WITH_COMBINED_SOLARIS_GUEST_PACKAGE
$(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/VBox.sh $(SOLARIS_ADD_INST_DIR)/VBox.sh
$(call MSG_L1,Creating install package: $@)
$(QUIET)$(SOLARIS_ADD_INST_DIR)/makepackage.sh $(SOLARIS_ADD_INST_DIR) $(PKGFILENAME) $(VBOX_SVN_REV)
$(QUIET)$(INSTALL) -m 0644 $(SOLARIS_ADD_INST_DIR)/$(PKGFILENAME) $(PATH_BIN)/additions/$(PKGFILENAME)
endif