Changeset 54062 in vbox for trunk/src/VBox/Installer
- Timestamp:
- Feb 3, 2015 2:09:22 AM (10 years ago)
- svn:sync-xref-src-repo-rev:
- 98001
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Installer/solaris/Makefile.kmk
r54045 r54062 5 5 6 6 # 7 # Copyright (C) 2007-201 3Oracle Corporation7 # Copyright (C) 2007-2015 Oracle Corporation 8 8 # 9 9 # This file is part of VirtualBox Open Source Edition (OSE), as … … 23 23 endif 24 24 25 26 # 27 # Globals 28 # 29 VBOX_PATH_SOL_INST_SRC := $(PATH_SUB_CURRENT) 30 VBOX_PATH_SI_SCRATCH := $(PATH_TARGET)/Installer-solaris 31 VBOX_PATH_SI_SCRATCH_PKG := $(PATH_TARGET)/Installer-solaris/pkg 32 VBOX_PATH_SI_SCRATCH_DBG := $(PATH_TARGET)/Installer-solaris/DebugPkg 33 VBOX_SI_ARCH := $(subst x86,i386,$(KBUILD_TARGET_ARCH)) 34 VBOX_SI_ICON_TYPES := ova ovf vbox vbox-extpack vdi vmdk vhd hdd 35 VBOX_SI_ICON_SIZES := 16 20 24 32 48 64 72 96 128 256 36 VBOX_SI_GTAR := /usr/sfw/bin/gtar 37 VBOX_SI_OBJCOPY_STRIP := /usr/sfw/bin/gobjcopy --strip-debug -R .comment 38 ifeq ($(KBUILD_TARGET_ARCH),amd64) 39 VBOX_SI_OBJCOPY_DBGINFO := /usr/sfw/bin/gobjcopy --only-keep-debug 40 else 41 VBOX_SI_OBJCOPY_DBGINFO := $(CP) -p # Solaris ld/gobjcopy(2.15) don't get along on x86, works only on amd64. So just using cp for now. 42 endif 43 25 44 # Unset this to speed up things during makefile hacking. 26 VBOX_SOL_INST_DEP_ON_MAKEFILE := $(MAKEFILE_CURRENT) 27 28 # 29 # Globals 30 # 31 VBOX_PATH_SOL_INST_SRC := $(PATH_SUB_CURRENT) 32 SOLARIS_DIR_NAME_64 := amd64 33 SOLARIS_DIR_NAME_32 := i386 34 SOLARIS_INST_OUT_DIR := $(PATH_TARGET)/Installer 35 SOLARIS_BASEINST_DIR := $(PATH_TARGET)/Installer/BasePkg 36 SOLARIS_VBOXINST_SUBDIR := opt/VirtualBox 37 SOLARIS_VBOXINST_DIR := $(SOLARIS_BASEINST_DIR)/$(SOLARIS_VBOXINST_SUBDIR) 38 SOLARIS_VBOXINST_DIR_32 := $(SOLARIS_VBOXINST_DIR)/$(SOLARIS_DIR_NAME_32) 39 SOLARIS_VBOXINST_DIR_64 := $(SOLARIS_VBOXINST_DIR)/$(SOLARIS_DIR_NAME_64) 40 SOLARIS_DRIVERINST_DIR := $(SOLARIS_BASEINST_DIR)/platform/i86pc/kernel/drv 41 SOLARIS_DRIVERINST_DIR_32 := $(SOLARIS_DRIVERINST_DIR) 42 SOLARIS_DRIVERINST_DIR_64 := $(SOLARIS_DRIVERINST_DIR)/amd64 43 SOLARIS_USR_DIR := $(SOLARIS_BASEINST_DIR)/usr 44 SOLARIS_USRBIN_DIR := $(SOLARIS_USR_DIR)/bin 45 SOLARIS_USRSHR_APPS_DIR := $(SOLARIS_USR_DIR)/share/applications 46 SOLARIS_USRSHR_APPREG_DIR := $(SOLARIS_USR_DIR)/share/application-registry 47 SOLARIS_USRSHR_MIMEXML_DIR := $(SOLARIS_USR_DIR)/share/mime/packages 48 SOLARIS_USRSHR_MIMEINFO_DIR := $(SOLARIS_USR_DIR)/share/mime-info 49 SOLARIS_USRSHR_ICONS_DIR := $(SOLARIS_USR_DIR)/share/icons/hicolor 50 SOLARIS_USRSHR_PIXMAPS_DIR := $(SOLARIS_USR_DIR)/share/pixmaps 51 SOLARIS_VBOXSMF_DIR := $(SOLARIS_BASEINST_DIR)/var/svc/manifest/application/virtualbox 52 SOLARIS_ETC_DIR := $(SOLARIS_BASEINST_DIR)/etc 53 54 SOLARIS_OUT_BIN_64 := $(PATH_OUT_BASE)/solaris.amd64/$(KBUILD_TYPE)/bin 55 SOLARIS_OUT_BIN_32 := $(PATH_OUT_BASE)/solaris.x86/$(KBUILD_TYPE)/bin 56 SOLARIS_OUT_BIN := $(PATH_STAGE_BIN) 57 58 SOLARIS_DBG_DIR_NAME := DebugPkg 59 SOLARIS_DBG_DIR := $(SOLARIS_INST_OUT_DIR)/$(SOLARIS_DBG_DIR_NAME) 60 SOLARIS_DBG_DIR_32 := $(SOLARIS_DBG_DIR)/$(SOLARIS_DIR_NAME_32) 61 SOLARIS_DBG_DIR_64 := $(SOLARIS_DBG_DIR)/$(SOLARIS_DIR_NAME_64) 62 63 ifeq ($(KBUILD_TARGET_ARCH),amd64) 64 SOLARIS_VBOXINST_DIR_ISA := $(SOLARIS_VBOXINST_DIR_64) 65 SOLARIS_DRIVERINST_DIR_ISA := $(SOLARIS_DRIVERINST_DIR_64) 66 SOLARIS_DBG_DIR_ISA := $(SOLARIS_DBG_DIR_64) 67 SOL_DBG_OBJCOPY := /usr/sfw/bin/gobjcopy --only-keep-debug 68 SOL64_PKG := 1 69 else 70 SOLARIS_VBOXINST_DIR_ISA := $(SOLARIS_VBOXINST_DIR_32) 71 SOLARIS_DRIVERINST_DIR_ISA := $(SOLARIS_DRIVERINST_DIR_32) 72 SOLARIS_DBG_DIR_ISA := $(SOLARIS_DBG_DIR_32) 73 SOL_DBG_OBJCOPY := $(CP) -p # Solaris ld/gobjcopy(2.15) don't get along on x86, works only on amd64. So just using cp for now. 74 endif 75 SOL_OBJCOPY := /usr/sfw/bin/gobjcopy --strip-debug -R .comment 76 SOL_GTAR := /usr/sfw/bin/gtar 77 78 # Figure out the paths to the two platform specific Qt4 directories 79 SOLARIS_PATH_QT_32 = $(subst solaris.$(KBUILD_TARGET_ARCH),solaris.x86,$(VBOX_PATH_QT4)) 80 SOLARIS_PATH_QT_64 = $(subst solaris.$(KBUILD_TARGET_ARCH),solaris.amd64,$(VBOX_PATH_QT4)) 45 VBOX_SI_DEP_ON_MAKEFILE := $(MAKEFILE_CURRENT) 46 81 47 82 48 # Base package 83 PKGINFO_ARCH = $(shell uname -p) 84 PKGINFO_REVSTAMP = $(date %Y.%m.%d.%H.%M) 85 PKG_FILENAME = VirtualBox-$(VBOX_VERSION_STRING)-SunOS-$(KBUILD_TARGET_ARCH)-r$(VBOX_SVN_REV) 86 87 # Debug package 88 DBG_ARCHIVE = VirtualBoxDebug.tar.bz2 89 90 # Kernel interface (vbi) package 91 VBIPKG_FILENAME = VirtualBoxKern-$(VBOX_VERSION_STRING)-SunOS-r$(VBOX_SVN_REV) 49 PKGINFO_ARCH = $(shell uname -p) 50 PKGINFO_REVSTAMP = $(date %Y.%m.%d.%H.%M) 51 PKG_FILENAME := VirtualBox-$(VBOX_VERSION_STRING)-SunOS-$(KBUILD_TARGET_ARCH)-r$(VBOX_SVN_REV) 52 92 53 93 54 # … … 96 57 PROGRAMS += VBoxZoneAccess VBoxISAExec 97 58 INSTALLS += solaris-doc solaris-bin solaris-drv-confs solaris-icons 98 99 BLDDIRS += \ 100 $(SOLARIS_INST_OUT_DIR) \ 101 $(SOLARIS_BASEINST_DIR) \ 102 $(SOLARIS_VBOXINST_DIR) \ 103 $(SOLARIS_DBG_DIR) 104 105 BLDDIRS += $(addprefix $(SOLARIS_BASEINST_DIR)/,\ 106 usr \ 107 usr/bin \ 108 platform \ 109 platform/i86pc \ 110 platform/i86pc/kernel \ 111 platform/i86pc/kernel/drv \ 112 platform/i86pc/kernel/drv/amd64 \ 113 ) 114 115 PACKING += $(PATH_STAGE_BIN)/$(PKG_FILENAME).tar.gz $(PATH_STAGE_BIN)/$(DBG_ARCHIVE) 116 117 OTHER_CLEAN += $(addprefix $(SOLARIS_BASEINST_DIR)/,\ 118 vbox.pkginfo vbox.copyright vbox.space vbox.depend vbox.pkgresponse \ 119 makepackage.sh prototype postinstall.sh checkinstall.sh preremove.sh) 59 BLDDIRS += $(VBOX_PATH_SI_SCRATCH) 60 PACKING += \ 61 $(PATH_STAGE_BIN)/$(PKG_FILENAME).tar.gz \ 62 $(PATH_STAGE_BIN)/VirtualBoxDebug.tar.bz2 63 OTHER_CLEAN += \ 64 $(VBOX_PATH_SI_SCRATCH)/$(PKG_FILENAME).pkg \ 65 $(PATH_STAGE_BIN)/$(PKG_FILENAME).tar.gz \ 66 $(PATH_STAGE_BIN)/VirtualBoxDebug.tar.bz2 120 67 121 68 # … … 167 114 solaris-icons_INST = bin/icons/ 168 115 solaris-icons_MODE = a+r,u+w 169 solaris-icons_SOURCES = $(VBOX_MIME_ICONS) 170 171 BLDDIRS += \ 172 $(SOLARIS_USR_DIR)/share \ 173 $(SOLARIS_USR_DIR)/share/icons \ 174 $(SOLARIS_USRSHR_ICONS_DIR) \ 175 $(foreach s,16 20 24 32 48 64 72 96 128 256,\ 176 $(SOLARIS_USRSHR_ICONS_DIR)/$(s)x$(s) \ 177 $(SOLARIS_USRSHR_ICONS_DIR)/$(s)x$(s)/mimetypes) 178 179 VBOX_MIME_ICONS = \ 180 $(addprefix $(PATH_ROOT)/src/VBox/Resources/other/,\ 181 $(foreach f,ova ovf vbox vbox-extpack vdi vmdk vhd hdd, \ 182 $(foreach s,16 20 24 32 48 64 72 96 128 256,\ 183 virtualbox-$(f)-$(s)px.png=>$(s)x$(s)/mimetypes/virtualbox-$(f).png))) 184 185 SOLARIS_COMMON_ICONS = \ 186 $(foreach f,ova ovf vbox vbox-extpack vdi vmdk vhd hdd, \ 187 $(foreach s,16 20 24 32 48 64 72 96 128 256,\ 188 $(s)x$(s)/mimetypes/virtualbox-$(f).png)) 189 190 191 # 192 # Note: Other than the files produced during packing (.pkg, .gzip etc.) all files that 193 # go into the temporary install folder $(SOLARIS_VBOXINST_DIR) should be part of $(SOLARIS_ARCH_FILES). 194 # For the files produced during packing they should be cleaned up promptly when the work is done. 195 # 196 197 # Strip these executables 116 solaris-icons_SOURCES = $(foreach f,$(VBOX_SI_ICON_TYPES), $(foreach s,$(VBOX_SI_ICON_SIZES)\ 117 ,$(PATH_ROOT)/src/VBox/Resources/other/virtualbox-$(f)-$(s)px.png=>$(s)x$(s)/mimetypes/virtualbox-$(f).png)) 118 119 120 # 121 # What follows is various files lists (and a symlink list) that lists various 122 # types of files going from/to various places during installation. 123 # 124 # Each list has the following attributes (used by makefile command and 125 # depency generation): 126 # .SUBDIRS := <yes|no> 127 # .STRIP := <yes|objcopy|no> 128 # .MODE := <0644|0755> 129 # .SRC := <Directory to copy the files from> 130 # .DST := <Directory to copy the files to> 131 # 132 133 134 ## List of file list variable names. 135 SOLARIS_FILE_LIST_VARS := 136 137 ## @def SOLARIS_COMMON 138 # List of files that are copied directly from INST_BIN to /opt/VirtualBox/. 139 SOLARIS_FILE_LIST_VARS += SOLARIS_COMMON 140 SOLARIS_COMMON.SUBDIRS := yes 141 SOLARIS_COMMON.STRIP := no 142 SOLARIS_COMMON.MODE := 0644 143 SOLARIS_COMMON.SRC := $(PATH_STAGE_BIN) 144 SOLARIS_COMMON.DST := $(VBOX_PATH_SI_SCRATCH_PKG)/opt/VirtualBox 145 SOLARIS_COMMON = \ 146 LICENSE 147 ## @def SOLARIS_COMMON_EXES 148 # List of executable script (and VBoxISAExec) files that are copied directly from INST_BIN to /opt/VirtualBox/. 149 SOLARIS_FILE_LIST_VARS += SOLARIS_COMMON_EXES 150 SOLARIS_COMMON_EXES.SUBDIRS := no 151 SOLARIS_COMMON_EXES.STRIP := no 152 SOLARIS_COMMON_EXES.MODE := 0755 153 SOLARIS_COMMON_EXES.SRC := $(PATH_STAGE_BIN) 154 SOLARIS_COMMON_EXES.DST := $(VBOX_PATH_SI_SCRATCH_PKG)/opt/VirtualBox 155 SOLARIS_COMMON_EXES = \ 156 VBoxISAExec 157 158 ## @def SOLARIS_STRIP_EXES 159 # List of exectuables files that are copied from INST_BIN to /opt/VirtualBox/$(VBOX_SI_ARCH)/ and stripped of debug info. 160 SOLARIS_FILE_LIST_VARS += SOLARIS_STRIP_EXES 161 SOLARIS_STRIP_EXES.SUBDIRS := no 162 SOLARIS_STRIP_EXES.STRIP := yes 163 SOLARIS_STRIP_EXES.MODE := 0755 164 SOLARIS_STRIP_EXES.SRC := $(PATH_STAGE_BIN) 165 SOLARIS_STRIP_EXES.DST := $(VBOX_PATH_SI_SCRATCH_PKG)/opt/VirtualBox/$(VBOX_SI_ARCH) 198 166 SOLARIS_STRIP_EXES = \ 199 167 VBoxZoneAccess \ … … 211 179 $(if $(VBOX_WITH_DTRACE),VBoxDTrace,) 212 180 181 ## @def SOLARIS_DRIVER_BINS 182 # List of kernel module files that are copied from INST_BIN to platform/i86pc/kernel/drv/[amd64/] and stripped of debug info. 183 SOLARIS_FILE_LIST_VARS += SOLARIS_DRIVER_BINS 184 SOLARIS_DRIVER_BINS.SUBDIRS := no 185 SOLARIS_DRIVER_BINS.STRIP := yes 186 SOLARIS_DRIVER_BINS.MODE := 0644 187 SOLARIS_DRIVER_BINS.SRC := $(PATH_STAGE_BIN) 188 SOLARIS_DRIVER_BINS.DST := $(VBOX_PATH_SI_SCRATCH_PKG)/platform/i86pc/kernel/drv/$(subst x86,,$(KBUILD_TARGET_ARCH)) 213 189 SOLARIS_DRIVER_BINS = \ 214 190 vboxdrv \ … … 219 195 $(if $(VBOX_WITH_USB),vboxusb,) 220 196 197 ## @def SOLARIS_DRIVER_CONFS 198 # List of kernel module configuration files that are copied directly from INST_BIN to platform/i86pc/kernel/drv/. 199 SOLARIS_FILE_LIST_VARS += SOLARIS_DRIVER_CONFS 200 SOLARIS_DRIVER_CONFS.SUBDIRS := no 201 SOLARIS_DRIVER_CONFS.STRIP := no 202 SOLARIS_DRIVER_CONFS.MODE := 0644 203 SOLARIS_DRIVER_CONFS.SRC := $(PATH_STAGE_BIN) 204 SOLARIS_DRIVER_CONFS.DST := $(VBOX_PATH_SI_SCRATCH_PKG)/platform/i86pc/kernel/drv 221 205 SOLARIS_DRIVER_CONFS = \ 222 206 vboxdrv.conf \ … … 227 211 $(if $(VBOX_WITH_USB),vboxusb.conf,) 228 212 229 # Strip these binaries 213 ## @def SOLARIS_STRIP_BINS 214 # List of shared libraries that are copied from INST_BIN to /opt/VirtualBox/$(VBOX_SI_ARCH)/ and stripped of debug info. 215 SOLARIS_FILE_LIST_VARS += SOLARIS_STRIP_BINS 216 SOLARIS_STRIP_BINS.SUBDIRS := yes 217 SOLARIS_STRIP_BINS.STRIP := yes 218 SOLARIS_STRIP_BINS.MODE := 0644 219 SOLARIS_STRIP_BINS.SRC := $(PATH_STAGE_BIN) 220 SOLARIS_STRIP_BINS.DST := $(VBOX_PATH_SI_SCRATCH_PKG)/opt/VirtualBox/$(VBOX_SI_ARCH) 230 221 SOLARIS_STRIP_BINS = \ 231 222 VBoxDD.so \ 232 223 VBoxDD2.so \ 233 224 VBoxREM.so \ 225 $(if-expr "$(KBUILD_TARGET_ARCH)" == "x86",VBoxREM32.so VBoxREM64.so,) \ 234 226 VBoxRT.so \ 235 227 VBoxDDU.so \ … … 277 269 endif 278 270 279 # Do not remove relocation information of these binaries 271 ## @def SOLARIS_STRIP_OBJS 272 # List of relocable object files to be copied from INST_BIN to /opt/VirtualBox/$(VBOX_SI_ARCH)/ and carefully 273 # stripped of debug info but not relocation information. These are the ring-0 and raw-mode context modules. 274 SOLARIS_FILE_LIST_VARS += SOLARIS_STRIP_OBJS 275 SOLARIS_STRIP_OBJS.SUBDIRS := no 276 SOLARIS_STRIP_OBJS.STRIP := objcopy 277 SOLARIS_STRIP_OBJS.MODE := 0644 278 SOLARIS_STRIP_OBJS.SRC := $(PATH_STAGE_BIN) 279 SOLARIS_STRIP_OBJS.DST := $(VBOX_PATH_SI_SCRATCH_PKG)/opt/VirtualBox/$(VBOX_SI_ARCH) 280 280 SOLARIS_STRIP_OBJS = \ 281 281 VBoxDD2GC.gc \ … … 286 286 VMMR0.r0 287 287 288 # Special differences between 32-bit and 64-bit289 SOLARIS_STRIP_BIN_32 = \ 290 VBoxREM32.so \ 291 VBoxREM64.so 292 293 VBOX_SOL_PYTHON_DIR_64 = 64294 295 # Do not strip anything of these files 288 ## @def SOLARIS_NO_STRIP 289 # List of data files that should be copied from INST_BIN to /opt/VirtualBox/$(VBOX_SI_ARCH)/. 290 SOLARIS_FILE_LIST_VARS += SOLARIS_NO_STRIP 291 SOLARIS_NO_STRIP.SUBDIRS := yes 292 SOLARIS_NO_STRIP.STRIP := no 293 SOLARIS_NO_STRIP.MODE := 0644 294 SOLARIS_NO_STRIP.SRC := $(PATH_STAGE_BIN) 295 SOLARIS_NO_STRIP.DST := $(VBOX_PATH_SI_SCRATCH_PKG)/opt/VirtualBox/$(VBOX_SI_ARCH) 296 296 SOLARIS_NO_STRIP = \ 297 297 components/VBoxXPCOMBase.xpt \ … … 299 299 $(if $(and $(VBOX_LICENSE_FILES),$(VBOX_WITH_QTGUI)),$(VBOX_LICENSE_FILES)) 300 300 301 ## @def SOLARIS_USRBIN_LINKS 302 # List of links to create in /usr/bin to /opt/VirtualBox/VBox.sh. 303 # Naturally no subdirectories. 301 304 SOLARIS_USRBIN_LINKS = \ 302 305 $(if $(VBOX_WITH_QTGUI),VirtualBox,) \ … … 306 309 $(if $(VBOX_WITH_DTRACE),VBoxDTrace,) 307 310 308 SOLARIS_COMMON_EXES = \311 SOLARIS_COMMON_EXES += \ 309 312 vboxconfig.sh \ 310 313 VBox.sh \ … … 315 318 $(if $(VBOX_WITH_WEBSERVICES),smf-vboxwebsrv.sh,) 316 319 317 # Things packed explicitly, not from $(PATH_STAGE_BIN), track these to clean-up properly 318 SOLARIS_EXTRAS = \ 319 LICENSE \ 320 VBox.png \ 321 virtualbox.png \ 322 autoresponse \ 323 $(if $(VBOX_WITH_VBOXSDL),libSDL-1.2.so.0,) \ 324 $(if $(not $(VBOX_WITH_NETFLT))vnic_setup.sh,) \ 325 $(if $(not $(VBOX_WITH_NETFLT))vnic_term.sh,) \ 326 $(if $(VBOX_WITH_QTGUI),virtualbox.desktop,) \ 327 virtualbox.xml \ 328 virtualbox-balloonctrl.xml \ 329 virtualbox-webservice.xml \ 330 virtualbox-zoneaccess.xml \ 331 VBoxQtconfig \ 332 VBoxISAExec \ 333 vbox.copyright \ 334 ReadMe.txt 335 336 # These extra Qt libs are purely for running VBoxQtconfig 320 321 322 ## @def SOLARIS_QTLIBS 323 # List of Qt shared libs that we need to copy from $(VBOX_PATH_QT4)/lib/ to /opt/VirtualBox/$(VBOX_SI_ARCH)/ 324 # so that we can run VBoxQtConfig. 325 SOLARIS_FILE_LIST_VARS += SOLARIS_QTLIBS 326 SOLARIS_QTLIBS.SUBDIRS := no 327 SOLARIS_QTLIBS.STRIP := no 328 SOLARIS_QTLIBS.MODE := 0644 329 SOLARIS_QTLIBS.SRC := $(VBOX_PATH_QT4)/lib 330 SOLARIS_QTLIBS.DST := $(VBOX_PATH_SI_SCRATCH_PKG)/opt/VirtualBox/$(VBOX_SI_ARCH) 331 SOLARIS_QTLIBS = 337 332 ifdef VBOX_WITH_QTGUI 338 SOLARIS_QTLIBS = \ 339 $(if $(VBOX_WITH_QT4_SUN),\ 340 libQtXmlVBox.so.4 \ 341 libQtSqlVBox.so.4 \ 342 libQt3SupportVBox.so.4,) 343 333 ifdef VBOX_WITH_QT4_SUN 334 SOLARIS_QTLIBS += \ 335 libQtXmlVBox.so.4 \ 336 libQtSqlVBox.so.4 \ 337 libQt3SupportVBox.so.4 338 SOLARIS_USRBIN_LINKS += \ 339 VBoxQtconfig 340 endif 344 341 include $(PATH_ROOT)/src/VBox/Frontends/VirtualBox/nls/ApprovedLanguages.kmk 345 SOLARIS_COMMON = $(foreach f,$(VBOX_APPROVED_GUI_LANGUAGES),nls/VirtualBox_$(f).qm nls/qt_$(f).qm) 346 else 347 SOLARIS_QTLIBS = 348 SOLARIS_COMMON = 342 SOLARIS_COMMON += $(foreach f,$(VBOX_APPROVED_GUI_LANGUAGES),nls/VirtualBox_$(f).qm nls/qt_$(f).qm) 349 343 endif 350 344 … … 357 351 endif 358 352 353 ## @def SOLARIS_COMMON_64_STRIP_BINS 354 # List of INST_BIN shared libraries that should be copied into /opt/VirtualBox/64/ and stripped. 355 SOLARIS_FILE_LIST_VARS += SOLARIS_COMMON_64_STRIP_BINS 356 SOLARIS_COMMON_64_STRIP_BINS.SUBDIRS := yes 357 SOLARIS_COMMON_64_STRIP_BINS.STRIP := yes 358 SOLARIS_COMMON_64_STRIP_BINS.MODE := 0644 359 SOLARIS_COMMON_64_STRIP_BINS.SRC := $(PATH_STAGE_BIN) 360 SOLARIS_COMMON_64_STRIP_BINS.DST := $(VBOX_PATH_SI_SCRATCH_PKG)/opt/VirtualBox/64 361 SOLARIS_COMMON_64_STRIP_BINS = 362 ## @def SOLARIS_COMMON_BINS 363 # List of INST_BIN shared libraries that should be copied into /opt/VirtualBox/ and stripped. 364 SOLARIS_FILE_LIST_VARS += SOLARIS_COMMON_STRIP_BINS 365 SOLARIS_COMMON_STRIP_BINS.SUBDIRS := yes 366 SOLARIS_COMMON_STRIP_BINS.STRIP := no 367 SOLARIS_COMMON_STRIP_BINS.MODE := 0644 368 SOLARIS_COMMON_STRIP_BINS.SRC := $(PATH_STAGE_BIN) 369 SOLARIS_COMMON_STRIP_BINS.DST := $(VBOX_PATH_SI_SCRATCH_PKG)/opt/VirtualBox/ 370 SOLARIS_COMMON_STRIP_BINS = 371 359 372 # Python XPCOM glue 360 373 ifdef VBOX_WITH_PYTHON 361 SOLARIS_COMMON += \ 362 $(foreach f,$(notdir $(wildcard $(PATH_STAGE_BIN)/sdk/bindings/xpcom/python/xpcom/*.py)),sdk/bindings/xpcom/python/xpcom/$(f)) \ 363 sdk/bindings/xpcom/python/xpcom/client/__init__.py \ 364 sdk/bindings/xpcom/python/xpcom/server/__init__.py \ 365 sdk/bindings/xpcom/python/xpcom/server/enumerator.py \ 366 sdk/bindings/xpcom/python/xpcom/server/factory.py \ 367 sdk/bindings/xpcom/python/xpcom/server/loader.py \ 368 sdk/bindings/xpcom/python/xpcom/server/module.py \ 369 sdk/bindings/xpcom/python/xpcom/server/policy.py \ 370 sdk/installer/vboxapisetup.py \ 371 sdk/installer/vboxapi/__init__.py \ 372 sdk/installer/vboxapi/VirtualBox_constants.py 374 SOLARIS_COMMON += \ 375 $(foreach f,$(notdir $(wildcard $(PATH_STAGE_BIN)/sdk/bindings/xpcom/python/xpcom/*.py)),sdk/bindings/xpcom/python/xpcom/$(f)) \ 376 sdk/bindings/xpcom/python/xpcom/client/__init__.py \ 377 sdk/bindings/xpcom/python/xpcom/server/__init__.py \ 378 sdk/bindings/xpcom/python/xpcom/server/enumerator.py \ 379 sdk/bindings/xpcom/python/xpcom/server/factory.py \ 380 sdk/bindings/xpcom/python/xpcom/server/loader.py \ 381 sdk/bindings/xpcom/python/xpcom/server/module.py \ 382 sdk/bindings/xpcom/python/xpcom/server/policy.py \ 383 sdk/installer/vboxapisetup.py \ 384 sdk/installer/vboxapi/__init__.py \ 385 sdk/installer/vboxapi/VirtualBox_constants.py 386 ifeq ($(KBUILD_TARGET_ARCH),amd64) 387 ifdef VBOX_WITH_32_ON_64_MAIN_API 388 SOLARIS_COMMON_STRIP_BINS += VBoxPython2_6_x86.so 389 endif 390 SOLARIS_COMMON_64_STRIP_BINS += VBoxPython.so VBoxPython2_6.so 391 else 392 SOLARIS_COMMON_STRIP_BINS += VBoxPython.so VBoxPython2_6.so 393 endif 373 394 endif 374 395 … … 379 400 380 401 # auth stuff 381 402 SOLARIS_STRIP_BINS += \ 382 403 VBoxAuth.so \ 383 404 VBoxAuthSimple.so … … 392 413 rdesktop-vrdp.tar.gz 393 414 ifdef VBOX_WITH_VRDP_RDESKTOP 394 SOLARIS_COMMON += $(addprefix rdesktop-vrdp-keymaps/,$(notdir $(wildcard $( SOLARIS_OUT_BIN)/rdesktop-vrdp-keymaps/*)))415 SOLARIS_COMMON += $(addprefix rdesktop-vrdp-keymaps/,$(notdir $(wildcard $(PATH_STAGE_BIN)/rdesktop-vrdp-keymaps/*))) 395 416 SOLARIS_STRIP_EXES += \ 396 417 rdesktop-vrdp … … 411 432 # Guest Additions 412 433 ifdef VBOX_WITH_ADDITIONS_PACKING 413 SOLARIS_COMMON += \414 additions/VBoxGuestAdditions.iso434 # SOLARIS_COMMON += \ 435 # additions/VBoxGuestAdditions.iso 415 436 endif 416 437 … … 427 448 ifdef VBOX_WITH_DTRACE 428 449 SOLARIS_COMMON += \ 429 $(addprefix dtrace/lib/$(KBUILD_TARGET_ARCH)/,$(VBOXINST_DTRACE_LIB_ARCH_FILES)) \ 430 $(addprefix dtrace/testcase/$(KBUILD_TARGET_ARCH)/,$(VBOXINST_DTRACE_TESTCASE_ARCH_FILES)) \ 431 $(addprefix dtrace/scripts/,$(VBOXINST_DTRACE_SCRIPTS_FILES)) 432 endif 433 434 SOLARIS_ARCH_FILES := \ 435 $(SOLARIS_STRIP_EXES) \ 436 $(SOLARIS_DRIVER_BINS) \ 437 $(SOLARIS_DRIVER_CONFS) \ 438 $(SOLARIS_USRBIN_LINKS) \ 439 $(SOLARIS_STRIP_BINS) \ 440 $(SOLARIS_STRIP_OBJS) \ 441 $(SOLARIS_NO_STRIP) \ 442 $(SOLARIS_EXTRAS) \ 443 $(SOLARIS_QTLIBS) \ 444 $(SOLARIS_COMMON_EXES) \ 445 $(SOLARIS_COMMON) 446 447 SOLARIS_DBG_FILES := \ 448 $(SOLARIS_STRIP_EXES) \ 449 $(SOLARIS_STRIP_BINS) \ 450 $(SOLARIS_DRIVER_BINS) 451 452 OTHER_CLEAN += \ 453 $(addprefix $(SOLARIS_VBOXINST_DIR)/, $(SOLARIS_ARCH_FILES)) \ 454 $(SOLARIS_BASEINST_DIR)/$(PKG_FILENAME).tar.gz \ 455 $(SOLARIS_BASEINST_DIR)/$(PKG_FILENAME).pkg \ 456 $(addprefix $(SOLARIS_DBG_DIR)/,$(SOLARIS_STRIP_BINS)) \ 457 $(addprefix $(SOLARIS_DBG_DIR)/,$(SOLARIS_DRIVER_BINS)) \ 458 $(addprefix $(SOLARIS_DBG_DIR)/,$(SOLARIS_STRIP_EXES)) \ 459 $(SOLARIS_DBG_DIR)/$(DBG_ARCHIVE) 460 461 SOLARIS_ARCH_DEPFILES = $(addprefix $(SOLARIS_VBOXINST_DIR_ISA)/,$(SOLARIS_STRIP_EXES)) \ 462 $(addprefix $(SOLARIS_VBOXINST_DIR_ISA)/,$(SOLARIS_STRIP_BINS)) \ 463 $(addprefix $(SOLARIS_DRIVERINST_DIR_ISA)/,$(SOLARIS_DRIVER_BINS)) \ 464 $(addprefix $(SOLARIS_DRIVERINST_DIR)/,$(SOLARIS_DRIVER_CONFS)) \ 465 $(ifeq ($(KBUILD_TARGET_ARCH),x86),$(addprefix $(SOLARIS_VBOXINST_DIR_ISA)/,$(SOLARIS_STRIP_BIN_32)),) \ 466 $(ifeq ($(KBUILD_TARGET_ARCH),amd64),$(addprefix $(SOLARIS_VBOXINST_DIR_ISA)/,$(SOLARIS_STRIP_OBJ_64)),) \ 467 $(addprefix $(SOLARIS_VBOXINST_DIR_ISA)/,$(SOLARIS_STRIP_OBJS)) \ 468 $(addprefix $(SOLARIS_VBOXINST_DIR_ISA)/,$(SOLARIS_NO_STRIP)) \ 469 $(addprefix $(SOLARIS_VBOXINST_DIR_ISA)/,$(SOLARIS_QTLIBS)) \ 470 $(wildcard $(addprefix $(SOLARIS_OUT_BIN)/,VBoxPython*.so)) 471 SOLARIS_DBG_DEPFILES = \ 472 $(addprefix $(SOLARIS_DBG_DIR_ISA)/,$(SOLARIS_DBG_FILES)) \ 473 $(addprefix $(SOLARIS_VBOXINST_DIR)/,$(SOLARIS_COMMON)) \ 474 $(addprefix $(SOLARIS_DRIVERINST_DIR)/,$(SOLARIS_DRIVER_CONFS)) \ 475 $(addprefix $(SOLARIS_VBOXINST_DIR)/,$(SOLARIS_COMMON_EXES)) \ 476 $(addprefix $(SOLARIS_USRBIN_DIR)/,$(SOLARIS_USRBIN_LINKS)) \ 477 $(addprefix $(SOLARIS_USRSHR_ICONS_DIR)/,$(SOLARIS_COMMON_ICONS)) 478 479 BLDDIRS += $(foreach d,\ 480 additions \ 481 rdesktop-vrdp-keymaps \ 482 nls \ 483 $(SOLARIS_DIR_NAME_64) \ 484 $(SOLARIS_DIR_NAME_64)/components \ 485 $(SOLARIS_DIR_NAME_64)/accessible \ 486 $(VBOX_SOL_PYTHON_DIR_64) \ 487 $(SOLARIS_DIR_NAME_32) \ 488 $(SOLARIS_DIR_NAME_32)/components \ 489 $(SOLARIS_DIR_NAME_32)/accessible \ 490 $(if $(VBOX_WITH_PYTHON),\ 491 sdk/ \ 492 sdk/installer \ 493 sdk/installer/vboxapi \ 494 sdk/bindings/xpcom/python/xpcom \ 495 sdk/bindings/xpcom/python/xpcom/server \ 496 sdk/bindings/xpcom/python/xpcom/client,) \ 497 $(if $(VBOX_WITH_JXPCOM), \ 498 sdk/bindings/xpcom/java,) \ 499 $(if $(VBOX_WITH_DTRACE), \ 500 dtrace/lib/$(KBUILD_TARGET_ARCH)\ 501 dtrace/testcase/$(KBUILD_TARGET_ARCH)\ 502 dtrace/scripts,)\ 503 ,$(SOLARIS_VBOXINST_DIR)/$(d)/) 504 505 BLDDIRS += $(foreach d,\ 506 additions \ 507 components \ 508 accessible \ 509 $(SOLARIS_DIR_NAME_64) \ 510 $(SOLARIS_DIR_NAME_64)/components \ 511 $(SOLARIS_DIR_NAME_64)/accessible \ 512 $(VBOX_SOL_PYTHON_DIR_64) \ 513 $(SOLARIS_DIR_NAME_32) \ 514 $(SOLARIS_DIR_NAME_32)/components \ 515 $(SOLARIS_DIR_NAME_32)/accessible \ 516 ,$(SOLARIS_DBG_DIR)/$(d)) 517 518 # List of files to be tar.gz'd, the files will be 519 # installed in $(SOLARIS_BASEINST_DIR) and .gz'd from there. 520 SOLARIS_TAR_GZ_FILES := \ 521 $(PKG_FILENAME).pkg \ 522 LICENSE \ 523 autoresponse \ 524 ReadMe.txt 450 $(addprefix dtrace/lib/$(KBUILD_TARGET_ARCH)/,$(VBOXINST_DTRACE_LIB_ARCH_FILES)) \ 451 $(addprefix dtrace/testcase/$(KBUILD_TARGET_ARCH)/,$(VBOXINST_DTRACE_TESTCASE_ARCH_FILES)) \ 452 $(addprefix dtrace/scripts/,$(VBOXINST_DTRACE_SCRIPTS_FILES)) 453 endif 454 455 ## @def SOLARIS_ETC_FILES 456 # Service management facility manifest files to copy from VBOX_PATH_SOL_INST_SRC to /var/svc/manifest/application/virtualbox/. 457 SOLARIS_FILE_LIST_VARS += SOLARIS_ETC_FILES 458 SOLARIS_ETC_FILES.SUBDIRS := yes 459 SOLARIS_ETC_FILES.STRIP := no 460 SOLARIS_ETC_FILES.MODE := 0644 461 SOLARIS_ETC_FILES.SRC := $(PATH_ROOT)/src/VBox/HostDrivers/VBoxNetAdp/solaris 462 SOLARIS_ETC_FILES.DST := $(VBOX_PATH_SI_SCRATCH_PKG)/etc 463 SOLARIS_ETC_FILES := $(if-expr defined(VBOX_WITH_NETADP),hostname.vboxnet0,) 464 465 ## @def SOLARIS_SMF_FILES 466 # Service management facility manifest files to copy from VBOX_PATH_SOL_INST_SRC to /var/svc/manifest/application/virtualbox/. 467 SOLARIS_FILE_LIST_VARS += SOLARIS_SMF_FILES 468 SOLARIS_SMF_FILES.SUBDIRS := yes 469 SOLARIS_SMF_FILES.STRIP := no 470 SOLARIS_SMF_FILES.MODE := 0644 471 SOLARIS_SMF_FILES.SRC := $(VBOX_PATH_SOL_INST_SRC) 472 SOLARIS_SMF_FILES.DST := $(VBOX_PATH_SI_SCRATCH_PKG)/var/svc/manifest/application/virtualbox 473 SOLARIS_SMF_FILES = \ 474 virtualbox-zoneaccess.xml \ 475 virtualbox-balloonctrl.xml \ 476 virtualbox-autostart.xml \ 477 $(if-expr defined(VBOX_WITH_WEBSERVICES),virtualbox-webservice.xml,) 478 479 ## @def SOLARIS_MIME_INFO_FILES 480 # MIME info files to be copied directly from VBOX_PATH_SOL_INST_SRC to /usr/share/mime-info/. 481 # No subdirectories. MODE=644 482 SOLARIS_FILE_LIST_VARS += SOLARIS_MIME_INFO_FILES 483 SOLARIS_MIME_INFO_FILES.SUBDIRS := yes 484 SOLARIS_MIME_INFO_FILES.STRIP := no 485 SOLARIS_MIME_INFO_FILES.MODE := 0644 486 SOLARIS_MIME_INFO_FILES.SRC := $(VBOX_PATH_SOL_INST_SRC) 487 SOLARIS_MIME_INFO_FILES.DST := $(VBOX_PATH_SI_SCRATCH_PKG)/usr/share/mime-info 488 SOLARIS_MIME_INFO_FILES = \ 489 virtualbox.keys \ 490 virtualbox.mime 491 492 ## @def SOLARIS_PIXMAP_FILES 493 # Bitmap files to copy directly from INST_BIN to /usr/share/pixmaps/. 494 # No subdirectories. MODE=644 495 SOLARIS_FILE_LIST_VARS += SOLARIS_PIXMAP_FILES 496 SOLARIS_PIXMAP_FILES.SUBDIRS = no 497 SOLARIS_PIXMAP_FILES.STRIP = no 498 SOLARIS_PIXMAP_FILES.MODE = 0644 499 SOLARIS_PIXMAP_FILES.SRC = $(PATH_STAGE_BIN) 500 SOLARIS_PIXMAP_FILES.DST = $(VBOX_PATH_SI_SCRATCH_PKG)/usr/share/pixmaps 501 SOLARIS_PIXMAP_FILES = \ 502 VBox.png \ 503 virtualbox.png 504 505 506 ## @def SOLARIS_INSTALLER_SCRIPTS 507 # Installer shell scripts that gets copied directly from VBOX_PATH_SOL_INST_SRC to VBOX_PATH_SI_SCRATCH_PKG (/). 508 SOLARIS_FILE_LIST_VARS += SOLARIS_INSTALLER_SCRIPTS 509 SOLARIS_INSTALLER_SCRIPTS.SUBDIRS = no 510 SOLARIS_INSTALLER_SCRIPTS.STRIP = no 511 SOLARIS_INSTALLER_SCRIPTS.MODE = 0755 512 SOLARIS_INSTALLER_SCRIPTS.SRC = $(VBOX_PATH_SOL_INST_SRC) 513 SOLARIS_INSTALLER_SCRIPTS.DST = $(VBOX_PATH_SI_SCRATCH_PKG) 514 SOLARIS_INSTALLER_SCRIPTS = \ 515 postinstall.sh \ 516 checkinstall.sh \ 517 preremove.sh \ 518 makepackage.sh 519 520 SOLARIS_FILE_LIST_VARS += SOLARIS_INSTALLER_FILES 521 SOLARIS_INSTALLER_FILES.SUBDIRS = no 522 SOLARIS_INSTALLER_FILES.STRIP = no 523 SOLARIS_INSTALLER_FILES.MODE = 0644 524 SOLARIS_INSTALLER_FILES.SRC = $(VBOX_PATH_SOL_INST_SRC) 525 SOLARIS_INSTALLER_FILES.DST = $(VBOX_PATH_SI_SCRATCH_PKG) 526 SOLARIS_INSTALLER_FILES = \ 527 vbox.space 528 529 530 # 531 # End of file lists. 532 # 533 534 525 535 526 536 include $(FILE_KBUILD_SUB_FOOTER) 527 537 528 538 # 529 # -=-=-=-=-=-=-=- Main package -=-=-=-=-=-=-=- 530 # 531 # !!WARNING!! The current packing may NOT produce the expected rules in 532 # !!WARNING!! incremental build! Removed and renamed components may 533 # !!WARNING!! appear in the package! Always do clean builds for customers. 534 # 535 536 ## @todo r=bird: makepackage.sh packing a directory tree, right? So, there is no guarantee that it's not 537 # containing any obsolete files the way packing is performed here. Consider recursively 538 # invoking $(MAKE) vbox_copy_sdk_files (or similar) to do the copying after $(RM) -Rf the 539 # directory tree. 540 $(PATH_STAGE_BIN)/$(PKG_FILENAME).tar.gz: \ 539 # Creates the System V style installer package. 540 # 541 solaris-package:: $(VBOX_PATH_SI_SCRATCH)/$(PKG_FILENAME).pkg 542 $(VBOX_PATH_SI_SCRATCH)/$(PKG_FILENAME).pkg: \ 541 543 $(VBOX_VERSION_STAMP) \ 542 $(VBOX_PATH_SOL_INST_SRC)/makepackage.sh\543 $(VBOX_PATH_SOL_INST_SRC)/ postinstall.sh\544 $(VBOX_PATH_SOL_INST_SRC)/ checkinstall.sh\545 $(VBOX_PATH_SOL_INST_SRC)/ preremove.sh\544 \ 545 $(VBOX_PATH_SOL_INST_SRC)/../common/virtualbox.desktop.in \ 546 $(VBOX_PATH_SOL_INST_SRC)/../common/virtualbox.xml \ 547 $(VBOX_PATH_SOL_INST_SRC)/virtualbox.applications.in \ 546 548 $(VBOX_PATH_SOL_INST_SRC)/vbox.pkginfo \ 547 $(VBOX_PATH_SOL_INST_SRC)/vbox.space \ 548 $(VBOX_PATH_SOL_INST_SRC)/vbox.pkgresponse \ 549 $(PATH_ROOT)/src/VBox/Installer/common/virtualbox.desktop.in \ 550 $(PATH_ROOT)/src/VBox/Installer/common/virtualbox.xml \ 551 $(PATH_ROOT)/doc/ReadMe-Solaris.txt \ 552 $(VBOX_PATH_SOL_INST_SRC)/Makefile.kmk \ 553 $(VBOX_BRAND_LICENSE_TXT) \ 554 $(PATH_STAGE_BIN)/LICENSE \ 555 $(if $(and $(VBOX_LICENSE_BINS),$(VBOX_WITH_QTGUI)),$(VBOX_LICENSE_BINS),) \ 556 $(if $(VBOX_WITH_NETADP),$(PATH_ROOT)/src/VBox/HostDrivers/VBoxNetAdp/solaris/hostname.vboxnet0,) \ 557 $(if $(not $(VBOX_WITH_NETFLT))$(PATH_ROOT)/src/VBox/Devices/Network/solaris/vnicinit_solaris.sh,) \ 558 $(if $(not $(VBOX_WITH_NETFLT))$(PATH_ROOT)/src/VBox/Devices/Network/solaris/vnicterm_solaris.sh,) \ 559 $(addprefix $(PATH_STAGE_BIN)/,$(filter-out $(SOLARIS_EXTRAS) $(SOLARIS_QTLIBS),$(SOLARIS_ARCH_FILES))) \ 560 VBoxISAExec \ 561 $(SOLARIS_ARCH_DEPFILES) 562 $(QUIET)$(RM) -f $(wildcard $(PATH_STAGE_BIN)/VirtualBox-*-r*.tar.gz) 563 $(call MSG_L1,Installing binaries $(SOLARIS_VBOXINST_DIR)) 564 $(QUIET)$(if $(VBOX_WITH_ADDITIONS_PACKING),$(MKDIR) -p -m 0755 $(SOLARIS_VBOXINST_DIR)/additions/) 565 $(QUIET)$(if $(VBOX_WITH_ADDITIONS_PACKING),$(INSTALL) -m 0644 $(SOLARIS_OUT_BIN)/additions/VBoxGuestAdditions.iso $(SOLARIS_VBOXINST_DIR)/additions/) 566 $(call MSG_L1,Installing files $(SOLARIS_VBOXINST_DIR)) 567 $(QUIET)$(SED) \ 568 -e "s/@VBOX_PRODUCT@/$(VBOX_PRODUCT)/g" \ 549 \ 550 $(if-expr defined(VBOX_WITH_QTGUI) && defined(VBOX_WITH_QT4_SUN),$(VBOX_PATH_QT4)/bin/qtconfig,) \ 551 $(if-expr defined(VBOX_WITH_ADDITIONS_PACKING),$(PATH_STAGE_BIN)/additions/VBoxGuestAdditions.iso,) \ 552 $(if-expr !defined(VBOX_OSE) && defined(VBOX_WITH_VBOXSDL),$(PATH_DEVTOOLS_TRG)/libSDL/v1.2.13/lib/libSDL-1.2.so.0.11.2,) \ 553 \ 554 $(foreach var, $(SOLARIS_FILE_LIST_VARS),$(foreach file, $($(var)), $($(var).SRC)/$(file))) \ 555 \ 556 $(foreach size, $(VBOX_SI_ICON_SIZES), $(foreach type, $(VBOX_SI_ICON_TYPES) \ 557 ,$(PATH_ROOT)/src/VBox/Resources/other/virtualbox-$(type)-$(size)px.png)) \ 558 \ 559 $(VBOX_SI_DEP_ON_MAKEFILE) \ 560 | $$(dir $$@) 561 $(call MSG_L1,Creating $(PKG_FILENAME).pkg: Copying files) 562 # Start with a clean slate, don't want to pick up random garbage. 563 $(RM) -Rf -- "$(VBOX_PATH_SI_SCRATCH_PKG)/" 564 $(QUIET)$(RM) -f -- "$@" 565 566 # Create all the directories we need. We specify each sub directory to make sure the mode is correct. 567 $(MKDIR) -p -m 0755 -- $(sort $(VBOX_PATH_SI_SCRATCH_PKG)/ \ 568 $(VBOX_PATH_SI_SCRATCH_PKG)/opt/ \ 569 $(VBOX_PATH_SI_SCRATCH_PKG)/opt/VirtualBox/ \ 570 $(VBOX_PATH_SI_SCRATCH_PKG)/platform/ \ 571 $(VBOX_PATH_SI_SCRATCH_PKG)/platform/i86pc/ \ 572 $(VBOX_PATH_SI_SCRATCH_PKG)/platform/i86pc/kernel/ \ 573 $(VBOX_PATH_SI_SCRATCH_PKG)/platform/i86pc/kernel/drv/ \ 574 $(VBOX_PATH_SI_SCRATCH_PKG)/usr/ \ 575 $(VBOX_PATH_SI_SCRATCH_PKG)/usr/bin/ \ 576 $(VBOX_PATH_SI_SCRATCH_PKG)/usr/share/ \ 577 $(VBOX_PATH_SI_SCRATCH_PKG)/usr/share/applications/ \ 578 $(VBOX_PATH_SI_SCRATCH_PKG)/usr/share/application-registry/ \ 579 $(VBOX_PATH_SI_SCRATCH_PKG)/usr/share/icons/ \ 580 $(VBOX_PATH_SI_SCRATCH_PKG)/usr/share/icons/hicolor/ \ 581 $(foreach size, $(VBOX_SI_ICON_SIZES) \ 582 ,$(VBOX_PATH_SI_SCRATCH_PKG)/usr/share/icons/hicolor/$(size)x$(size)/ \ 583 $(VBOX_PATH_SI_SCRATCH_PKG)/usr/share/icons/hicolor/$(size)x$(size)/mimetypes/) \ 584 $(VBOX_PATH_SI_SCRATCH_PKG)/usr/share/mime/ \ 585 $(VBOX_PATH_SI_SCRATCH_PKG)/usr/share/mime/packages/ \ 586 $(VBOX_PATH_SI_SCRATCH_PKG)/var/ \ 587 $(VBOX_PATH_SI_SCRATCH_PKG)/var/svc/ \ 588 $(VBOX_PATH_SI_SCRATCH_PKG)/var/svc/manifest/ \ 589 $(VBOX_PATH_SI_SCRATCH_PKG)/var/svc/manifest/application/ \ 590 $(foreach var,$(SOLARIS_FILE_LIST_VARS), $($(var).DST)/) \ 591 $(foreach var,$(SOLARIS_FILE_LIST_VARS),$(if-expr "$($(var).SUBDIRS)" == "yes",$(sort $(dir $(addprefix $($(var).DST)/,$($(var))))),)) \ 592 ) 593 594 # Generic copy file lists. 595 $(foreach var, $(SOLARIS_FILE_LIST_VARS), $(foreach file, $($(var)) \ 596 ,$(if-expr "$($(var).STRIP)" == "objcopy" && defined(VBOX_DO_STRIP)\ 597 ,$(NLTAB)$(VBOX_SI_OBJCOPY_STRIP) "$($(var).SRC)/$(file)" "$($(var).DST)/$(file)" \ 598 $(NLTAB)$(CHMOD) "$($(var).MODE)" "$($(var).DST)/$(file)" \ 599 ,$(NLTAB)$(INSTALL) -m "$($(var).MODE)" $(if-expr "$($(var).STRIP)" == "yes" && defined(VBOX_DO_STRIP),-s,) \ 600 "$($(var).SRC)/$(file)" "$($(var).DST)/$(file)"))) 601 602 # VirtualBox: Common files. 603 $(if-expr defined(VBOX_WITH_ADDITIONS_PACKING) \ 604 ,$(INSTALL) -m 0644 $(PATH_STAGE_BIN)/additions/VBoxGuestAdditions.iso $(VBOX_PATH_SI_SCRATCH_PKG)/opt/VirtualBox/,) 605 $(LN_SYMLINK) -f ./pkginstall.sh $(VBOX_PATH_SI_SCRATCH_PKG)/opt/VirtualBox/ipsinstall.sh 606 $(SED) -e "s/_HARDENED_/$(if $(VBOX_WITH_HARDENED),hardened,)/" \ 607 --output $(VBOX_PATH_SI_SCRATCH_PKG)/opt/VirtualBox/vboxconfig.sh \ 608 $(VBOX_PATH_SOL_INST_SRC)/vboxconfig.sh 609 $(CHMOD) 0755 $(VBOX_PATH_SOL_INST_SRC)/vboxconfig.sh 610 $(INSTALL) -m 0644 $(VBOX_PATH_SOL_INST_SRC)/vbox.pkgresponse $(VBOX_PATH_SI_SCRATCH_PKG)/opt/VirtualBox/autoresponse 611 612 # VirtualBox: Arch specific files. 613 $(if-expr defined(VBOX_WITH_QTGUI) && defined(VBOX_WITH_QT4_SUN)\ 614 ,$(INSTALL) -m 0755 \ 615 $(VBOX_PATH_QT4)/bin/qtconfig $(VBOX_PATH_SI_SCRATCH_PKG)/opt/VirtualBox/$(VBOX_SI_ARCH)/VBoxQtconfig,) 616 617 $(if-expr defined(VBOX_WITH_QTGUI) \ 618 ,$(NLTAB)$(LN_SYMLINK) ../rdesktop-vrdp-keymaps/ $(VBOX_PATH_SI_SCRATCH_PKG)/opt/VirtualBox/$(VBOX_SI_ARCH)/rdesktop-vrdp-keymaps,) 619 620 $(if-expr defined(VBOX_WITH_ADDITIONS_PACKING) \ 621 ,$(NLTAB)$(LN_SYMLINK) ../VBoxGuestAdditions.iso $(VBOX_PATH_SI_SCRATCH_PKG)/opt/VirtualBox/$(VBOX_SI_ARCH)/,) 622 623 $(if-expr !defined(VBOX_OSE) && defined(VBOX_WITH_VBOXSDL) \ 624 ,$(INSTALL) -m 0644 $(PATH_DEVTOOLS_TRG)/libSDL/v1.2.13/lib/libSDL-1.2.so.0.11.2 \ 625 $(VBOX_PATH_SI_SCRATCH_PKG)/opt/VirtualBox/$(VBOX_SI_ARCH)/libSDL-1.2.so.0,) 626 627 $(if-expr defined(VBOX_WITH_EFIFW_PACKING) \ 628 ,$(LN_SYMLINK) ../VBoxEFI32.fd ../VBoxEFI64.fd $(VBOX_PATH_SI_SCRATCH_PKG)/opt/VirtualBox/$(VBOX_SI_ARCH)/,) 629 630 # Links to /usr/bin. 631 $(foreach link,$(SOLARIS_USRBIN_LINKS) \ 632 ,$(NLTAB)$(LN_SYMLINK) ../../opt/VirtualBox/VBox.sh $(VBOX_PATH_SI_SCRATCH_PKG)/usr/bin/$(link)) 633 634 # Desktop stuff in /usr/share/applications/. 635 $(SED) -e "s+@VBOX_PRODUCT@+$(VBOX_PRODUCT)+" \ 636 -e "s+@VBOX_DOC_PATH@+/opt/VirtualBox+" \ 637 --output $(VBOX_PATH_SI_SCRATCH_PKG)/usr/share/applications/virtualbox.desktop \ 638 $(VBOX_PATH_SOL_INST_SRC)/../common/virtualbox.desktop.in 639 $(CHMOD) 0644 $(VBOX_PATH_SI_SCRATCH_PKG)/usr/share/applications/virtualbox.desktop 640 641 # Desktop stuff in /usr/share/mime/packages/ (S10 cannot deal with icon information in virtualbox.xml). 642 $(SED) -e '/<icon/d' \ 643 --output $(VBOX_PATH_SI_SCRATCH_PKG)/usr/share/mime/packages/virtualbox.xml \ 644 $(VBOX_PATH_SOL_INST_SRC)/../common/virtualbox.xml 645 $(CHMOD) 0644 $(VBOX_PATH_SI_SCRATCH_PKG)/usr/share/mime/packages/virtualbox.xml 646 647 # Desktop stuff in /usr/share/application-registry. 648 $(SED) -e "s+@VBOX_PRODUCT@+$(VBOX_PRODUCT)+" \ 649 --output $(VBOX_PATH_SI_SCRATCH_PKG)/usr/share/application-registry/virtualbox.applications \ 650 $(VBOX_PATH_SOL_INST_SRC)/virtualbox.applications.in 651 $(CHMOD) 0644 $(VBOX_PATH_SI_SCRATCH_PKG)/usr/share/application-registry/virtualbox.applications 652 653 # Icons stuff under /usr/share/icons/hicolor/<size>x<size>/mimetypes/. 654 $(foreach size, $(VBOX_SI_ICON_SIZES), $(foreach type, $(VBOX_SI_ICON_TYPES) \ 655 ,$(NLTAB)$(INSTALL) -m 0644 \ 656 $(PATH_ROOT)/src/VBox/Resources/other/virtualbox-$(type)-$(size)px.png \ 657 $(VBOX_PATH_SI_SCRATCH_PKG)/usr/share/icons/hicolor/$(size)x$(size)/mimetypes/virtualbox-$(type).png)) 658 659 # Files related to package creation. 660 $(SED) -e "s/@VBOX_PRODUCT@/$(VBOX_PRODUCT)/g" \ 569 661 -e "s/@VBOX_VENDOR@/$(VBOX_VENDOR)/g" \ 570 662 -e "s/@VBOX_VERSION_STRING@/$(VBOX_VERSION_STRING)/g" \ … … 572 664 -e "s/@VBOX_VERSION_REVSTAMP@/$(PKGINFO_REVSTAMP)/g" \ 573 665 -e "s/@UNAME_P@/$(PKGINFO_ARCH)/g" \ 574 --output $( SOLARIS_BASEINST_DIR)/vbox.pkginfo \666 --output $(VBOX_PATH_SI_SCRATCH_PKG)/vbox.pkginfo \ 575 667 $(VBOX_PATH_SOL_INST_SRC)/vbox.pkginfo 576 @# @todo BLDDIRS doesn't do "-p" subdir creation; so create for now 577 $(QUIET)$(if $(VBOX_WITH_NETADP),$(MKDIR) -p $(SOLARIS_ETC_DIR),) 578 $(QUIET)$(MKDIR) -p $(SOLARIS_VBOXSMF_DIR) 579 $(QUIET)$(if $(VBOX_WITH_QTGUI),$(MKDIR) -p $(SOLARIS_USRSHR_APPS_DIR),) 580 $(QUIET)$(MKDIR) -p $(SOLARIS_USRSHR_APPREG_DIR) 581 $(QUIET)$(MKDIR) -p $(SOLARIS_USRSHR_MIMEXML_DIR) 582 $(QUIET)$(MKDIR) -p $(SOLARIS_USRSHR_MIMEINFO_DIR) 583 $(QUIET)$(MKDIR) -p $(SOLARIS_USRSHR_PIXMAPS_DIR) 584 $(QUIET)$(if $(VBOX_WITH_NETADP),$(INSTALL) -m 0644 $(PATH_ROOT)/src/VBox/HostDrivers/VBoxNetAdp/solaris/hostname.vboxnet0 $(SOLARIS_ETC_DIR)/hostname.vboxnet0,) 585 $(QUIET)$(INSTALL) -m 0644 $(PATH_STAGE_BIN)/LICENSE $(SOLARIS_VBOXINST_DIR)/LICENSE 586 # don't display the license on package install, since 4.0 587 #$(QUIET)$(INSTALL) -m 0644 $(PATH_STAGE_BIN)/LICENSE $(SOLARIS_BASEINST_DIR)/vbox.copyright 588 $(QUIET)$(INSTALL) -m 0644 $(PATH_STAGE_BIN)/LICENSE $(SOLARIS_BASEINST_DIR)/LICENSE 589 ifndef VBOX_OSE 590 $(QUIET)$(if $(VBOX_WITH_VBOXSDL),$(INSTALL) -m 0644 $(PATH_DEVTOOLS_TRG)/libSDL/v1.2.13/lib/libSDL-1.2.so.0.11.2 $(SOLARIS_VBOXINST_DIR_ISA)/libSDL-1.2.so.0,) 591 endif 592 @# @todo -XXX- how to get rid of this manual MKDIR ? 593 ifdef VBOX_WITH_PYTHON 594 $(QUIET)$(if $(SOL64_PKG),$(MKDIR) -p $(SOLARIS_VBOXINST_DIR)/$(VBOX_SOL_PYTHON_DIR_64),) 595 ifdef VBOX_WITH_32_ON_64_MAIN_API 596 $(QUIET)$(INSTALL) -m 0644 $(if $(VBOX_DO_STRIP),-s) $(filter %_x86.so,$(wildcard $(SOLARIS_OUT_BIN)/VBoxPython*.so)) $(SOLARIS_VBOXINST_DIR)/ 597 $(QUIET)$(INSTALL) -m 0644 $(if $(VBOX_DO_STRIP),-s) $(filter-out %_x86.so,$(wildcard $(SOLARIS_OUT_BIN)/VBoxPython*.so)) $(SOLARIS_VBOXINST_DIR)/$(VBOX_SOL_PYTHON_DIR_64)/ 598 else 599 $(QUIET)$(INSTALL) -m 0644 $(if $(VBOX_DO_STRIP),-s) $(wildcard $(SOLARIS_OUT_BIN)/VBoxPython*.so) $(SOLARIS_VBOXINST_DIR)/$(if $(SOL64_PKG),$(VBOX_SOL_PYTHON_DIR_64)/,) 600 endif 601 endif 602 $(QUIET)$(if $(VBOX_WITH_QTGUI),$(if $(VBOX_WITH_QT4_SUN),$(INSTALL) -m 0755 $(VBOX_PATH_QT4)/bin/qtconfig $(SOLARIS_VBOXINST_DIR_ISA)/VBoxQtconfig,),) 603 $(QUIET)$(INSTALL) -m 0755 $(SOLARIS_OUT_BIN)/VBoxISAExec $(SOLARIS_VBOXINST_DIR)/VBoxISAExec 604 $(QUIET)$(if $(VBOX_WITH_QTGUI),$(LN_SYMLINK) -f ../rdesktop-vrdp-keymaps $(SOLARIS_VBOXINST_DIR_ISA)/rdesktop-vrdp-keymaps,) 605 $(QUIET)$(if $(VBOX_WITH_QTGUI),$(LN_SYMLINK) -f ../additions $(SOLARIS_VBOXINST_DIR_ISA)/additions,) 606 $(QUIET)$(if $(VBOX_WITH_EFIFW_PACKING),$(LN_SYMLINK) -f ../VBoxEFI32.fd $(SOLARIS_VBOXINST_DIR_ISA)/,) 607 $(QUIET)$(if $(VBOX_WITH_EFIFW_PACKING),$(LN_SYMLINK) -f ../VBoxEFI64.fd $(SOLARIS_VBOXINST_DIR_ISA)/,) 608 $(QUIET)$(LN_SYMLINK) -f ./pkginstall.sh $(SOLARIS_VBOXINST_DIR)/ipsinstall.sh 609 $(QUIET)$(if $(VBOX_WITH_QTGUI),$(LN_SYMLINK) -f ../../$(SOLARIS_VBOXINST_SUBDIR)/VBox.sh $(SOLARIS_USRBIN_DIR)/VBoxQtconfig,) 610 $(QUIET)$(INSTALL) -m 0644 $(VBOX_PATH_SOL_INST_SRC)/virtualbox-zoneaccess.xml $(SOLARIS_VBOXSMF_DIR)/virtualbox-zoneaccess.xml 611 $(QUIET)$(if $(VBOX_WITH_WEBSERVICES),$(INSTALL) -m 0644 $(VBOX_PATH_SOL_INST_SRC)/virtualbox-webservice.xml $(SOLARIS_VBOXSMF_DIR)/virtualbox-webservice.xml,) 612 $(QUIET)$(INSTALL) -m 0644 $(VBOX_PATH_SOL_INST_SRC)/virtualbox-balloonctrl.xml $(SOLARIS_VBOXSMF_DIR)/virtualbox-balloonctrl.xml 613 $(QUIET)$(INSTALL) -m 0644 $(VBOX_PATH_SOL_INST_SRC)/virtualbox-autostart.xml $(SOLARIS_VBOXSMF_DIR)/virtualbox-autostart.xml 614 $(QUIET)$(if $(not $(VBOX_WITH_NETFLT))$(INSTALL) -m 0755 $(PATH_ROOT)/src/VBox/Devices/Network/solaris/vnicinit_solaris.sh $(SOLARIS_VBOXINST_DIR)/vnic_setup.sh,) 615 $(QUIET)$(if $(not $(VBOX_WITH_NETFLT))$(INSTALL) -m 0755 $(PATH_ROOT)/src/VBox/Devices/Network/solaris/vnicterm_solaris.sh $(SOLARIS_VBOXINST_DIR)/vnic_term.sh,) 616 $(QUIET)$(SED) \ 617 -e "s/_HARDENED_/$(if $(VBOX_WITH_HARDENED),hardened,)/" \ 618 --output $(SOLARIS_VBOXINST_DIR)/vboxconfig.sh.tmp \ 619 $(PATH_STAGE_BIN)/vboxconfig.sh 620 $(QUIET)$(INSTALL) -m 0755 $(SOLARIS_VBOXINST_DIR)/vboxconfig.sh.tmp $(SOLARIS_VBOXINST_DIR)/vboxconfig.sh 621 $(QUIET)$(RM) -f $(SOLARIS_VBOXINST_DIR)/vboxconfig.sh.tmp 622 $(QUIET)$(SED) \ 623 -e "s+@VBOX_PRODUCT@+$(VBOX_PRODUCT)+" \ 624 -e "s+@VBOX_DOC_PATH@+/opt/VirtualBox+" \ 625 --output $(SOLARIS_USRSHR_APPS_DIR)/virtualbox.desktop.tmp \ 626 $(PATH_ROOT)/src/VBox/Installer/common/virtualbox.desktop.in 627 $(QUIET)$(INSTALL) -m 0644 $(SOLARIS_USRSHR_APPS_DIR)/virtualbox.desktop.tmp $(SOLARIS_USRSHR_APPS_DIR)/virtualbox.desktop 628 $(QUIET)$(RM) -f $(SOLARIS_USRSHR_APPS_DIR)/virtualbox.desktop.tmp 629 # S10 cannot deal with icon information in virtualbox.xml 630 $(QUIET)$(SED) \ 631 -e '/<icon/d' \ 632 --output $(SOLARIS_USRSHR_MIMEXML_DIR)/virtualbox.xml.tmp \ 633 $(PATH_ROOT)/src/VBox/Installer/common/virtualbox.xml 634 $(QUIET)$(INSTALL) -m 0644 $(SOLARIS_USRSHR_MIMEXML_DIR)/virtualbox.xml.tmp $(SOLARIS_USRSHR_MIMEXML_DIR)/virtualbox.xml 635 $(QUIET)$(RM) -f $(SOLARIS_USRSHR_MIMEXML_DIR)/virtualbox.xml.tmp 636 $(QUIET)$(SED) \ 637 -e "s+@VBOX_PRODUCT@+$(VBOX_PRODUCT)+" \ 638 --output $(SOLARIS_USRSHR_APPREG_DIR)/virtualbox.applications.tmp \ 639 $(VBOX_PATH_SOL_INST_SRC)/virtualbox.applications.in 640 $(QUIET)$(INSTALL) -m 0644 $(SOLARIS_USRSHR_APPREG_DIR)/virtualbox.applications.tmp $(SOLARIS_USRSHR_APPREG_DIR)/virtualbox.applications 641 $(QUIET)$(RM) -f $(SOLARIS_USRSHR_APPREG_DIR)/virtualbox.applications.tmp 642 $(QUIET)$(INSTALL) -m 0644 $(VBOX_PATH_SOL_INST_SRC)/virtualbox.keys $(SOLARIS_USRSHR_MIMEINFO_DIR)/virtualbox.keys 643 $(QUIET)$(INSTALL) -m 0644 $(VBOX_PATH_SOL_INST_SRC)/virtualbox.mime $(SOLARIS_USRSHR_MIMEINFO_DIR)/virtualbox.mime 644 $(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_SOL_INST_SRC)/postinstall.sh $(SOLARIS_BASEINST_DIR)/postinstall.sh 645 $(QUIET)$(INSTALL) -m 0644 $(SOLARIS_OUT_BIN)/VBox.png $(SOLARIS_USRSHR_PIXMAPS_DIR)/VBox.png 646 $(QUIET)$(INSTALL) -m 0644 $(SOLARIS_OUT_BIN)/virtualbox.png $(SOLARIS_USRSHR_PIXMAPS_DIR)/virtualbox.png 647 $(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_SOL_INST_SRC)/postinstall.sh $(SOLARIS_BASEINST_DIR)/postinstall.sh 648 $(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_SOL_INST_SRC)/checkinstall.sh $(SOLARIS_BASEINST_DIR)/checkinstall.sh 649 $(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_SOL_INST_SRC)/preremove.sh $(SOLARIS_BASEINST_DIR)/preremove.sh 650 $(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_SOL_INST_SRC)/makepackage.sh $(SOLARIS_BASEINST_DIR)/makepackage.sh 651 $(QUIET)$(INSTALL) -m 0644 $(VBOX_PATH_SOL_INST_SRC)/vbox.pkgresponse $(SOLARIS_VBOXINST_DIR)/autoresponse 652 $(QUIET)$(INSTALL) -m 0644 $(VBOX_PATH_SOL_INST_SRC)/vbox.pkgresponse $(SOLARIS_BASEINST_DIR)/autoresponse 653 $(QUIET)$(INSTALL) -m 0644 $(VBOX_PATH_SOL_INST_SRC)/vbox.space $(SOLARIS_BASEINST_DIR)/vbox.space 668 $(INSTALL) -m 0644 $(VBOX_PATH_SOL_INST_SRC)/vbox.pkgresponse $(VBOX_PATH_SI_SCRATCH_PKG)/autoresponse 669 670 # Done copying file, create the package! 671 $(call MSG_L1,Creating install package: $(PKG_FILENAME).pkg) 672 $(REDIRECT) -C $(VBOX_PATH_SOL_INST_SRC) -- $(VBOX_PATH_SI_SCRATCH_PKG)/makepackage.sh \ 673 $(if-expr defined(VBOX_WITH_HARDENING),--hardened,) \ 674 $(VBOX_PATH_SI_SCRATCH_PKG) \ 675 $(PKG_FILENAME) \ 676 $(KBUILD_TARGET_ARCH) \ 677 $(VBOX_SVN_REV) 678 $(MV) -- "$(VBOX_PATH_SI_SCRATCH_PKG)/$(PKG_FILENAME).pkg" "$@" 679 $(RM) -Rf -- "$(VBOX_PATH_SI_SCRATCH_PKG)/" 680 681 682 # 683 # Creates the tar file containing license, readme and autoresponse file in addition to the system V package. 684 # 685 solaris-package-tar-gz:: $(PATH_STAGE_BIN)/$(PKG_FILENAME).tar.gz 686 $(PATH_STAGE_BIN)/$(PKG_FILENAME).tar.gz: \ 687 $(VBOX_PATH_SI_SCRATCH)/$(PKG_FILENAME).pkg \ 688 $(PATH_STAGE_BIN)/LICENSE \ 689 $(VBOX_PATH_SOL_INST_SRC)/vbox.pkgresponse \ 690 $(PATH_ROOT)/doc/ReadMe-Solaris.txt \ 691 $(VBOX_SI_DEP_ON_MAKEFILE) \ 692 | $(VBOX_PATH_SI_SCRATCH)/ 693 $(call MSG_L1,Creating final tar.gz package: $(PKG_FILENAME).tar.gz) 694 $(QUIET)$(RM) -f -- $(VBOX_PATH_SI_SCRATCH)/ReadMe.txt "$@" 654 695 $(QUIET)$(SED) \ 655 696 -e "s/@VBOX_PRODUCT@/$(VBOX_PRODUCT)/g" \ … … 658 699 -e "s/@BUILD_TARGET_ARCH@/$(KBUILD_TARGET_ARCH)/g" \ 659 700 -e "s/@VBOX_SVN_REV@/$(VBOX_SVN_REV)/g" \ 660 --output $( SOLARIS_BASEINST_DIR)/ReadMe.txt \701 --output $(VBOX_PATH_SI_SCRATCH)/ReadMe.txt \ 661 702 $(PATH_ROOT)/doc/ReadMe-Solaris.txt 662 $(call MSG_L1,Creating install package: $(PKG_FILENAME).tar.gz) 663 $(QUIET)$(REDIRECT) -C $(VBOX_PATH_SOL_INST_SRC) -- $(SOLARIS_BASEINST_DIR)/makepackage.sh $(if $(VBOX_WITH_HARDENING),--hardened) \ 664 $(SOLARIS_BASEINST_DIR) \ 665 $(PKG_FILENAME) \ 666 $(KBUILD_TARGET_ARCH) \ 667 $(VBOX_SVN_REV) \ 668 $(call MSG_L1,Creating final tar.gz package) 669 $(QUIET)$(SOL_GTAR) -C $(SOLARIS_BASEINST_DIR) -zcvf $(SOLARIS_BASEINST_DIR)/$(PKG_FILENAME).tar.gz $(SOLARIS_TAR_GZ_FILES) 670 $(QUIET)$(INSTALL) -m 0644 $(SOLARIS_BASEINST_DIR)/$(PKG_FILENAME).tar.gz $(SOLARIS_OUT_BIN) 671 @# Clean up files emitted as side-effect or result of packing 672 $(QUIET)$(RM) -f $(SOLARIS_BASEINST_DIR)/$(PKG_FILENAME).tar.gz 673 $(QUIET)$(RM) -f $(SOLARIS_BASEINST_DIR)/$(PKG_FILENAME).pkg 703 $(QUIET)$(VBOX_SI_GTAR) -C $(VBOX_PATH_SI_SCRATCH) -czvf "$@" --show-transformed-name \ 704 --xform 's,^.*/,,g' --xform 's,vbox.pkgresponse,autoresponse,' \ 705 $(VBOX_PATH_SI_SCRATCH)/ReadMe.txt \ 706 $(PATH_STAGE_BIN)/LICENSE \ 707 $(VBOX_PATH_SOL_INST_SRC)/vbox.pkgresponse \ 708 $(VBOX_PATH_SI_SCRATCH)/$(PKG_FILENAME).pkg 709 $(QUIET)$(RM) -f -- $(VBOX_PATH_SI_SCRATCH)/ReadMe.txt 674 710 $(call MSG_L1,Packaging $@ is completed.) 675 711 676 712 677 # 678 # 32-bit Main Package 679 # 680 $(addprefix $(SOLARIS_VBOXINST_DIR_32)/,$(SOLARIS_STRIP_BINS)): \ 681 $(SOLARIS_VBOXINST_DIR_32)/% : $(SOLARIS_OUT_BIN_32)/% | $$(dir $$@) 682 $(INSTALL) -m 0644 $(if $(VBOX_DO_STRIP),-s,) $< $@ 683 684 $(addprefix $(SOLARIS_DRIVERINST_DIR_32)/,$(SOLARIS_DRIVER_BINS)): \ 685 $(SOLARIS_DRIVERINST_DIR_32)/% : $(SOLARIS_OUT_BIN_32)/% | $$(dir $$@) 686 $(INSTALL) -m 0644 $(if $(VBOX_DO_STRIP),-s,) $< $@ 687 688 $(addprefix $(SOLARIS_VBOXINST_DIR_32)/,$(SOLARIS_STRIP_BIN_32)): \ 689 $(SOLARIS_VBOXINST_DIR_32)/% : $(SOLARIS_OUT_BIN_32)/% | $$(dir $$@) 690 $(INSTALL) -m 0644 $(if $(VBOX_DO_STRIP),-s,) $< $@ 691 692 $(addprefix $(SOLARIS_VBOXINST_DIR_32)/,$(SOLARIS_STRIP_EXES)): \ 693 $(SOLARIS_VBOXINST_DIR_32)/% : $(SOLARIS_OUT_BIN_32)/% | $$(dir $$@) 694 $(INSTALL) -m 0755 $(if $(VBOX_DO_STRIP),-s,) $< $@ 695 696 $(addprefix $(SOLARIS_VBOXINST_DIR_32)/,$(SOLARIS_STRIP_OBJS)): \ 697 $(SOLARIS_VBOXINST_DIR_32)/% : $(SOLARIS_OUT_BIN_32)/% | $$(dir $$@) 698 $(if $(VBOX_DO_STRIP),$(SOL_OBJCOPY) $< $@, $(INSTALL) -m 0644 $< $@) 699 700 $(addprefix $(SOLARIS_VBOXINST_DIR_32)/,$(SOLARIS_NO_STRIP)): \ 701 $(SOLARIS_VBOXINST_DIR_32)/% : $(SOLARIS_OUT_BIN_32)/% | $$(dir $$@) 702 $(INSTALL) -m 0644 $< $@ 703 704 $(addprefix $(SOLARIS_VBOXINST_DIR_32)/,$(SOLARIS_QTLIBS)): \ 705 $(SOLARIS_VBOXINST_DIR_32)/% : $(SOLARIS_PATH_QT_32)/lib/% | $$(dir $$@) 706 $(INSTALL) -m 0644 $(if $(VBOX_DO_STRIP),-s,) $< $@ 707 708 # 709 # 64-bit Main Package 710 # 711 $(addprefix $(SOLARIS_VBOXINST_DIR_64)/,$(SOLARIS_STRIP_BINS)): \ 712 $(SOLARIS_VBOXINST_DIR_64)/% : $(SOLARIS_OUT_BIN_64)/% | $$(dir $$@) 713 $(INSTALL) -m 0644 $(if $(VBOX_DO_STRIP),-s,) $< $@ 714 715 $(addprefix $(SOLARIS_DRIVERINST_DIR_64)/,$(SOLARIS_DRIVER_BINS)): \ 716 $(SOLARIS_DRIVERINST_DIR_64)/% : $(SOLARIS_OUT_BIN_64)/% | $$(dir $$@) 717 $(INSTALL) -m 0644 $(if $(VBOX_DO_STRIP),-s,) $< $@ 718 719 $(addprefix $(SOLARIS_VBOXINST_DIR_64)/,$(SOLARIS_STRIP_EXES)): \ 720 $(SOLARIS_VBOXINST_DIR_64)/% : $(SOLARIS_OUT_BIN_64)/% | $$(dir $$@) 721 $(INSTALL) -m 0755 $(if $(VBOX_DO_STRIP),-s,) $< $@ 722 723 $(addprefix $(SOLARIS_VBOXINST_DIR_64)/,$(SOLARIS_STRIP_OBJS)): \ 724 $(SOLARIS_VBOXINST_DIR_64)/% : $(SOLARIS_OUT_BIN_64)/% | $$(dir $$@) 725 $(if $(VBOX_DO_STRIP),$(SOL_OBJCOPY) $< $@, $(INSTALL) -m 0644 $< $@) 726 727 $(addprefix $(SOLARIS_VBOXINST_DIR_64)/,$(SOLARIS_STRIP_OBJ_64)): \ 728 $(SOLARIS_VBOXINST_DIR_64)/% : $(SOLARIS_OUT_BIN_64)/% | $$(dir $$@) 729 $(if $(VBOX_DO_STRIP),$(SOL_OBJCOPY) $< $@, $(INSTALL) -m 0644 $< $@) 730 731 $(addprefix $(SOLARIS_VBOXINST_DIR_64)/,$(SOLARIS_NO_STRIP)): \ 732 $(SOLARIS_VBOXINST_DIR_64)/% : $(SOLARIS_OUT_BIN_64)/% | $$(dir $$@) 733 $(INSTALL) -m 0644 $< $@ 734 735 $(addprefix $(SOLARIS_VBOXINST_DIR_64)/,$(SOLARIS_QTLIBS)): \ 736 $(SOLARIS_VBOXINST_DIR_64)/% : $(SOLARIS_PATH_QT_64)/lib/% | $$(dir $$@) 737 $(INSTALL) -m 0644 $(if $(VBOX_DO_STRIP),-s,) $< $@ 738 739 740 # 741 # Common (32-bit and 64-bit) 742 # 743 $(addprefix $(SOLARIS_VBOXINST_DIR)/,$(SOLARIS_COMMON)): \ 744 $(SOLARIS_VBOXINST_DIR)/% : $(PATH_STAGE_BIN)/% | $$(dir $$@) 745 $(INSTALL) -m 0644 $< $@ 746 747 # Driver configuration files 748 $(addprefix $(SOLARIS_DRIVERINST_DIR)/,$(SOLARIS_DRIVER_CONFS)): \ 749 $(SOLARIS_DRIVERINST_DIR)/% : $(PATH_STAGE_BIN)/% | $$(dir $$@) 750 $(INSTALL) -m 0644 $< $@ 751 752 # Common executables 753 $(addprefix $(SOLARIS_VBOXINST_DIR)/,$(SOLARIS_COMMON_EXES)): \ 754 $(SOLARIS_VBOXINST_DIR)/% : $(PATH_STAGE_BIN)/% | $$(dir $$@) 755 $(INSTALL) -m 0755 $< $@ 756 757 # Common MIME icons 758 $(addprefix $(SOLARIS_USRSHR_ICONS_DIR)/,$(SOLARIS_COMMON_ICONS)): \ 759 $(SOLARIS_USRSHR_ICONS_DIR)/% : $(PATH_STAGE_BIN)/icons/% | $$(dir $$@) 760 $(INSTALL) -m 0644 $< $@ 761 762 763 764 # 765 # Common (relative symlinks to /opt/VirtualBox/ from /usr/bin/) 766 # Some symlinks are created manually in the prepackage steps above (eg. VBoxQtconfig) 767 # as those binaries do not originate from $(PATH_STAGE_BIN) 768 # 769 $(addprefix $(SOLARIS_USRBIN_DIR)/,$(SOLARIS_USRBIN_LINKS)): | $$(dir $$@) 770 $(LN_SYMLINK) -f ../../$(SOLARIS_VBOXINST_SUBDIR)/VBox.sh $@ 771 772 773 774 # 775 # -=-=-=-=-=-=-=- Debug package -=-=-=-=-=-=-=- 776 # 777 $(PATH_STAGE_BIN)/$(DBG_ARCHIVE): \ 713 ## List of file list variable names relevant for debug info. 714 SOLARIS_FILE_LIST_DBGINFO_VARS := $(foreach var, $(SOLARIS_FILE_LIST_VARS), $(if-expr "$($(var).STRIP)" != "no",$(var),)) 715 ## Adds a .DBGDST property to each of the debug info file lists. Simplifies our job below 716 $(foreach var,$(SOLARIS_FILE_LIST_DBGINFO_VARS) \ 717 ,$(eval $(var).DBGDST := $(subst $(VBOX_PATH_SI_SCRATCH_PKG)/,$(VBOX_PATH_SI_SCRATCH_DBG)/,$(subst /opt/VirtualBox,,$($(var).DST))))) 718 719 # 720 # Creates a tar file containing the debug info. 721 # 722 $(PATH_STAGE_BIN)/VirtualBoxDebug.tar.bz2: \ 778 723 $(VBOX_VERSION_STAMP) \ 779 $(VBOX_PATH_SOL_INST_SRC)/Makefile.kmk \ 780 $(SOLARIS_DBG_DEPFILES) 781 $(call MSG_L1,Installing debug binaries $(SOLARIS_DBG_DIR)) 724 $(VBOX_SI_DEP_ON_MAKEFILE) \ 725 $(foreach var, $(SOLARIS_FILE_LIST_DBGINFO_VARS), $(foreach file, $($(var)), $($(var).SRC)/$(file))) 726 $(call MSG_L1,Preparing $@) 727 $(RM) -Rf -- "$(VBOX_PATH_SI_SCRATCH_DBG)/" 728 $(RM) -f -- "$@" 729 $(MKDIR) -p -m 0755 \ 730 $(VBOX_PATH_SI_SCRATCH_DBG)/ \ 731 $(sort $(foreach var, $(SOLARIS_FILE_LIST_DBGINFO_VARS), $($(var).DBGDST)/ $(if-expr "$($(var).SUBDIRS)" == "yes" \ 732 ,$(sort $(dir $(foreach file, $($(var)), $($(var).DBGDST)/$(file)))),))) 733 $(foreach var, $(SOLARIS_FILE_LIST_DBGINFO_VARS),$(foreach file, $($(var)) \ 734 ,$(NLTAB)$(VBOX_SI_OBJCOPY_DBGINFO) "$($(var).SRC)/$(file)" "$($(var).DBGDST)/$(file)")) 782 735 $(call MSG_L1,Packing $@) 783 $(QUIET)$( SOL_GTAR) --dereference --owner 0 --group 0 \784 -c jRhf "$(PATH_STAGE_BIN)/$(DBG_ARCHIVE)" -C "$(SOLARIS_INST_OUT_DIR)" "$(SOLARIS_DBG_DIR_NAME)"736 $(QUIET)$(VBOX_SI_GTAR) --dereference --owner 0 --group 0 \ 737 -cvjRhf "$@" -C "$(VBOX_PATH_SI_SCRATCH_DBG)/.." "./$(notdir $(VBOX_PATH_SI_SCRATCH_DBG))/" 785 738 $(QUIET)$(CHMOD) 0644 $@ 786 739 $(call MSG_L1,Packaging $@ is completed.) 787 788 # 789 # 32-bit Debug package 790 # 791 $(addprefix $(SOLARIS_DBG_DIR_32)/,$(SOLARIS_STRIP_BINS) $(SOLARIS_STRIP_EXES)): \ 792 $(SOLARIS_DBG_DIR_32)/% : $(SOLARIS_OUT_BIN_32)/% | $$(dir $$@) 793 $(SOL_DBG_OBJCOPY) $< $@ 794 795 $(addprefix $(SOLARIS_DBG_DIR_32)/,$(SOLARIS_DRIVER_BINS)): \ 796 $(SOLARIS_DBG_DIR_32)/% : $(SOLARIS_OUT_BIN_32)/% | $$(dir $$@) 797 $(SOL_DBG_OBJCOPY) $< $@ 798 799 800 # 801 # 64-bit Debug package 802 # 803 $(addprefix $(SOLARIS_DBG_DIR_64)/,$(SOLARIS_STRIP_BINS) $(SOLARIS_STRIP_EXES)): \ 804 $(SOLARIS_DBG_DIR_64)/% : $(SOLARIS_OUT_BIN_64)/% | $$(dir $$@) 805 $(SOL_DBG_OBJCOPY) $< $@ 806 807 $(addprefix $(SOLARIS_DBG_DIR_64)/,$(SOLARIS_DRIVER_BINS)): \ 808 $(SOLARIS_DBG_DIR_64)/% : $(SOLARIS_OUT_BIN_64)/% | $$(dir $$@) 809 $(SOL_DBG_OBJCOPY) $< $@ 810 740 $(RM) -Rf "$(VBOX_PATH_SI_SCRATCH_DBG)/" 741
Note:
See TracChangeset
for help on using the changeset viewer.