# $Id: Makefile.kmk 7906 2008-04-11 11:24:36Z vboxsync $ ## @file # Makefile for the Solaris guest additions base directory. # # # Copyright (C) 2008 innotek GmbH # # 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. # DEPTH ?= ../../../.. SUB_DEPTH = .. include $(PATH_KBUILD)/subheader.kmk ifneq ($(BUILD_PLATFORM),solaris) $(error "The Solaris guest additions installer can only be built on Solaris!") endif PKGFILENAME := VBoxSolarisAdditions PKGINFO_ARCH = $(shell uname -p) VBOX_PATH_SOLARIS_ADDITION_INSTALLER := $(PATH_SUB_CURRENT)/Installer VBOX_PATH_X11_ADDITION_INSTALLER := $(PATH_ROOT)/src/VBox/Additions/x11/installer SOLARISINSTDIR := $(PATH_TARGET)/install ifeq ($(BUILD_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 endif PACKING += $(PATH_BIN)/additions/$(PKGFILENAME) OTHER_CLEAN += $(PACKING) include $(PATH_KBUILD)/subfooter.kmk $(PATH_BIN)/additions/VBoxSolarisAdditions: \ $(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.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)/solaris_xorg.conf \ $(VBOX_PATH_X11_ADDITION_INSTALLER)/VBoxRandR.sh \ $(PATH_BIN)/additions/vboxguest \ $(PATH_ROOT)/src/VBox/Additions/common/VBoxGuest/VBoxGuest-solaris.conf \ $(PATH_BIN)/additions/VBoxClient \ $(PATH_BIN)/additions/VBoxService \ $(PATH_BIN)/additions/vboxvideo_drv_13.so \ $(PATH_BIN)/additions/vboxvideo_drv_14.so \ $(PATH_BIN)/additions/vboxvideo_drv_70.so \ $(PATH_BIN)/additions/vboxvideo_drv_71.so \ $(PATH_BIN)/additions/vboxmouse_drv_14.so \ $(PATH_BIN)/additions/vboxmouse_drv_70.so \ $(PATH_BIN)/additions/vboxmouse_drv_71.so \ $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxdevlink.sed \ $(PATH_SUB_CURRENT)/solaris/Makefile.kmk $(call MSG_L1,Installing guest additions) @# Clear out the existing package files if needed $(QUIET)rm -rf $(SOLARISINSTDIR) $(QUIET)$(MKDIR) -p $(SOLARISINSTDIR) $(QUIET)$(MKDIR) -p $(SOLARISINSTDIR)/etc $(QUIET)$(SED) \ -e "s/@VBOX_VERSION_STRING@/$(VBOX_VERSION_STRING)/g" \ -e "s/@UNAME_P@/$(PKGINFO_ARCH)/g" \ --output $(SOLARISINSTDIR)/vboxguest.pkginfo \ $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxguest.pkginfo $(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/makepackage.sh $(SOLARISINSTDIR)/makepackage.sh $(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/postinstall.sh $(SOLARISINSTDIR)/postinstall.sh $(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/preremove.sh $(SOLARISINSTDIR)/preremove.sh $(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxguest.sh $(SOLARISINSTDIR)/vboxguest.sh $(QUIET)$(INSTALL) -m 0644 $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxservice.xml $(SOLARISINSTDIR)/vboxservice.xml $(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_X11_ADDITION_INSTALLER)/98vboxadd-xclient $(SOLARISINSTDIR)/1099.vboxclient $(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_X11_ADDITION_INSTALLER)/x11config.pl $(SOLARISINSTDIR)/x11config.pl $(QUIET)$(INSTALL) -m 0644 $(VBOX_PATH_X11_ADDITION_INSTALLER)/solaris_xorg.conf $(SOLARISINSTDIR)/solaris_xorg.conf $(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_X11_ADDITION_INSTALLER)/VBoxRandR.sh $(SOLARISINSTDIR)/VBoxRandR.sh $(QUIET)$(INSTALL) -m 0644 $(PATH_ROOT)/src/VBox/Additions/common/VBoxGuest/VBoxGuest-solaris.conf $(SOLARISINSTDIR)/vboxguest.conf $(QUIET)$(CP) -f $(PATH_BIN)/additions/vboxguest $(SOLARISINSTDIR)/vboxguest $(QUIET)$(if $(VBOX_DO_STRIP),strip $(SOLARISINSTDIR)/vboxguest,) $(QUIET)$(BIN_COPY) $(PATH_BIN)/additions/VBoxClient $(SOLARISINSTDIR)/VBoxClient $(QUIET)$(BIN_COPY) $(PATH_BIN)/additions/VBoxService $(SOLARISINSTDIR)/VBoxService $(QUIET)$(BIN_COPY) $(PATH_BIN)/additions/vboxvideo_drv_13.so $(SOLARISINSTDIR)/vboxvideo_drv_13.so $(QUIET)$(BIN_COPY) $(PATH_BIN)/additions/vboxvideo_drv_14.so $(SOLARISINSTDIR)/vboxvideo_drv_14.so $(QUIET)$(BIN_COPY) $(PATH_BIN)/additions/vboxvideo_drv_70.so $(SOLARISINSTDIR)/vboxvideo_drv_70.so $(QUIET)$(BIN_COPY) $(PATH_BIN)/additions/vboxvideo_drv_71.so $(SOLARISINSTDIR)/vboxvideo_drv_71.so $(QUIET)$(BIN_COPY) $(PATH_BIN)/additions/vboxmouse_drv_14.so $(SOLARISINSTDIR)/vboxmouse_drv_14.so $(QUIET)$(BIN_COPY) $(PATH_BIN)/additions/vboxmouse_drv_70.so $(SOLARISINSTDIR)/vboxmouse_drv_70.so $(QUIET)$(BIN_COPY) $(PATH_BIN)/additions/vboxmouse_drv_71.so $(SOLARISINSTDIR)/vboxmouse_drv_71.so $(QUIET)$(INSTALL) -m 0644 $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxdevlink.sed $(SOLARISINSTDIR)/etc/devlink.tab $(call MSG_L1,Creating install package: $@) $(QUIET)$(SOLARISINSTDIR)/makepackage.sh $(SOLARISINSTDIR) $(PKGFILENAME) 1>/dev/null 2>/dev/null $(QUIET)$(INSTALL) -m 0644 $(SOLARISINSTDIR)/$(PKGFILENAME) $(PATH_BIN)/additions/$(PKGFILENAME)