Makefile.kmk revision 4cd366591c44ef0bf199c16804a3ea146bf0189c
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Makefile for the VirtualBox Qt GUI.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Copyright (C) 2006-2011 Oracle Corporation
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# This file is part of VirtualBox Open Source Edition (OSE), as
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# available from http://www.virtualbox.org. This file is free software;
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# you can redistribute it and/or modify it under the terms of the GNU
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# General Public License (GPL) as published by the Free Software
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Foundation, in version 2 as it comes in the "COPYING" file of the
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncSUB_DEPTH = ../../../..
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncinclude $(KBUILD_PATH)/subheader.kmk
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVBOX_VIRTUALBOX4_SRC := $(PATH_SUB_CURRENT)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVBOX_VIRTUALBOX4_OUT_DIR := $(PATH_TARGET)/VirtualBox/misc
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# VBOX_WITH_REGISTRATION := 1
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Ask the user to register at Sun. If this setting is disabled the user can
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# still register using the menu if desired.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# VBOX_WITH_REGISTRATION_REQUEST := 1
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# For now this should be disabled in any case
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifdef VBOX_WITH_REGISTRATION
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VBOX_WITH_REGISTRATION=
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifdef VBOX_WITH_REGISTRATION_REQUEST
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VBOX_WITH_REGISTRATION_REQUEST=
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Show the update notifier dialog during startup. If this setting is disabled
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# the user can still update using the menu if desired.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifndef VBOX_OSE
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVBOX_WITH_UPDATE_REQUEST := 1
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# The targets.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifdef VBOX_WITH_HARDENING
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncPROGRAMS += VirtualBoxHardened
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncDLLS += VirtualBox
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncPROGRAMS += VirtualBox
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Include the language lists.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncinclude $(PATH_SUB_CURRENT)/nls/ApprovedLanguages.kmk
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Hardened VirtualBox.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBoxHardened_TEMPLATE = VBOXR3HARDENEDEXE
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBoxHardened_SOURCES = src/hardenedmain.cpp
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBoxHardened_NAME = VirtualBox
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBoxHardened_INST.darwin = $(INST_BIN)VirtualBox $(INST_BIN)VirtualBoxVM
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Include Qt project file, we'll use FORMS and TRANSLATIONS in
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# the VirtualBox setup below.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncSAVED_TEMPLATE := $(TEMPLATE)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncinclude $(PATH_SUB_CURRENT)/VBoxUI.pro
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# VirtualBox - The GUI program.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_TEMPLATE := $(if $(VBOX_WITH_HARDENING),VBOXQT4GUI,VBOXQT4GUIEXE)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_NAME = VirtualBox
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifndef VBOX_WITH_HARDENING # For the launch trick we need different inode numbers.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_INST.darwin = $(INST_BIN)VirtualBox $(INST_BIN)VirtualBoxVM
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncif1of ($(KBUILD_TARGET), freebsd linux netbsd openbsd os2) # X11 + os2 ## @todo solaris
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_SDKS += LIBSDL
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifdef VBOX_WITH_ICHAT_THEATER
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync # For testing iChat Theater stuff change the sdk path (HACK ALERT!)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VBOX_PATH_MACOSX_SDK = /Developer/SDKs/MacOSX10.5.sdk
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_DEFS =
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_DEFS.debug = VBOX_CHECK_STATE # QT_FATAL_ASSERT
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_DEFS.darwin = VBOX_GUI_USE_QUARTZ2D VBOX_GUI_USE_QIMAGE
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifndef VBOX_WITH_COCOA_QT
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_DEFS.darwin.x86= USE_HID_FOR_MODIFIERS
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_DEFS.freebsd = VBOX_GUI_USE_QIMAGE VBOX_GUI_USE_SDL
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_DEFS.linux = VBOX_GUI_USE_QIMAGE VBOX_GUI_USE_SDL
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_DEFS.netbsd = VBOX_GUI_USE_QIMAGE VBOX_GUI_USE_SDL
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_DEFS.openbsd = VBOX_GUI_USE_QIMAGE VBOX_GUI_USE_SDL
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_DEFS.solaris = VBOX_GUI_USE_QIMAGE #VBOX_GUI_USE_SDL
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_DEFS.win = VBOX_GUI_USE_QIMAGE UNICODE QT_DLL
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifdef VBOX_WITH_ICHAT_THEATER
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_DEFS.darwin += VBOX_WITH_ICHAT_THEATER
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifneq ($(KBUILD_TYPE),release)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync # non-release builds has some extra features.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_DEFS.win += VBOX_GUI_USE_DDRAW
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_DEFS += \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(if $(VBOX_WITH_REGISTRATION),VBOX_WITH_REGISTRATION) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(if $(VBOX_WITH_REGISTRATION_REQUEST),VBOX_WITH_REGISTRATION_REQUEST) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(if $(VBOX_WITH_UPDATE_REQUEST),VBOX_WITH_UPDATE_REQUEST) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(if $(VBOX_WITH_ALSA),VBOX_WITH_ALSA) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(if $(VBOX_WITH_PULSE),VBOX_WITH_PULSE) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(if $(VBOX_WITH_SOLARIS_OSS),VBOX_WITH_SOLARIS_OSS) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(if $(VBOX_WITH_E1000),VBOX_WITH_E1000) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(if $(VBOX_WITH_NETFLT)$(eq $(KBUILD_TARGET),freebsd),VBOX_WITH_NETFLT) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(if $(VBOX_WITH_VDE),VBOX_WITH_VDE) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(if $(VBOX_WITH_EHCI),VBOX_WITH_EHCI) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(if $(VBOX_GUI_WITH_PIDFILE),VBOX_GUI_WITH_PIDFILE) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(if $(VBOX_GUI_WITH_KEYS_RESET_HANDLER),VBOX_GUI_WITH_KEYS_RESET_HANDLER) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(if $(VBOX_GUI_WITH_CUSTOMIZATIONS1),VBOX_GUI_WITH_CUSTOMIZATIONS1)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifdef VBOX_WITH_DEBUGGER_GUI
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_DEFS += VBOX_WITH_DEBUGGER_GUI
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync if "$(KBUILD_TYPE)" != "release"
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_DEFS += VBOX_WITH_DEBUGGER_GUI_MENU
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifdef VBOX_WITH_VIDEOHWACCEL
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_DEFS += VBOX_WITH_VIDEOHWACCEL \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VBOX_GUI_USE_QGL
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncelse ifdef VBOX_GUI_USE_QGL
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_DEFS += VBOX_GUI_USE_QGL
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifdef VBOX_WITH_VIRTIO
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_DEFS += VBOX_WITH_VIRTIO
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifdef VBOX_WITH_WDDM
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_DEFS += VBOX_WITH_WDDM
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifdef VBOX_WITH_CRHGSMI
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_DEFS += VBOX_WITH_CRHGSMI
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifdef VBOX_BLEEDING_EDGE
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_src/selector/VBoxSelectorWnd.cpp_DEFS += \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VBOX_BLEEDING_EDGE=\"$(VBOX_BLEEDING_EDGE)\"
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_src/runtime/UIMachineWindow.cpp_DEFS += \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VBOX_BLEEDING_EDGE=\"$(VBOX_BLEEDING_EDGE)\"
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VBOX_BLEEDING_EDGE=\"$(VBOX_BLEEDING_EDGE)\"
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VBOX_BLEEDING_EDGE=\"$(VBOX_BLEEDING_EDGE)\"
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVBOX_GUI_INC_DIRS = \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifdef VBOX_WITH_REGISTRATION
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VBOX_GUI_INC_DIRS += \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_INCS = \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(VBOX_GUI_INC_DIRS) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(VirtualBox_0_OUTDIR)/include
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Necessary for the hdd backend enumeration
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_LIBS = $(LIB_DDU)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# This library is required for multi-monitor support
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifneq ($(KBUILD_TARGET),win)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_CXXFLAGS += -Wno-switch
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifdef VBOX_WITH_VIDEOHWACCEL
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Necessary for save state support
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_LIBS += $(LIB_VMM)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifeq ($(KBUILD_TYPE),release)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_LDFLAGS.win += /SUBSYSTEM:windows
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_LDFLAGS.linux+= -rdynamic # for backtrace_symbols()
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync ifeq ($(USERNAME),dmik)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_LDFLAGS.win += /SUBSYSTEM:windows
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_LDFLAGS.win += /SUBSYSTEM:console
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncif defined(VBOX_WITH_VIDEOHWACCEL) || defined(VBOX_GUI_USE_QGL)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_LDFLAGS.win += /DelayLoad:QtOpenGLVBox4.dll /DelayLoad:OPENGL32.dll
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -framework AppKit -framework Carbon \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(if $(VBOX_WITH_HARDENING),-install_name $(VBOX_DYLD_EXECUTABLE_PATH)/VirtualBox.dylib)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifdef VBOX_WITH_ICHAT_THEATER
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_LDFLAGS.darwin += -framework InstantMessage -framework QuartzCore
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncif defined(VBOX_WITH_VIDEOHWACCEL) || defined(VBOX_GUI_USE_QGL)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_LDFLAGS.darwin += -framework OpenGL
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(PATH_SDK_WINPSDK_LIB)/Htmlhelp.Lib \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(PATH_SDK_DXSDK_LIB)/ddraw.lib \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(PATH_SDK_DXSDK_LIB)/dxguid.lib
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncif1of ($(KBUILD_TARGET), freebsd linux netbsd openbsd solaris) # X11
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_LIBS += $(PATH_DLL)/VBoxKeyboard$(VBOX_SUFF_DLL)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncif defined(VBOX_WITH_VIDEOHWACCEL) || defined(VBOX_GUI_USE_QGL)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_LIBS.win += $(PATH_SDK_WINPSDK_LIB)/Opengl32.lib
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Headers containing definitions of classes that use the Q_OBJECT macro.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_QT_MOCHDRS = \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/settings/global/UIGlobalSettingsNetworkDetails.h \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/settings/machine/UIMachineSettingsPortForwardingDlg.h \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/settings/machine/UIMachineSettingsUSBFilterDetails.h \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/settings/machine/UIMachineSettingsSFDetails.h \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/wizards/exportappliance/UIExportApplianceWzd.h \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/wizards/importappliance/UIImportApplianceWzd.h \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/runtime/fullscreen/UIKeyboardHandlerFullscreen.h \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/runtime/fullscreen/UIMachineLogicFullscreen.h \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/runtime/fullscreen/UIMachineWindowFullscreen.h \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Sources containing local definitions of classes that use the Q_OBJECT macro.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_QT_MOCSRCS = \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/settings/machine/UIMachineSettingsStorage.cpp \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/settings/machine/UIMachineSettingsPortForwardingDlg.cpp \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifdef VBOX_WITH_REGISTRATION
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_QT_MOCHDRS += \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifdef VBOX_WITH_XPCOM
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_QT_MOCSRCS += \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifdef VBOX_WITH_REGISTRATION
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_QT_MOCSRCS += \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_SOURCES = \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/settings/global/UIGlobalSettingsNetworkDetails.cpp \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/settings/global/UIGlobalSettingsExtension.cpp \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/settings/machine/UIMachineSettingsGeneral.cpp \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/settings/machine/UIMachineSettingsDisplay.cpp \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/settings/machine/UIMachineSettingsStorage.cpp \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/settings/machine/UIMachineSettingsNetwork.cpp \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/settings/machine/UIMachineSettingsPortForwardingDlg.cpp \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/settings/machine/UIMachineSettingsParallel.cpp \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/settings/machine/UIMachineSettingsUSBFilterDetails.cpp \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/settings/machine/UIMachineSettingsSFDetails.cpp \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/wizards/exportappliance/UIExportApplianceWzd.cpp \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/wizards/importappliance/UIImportApplianceWzd.cpp \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/runtime/fullscreen/UIKeyboardHandlerFullscreen.cpp \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/runtime/fullscreen/UIMachineLogicFullscreen.cpp \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/runtime/fullscreen/UIMachineViewFullscreen.cpp \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/runtime/fullscreen/UIMachineWindowFullscreen.cpp \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/runtime/seamless/UIKeyboardHandlerSeamless.cpp \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/platform/darwin/UIAbstractDockIconPreview.cpp \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncif1of ($(KBUILD_TARGET), freebsd linux netbsd openbsd solaris) # X11
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_SOURCES += \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifdef VBOX_WITH_REGISTRATION
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_SOURCES += \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_DEFS.darwin += VBOX_DARWIN_USE_NATIVE_CONTROLS
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync src/platform/darwin/UIDesktopServices_darwin_cocoa.mm
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifdef VBOX_WITH_ICHAT_THEATER
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifdef VBOX_GUI_WITH_SYSTRAY
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_DEFS += VBOX_GUI_WITH_SYSTRAY
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_QT_MOCHDRS += \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_SOURCES += \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncif defined(VBOX_WITH_VIDEOHWACCEL) || defined(VBOX_GUI_USE_QGL)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_SOURCES += \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# The Qt modules we're using.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# (The include directory and lib/framework for each module will be added by the Qt4 unit.)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_QT_MODULES = Core Gui Network
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncif defined(VBOX_WITH_VIDEOHWACCEL) || defined(VBOX_GUI_USE_QGL)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_QT_MODULES += OpenGL
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Import QDesigner UI sources and translations from VBoxUI.pro.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifndef VBOX_WITH_REGISTRATION
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync FORMS := $(filter-out src/wizards/registration/UIRegistrationWzdPage1.ui,$(FORMS))
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync$(eval VirtualBox_SOURCES += $(FORMS))
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Resource files with some OSE differences (VirtualBoxBrand.qrc is created further down).
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_SOURCES += VirtualBox1.qrc
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_SOURCES += VirtualBox2.qrc
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifeq ($(KBUILD_TARGET),darwin)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_SOURCES += VirtualBoxMac.qrc
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_SOURCES += VirtualBoxOther.qrc
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_SOURCES += $(VBOX_VIRTUALBOX4_OUT_DIR)/VirtualBoxBrand.qrc
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync$(VBOX_VIRTUALBOX4_OUT_DIR)/VirtualBoxBrand.qrc_RCCFLAGS = -name BRAND
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncif defined(VBOX_WITH_VIDEOHWACCEL) || defined(VBOX_GUI_USE_QGL)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_SOURCES += VirtualBoxShaders.qrc
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Import the translation source from VBoxUI.pro and add the qt_xx_YY counterparts
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_QT_TRANSLATIONS := $(TRANSLATIONS) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(patsubst nls/VirtualBox_%.ts,nls/qt_%.ts, $(filter nls/VirtualBox_%.ts,$(TRANSLATIONS)))
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Compress the translation units.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_LRCFLAGS = -silent
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Where to install the translations (a separate install target, VirtualBox-nls-inst is created).
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_QT_TRANSLATIONS_INST = $(INST_BIN)nls/
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync## @todo how to detect what tool is used?
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync## @todo GCC3 seems to lack -Wno-missing-base-class-initializer, so we use
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# more generic -Wno-extra
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# bird: What about $(if $(VBOX_GCC_Wno-missing-base-class-initializer),$(VBOX_GCC_Wno-missing-base-class-initializer),$(VBOX_GCC_Wno-extra))?
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifdef VBOX_WITH_XPCOM
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VirtualBox_src/globals/COMDefs.cpp_CXXFLAGS = $(VBOX_GCC_Wno-extra)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Generate the COM wrappers.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync## @todo This needs some cleaning up perhaps...
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync## @todo kBuild: Non-existing +| targets should be tried remade or what?
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_BLDDIRS += $(VirtualBox_0_OUTDIR)/include
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_INTERMEDIATES += $(VirtualBox_0_OUTDIR)/include/COMWrappers.h
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_CLEAN += \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(VirtualBox_0_OUTDIR)/include/COMWrappers \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(VirtualBox_0_OUTDIR)/include/COMWrappers.tmp \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(VirtualBox_0_OUTDIR)/include/COMWrappers.h \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(VirtualBox_0_OUTDIR)/include/COMWrappers.cpp
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_SOURCES += $(VirtualBox_0_OUTDIR)/include/COMWrappers.cpp
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync$$(VirtualBox_0_OUTDIR)/include/COMWrappers \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync+| $$(VirtualBox_0_OUTDIR)/include/COMWrappers.h \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync+| $$(VirtualBox_0_OUTDIR)/include/COMWrappers.cpp: \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(VBOX_XIDL_FILE) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(VBOX_VIRTUALBOX4_SRC)/src/globals/COMWrappers.xsl \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync | $$(dir $$@)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(call MSG_GENERATE,VirtualBox,$<,$@)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(QUIET)$(RM) -f $@ $@.tmp $@.h $@.cpp
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(QUIET)$(VBOX_XSLTPROC) -o $@ $(VBOX_VIRTUALBOX4_SRC)/src/globals/COMWrappers.xsl $<
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(QUIET)$(SED) -e '1,/\/\/ wrapper definitions/ !d' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync --output $@.tmp $@
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(QUIET)$(CP) --changed $@.tmp $@.h
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(QUIET)$(APPEND) -t -n $@.tmp \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync ' * DO NOT EDIT! This is a generated file, see COMWrappers.h for details.' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '#include "VBoxGlobal.h"' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(QUIET)$(SED) -e '/\/\/ wrapper definitions/,9999999 !d' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's/^inline //' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync --append $@.tmp $@
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(QUIET)$(CP) --changed $@.tmp $@.cpp
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(QUIET)$(RM) -f $@.tmp
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# alias for generating the COM Wrappers file.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsynctestwrappers:: $$(VirtualBox_0_OUTDIR)/include/COMWrappers.h
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Generate qrc file with branded icons.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_BLDDIRS += $(VBOX_VIRTUALBOX4_OUT_DIR)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_CLEAN += $(VBOX_VIRTUALBOX4_OUT_DIR)/VirtualBoxBrand.qrc
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync$(VBOX_VIRTUALBOX4_OUT_DIR)/VirtualBoxBrand.qrc: \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(VBOX_VIRTUALBOX4_SRC)/VirtualBoxBrand.qrc \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync | $$(dir $$@)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(call MSG_GENERATE,VirtualBox,$<,$@)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(QUIET)$(SED) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's;@VBOX_ABOUT_PNG@;$(VBOX_BRAND_GUI_ABOUT_PNG);g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's;@VBOX_ABOUT_16PX_PNG@;$(VBOX_BRAND_GUI_ABOUT_16PX_PNG);g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's;@VBOX_VBOX_16PX_PNG@;$(VBOX_BRAND_GUI_VBOX_16PX_PNG);g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's;@VBOX_VBOX_20PX_PNG@;$(VBOX_BRAND_GUI_VBOX_20PX_PNG);g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's;@VBOX_VBOX_32PX_PNG@;$(VBOX_BRAND_GUI_VBOX_32PX_PNG);g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's;@VBOX_VBOX_40PX_PNG@;$(VBOX_BRAND_GUI_VBOX_40PX_PNG);g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's;@VBOX_VBOX_48PX_PNG@;$(VBOX_BRAND_GUI_VBOX_48PX_PNG);g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's;@VBOX_VBOX_64PX_PNG@;$(VBOX_BRAND_GUI_VBOX_64PX_PNG);g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's;@VBOX_CUBE_42PX_PNG@;$(VBOX_BRAND_GUI_CUBE_42PX_PNG);g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync --output $@ \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Precompiled header - non-functional atm.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifdef VBOX_WITH_PRECOMPILED_HEADERS
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_INCS <= $(VirtualBox_0_OUTDIR)/include
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_DEFS += VBOX_WITH_PRECOMPILED_HEADERS
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_CXXFLAGS += -Winvalid-pch -fpch-preprocess
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox_INTERMEDIATES += $(VirtualBox_0_OUTDIR)/include/precomp.h.gch
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsynctstx: $$(VirtualBox_0_OUTDIR)/include/precomp.h.gch
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync$$(VirtualBox_0_OUTDIR)/include/precomp.h.gch: \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(PATH_SUB_CURRENT)/src/precomp.h \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $$(VirtualBox_0_OUTDIR)/include/COMWrappers.h \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $$(filter %.gen.h, $$(VirtualBox_INTERMEDIATES) ) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(VBOX_PATH_SDK)/bindings/xpcom/include/VirtualBox_XPCOM.h \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync | $$(dir $$@)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync time 'g++-4.0' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(if-expr "$(KBUILD_TYPE)" == "debug", , -O2 ) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-Wextra' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-Wno-missing-field-initializers' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-Wno-trigraphs' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-fno-exceptions' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-Wno-non-virtual-dtor' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-Wno-long-long' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-fshort-wchar' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-fno-strict-aliasing' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-fvisibility=hidden' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DVBOX_HAVE_VISIBILITY_HIDDEN' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DRT_USE_VISIBILITY_DEFAULT' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-fvisibility-inlines-hidden' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-Winvalid-pch' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-fpch-preprocess' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-F$(PATH_SDK_QT4)/Frameworks' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-mmacosx-version-min=10.5' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-isysroot' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(foreach inc,$(VirtualBox_INCS),\$(NL)$(TAB)-I$(inc)) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-I$(PATH_ROOT)/include' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-I$(PATH_OUT)' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DVBOX_WITH_DEBUGGER' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DVBOX_WITH_64_BITS_GUESTS' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(if-expr "$(KBUILD_TYPE)" == "debug", '-DDEBUG' '-DDEBUG_bird' '-DDEBUG_USERNAME=bird' '-DVBOX_CHECK_STATE' ,) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DRT_OS_DARWIN' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-D__DARWIN__' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DRT_ARCH_X86' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-D__X86__' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DIN_RING3' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DQT_NO_DEBUG' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DQT_THREAD_SUPPORT' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DQT_SHARED' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DHAVE_CONFIG_H' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DHC_ARCH_BITS=32' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DGC_ARCH_BITS=64' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DVBOX_WITH_XPCOM' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DVBOX_WITH_REGISTRATION' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DVBOX_WITH_REGISTRATION_REQUEST' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DVBOX_WITH_UPDATE_REQUEST' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DVBOX_WITH_ALSA' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DVBOX_WITH_PULSE' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DVBOX_WITH_E1000' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DVBOX_WITH_NETFLT' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DVBOX_WITH_DEBUGGER_GUI' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(if-expr "$(KBUILD_TYPE)" != "release", '-DVBOX_WITH_DEBUGGER_GUI_MENU', ) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DVBOX_WITH_VIDEOHWACCEL' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DVBOX_GUI_USE_QGL' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DVBOX_WITH_VIRTIO' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DVBOX_WITH_PRECOMPILED_HEADERS' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DVBOX_DARWIN_USE_NATIVE_CONTROLS' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DQT_CORE_LIB' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DQT_GUI_LIB' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DQT_NETWORK_LIB' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DQT_OPENGL_LIB' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DMAC_OS_X_VERSION_MIN_REQUIRED=1050' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DMAC_OS_X_VERSION_MAX_ALLOWED=1050' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DVBOX_GUI_USE_QUARTZ2D' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '-DVBOX_GUI_USE_QIMAGE' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifeq ($(KBUILD_TARGET),win)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# On Windows we'll have to generate/edit part of the resource file.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# The IDI_ICON1 name is Qt specific.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncsrc/platform/win/VirtualBox.rc_INCS = $(VirtualBox_0_OUTDIR)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncsrc/platform/win/VirtualBox.rc_DEPS = $(VirtualBox_0_OUTDIR)/VirtualBox-icon.rc
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncsrc/platform/win/VirtualBox.rc_CLEAN = $(VirtualBox_0_OUTDIR)/VirtualBox-icon.rc
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync$$(VirtualBox_0_OUTDIR)/VirtualBox-icon.rc: $(MAKEFILE_CURRENT) $(VBOX_WINDOWS_ICON_FILE) | $$(dir $$@)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(APPEND) -t $@ 'IDI_ICON1 ICON "$(subst /,\\,$(VBOX_WINDOWS_ICON_FILE))"'
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifeq ($(KBUILD_TARGET),darwin)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Create directories for each approved language or the application
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# menu won't be translated.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox.lproj_INST = $(INST_VIRTUALBOX)Contents/Resources/
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox.lproj_DIRS := $(addsuffix .lproj,$(VBOX_APPROVED_GUI_LANGUAGES))
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# On OS X (darwin) we need to install icon resources and compulsory bundle contents.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# The VirtualBoxVM.app helper is for launching VMs (fixes some issues with the dock).
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBox.app_INST = $(INST_VIRTUALBOX)Contents/
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(VBOX_MACOSX_ICON_FILE)=>Resources/virtualbox.icns \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(VBOX_BRAND_GUI_VBOX_64PX_PNG)=>Resources/virtualbox.png \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(PATH_ROOT)/src/VBox/Resources/darwin/virtualbox-vbox.icns=>Resources/virtualbox-vbox.icns \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(PATH_ROOT)/src/VBox/Resources/darwin/virtualbox-vbox-extpack.icns=>Resources/virtualbox-vbox-extpack.icns \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(PATH_ROOT)/src/VBox/Resources/darwin/virtualbox-ovf.icns=>Resources/virtualbox-ovf.icns \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(PATH_ROOT)/src/VBox/Resources/darwin/virtualbox-ova.icns=>Resources/virtualbox-ova.icns
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync$$(VirtualBox.app_0_OUTDIR)/Info.plist: $(PATH_SUB_CURRENT)/src/platform/darwin/Info.plist $(VBOX_VERSION_MK) | $$(@D)/
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(call MSG_GENERATE,VirtualBox.app,$<,$@)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(QUIET)$(RM) -f $@
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(QUIET)$(SED) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's/@VBOX_VERSION_STRING@/$(VBOX_VERSION_STRING)/g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's/@VBOX_VERSION_MAJOR@/$(VBOX_VERSION_MAJOR)/g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's/@VBOX_VERSION_MINOR@/$(VBOX_VERSION_MINOR)/g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's/@VBOX_VERSION_BUILD@/$(VBOX_VERSION_BUILD)/g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's/@VBOX_VENDOR@/$(VBOX_VENDOR)/g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's/@VBOX_PRODUCT@/$(VBOX_PRODUCT)/g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's/@VBOX_C_YEAR@/$(VBOX_C_YEAR)/g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncVirtualBoxVM.app_INST = $(VirtualBox.app_INST)Resources/VirtualBoxVM.app/Contents/
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(VirtualBoxVM.app_0_OUTDIR)/VM-Info.plist=>Info.plist
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync MacOS=>../../../MacOS/ \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync Resources=>../../../Resources/
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync$$(VirtualBoxVM.app_0_OUTDIR)/VM-Info.plist: $(PATH_SUB_CURRENT)/src/platform/darwin/VM-Info.plist $(VBOX_VERSION_MK) | $$(@D)/
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(call MSG_GENERATE,VirtualBoxVM.app,$<,$@)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(QUIET)$(RM) -f $@
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(QUIET)$(SED) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's/@VBOX_VERSION_STRING@/$(VBOX_VERSION_STRING)/g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's/@VBOX_VERSION_MAJOR@/$(VBOX_VERSION_MAJOR)/g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's/@VBOX_VERSION_MINOR@/$(VBOX_VERSION_MINOR)/g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's/@VBOX_VERSION_BUILD@/$(VBOX_VERSION_BUILD)/g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's/@VBOX_VENDOR@/$(VBOX_VENDOR)/g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's/@VBOX_PRODUCT@/$(VBOX_PRODUCT)/g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's/@VBOX_C_YEAR@/$(VBOX_C_YEAR)/g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync --output $@ $<
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncPROGRAMS += vmstarter
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncvmstarter_TEMPLATE = VBOXR3EXE
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncvmstarter_SOURCES = src/platform/darwin/vmstarter.mm
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncvmstarter_LDFLAGS += -framework AppKit
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncvmstarter_INST = $(INST_BIN)vmstarter
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncvmstarter.app_INST = $(VirtualBox.app_INST)Resources/vmstarter.app/Contents
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(vmstarter.app_0_OUTDIR)/vmstarter-Info.plist=>Info.plist
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync MacOS=>../../../MacOS \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync Resources=>../../../Resources
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync$$(vmstarter.app_0_OUTDIR)/vmstarter-Info.plist: $(PATH_SUB_CURRENT)/src/platform/darwin/vmstarter-Info.plist $(VBOX_VERSION_MK) | $$(@D)/
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(call MSG_GENERATE,vmstarter.app,$<,$@)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(QUIET)$(RM) -f $@
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(QUIET)$(SED) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's/@VBOX_VERSION_STRING@/$(VBOX_VERSION_STRING)/g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's/@VBOX_VERSION_MAJOR@/$(VBOX_VERSION_MAJOR)/g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's/@VBOX_VERSION_MINOR@/$(VBOX_VERSION_MINOR)/g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's/@VBOX_VERSION_BUILD@/$(VBOX_VERSION_BUILD)/g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's/@VBOX_VENDOR@/$(VBOX_VENDOR)/g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's/@VBOX_PRODUCT@/$(VBOX_PRODUCT)/g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync -e 's/@VBOX_C_YEAR@/$(VBOX_C_YEAR)/g' \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync --output $@ $<
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncendif # darwin
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# App for testing GL support
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncif defined(VBOX_WITH_VIDEOHWACCEL)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync if1of ($(KBUILD_TARGET), win linux freebsd)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync LIBRARIES += VBoxOGL2D
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VBoxOGL2D_TEMPLATE = VBOXR3STATIC
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VBoxOGL2D_USES = qt4
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VBoxOGL2D_SDKS = QT4
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VBoxOGL2D_DEFS = IN_RING3 QT_NO_DEBUG QT_THREAD_SUPPORT QT_SHARED HAVE_CONFIG_H $(ARCH_BITS_DEFS) VBOX_WITH_VIDEOHWACCEL VBOX_GUI_USE_QGL
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VBoxOGL2D_QT_MODULES += OpenGL
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VBoxOGL2D_SOURCES = \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync VBoxOGL2D_INCS = include
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Testcase for the darwin keyboard routines.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncifdef VBOX_WITH_TESTCASES
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncPROGRAMS.darwin += tstDarwinKeyboard
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsynctstDarwinKeyboard_NAME = tstDarwinKeyboard
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsynctstDarwinKeyboard_TEMPLATE = VBOXR3TSTEXE
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsynctstDarwinKeyboard_DEFS.x86 = USE_HID_FOR_MODIFIERS
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsynctstDarwinKeyboard_INCS = include
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsynctstDarwinKeyboard_SOURCES = \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsynctstDarwinKeyboard_LDFLAGS = -framework IOKit -framework Carbon -framework AppKit
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsynctstDarwinKeyboard_LIBS = \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(LIB_RUNTIME)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Unset everything that was loaded from VBoxUI.pro.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncTEMPLATE := $(SAVED_TEMPLATE)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncSAVED_TEMPLATE :=
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncTRANSLATIONS :=
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Commit the magic.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# (note: before custom rules that make usage of generated variables!).
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncinclude $(KBUILD_PATH)/subfooter.kmk
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Update all known NLS translation (.ts) files in the nls/ subdirectory.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# NOTE: This target is intended to be run only by the GUI maintainer shortly
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# before a new product release. VirtualBox_xx_YY.ts is a template for new
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# languages and should never be actually translated or installed.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# For Qt >= 4.6.0 it maybe necessary to add -I $(VBOX_GUI_INC_DIRS) to the
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# lupdate call
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync#VirtualBox_QT_TRANSLATIONS = nls/VirtualBox_de.ts
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncupdatenls:: makeallnls nls/VirtualBox_en.ts
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsyncmakeallnls:: \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(foreach header,$(VBOX_GUI_INC_DIRS),$(wildcard $(header)/*.h)) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(filter-out %.qrc,$(VirtualBox_SOURCES) $(VirtualBox_VBOX_EXTRA_NLS_SOURCES))
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(call MSG_L1,lupdate all languages (nls/*.ts))
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(QUIET)$(TOOL_QT4_LUPDATE) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(filter-out nls/VirtualBox_en.ts,$(filter-out nls/qt_%.ts,$(VirtualBox_QT_TRANSLATIONS))) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# Create the English translation file. This is something special cause it will
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync# contain the plural forms only.
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(foreach header,$(VBOX_GUI_INC_DIRS),$(wildcard $(header)/*.h)) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(filter-out %.qrc,$(VirtualBox_SOURCES) $(VirtualBox_VBOX_EXTRA_NLS_SOURCES))
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(call MSG_L1,lupdate $@)
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(QUIET)$(TOOL_QT4_LUPDATE) \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync $(QUIET)$(SED) -n -i -e \
9dca051a5f8ff457ef1692990f6ecfa280daf265vboxsync '/<context>/,/<\/context>/!p;/<context>/h;/<name>/H;/<message numerus="yes">/,/<\/message>/H;/<\/context>/{H;x;/<message/p}' \