VirtualBox

Changeset 25712 in vbox


Ignore:
Timestamp:
Jan 11, 2010 12:05:28 PM (15 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
56450
Message:

Solaris/Additions: full root packaging.

Location:
trunk/src/VBox/Additions/solaris
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Additions/solaris/Installer/makepackage.sh

    r21475 r25712  
    2727fi
    2828
    29 VBOX_INSTALLED_DIR=$1
     29VBOX_BASEPKG_DIR=$1
     30VBOX_INSTALLED_DIR="$VBOX_BASEPKG_DIR"/opt/VirtualBoxAdditions
    3031VBOX_PKGFILENAME=$2
    3132VBOX_SVN_REV=$3
     
    5354}
    5455
     56
     57# Create relative hardlinks
     58cd "$VBOX_INSTALLED_DIR"
     59ln -f ./VBoxISAExec $VBOX_INSTALLED_DIR/VBoxService
     60ln -f ./VBoxISAExec $VBOX_INSTALLED_DIR/VBoxClient
     61ln -f ./VBoxISAExec $VBOX_INSTALLED_DIR/VBoxControl
     62
    5563# prepare file list
    56 cd "$VBOX_INSTALLED_DIR"
     64cd "$VBOX_BASEPKG_DIR"
    5765echo 'i pkginfo=./vboxguest.pkginfo' > prototype
    5866echo 'i postinstall=./postinstall.sh' >> prototype
     
    6371    echo 'i copyright=./vboxguest.copyright' >> prototype
    6472fi
    65 find . -print | $VBOX_GGREP -v -E 'prototype|makepackage.sh|vboxguest.pkginfo|postinstall.sh|preremove.sh|vboxguest.space|vboxguest.depend|vboxguest.copyright' | pkgproto >> prototype
     73
     74# Exclude directory entries to not cause conflicts (owner,group) with existing directories in the system
     75find . ! -type d | $VBOX_GGREP -v -E 'prototype|makepackage.sh|vboxguest.pkginfo|postinstall.sh|preremove.sh|vboxguest.space|vboxguest.depend|vboxguest.copyright' | pkgproto >> prototype
     76
     77# Include only opt/VirtualBoxAdditions and subdirectories as we want uninstall to clean up directory structure as well
     78find . -type d | $VBOX_GGREP -E 'opt/VirtualBoxAdditions' | pkgproto >> prototype
    6679
    6780# don't grok for the class files
    68 filelist_fixup prototype '$2 == "none"'                                                     '$5 = "root"; $6 = "bin"'
    69 filelist_fixup prototype '$2 == "none"'                                                     '$3 = "opt/VirtualBoxAdditions/"$3"="$3'
     81filelist_fixup prototype '$2 == "none"'                                                                      '$5 = "root"; $6 = "bin"'
    7082
    7183# VBoxService requires suid
    72 filelist_fixup prototype '$3 == "opt/VirtualBoxAdditions/VBoxService=VBoxService"'              '$4 = "4755"'
    73 filelist_fixup prototype '$3 == "opt/VirtualBoxAdditions/amd64/VBoxService=amd64/VBoxService"'  '$4 = "4755"'
     84filelist_fixup prototype '$3 == "opt/VirtualBoxAdditions/VBoxService"'                                       '$4 = "4755"'
     85filelist_fixup prototype '$3 == "opt/VirtualBoxAdditions/amd64/VBoxService"'                                 '$4 = "4755"'
    7486
    75 # 32-bit vboxguest
    76 filelist_fixup prototype '$3 == "opt/VirtualBoxAdditions/vboxguest=vboxguest"'              '$3 = "usr/kernel/drv/vboxguest=vboxguest"; $6="sys"'
     87# vboxguest
     88filelist_fixup prototype '$3 == "usr/kernel/drv/vboxguest"'                                                  '$6="sys"'
     89filelist_fixup prototype '$3 == "usr/kernel/drv/amd64/vboxguest"'                                            '$6="sys"'
    7790
    78 # 64-bit vboxguest
    79 filelist_fixup prototype '$3 == "opt/VirtualBoxAdditions/amd64/vboxguest=amd64/vboxguest"'  '$3 = "usr/kernel/drv/amd64/vboxguest=amd64/vboxguest"; $6="sys"'
    80 
    81 # vboxguest module config file
    82 filelist_fixup prototype '$3 == "opt/VirtualBoxAdditions/vboxguest.conf=vboxguest.conf"'    '$3 = "usr/kernel/drv/vboxguest.conf=vboxguest.conf"'
    83 
    84 # vboxfsmount binary (always 32-bit on combined package)
    85 filelist_fixup prototype '$3 == "opt/VirtualBoxAdditions/vboxfsmount=vboxfsmount"'         '$3 = "etc/fs/vboxfs/mount=vboxfsmount"; $6="sys"'
    86 
    87 # this is required for amd64-specific package where we do not build 32-bit binaries
    88 filelist_fixup prototype '$3 == "opt/VirtualBoxAdditions/amd64/vboxfsmount=amd64/vboxfsmount"'   '$3 = "etc/fs/vboxfs/mount=amd64/vboxfsmount"; $6="sys"'
    89 
    90 # crogl 32-bit opengl fixup
    91 filelist_fixup prototype '$3 == "opt/VirtualBoxAdditions/VBoxOGL.so=VBoxOGL.so"'                             '$3 = "usr/lib/VBoxOGL.so=VBoxOGL.so"; $6="sys"'
    92 filelist_fixup prototype '$3 == "opt/VirtualBoxAdditions/VBoxOGLcrutil.so=VBoxOGLcrutil.so"'                 '$3 = "usr/lib/VBoxOGLcrutil.so=VBoxOGLcrutil.so"; $6="sys"'
    93 filelist_fixup prototype '$3 == "opt/VirtualBoxAdditions/VBoxOGLfeedbackspu.so=VBoxOGLfeedbackspu.so"'       '$3 = "usr/lib/VBoxOGLfeedbackspu.so=VBoxOGLfeedbackspu.so"; $6="sys"'
    94 filelist_fixup prototype '$3 == "opt/VirtualBoxAdditions/VBoxOGLpassthroughspu.so=VBoxOGLpassthroughspu.so"' '$3 = "usr/lib/VBoxOGLpassthroughspu.so=VBoxOGLpassthroughspu.so"; $6="sys"'
    95 filelist_fixup prototype '$3 == "opt/VirtualBoxAdditions/VBoxOGLarrayspu.so=VBoxOGLarrayspu.so"'             '$3 = "usr/lib/VBoxOGLarrayspu.so=VBoxOGLarrayspu.so"; $6="sys"'
    96 filelist_fixup prototype '$3 == "opt/VirtualBoxAdditions/VBoxOGLerrorspu.so=VBoxOGLerrorspu.so"'             '$3 = "usr/lib/VBoxOGLerrorspu.so=VBoxOGLerrorspu.so"; $6="sys"'
    97 filelist_fixup prototype '$3 == "opt/VirtualBoxAdditions/VBoxOGLpackspu.so=VBoxOGLpackspu.so"'               '$3 = "usr/lib/VBoxOGLpackspu.so=VBoxOGLpackspu.so"; $6="sys"'
    98 
    99 # crogl 64-bit opengl fixup
    100 filelist_fixup prototype '$3 == "opt/VirtualBoxAdditions/amd64/VBoxOGL.so=amd64/VBoxOGL.so"'                             '$3 = "usr/lib/amd64/VBoxOGL.so=amd64/VBoxOGL.so"; $6="sys"'
    101 filelist_fixup prototype '$3 == "opt/VirtualBoxAdditions/amd64/VBoxOGLcrutil.so=amd64/VBoxOGLcrutil.so"'                 '$3 = "usr/lib/amd64/VBoxOGLcrutil.so=amd64/VBoxOGLcrutil.so"; $6="sys"'
    102 filelist_fixup prototype '$3 == "opt/VirtualBoxAdditions/amd64/VBoxOGLfeedbackspu.so=amd64/VBoxOGLfeedbackspu.so"'       '$3 = "usr/lib/amd64/VBoxOGLfeedbackspu.so=amd64/VBoxOGLfeedbackspu.so"; $6="sys"'
    103 filelist_fixup prototype '$3 == "opt/VirtualBoxAdditions/amd64/VBoxOGLpassthroughspu.so=amd64/VBoxOGLpassthroughspu.so"' '$3 = "usr/lib/amd64/VBoxOGLpassthroughspu.so=amd64/VBoxOGLpassthroughspu.so"; $6="sys"'
    104 filelist_fixup prototype '$3 == "opt/VirtualBoxAdditions/amd64/VBoxOGLarrayspu.so=amd64/VBoxOGLarrayspu.so"'             '$3 = "usr/lib/amd64/VBoxOGLarrayspu.so=amd64/VBoxOGLarrayspu.so"; $6="sys"'
    105 filelist_fixup prototype '$3 == "opt/VirtualBoxAdditions/amd64/VBoxOGLerrorspu.so=amd64/VBoxOGLerrorspu.so"'             '$3 = "usr/lib/amd64/VBoxOGLerrorspu.so=amd64/VBoxOGLerrorspu.so"; $6="sys"'
    106 filelist_fixup prototype '$3 == "opt/VirtualBoxAdditions/amd64/VBoxOGLpackspu.so=amd64/VBoxOGLpackspu.so"'               '$3 = "usr/lib/amd64/VBoxOGLpackspu.so=amd64/VBoxOGLpackspu.so"; $6="sys"'
    107 
    108 
    109 filelist_fixup prototype '$3 == "opt/VirtualBoxAdditions/vboxservice.xml=vboxservice.xml"'  '$3 = "var/svc/manifest/system/virtualbox/vboxservice.xml=vboxservice.xml"'
    11091echo " --- start of prototype  ---"
    11192cat prototype
  • trunk/src/VBox/Additions/solaris/Installer/postinstall.sh

    r25681 r25712  
    130130    /usr/sbin/installf -c none $PKGINST /dev/vboxguest=../devices/pci@0,0/pci80ee,cafe@4:vboxguest s
    131131fi
    132 if test ! -z "$xorgbin"; then
    133     /usr/sbin/installf -c none $PKGINST /usr/bin/VBoxClient=$vboxadditions_path/VBox.sh s
    134     /usr/sbin/installf -c none $PKGINST /usr/bin/VBoxRandR=$vboxadditions_path/VBoxRandR.sh s
    135     /usr/sbin/installf -c none $PKGINST /usr/bin/VBoxClient-all=$vboxadditions_path/1099.vboxclient s
    136 fi
    137 /usr/sbin/installf -c none $PKGINST /usr/bin/VBoxControl=$vboxadditions_path/VBox.sh s
    138 /usr/sbin/installf -c none $PKGINST /usr/bin/VBoxService=$vboxadditions_path/VBox.sh s
    139 
    140132
    141133# Install Xorg components to the required places
     
    280272    echo "Configuring client..."
    281273    vboxclient_src=$vboxadditions_path
     274    vboxclient_dest="/usr/share/gnome/autostart"
     275    clientinstalled=0
     276    if test -d "$vboxclient_dest"; then
     277        /usr/sbin/installf -c none $PKGINST $vboxclient_dest/vboxclient.desktop=$vboxadditions_path/vboxclient.desktop s
     278        clientinstalled=1
     279    fi
    282280    vboxclient_dest="/usr/dt/config/Xsession.d"
    283281    if test -d "$vboxclient_dest"; then
    284         /usr/sbin/installf -c none $PKGINST "$vboxclient_dest/1099.vboxclient" f
    285         cp "$vboxclient_src/1099.vboxclient" "$vboxclient_dest/1099.vboxclient"
    286         chmod a+rx "$vboxclient_dest/1099.vboxclient"
    287     elif test -d "/usr/share/gnome/autostart"; then
    288         vboxclient_dest="/usr/share/gnome/autostart"
    289         /usr/sbin/installf -c none $PKGINST "$vboxclient_dest/vboxclient.desktop" f
    290         cp "$vboxclient_src/vboxclient.desktop" "$vboxclient_dest/vboxclient.desktop"
    291     else
    292         echo "*** Failed to configure client!! Couldn't find autostart directory."
     282        /usr/sbin/installf -c none $PKGINST $vboxclient_dest/1099.vboxclient=$vboxadditions_path/1099.vboxclient s
     283        clientinstalled=1
     284    fi
     285    if test $clientinstalled -eq 0; then
     286        echo "*** Failed to configure client, couldn't find any autostart directory!"
     287        # Exit as partially failed installation
    293288        retval=2
    294289    fi
  • trunk/src/VBox/Additions/solaris/Makefile.kmk

    r24683 r25712  
    3232endif
    3333
    34 PKGFILENAME           := VBoxSolarisAdditions.pkg
    35 PKGINFO_ARCH           = $(shell uname -p)
    36 PKGINFO_REVSTAMP       = $(date %Y.%m.%d.%H.%M)
    37 VBOX_PATH_SOLARIS_ADDITION_INSTALLER := $(PATH_SUB_CURRENT)/Installer
    38 VBOX_PATH_X11_ADDITION_INSTALLER     := $(PATH_ROOT)/src/VBox/Additions/x11/Installer
    39 SOLARIS_ADD_INST_DIR  := $(PATH_TARGET)/AdditionsInstaller
     34ifdef VBOX_WITH_COMBINED_SOLARIS_PACKAGE ## @todo remove this when tinderclient.pl is updated.
     35 VBOX_WITH_COMBINED_GUEST_PACKAGE := 1
     36endif
     37
     38PKGFILENAME                             := VBoxSolarisAdditions.pkg
     39PKGINFO_ARCH                             = $(shell uname -p)
     40PKGINFO_REVSTAMP                         = $(date %Y.%m.%d.%H.%M)
     41VBOX_PATH_SOLARIS_ADDITION_INSTALLER    := $(PATH_SUB_CURRENT)/Installer
     42VBOX_PATH_X11_ADDITION_INSTALLER        := $(PATH_ROOT)/src/VBox/Additions/x11/Installer
     43
     44SOLARIS_ADDDIR_NAME_64                  := amd64
     45SOLARIS_ADDDIR_NAME_32                  := i386
     46
     47SOLARIS_ADDINST_OUT_DIR                 := $(PATH_TARGET)/AdditionsInstaller
     48SOLARIS_VBOXADDINST_SUBDIR              := /opt/VirtualBoxAdditions
     49SOLARIS_VBOXADDINST_DIR                 := $(SOLARIS_ADDINST_OUT_DIR)$(SOLARIS_VBOXADDINST_SUBDIR)
     50SOLARIS_VBOXADDINST_DIR_32              := $(SOLARIS_VBOXADDINST_DIR)/$(SOLARIS_ADDDIR_NAME_32)
     51SOLARIS_VBOXADDINST_DIR_64              := $(SOLARIS_VBOXADDINST_DIR)/$(SOLARIS_ADDDIR_NAME_64)
     52
     53SOLARIS_ADD_OUT_BIN_64                  := $(PATH_OUT_BASE)/solaris.amd64/$(KBUILD_TYPE)/bin/additions
     54SOLARIS_ADD_OUT_BIN_32                  := $(PATH_OUT_BASE)/solaris.x86/$(KBUILD_TYPE)/bin/additions
     55SOLARIS_ADD_OUT_BIN_ISA                 := $(PATH_OUT_BASE)/solaris.$(KBUILD_TARGET_ARCH)/$(KBUILD_TYPE)/bin/additions
     56
     57SOLARIS_ADD_DRIVERINST_DIR              := $(SOLARIS_ADDINST_OUT_DIR)/usr/kernel/drv
     58SOLARIS_ADD_DRIVERINST_DIR_32           := $(SOLARIS_ADD_DRIVERINST_DIR)
     59SOLARIS_ADD_DRIVERINST_DIR_64           := $(SOLARIS_ADD_DRIVERINST_DIR)/amd64
     60
     61SOLARIS_ADD_SYSLIBINST_DIR_32           := $(SOLARIS_ADDINST_OUT_DIR)/usr/lib
     62SOLARIS_ADD_SYSLIBINST_DIR_64           := $(SOLARIS_ADDINST_OUT_DIR)/usr/lib/amd64
     63
     64SOLARIS_ADD_USRBIN_DIR                  := $(SOLARIS_ADDINST_OUT_DIR)/usr/bin
     65SOLARIS_ADD_ETCFS_DIR                   := $(SOLARIS_ADDINST_OUT_DIR)/etc/fs/vboxfs
     66SOLARIS_ADD_SERVICESINST_DIR            := $(SOLARIS_ADDINST_OUT_DIR)/var/svc/manifest/system/virtualbox
     67
     68ifeq ($(KBUILD_TARGET_ARCH),x86)
     69 SOLARIS_ADDDIR_NAME_ISA                := $(SOLARIS_ADDDIR_NAME_32)
     70 SOLARIS_VBOXADDINST_DIR_ISA            := $(SOLARIS_VBOXADDINST_DIR_32)
     71 SOLARIS_ADD_DRIVERINST_DIR_ISA         := $(SOLARIS_ADD_DRIVERINST_DIR_32)
     72 SOLARIS_ADD_SYSLIBINST_DIR_ISA         := $(SOLARIS_ADD_SYSLIBINST_DIR_32)
     73else
     74 SOLARIS_ADDDIR_NAME_ISA                := $(SOLARIS_ADDDIR_NAME_64)
     75 SOLARIS_VBOXADDINST_DIR_ISA            := $(SOLARIS_VBOXADDINST_DIR_64)
     76 SOLARIS_ADD_DRIVERINST_DIR_ISA         := $(SOLARIS_ADD_DRIVERINST_DIR_64)
     77 SOLARIS_ADD_SYSLIBINST_DIR_ISA         := $(SOLARIS_ADD_SYSLIBINST_DIR_64)
     78endif
    4079
    4180ifeq ($(KBUILD_TYPE),debug)
     
    4887endif
    4988
    50 PACKING     += $(PATH_BIN)/additions/$(PKGFILENAME)
    51 OTHER_CLEAN += $(PACKING)
    52 
     89INSTALLS          += solaris-addcommon solaris-addcommonbins
     90PROGRAMS          += VBoxISAExec
     91PACKING           += $(PATH_BIN)/additions/$(PKGFILENAME)
     92OTHER_CLEAN       += $(PACKING)
     93
     94#
     95# VBoxISAExec
     96#
     97VBoxISAExec_TEMPLATE = VBOXR3EXE
     98VBoxISAExec_INST     = $(INST_ADDITIONS)
     99VBoxISAExec_DEPS     = $(VBOX_SVN_REV_KMK)
     100VBoxISAExec_SOURCES  = $(PATH_ROOT)/src/VBox/Installer/solaris/VBoxISAExec.c
     101
     102#
     103# Install to $(PATH_BIN)/additions/ files from various source paths (to pack them using rules)
     104#
     105solaris-add-commonbins_INST = bin/additions/
     106solaris-add-commonbins_MODE = a+rx,u+w
     107solaris-add-commonbins_SOURCES = \
     108        $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxguest.sh \
     109        $(VBOX_PATH_X11_ADDITION_INSTALLER)/x11config.pl \
     110        $(VBOX_PATH_X11_ADDITION_INSTALLER)/x11config15sol.pl \
     111        $(VBOX_PATH_X11_ADDITION_INSTALLER)/x11restore.pl \
     112        $(VBOX_PATH_X11_ADDITION_INSTALLER)/VBoxRandR.sh \
     113        $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/VBox.sh
     114
     115solaris-addcommon_INST = bin/additions/
     116solaris-addcommon_MODE = a+r,u+w
     117solaris-addcommon_SOURCES = \
     118        $(PATH_ROOT)/src/VBox/Additions/common/VBoxGuest/VBoxGuest-solaris.conf=>vboxguest.conf \
     119        $(VBOX_PATH_X11_ADDITION_INSTALLER)/vboxclient.desktop \
     120        $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxservice.xml
     121
     122#
     123# Create full directory tree
     124#
     125BLDDIRS          += \
     126        $(SOLARIS_ADDINST_OUT_DIR) \
     127        $(addprefix $(SOLARIS_ADDINST_OUT_DIR)/,\
     128        opt \
     129        opt/VirtualBoxAdditions \
     130        opt/VirtualBoxAdditions/$(SOLARIS_ADDDIR_NAME_32) \
     131        opt/VirtualBoxAdditions/$(SOLARIS_ADDDIR_NAME_64) \
     132        usr \
     133        usr/bin \
     134        usr/lib \
     135        usr/lib/amd64 \
     136        usr/kernel \
     137        usr/kernel/drv \
     138        usr/kernel/drv/amd64 \
     139        var \
     140        var/svc \
     141        var/svc/manifest \
     142        var/svc/manifest/system \
     143        var/svc/manifest/system/virtualbox \
     144        )
     145
     146SOLARIS_ADD_STRIP_BINS = \
     147        VBoxClient \
     148        VBoxService \
     149        VBoxControl \
     150        vboxfsmount     \
     151        vboxfs \
     152        $(if $(VBOX_OSE),,vboxfs_s10)
     153
     154SOLARIS_ADD_SYSLIBS = \
     155        VBoxOGL.so \
     156        VBoxOGLcrutil.so \
     157        VBoxOGLfeedbackspu.so \
     158        VBoxOGLpassthroughspu.so \
     159        VBoxOGLarrayspu.so \
     160        VBoxOGLerrorspu.so \
     161        VBoxOGLpackspu.so
     162
     163SOLARIS_ADD_DRIVERS = \
     164        vboxguest
     165
     166SOLARIS_ADD_DRIVERS_CONF = \
     167        vboxguest.conf
     168
     169SOLARIS_ADD_XORG_DRIVERS = \
     170        vboxmouse_drv_14.so \
     171        vboxmouse_drv_15.so \
     172        vboxmouse_drv_16.so \
     173        vboxmouse_drv_17.so \
     174        vboxmouse_drv_70.so \
     175        vboxmouse_drv_71.so \
     176        vboxvideo_drv_13.so \
     177        vboxvideo_drv_14.so \
     178        vboxvideo_drv_15.so \
     179        vboxvideo_drv_16.so \
     180        vboxvideo_drv_17.so \
     181        vboxvideo_drv_70.so \
     182        vboxvideo_drv_71.so
     183
     184SOLARIS_ADD_COMMON_BINS = \
     185        vboxguest.sh \
     186        x11config.pl \
     187        x11config15sol.pl \
     188        x11restore.pl \
     189        VBoxRandR.sh \
     190        VBox.sh \
     191        VBoxISAExec
     192
     193SOLARIS_ADD_USRBIN_LINKS = \
     194        VBoxService \
     195        VBoxClient \
     196        VBoxControl
     197
     198SOLARIS_ADD_COMMON = \
     199        vboxclient.desktop
     200
     201SOLARIS_ADD_SERVICES = \
     202        vboxservice.xml
     203
     204ifdef VBOX_COMPRESS
     205 SOLARIS_ADD_COMPRESS_FILES = \
     206        $(SOLARIS_ADD_XORG_DRIVERS) \
     207        VBoxService \
     208        VBoxClient \
     209        VBoxControl
     210endif
     211
     212ifdef VBOX_WITH_COMBINED_SOLARIS_GUEST_PACKAGE
     213  SOLARIS_ARCH_ADD_DEPFILES = \
     214   $(addprefix $(SOLARIS_VBOXADDINST_DIR_64)/,$(SOLARIS_ADD_STRIP_BINS)) \
     215        $(addprefix $(SOLARIS_ADD_SYSLIBINST_DIR_32)/,$(SOLARIS_ADD_SYSLIBS)) \
     216        $(addprefix $(SOLARIS_ADD_DRIVERINST_DIR_64)/,$(SOLARIS_ADD_DRIVERS)) \
     217        $(addprefix $(SOLARIS_VBOXADDINST_DIR_64)/,$(SOLARIS_ADD_XORG_DRIVERS)) \
     218        $(addprefix $(SOLARIS_VBOXADDINST_DIR_32)/,$(SOLARIS_ADD_STRIP_BINS)) \
     219        $(addprefix $(SOLARIS_ADD_DRIVERINST_DIR_32)/,$(SOLARIS_ADD_DRIVERS)) \
     220        $(addprefix $(SOLARIS_ADD_DRIVERINST_DIR)/,$(SOLARIS_ADD_DRIVERS_CONF)) \
     221        $(addprefix $(SOLARIS_VBOXADDINST_DIR)/,$(SOLARIS_ADD_XORG_DRIVERS))
     222else
     223  SOLARIS_ARCH_ADD_DEPFILES = \
     224   $(addprefix $(SOLARIS_VBOXADDINST_DIR_ISA)/,$(SOLARIS_ADD_STRIP_BINS)) \
     225        $(addprefix $(SOLARIS_ADD_SYSLIBINST_DIR_ISA)/,$(SOLARIS_ADD_SYSLIBS)) \
     226        $(addprefix $(SOLARIS_ADD_DRIVERINST_DIR_ISA)/,$(SOLARIS_ADD_DRIVERS)) \
     227        $(addprefix $(SOLARIS_ADD_DRIVERINST_DIR)/,$(SOLARIS_ADD_DRIVERS_CONF)) \
     228        $(addprefix $(SOLARIS_VBOXADDINST_DIR_ISA)/,$(SOLARIS_ADD_XORG_DRIVERS))
     229endif
     230
     231SOLARIS_ARCH_ADD_DEPFILES += \
     232        $(addprefix $(SOLARIS_VBOXADDINST_DIR)/,$(SOLARIS_ADD_COMMON_BINS)) \
     233        $(addprefix $(SOLARIS_VBOXADDINST_DIR)/,$(SOLARIS_ADD_COMMON)) \
     234        $(addprefix $(SOLARIS_ADD_SERVICESINST_DIR)/,$(SOLARIS_ADD_SERVICES)) \
     235        $(addprefix $(SOLARIS_ADD_USRBIN_DIR)/,$(SOLARIS_ADD_USRBIN_LINKS))
     236
     237
     238
     239include $(KBUILD_PATH)/subfooter.kmk
     240
     241#
     242# -=-=-=-=-=-=-=- Additions package -=-=-=-=-=-=-=-
     243#
     244
     245$(PATH_BIN)/additions/$(PKGFILENAME): \
     246                $(VBOX_VERSION_STAMP) \
     247                $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/makepackage.sh \
     248                $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/postinstall.sh \
     249                $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/preremove.sh \
     250                $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxguest.pkginfo \
     251                $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxguest.depend \
     252                $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxguest.sh \
     253                $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxservice.xml \
     254                $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/VBox.sh \
     255                $(VBOX_PATH_X11_ADDITION_INSTALLER)/98vboxadd-xclient \
     256                $(VBOX_PATH_X11_ADDITION_INSTALLER)/x11config.pl \
     257                $(VBOX_PATH_X11_ADDITION_INSTALLER)/x11config15sol.pl \
     258                $(VBOX_PATH_X11_ADDITION_INSTALLER)/x11restore.pl \
     259                $(VBOX_PATH_X11_ADDITION_INSTALLER)/solaris_xorg.conf \
     260                $(VBOX_PATH_X11_ADDITION_INSTALLER)/solaris_xorg_modeless.conf \
     261                $(VBOX_PATH_X11_ADDITION_INSTALLER)/VBoxRandR.sh \
     262                $(if $(VBOX_OSE),,$(VBOX_BRAND_LICENSE_TXT)) \
     263                $(PATH_ROOT)/src/VBox/Additions/common/VBoxGuest/VBoxGuest-solaris.conf \
     264                $(PATH_SUB_CURRENT)/solaris/Makefile.kmk \
     265                $(SOLARIS_ARCH_ADD_DEPFILES)
     266        $(call MSG_L1,Installing guest additions)
     267        $(QUIET)$(SED) \
     268                -e "s/@VBOX_VERSION_STRING@/$(VBOX_VERSION_STRING)/g" \
     269                -e "s/@VBOX_SVN_REV@/$(VBOX_SVN_REV)/g" \
     270                -e "s/@VBOX_VERSION_REVSTAMP@/$(PKGINFO_REVSTAMP)/g" \
     271                -e "s/@UNAME_P@/$(PKGINFO_ARCH)/g" \
     272                --output $(SOLARIS_ADDINST_OUT_DIR)/vboxguest.pkginfo \
     273                $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxguest.pkginfo
     274        $(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/makepackage.sh                     $(SOLARIS_ADDINST_OUT_DIR)/makepackage.sh
     275        $(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/postinstall.sh                     $(SOLARIS_ADDINST_OUT_DIR)/postinstall.sh
     276        $(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/preremove.sh                       $(SOLARIS_ADDINST_OUT_DIR)/preremove.sh
     277        $(QUIET)$(INSTALL) -m 0644 $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxguest.space                    $(SOLARIS_ADDINST_OUT_DIR)/vboxguest.space
     278        $(QUIET)$(INSTALL) -m 0644 $(VBOX_PATH_SOLARIS_ADDITION_INSTALLER)/vboxguest.depend                   $(SOLARIS_ADDINST_OUT_DIR)/vboxguest.depend
     279        $(QUIET)$(if $(VBOX_OSE),,$(INSTALL) -m 0644 $(VBOX_BRAND_LICENSE_TXT)                                $(SOLARIS_ADDINST_OUT_DIR)/vboxguest.copyright)
     280        $(call MSG_L1,Creating install package: $@)
     281        $(QUIET)$(MKDIR) -p $(SOLARIS_ADD_ETCFS_DIR)
     282        $(QUIET)$(LN_SYMLINK) -f ../..$(SOLARIS_VBOXADDINST_SUBDIR)/VBoxRandR.sh                              $(SOLARIS_ADD_USRBIN_DIR)/VBoxRandR
     283        $(QUIET)$(LN_SYMLINK) -f ../..$(SOLARIS_VBOXADDINST_SUBDIR)/1099.vboxclient                           $(SOLARIS_ADD_USRBIN_DIR)/VBoxClient-all
     284ifdef VBOX_WITH_COMBINED_SOLARIS_GUEST_PACKAGE
     285 ifdef VBOX_COMPRESS
     286        $(QUIET)$(VBOX_COMPRESS) $(addprefix $(SOLARIS_VBOXADDINST_DIR_32)/,$(SOLARIS_ADD_COMPRESS_FILES))
     287        $(QUIET)$(VBOX_COMPRESS) $(addprefix $(SOLARIS_VBOXADDINST_DIR_64)/,$(SOLARIS_ADD_COMPRESS_FILES))
     288 endif
     289        $(QUIET)$(LN_SYMLINK) -f ../../..$(SOLARIS_VBOXADDINST_SUBDIR)/$(SOLARIS_ADDDIR_NAME_32)/vboxfsmount  $(SOLARIS_ADD_ETCFS_DIR)/mount
     290else # !VBOX_WITH_COMBINED_SOLARIS_GUEST_PACKAGE
     291 ifdef VBOX_COMPRESS
     292        $(QUIET)$(VBOX_COMPRESS) $(addprefix $(SOLARIS_VBOXADDINST_DIR_ISA)/,$(SOLARIS_ADD_COMPRESS_FILES))
     293 endif
     294        $(LN_SYMLINK) -f ../../..$(SOLARIS_VBOXADDINST_SUBDIR)/$(SOLARIS_ADDDIR_NAME_ISA)/vboxfsmount         $(SOLARIS_ADD_ETCFS_DIR)/mount
     295endif
     296        $(QUIET)$(SOLARIS_ADDINST_OUT_DIR)/makepackage.sh $(SOLARIS_ADDINST_OUT_DIR) $(PKGFILENAME) $(VBOX_SVN_REV)
     297        $(QUIET)$(INSTALL) -m 0644 $(SOLARIS_ADDINST_OUT_DIR)/$(PKGFILENAME) $(PATH_BIN)/additions/$(PKGFILENAME)
     298
     299
     300
     301#
     302# -=-=-=-=-=-=-=- Package rules -=-=-=-=-=-=-=-
     303#
     304
     305#
     306# 32-bit files
     307#
     308$(addprefix $(SOLARIS_VBOXADDINST_DIR_32)/,$(SOLARIS_ADD_STRIP_BINS)): \
     309                $(SOLARIS_VBOXADDINST_DIR_32)/% : $(SOLARIS_ADD_OUT_BIN_32)/% | $$(dir $$@)
     310        $(INSTALL) -m 0644 $(if $(VBOX_DO_STRIP),-s,) $< $@
     311
     312$(addprefix $(SOLARIS_ADD_SYSLIBINST_DIR_32)/,$(SOLARIS_ADD_SYSLIBS)): \
     313                $(SOLARIS_ADD_SYSLIBINST_DIR_32)/% : $(SOLARIS_ADD_OUT_BIN_32)/% | $$(dir $$@)
     314        $(INSTALL) -m 0644 $(if $(VBOX_DO_STRIP),-s,) $< $@
     315
     316$(addprefix $(SOLARIS_ADD_DRIVERINST_DIR_32)/,$(SOLARIS_ADD_DRIVERS)): \
     317                $(SOLARIS_ADD_DRIVERINST_DIR_32)/% : $(SOLARIS_ADD_OUT_BIN_32)/% | $$(dir $$@)
     318        $(INSTALL) -m 0644 $< $@
     319
     320$(addprefix $(SOLARIS_VBOXADDINST_DIR_32)/,$(SOLARIS_ADD_XORG_DRIVERS)): \
     321                $(SOLARIS_VBOXADDINST_DIR_32)/% : $(SOLARIS_ADD_OUT_BIN_32)/% | $$(dir $$@)
     322        $(BIN_COPY) $< $@
     323
     324
     325#
     326# 64-bit files
     327#
     328$(addprefix $(SOLARIS_VBOXADDINST_DIR_64)/,$(SOLARIS_ADD_STRIP_BINS)): \
     329                $(SOLARIS_VBOXADDINST_DIR_64)/% : $(SOLARIS_ADD_OUT_BIN_64)/% | $$(dir $$@)
     330        $(INSTALL) -m 0755 $(if $(VBOX_DO_STRIP),-s,) $< $@
     331
     332$(addprefix $(SOLARIS_ADD_SYSLIBINST_DIR_64)/,$(SOLARIS_ADD_SYSLIBS)): \
     333                $(SOLARIS_ADD_SYSLIBINST_DIR_64)/% : $(SOLARIS_ADD_OUT_BIN_64)/% | $$(dir $$@)
     334        $(INSTALL) -m 0644 $(if $(VBOX_DO_STRIP),-s,) $< $@
     335
     336$(addprefix $(SOLARIS_ADD_DRIVERINST_DIR_64)/,$(SOLARIS_ADD_DRIVERS)): \
     337                $(SOLARIS_ADD_DRIVERINST_DIR_64)/% : $(SOLARIS_ADD_OUT_BIN_64)/% | $$(dir $$@)
     338        $(INSTALL) -m 0644 $< $@
     339
     340$(addprefix $(SOLARIS_VBOXADDINST_DIR_64)/,$(SOLARIS_ADD_XORG_DRIVERS)): \
     341                $(SOLARIS_VBOXADDINST_DIR_64)/% : $(SOLARIS_ADD_OUT_BIN_64)/% | $$(dir $$@)
     342        $(BIN_COPY) $< $@
     343
     344
     345#
     346# Common files
     347#
     348$(addprefix $(SOLARIS_VBOXADDINST_DIR)/,$(SOLARIS_ADD_COMMON)): \
     349                $(SOLARIS_VBOXADDINST_DIR)/% : $(SOLARIS_ADD_OUT_BIN_ISA)/% | $$(dir $$@)
     350        $(INSTALL) -m 0644 $< $@
     351
     352#
     353# Common binaries/shell scripts
     354#
     355$(addprefix $(SOLARIS_VBOXADDINST_DIR)/,$(SOLARIS_ADD_COMMON_BINS)): \
     356                $(SOLARIS_VBOXADDINST_DIR)/% : $(SOLARIS_ADD_OUT_BIN_ISA)/% | $$(dir $$@)
     357        $(INSTALL) -m 0755 $< $@
     358
     359#
     360# Driver .conf files
     361#
     362$(addprefix $(SOLARIS_ADD_DRIVERINST_DIR)/,$(SOLARIS_ADD_DRIVERS_CONF)): \
     363                $(SOLARIS_ADD_DRIVERINST_DIR)/% : $(SOLARIS_ADD_OUT_BIN_ISA)/% | $$(dir $$@)
     364        $(INSTALL) -m 0644 $< $@
     365
     366#
     367# SMF Service files
     368#
     369$(addprefix $(SOLARIS_ADD_SERVICESINST_DIR)/,$(SOLARIS_ADD_SERVICES)): \
     370                $(SOLARIS_ADD_SERVICESINST_DIR)/% : $(SOLARIS_ADD_OUT_BIN_ISA)/% | $$(dir $$@)
     371        $(INSTALL) -m 0644 $< $@
     372
     373#
     374# Symlinks from /usr/bin/ to /opt/VirtualBoxAdditions (some like VBoxRandR created manually)
     375#
     376$(addprefix $(SOLARIS_ADD_USRBIN_DIR)/,$(SOLARIS_ADD_USRBIN_LINKS)): \
     377                $(SOLARIS_ADD_USRBIN_DIR)/% : % | $$(dir $$@)
     378        $(LN_SYMLINK) -f ../..$(SOLARIS_VBOXADDINST_SUBDIR)/$< $@
     379
     380
     381
     382#
     383# @todo Delete once the new packaging works
     384#
     385ifdef OBSOLETE_PACKAGING
    53386#
    54387# If we are doing a combined package (x86+amd64) include the binaries from both
     
    346679        $(QUIET)$(INSTALL) -m 0644 $(SOLARIS_ADD_INST_DIR)/$(PKGFILENAME) $(PATH_BIN)/additions/$(PKGFILENAME)
    347680
     681endif
     682
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette