Makefile.kmk revision 5979821e2c16d1fcec5b9a3ef64e13246fc9a93a
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# Makefile for the VirtualBox Qt GUI.
c7814cf6e1240a519cbec0441e033d0e2470ed00vboxsync# Copyright (C) 2006-2014 Oracle Corporation
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# This file is part of VirtualBox Open Source Edition (OSE), as
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# available from http://www.virtualbox.org. This file is free software;
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# you can redistribute it and/or modify it under the terms of the GNU
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# General Public License (GPL) as published by the Free Software
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# Foundation, in version 2 as it comes in the "COPYING" file of the
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncSUB_DEPTH = ../../../..
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncinclude $(KBUILD_PATH)/subheader.kmk
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncVBOX_VIRTUALBOX4_SRC := $(PATH_SUB_CURRENT)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncVBOX_VIRTUALBOX4_OUT_DIR := $(PATH_TARGET)/VirtualBox/misc
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# Show the update notifier dialog during startup. If this setting is disabled
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# the user can still update using the menu if desired.
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncifndef VBOX_OSE
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncVBOX_WITH_UPDATE_REQUEST := 1
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync# The targets.
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsyncifdef VBOX_WITH_HARDENING
384478d3896257fbce9ceb8c01e74040b969e6d7vboxsyncPROGRAMS += VirtualBoxHardened
73ba84f95f918cc170be38908ad240fbb2f8f354vboxsyncDLLS += VirtualBox
73ba84f95f918cc170be38908ad240fbb2f8f354vboxsyncPROGRAMS += VirtualBox
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# Include the language lists.
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncinclude $(PATH_SUB_CURRENT)/nls/ApprovedLanguages.kmk
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# Hardened VirtualBox.
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncVirtualBoxHardened_TEMPLATE = VBOXR3HARDENEDEXE
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncVirtualBoxHardened_SOURCES = src/hardenedmain.cpp
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncVirtualBoxHardened_SOURCES.win = src/platform/win/VirtualBoxHardened.rc
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncVirtualBoxHardened_NAME = VirtualBox
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncVirtualBoxHardened_INST.darwin = $(INST_BIN)VirtualBox $(INST_BIN)VirtualBoxVM
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncVirtualBoxHardened_LDFLAGS.win = /SUBSYSTEM:$(if-expr "$(KBUILD_TYPE)" != "release",console,windows)
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsyncsrc/platform/win/VirtualBoxHardened.rc_INCS = $(VirtualBox_0_OUTDIR)
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsyncsrc/platform/win/VirtualBoxHardened.rc_DEPS = $(VirtualBox_0_OUTDIR)/VirtualBox-icon.rc
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync# Include Qt project file, we'll use FORMS and TRANSLATIONS in
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync# the VirtualBox setup below.
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsyncSAVED_TEMPLATE := $(TEMPLATE)
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsyncinclude $(PATH_SUB_CURRENT)/VBoxUI.pro
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync# VirtualBox - The GUI program.
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsyncVirtualBox_TEMPLATE := $(if $(VBOX_WITH_HARDENING),VBOXQT4GUI,VBOXQT4GUIEXE)
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsyncVirtualBox_NAME = VirtualBox
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsyncifndef VBOX_WITH_HARDENING # For the launch trick we need different inode numbers.
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync VirtualBox_INST.darwin = $(INST_BIN)VirtualBox $(INST_BIN)VirtualBoxVM
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsyncVirtualBox_SDKS.win = ReorderCompilerIncs $(VBOX_WINPSDK) $(VBOX_WINDDK)
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsyncVirtualBox_DEFS =
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsyncVirtualBox_DEFS.debug = VBOX_CHECK_STATE # QT_FATAL_ASSERT
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsyncVirtualBox_DEFS.linux = VBOX_WITH_MASKED_SEAMLESS VBOX_WITH_TRANSLUCENT_SEAMLESS
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsyncVirtualBox_DEFS.solaris = VBOX_WITH_MASKED_SEAMLESS VBOX_WITH_TRANSLUCENT_SEAMLESS
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsyncVirtualBox_DEFS.freebsd = VBOX_WITH_MASKED_SEAMLESS VBOX_WITH_TRANSLUCENT_SEAMLESS
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsyncVirtualBox_DEFS.darwin = VBOX_WITH_TRANSLUCENT_SEAMLESS # VBOX_WITH_MASKED_SEAMLESS
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsyncVirtualBox_DEFS.win = VBOX_WITH_MASKED_SEAMLESS # VBOX_WITH_TRANSLUCENT_SEAMLESS
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsyncVirtualBox_DEFS.win += UNICODE QT_DLL
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsyncifdef VBOX_WITH_ICHAT_THEATER
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync VirtualBox_DEFS.darwin += VBOX_WITH_ICHAT_THEATER
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsyncVirtualBox_DEFS += \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync $(if $(VBOX_WITH_ADDITIONS_AUTOUPDATE_UI),VBOX_WITH_ADDITIONS_AUTOUPDATE_UI) \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync $(if $(VBOX_WITH_UPDATE_REQUEST),VBOX_WITH_UPDATE_REQUEST) \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync $(if $(VBOX_WITH_ALSA),VBOX_WITH_ALSA) \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync $(if $(VBOX_WITH_PULSE),VBOX_WITH_PULSE) \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync $(if $(VBOX_WITH_SOLARIS_OSS),VBOX_WITH_SOLARIS_OSS) \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync $(if $(VBOX_WITH_E1000),VBOX_WITH_E1000) \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync $(if $(VBOX_WITH_NETFLT)$(eq $(KBUILD_TARGET),freebsd),VBOX_WITH_NETFLT) \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync $(if $(VBOX_WITH_VDE),VBOX_WITH_VDE) \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync $(if $(VBOX_WITH_UDPTUNNEL),VBOX_WITH_UDPTUNNEL) \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync $(if $(VBOX_WITH_EXTPACK),VBOX_WITH_EXTPACK) \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync $(if $(VBOX_WITH_EHCI),VBOX_WITH_EHCI) \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync $(if $(VBOX_WITH_HARDENING),VBOXR3_HARDENED_DLL) \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync $(if $(VBOX_WITH_DRAG_AND_DROP),VBOX_WITH_DRAG_AND_DROP) \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync $(if $(VBOX_WITH_DRAG_AND_DROP_GH),VBOX_WITH_DRAG_AND_DROP_GH) \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync $(if $(VBOX_WITH_CRHGSMI),VBOX_WITH_CRHGSMI) \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync $(if $(VBOX_WITH_VIRTIO),VBOX_WITH_VIRTIO) \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync $(if $(VBOX_WITH_WDDM),VBOX_WITH_WDDM) \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync $(if $(VBOX_WITH_CROGL),VBOX_WITH_CROGL) \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync $(if $(VBOX_GUI_WITH_HIDPI),VBOX_GUI_WITH_HIDPI) \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync $(if $(VBOX_GUI_WITH_PIDFILE),VBOX_GUI_WITH_PIDFILE) \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync $(if $(VBOX_GUI_WITH_KEYS_RESET_HANDLER),VBOX_GUI_WITH_KEYS_RESET_HANDLER) \
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync $(if $(VBOX_GUI_WITH_CUSTOMIZATIONS1),VBOX_GUI_WITH_CUSTOMIZATIONS1)
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsyncifdef VBOX_WITH_DEBUGGER_GUI
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync VirtualBox_DEFS += VBOX_WITH_DEBUGGER_GUI
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync if "$(KBUILD_TYPE)" != "release"
4a9af9a8062589b741444d717d2dd1ed22b0f583vboxsync VirtualBox_DEFS += VBOX_WITH_DEBUGGER_GUI_MENU
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsyncifdef VBOX_WITH_VIDEOHWACCEL
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync VirtualBox_DEFS += VBOX_WITH_VIDEOHWACCEL \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync VBOX_GUI_USE_QGL
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsyncelse ifdef VBOX_GUI_USE_QGL
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync VirtualBox_DEFS += VBOX_GUI_USE_QGL
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsyncifdef VBOX_WITH_LIBCURL
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync VirtualBox_DEFS += VBOX_GUI_WITH_NETWORK_MANAGER
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync VBOX_GUI_WITH_NETWORK_MANAGER := 1
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsyncifdef VBOX_BLEEDING_EDGE
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsyncVirtualBox_src/selector/UISelectorWindow.cpp_DEFS += \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync VBOX_BLEEDING_EDGE=\"$(VBOX_BLEEDING_EDGE)\"
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsyncVirtualBox_src/runtime/UIMachineWindow.cpp_DEFS += \
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync VBOX_BLEEDING_EDGE=\"$(VBOX_BLEEDING_EDGE)\"
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync VBOX_BLEEDING_EDGE=\"$(VBOX_BLEEDING_EDGE)\"
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsync VBOX_BLEEDING_EDGE=\"$(VBOX_BLEEDING_EDGE)\"
1c0d3d017f9a45748b4839bf6622b53e83a4f1f8vboxsyncVBOX_GUI_INC_DIRS = \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncifdef VBOX_GUI_WITH_NETWORK_MANAGER
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncVBOX_GUI_INC_DIRS += \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncVirtualBox_INCS = \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(VBOX_GUI_INC_DIRS) \
73ba84f95f918cc170be38908ad240fbb2f8f354vboxsync $(VirtualBox_0_OUTDIR)/include
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# Necessary for the hdd backend enumeration
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncVirtualBox_LIBS = $(LIB_DDU)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncif1of ($(KBUILD_TARGET), linux netbsd openbsd)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync VirtualBox_LIBS += dl
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# This library is required for multi-monitor support
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncifneq ($(KBUILD_TARGET),win)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncVirtualBox_CXXFLAGS += -Wno-switch
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncifeq ($(KBUILD_TYPE),release)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync VirtualBox_LDFLAGS.win += /SUBSYSTEM:windows
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync VirtualBox_LDFLAGS.linux += -rdynamic # for backtrace_symbols()
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync VirtualBox_LDFLAGS.win += /SUBSYSTEM:console
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# delay loading causes VM process crashes due to the misbehave of the current QtOpenGLVBox4.dll we use
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# (i.e. it does not create the ogl context properly when loaded this way)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# @todo: investigate a better work-around and enable back delay loading since it is needed to avoid
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# crashes caused by buggy ogl drivers for the case 2D is not used (i.e. no ogl stuff loaded)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync#if defined(VBOX_WITH_VIDEOHWACCEL) || defined(VBOX_GUI_USE_QGL)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# VirtualBox_LDFLAGS.win += /DelayLoad:QtOpenGLVBox4.dll /DelayLoad:OPENGL32.dll
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync -framework AppKit -framework Carbon -framework IOKit \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(if $(VBOX_WITH_HARDENING),-install_name $(VBOX_DYLD_EXECUTABLE_PATH)/VirtualBox.dylib)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncifdef VBOX_WITH_ICHAT_THEATER
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync VirtualBox_LDFLAGS.darwin += -framework InstantMessage -framework QuartzCore
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(PATH_SDK_$(VBOX_WINPSDK)_LIB)/Htmlhelp.Lib \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(PATH_SDK_$(VBOX_WINDDK)_LIB)/ddraw.lib \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(PATH_SDK_$(VBOX_WINDDK)_LIB)/dxguid.lib
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncif1of ($(KBUILD_TARGET), freebsd linux netbsd openbsd solaris) # X11
6902a98267d5180fb081cb5273751d0a628bf04dvboxsync VirtualBox_LIBS += $(PATH_STAGE_DLL)/VBoxKeyboard$(VBOX_SUFF_DLL)
7b4ea63789001468ec3662bdfcd6432bf89095dfvboxsyncif defined(VBOX_WITH_VIDEOHWACCEL) || defined(VBOX_GUI_USE_QGL)
7b4ea63789001468ec3662bdfcd6432bf89095dfvboxsync VirtualBox_LIBS.win += $(PATH_SDK_$(VBOX_WINPSDK)_LIB)/Opengl32.lib
7b4ea63789001468ec3662bdfcd6432bf89095dfvboxsync VirtualBox_LDFLAGS.darwin += -framework OpenGL
46737b2c6b2da473108a7670c3682d88474bd8b9vboxsyncifdef VBOX_WITH_CROGL
46737b2c6b2da473108a7670c3682d88474bd8b9vboxsync VirtualBox_LIBS += $(PATH_STAGE_LIB)/VBoxOGLTest$(VBOX_SUFF_LIB)
46737b2c6b2da473108a7670c3682d88474bd8b9vboxsync# Headers containing definitions of classes that use the Q_OBJECT macro.
46737b2c6b2da473108a7670c3682d88474bd8b9vboxsyncVirtualBox_QT_MOCHDRS = \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/runtime/fullscreen/UIKeyboardHandlerFullscreen.h \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/runtime/fullscreen/UIMachineLogicFullscreen.h \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/runtime/fullscreen/UIMachineWindowFullscreen.h \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/selector/graphics/chooser/UIGChooserHandlerMouse.h \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/selector/graphics/chooser/UIGChooserHandlerKeyboard.h \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/selector/graphics/chooser/UIGChooserItemGroup.h \
46737b2c6b2da473108a7670c3682d88474bd8b9vboxsync src/selector/graphics/chooser/UIGChooserItemMachine.h \
46737b2c6b2da473108a7670c3682d88474bd8b9vboxsync src/selector/graphics/details/UIGDetailsElement.h \
46737b2c6b2da473108a7670c3682d88474bd8b9vboxsync src/selector/graphics/details/UIGDetailsElements.h \
46737b2c6b2da473108a7670c3682d88474bd8b9vboxsync src/selector/graphics/details/UIGMachinePreview.h \
41fcf8465b641c7083d3b440451f17c1210fce33vboxsync src/settings/global/UIGlobalSettingsNetworkDetailsNAT.h \
9c21eebec4d70f1e638002c8dfc6ea9d534d8710vboxsync src/settings/global/UIGlobalSettingsNetworkDetailsHost.h \
9c21eebec4d70f1e638002c8dfc6ea9d534d8710vboxsync src/settings/global/UIGlobalSettingsPortForwardingDlg.h \
9c21eebec4d70f1e638002c8dfc6ea9d534d8710vboxsync src/settings/machine/UIMachineSettingsInterface.h \
41fcf8465b641c7083d3b440451f17c1210fce33vboxsync src/settings/machine/UIMachineSettingsPortForwardingDlg.h \
41fcf8465b641c7083d3b440451f17c1210fce33vboxsync src/settings/machine/UIMachineSettingsSFDetails.h \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/settings/machine/UIMachineSettingsUSBFilterDetails.h \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync src/wizards/exportappliance/UIWizardExportAppPageBasic1.h \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync src/wizards/exportappliance/UIWizardExportAppPageBasic2.h \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync src/wizards/exportappliance/UIWizardExportAppPageBasic3.h \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync src/wizards/exportappliance/UIWizardExportAppPageBasic4.h \
46737b2c6b2da473108a7670c3682d88474bd8b9vboxsync src/wizards/exportappliance/UIWizardExportAppPageExpert.h \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync src/wizards/importappliance/UIWizardImportAppPageBasic1.h \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync src/wizards/importappliance/UIWizardImportAppPageBasic2.h \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync src/wizards/importappliance/UIWizardImportAppPageExpert.h \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsyncifdef VBOX_GUI_WITH_NETWORK_MANAGER
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync VirtualBox_QT_MOCHDRS += \
09f4b412099acda62997fd82c8608075c453b3ebvboxsyncifdef VBOX_WITH_DRAG_AND_DROP
09f4b412099acda62997fd82c8608075c453b3ebvboxsync VirtualBox_QT_MOCHDRS += \
73ba84f95f918cc170be38908ad240fbb2f8f354vboxsync ifdef VBOX_WITH_DRAG_AND_DROP_GH
73ba84f95f918cc170be38908ad240fbb2f8f354vboxsync VirtualBox_QT_MOCHDRS += \
73ba84f95f918cc170be38908ad240fbb2f8f354vboxsync# Sources containing local definitions of classes that use the Q_OBJECT macro.
09f4b412099acda62997fd82c8608075c453b3ebvboxsyncVirtualBox_QT_MOCSRCS = \
09f4b412099acda62997fd82c8608075c453b3ebvboxsync src/runtime/UIAddDiskEncryptionPasswordDialog.cpp \
09f4b412099acda62997fd82c8608075c453b3ebvboxsync src/settings/machine/UIMachineSettingsStorage.cpp \
09f4b412099acda62997fd82c8608075c453b3ebvboxsyncifdef VBOX_GUI_WITH_NETWORK_MANAGER
09f4b412099acda62997fd82c8608075c453b3ebvboxsync VirtualBox_QT_MOCSRCS += \
09f4b412099acda62997fd82c8608075c453b3ebvboxsyncifdef VBOX_WITH_XPCOM
09f4b412099acda62997fd82c8608075c453b3ebvboxsync VirtualBox_QT_MOCSRCS += \
09f4b412099acda62997fd82c8608075c453b3ebvboxsyncVirtualBox_SOURCES = \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/runtime/UIAddDiskEncryptionPasswordDialog.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/runtime/fullscreen/UIKeyboardHandlerFullscreen.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/runtime/fullscreen/UIMachineLogicFullscreen.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/runtime/fullscreen/UIMachineViewFullscreen.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/runtime/fullscreen/UIMachineWindowFullscreen.cpp \
4c98b8b05f3783351cf256cc90cd4478fb28b62bvboxsync src/runtime/seamless/UIKeyboardHandlerSeamless.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/selector/graphics/chooser/UIGChooserModel.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/selector/graphics/chooser/UIGChooserHandlerMouse.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/selector/graphics/chooser/UIGChooserHandlerKeyboard.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/selector/graphics/chooser/UIGChooserItemGroup.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/selector/graphics/chooser/UIGChooserItemMachine.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/selector/graphics/details/UIGDetailsModel.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/selector/graphics/details/UIGDetailsGroup.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/selector/graphics/details/UIGDetailsElement.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/selector/graphics/details/UIGDetailsElements.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/selector/graphics/details/UIGMachinePreview.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/settings/global/UIGlobalSettingsExtension.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/settings/global/UIGlobalSettingsNetworkDetailsNAT.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/settings/global/UIGlobalSettingsNetworkDetailsHost.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/settings/global/UIGlobalSettingsPortForwardingDlg.cpp \
73ba84f95f918cc170be38908ad240fbb2f8f354vboxsync src/settings/machine/UIMachineSettingsDisplay.cpp \
73ba84f95f918cc170be38908ad240fbb2f8f354vboxsync src/settings/machine/UIMachineSettingsGeneral.cpp \
73ba84f95f918cc170be38908ad240fbb2f8f354vboxsync src/settings/machine/UIMachineSettingsInterface.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/settings/machine/UIMachineSettingsNetwork.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/settings/machine/UIMachineSettingsParallel.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/settings/machine/UIMachineSettingsPortForwardingDlg.cpp \
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsync src/settings/machine/UIMachineSettingsSFDetails.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/settings/machine/UIMachineSettingsStorage.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/settings/machine/UIMachineSettingsUSBFilterDetails.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/wizards/clonevm/UIWizardCloneVMPageBasic1.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/wizards/clonevm/UIWizardCloneVMPageBasic2.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/wizards/clonevm/UIWizardCloneVMPageBasic3.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/wizards/clonevm/UIWizardCloneVMPageExpert.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/wizards/clonevd/UIWizardCloneVDPageBasic1.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/wizards/clonevd/UIWizardCloneVDPageBasic2.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/wizards/clonevd/UIWizardCloneVDPageBasic3.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/wizards/clonevd/UIWizardCloneVDPageBasic4.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/wizards/clonevd/UIWizardCloneVDPageExpert.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/wizards/exportappliance/UIWizardExportApp.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/wizards/exportappliance/UIWizardExportAppPageBasic1.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/wizards/exportappliance/UIWizardExportAppPageBasic2.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/wizards/exportappliance/UIWizardExportAppPageBasic3.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/wizards/exportappliance/UIWizardExportAppPageBasic4.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/wizards/exportappliance/UIWizardExportAppPageExpert.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/wizards/importappliance/UIWizardImportApp.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/wizards/importappliance/UIWizardImportAppPageBasic1.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/wizards/importappliance/UIWizardImportAppPageBasic2.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/wizards/importappliance/UIWizardImportAppPageExpert.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncifdef VBOX_GUI_WITH_NETWORK_MANAGER
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncVirtualBox_SOURCES += \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync src/platform/darwin/UIAbstractDockIconPreview.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncif1of ($(KBUILD_TARGET), freebsd linux netbsd openbsd solaris) # X11
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync VirtualBox_SOURCES += \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncVirtualBox_DEFS.darwin += VBOX_DARWIN_USE_NATIVE_CONTROLS
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsync src/platform/darwin/UIDesktopServices_darwin_cocoa.mm \
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsyncifdef VBOX_WITH_ICHAT_THEATER
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsyncif defined(VBOX_WITH_VIDEOHWACCEL) || defined(VBOX_GUI_USE_QGL)
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsync VirtualBox_SOURCES += \
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsyncifdef VBOX_WITH_DRAG_AND_DROP
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsync VirtualBox_SOURCES += \
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsync ifdef VBOX_WITH_DRAG_AND_DROP_GH
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsync VirtualBox_SOURCES += \
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsync# The Qt modules we're using.
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsync# (The include directory and lib/framework for each module will be added by the Qt4 unit.)
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsyncVirtualBox_QT_MODULES = Core Gui Network
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsyncif defined(VBOX_WITH_VIDEOHWACCEL) || defined(VBOX_GUI_USE_QGL)
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsync VirtualBox_QT_MODULES += OpenGL
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsync# Pull in the ui files
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsync$(eval VirtualBox_SOURCES += $(FORMS))
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsync# Resource files with some OSE differences (VirtualBoxBrand.qrc is created further down).
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsyncVirtualBox_SOURCES += VirtualBox1.qrc
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsyncVirtualBox_SOURCES += VirtualBox2.qrc
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsyncifeq ($(KBUILD_TARGET),darwin)
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsync VirtualBox_SOURCES += VirtualBox1_hidpi.qrc
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsync VirtualBox1_hidpi.qrc_RCCFLAGS = -name BASIC1_HIDPI
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsync VirtualBox_SOURCES += VirtualBox2_hidpi.qrc
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsync VirtualBox2_hidpi.qrc_RCCFLAGS = -name BASIC2_HIDPI
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsync VirtualBox_SOURCES += VirtualBoxMac.qrc
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsync VirtualBox_SOURCES += VirtualBoxOther.qrc
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsyncVirtualBox_SOURCES += $(VBOX_VIRTUALBOX4_OUT_DIR)/VirtualBoxBrand.qrc
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsync$(VBOX_VIRTUALBOX4_OUT_DIR)/VirtualBoxBrand.qrc_RCCFLAGS = -name BRAND
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsyncif defined(VBOX_WITH_VIDEOHWACCEL) || defined(VBOX_GUI_USE_QGL)
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsync VirtualBox_SOURCES += VirtualBoxShaders.qrc
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# Import the translation source from VBoxUI.pro and add the qt_xx_YY counterparts
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncVirtualBox_QT_TRANSLATIONS := $(TRANSLATIONS) \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(patsubst nls/VirtualBox_%.ts,nls/qt_%.ts, $(filter nls/VirtualBox_%.ts,$(TRANSLATIONS)))
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# Compress the translation units.
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncVirtualBox_LRCFLAGS = -silent
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# Where to install the translations (a separate install target, VirtualBox-nls-inst is created).
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncVirtualBox_QT_TRANSLATIONS_INST = $(INST_BIN)nls/
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync## @todo how to detect what tool is used?
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync## @todo GCC3 seems to lack -Wno-missing-base-class-initializer, so we use
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# more generic -Wno-extra
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# bird: What about $(if $(VBOX_GCC_Wno-missing-base-class-initializer),$(VBOX_GCC_Wno-missing-base-class-initializer),$(VBOX_GCC_Wno-extra))?
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncifdef VBOX_WITH_XPCOM
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync VirtualBox_src/globals/COMDefs.cpp_CXXFLAGS = $(VBOX_GCC_Wno-extra)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# Generate the COM wrappers.
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncincludedep $(PATH_TARGET)/VirtualBoxComWrapperFiles.dep
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncVirtualBox_BLDDIRS += $(VirtualBox_0_OUTDIR)/include
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncVirtualBox_INTERMEDIATES += $(VirtualBox_0_OUTDIR)/include/COMWrappers
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncVirtualBox_CLEAN += $(wildcard $(VirtualBox_0_OUTDIR)/include/*) $(PATH_TARGET)/VirtualBoxComWrapperFiles.dep
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncVirtualBox_SOURCES += $(VirtualBox_0_OUTDIR)/include/COMWrappers.cpp
105b1a31b6037dbe14acb8d09e60da540885202bvboxsync## @todo kmk doesn't remake optional outputs when they are missing...
105b1a31b6037dbe14acb8d09e60da540885202bvboxsync$$(VirtualBox_0_OUTDIR)/include/COMWrappers \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync+| $(if-expr defined(VirtualBox_VBOX_COMWRAPPERS) \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync, $(VirtualBox_VBOX_COMWRAPPERS) \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync, $$(VirtualBox_0_OUTDIR)/include/COMEnums.h \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $$(VirtualBox_0_OUTDIR)/include/COMWrappers.cpp \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(VBOX_XIDL_FILE) \
2721dfb0e330d57ba888311520f5a343c64e7cefvboxsync $(VBOX_VIRTUALBOX4_SRC)/src/globals/COMWrappers.xsl \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(VBOX_FILESPLIT) \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync | $$(dir $$@)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(call MSG_GENERATE,VirtualBox,$<,$@)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(QUIET)$(RM) -f -- "$@" "$(PATH_TARGET)/VirtualBoxComWrapperFiles.dep"
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(QUIET)$(VBOX_XSLTPROC) -o $@ $(VBOX_VIRTUALBOX4_SRC)/src/globals/COMWrappers.xsl $<
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(QUIET)$(VBOX_FILESPLIT) $@ $(VirtualBox_0_OUTDIR)/include \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(PATH_TARGET)/VirtualBoxComWrapperFiles.dep VirtualBox_VBOX_COMWRAPPERS
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(APPEND) "$@"
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# alias for generating the COM Wrappers file.
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsynctestwrappers:: $$(VirtualBox_0_OUTDIR)/include/COMWrappers
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# Generate qrc file with branded icons.
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncVirtualBox_BLDDIRS += $(VBOX_VIRTUALBOX4_OUT_DIR)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncVirtualBox_CLEAN += $(VBOX_VIRTUALBOX4_OUT_DIR)/VirtualBoxBrand.qrc
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync$(VBOX_VIRTUALBOX4_OUT_DIR)/VirtualBoxBrand.qrc: \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(VBOX_VIRTUALBOX4_SRC)/VirtualBoxBrand.qrc \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(PATH_ROOT)/Config.kmk \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync | $$(dir $$@)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(call MSG_GENERATE,VirtualBox,$<,$@)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(QUIET)$(SED) \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync -e 's;@VBOX_ABOUT_PNG@;$(VBOX_BRAND_GUI_ABOUT_PNG);g' \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync -e 's;@VBOX_ABOUT_HIDPI_PNG@;$(VBOX_BRAND_GUI_ABOUT_HIDPI_PNG);g' \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync -e 's;@VBOX_ABOUT_16PX_PNG@;$(VBOX_BRAND_GUI_ABOUT_16PX_PNG);g' \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync -e 's;@VBOX_VBOX_16PX_PNG@;$(VBOX_BRAND_GUI_VBOX_16PX_PNG);g' \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync -e 's;@VBOX_VBOX_20PX_PNG@;$(VBOX_BRAND_GUI_VBOX_20PX_PNG);g' \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync -e 's;@VBOX_VBOX_32PX_PNG@;$(VBOX_BRAND_GUI_VBOX_32PX_PNG);g' \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync -e 's;@VBOX_VBOX_40PX_PNG@;$(VBOX_BRAND_GUI_VBOX_40PX_PNG);g' \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync -e 's;@VBOX_VBOX_48PX_PNG@;$(VBOX_BRAND_GUI_VBOX_48PX_PNG);g' \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync -e 's;@VBOX_VBOX_64PX_PNG@;$(VBOX_BRAND_GUI_VBOX_64PX_PNG);g' \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync -e 's;@VBOX_CUBE_42PX_PNG@;$(VBOX_BRAND_GUI_CUBE_42PX_PNG);g' \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync -e 's;@VBOX_CUBE_SVG@;$(VBOX_BRAND_GUI_VBOX_SVG);g' \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync --output $@ \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# Precompiled header - non-functional atm.
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncifdef VBOX_WITH_PRECOMPILED_HEADERS
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync VirtualBox_DEFS += VBOX_WITH_PRECOMPILED_HEADERS
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync if1of ($(KBUILD_TARGET),win)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync # VirtualBox_CXXFLAGS += -Winvalid-pch -fpch-preprocess
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync # VirtualBox_INCS <= $(VirtualBoxPch_0_OUTDIR)/src
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync # VirtualBox_INTERMEDIATES += $(VirtualBox_0_OUTDIR)/include/precomp.h.gch
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync VirtualBox_CXXFLAGS += -Winvalid-pch -fpch-preprocess
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync VirtualBox_INCS <= $(VirtualBoxPch_0_OUTDIR)/src
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(foreach x,$(filter-out include/COMWrappers.cpp, $(filter %.cpp, \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(VirtualBox_SOURCES) \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(VirtualBox_SOURCES.$(KBUILD_TARGET)) \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(VirtualBox_SOURCES.$(KBUILD_TYPE)) \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync )),$(eval $(abspath $(PATH_OBJ)/VirtualBox/$(basename $(x)).o): $$$$(VirtualBoxPch_0_OUTDIR)/src/precomp.h.gch))
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync TOOL_VirtualBoxPchLinker = Linker for VirtualBoxPch
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync define TOOL_VirtualBoxPchLinker_LINK_MISCBIN_CMDS
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(APPEND) -t $(out)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync MISCBINS += VirtualBoxPch
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync VirtualBoxPch_EXTENDS = VirtualBox
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync VirtualBoxPch_LDTOOL = VirtualBoxPchLinker
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync VirtualBoxPch_INSTTYPE = none
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync VirtualBoxPch_INTERMEDIATES = $(filter-out %.h.gch, $(VirtualBox_INTERMEDIATES))
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync VirtualBoxPch_NAME = VirtualBoxPch
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync if1of ($(KBUILD_TARGET),win)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync VirtualBoxPch_SOURCES = src/precomp.cpp
4c98b8b05f3783351cf256cc90cd4478fb28b62bvboxsync VirtualBoxPch_CXXFLAGS = $(filter-out -Winvalid-pch -fpch-preprocess, $(VirtualBox_CXXFLAGS))
4c98b8b05f3783351cf256cc90cd4478fb28b62bvboxsync VirtualBoxPch_SOURCES = src/precomp.h
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync VirtualBoxPch_CXXFLAGS = $(filter-out -Winvalid-pch -fpch-preprocess, $(VirtualBox_CXXFLAGS)) -x c++-header
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync VirtualBoxPch_CXXOBJSUFF = .h.gch
4c98b8b05f3783351cf256cc90cd4478fb28b62bvboxsync VirtualBoxPch_SRC_HANDLERS = .h:def_src_handler_cxx
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync VirtualBoxPch_SOURCES.darwin = $(NO_SUCH_VARIABLE)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync VirtualBoxPch_SOURCES.solaris = $(NO_SUCH_VARIABLE)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync VirtualBoxPch_SOURCES.freebsd = $(NO_SUCH_VARIABLE)
4c98b8b05f3783351cf256cc90cd4478fb28b62bvboxsync VirtualBoxPch_SOURCES.linux = $(NO_SUCH_VARIABLE)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync VirtualBoxPch_SOURCES.win = $(NO_SUCH_VARIABLE)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync VirtualBoxPch_QT_MODULES = $(VirtualBox_QT_MODULES) # "bug" - not inherited.
4c98b8b05f3783351cf256cc90cd4478fb28b62bvboxsync VirtualBoxPch_INCS = $(VirtualBox_INCS) # "bug" - missing qtuic and qtmoc
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsyncifeq ($(KBUILD_TARGET),win)
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsync# On Windows we'll have to generate/edit part of the resource file.
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsync# The IDI_ICON1 name is Qt specific.
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsyncsrc/platform/win/VirtualBox.rc_INCS = $(VirtualBox_0_OUTDIR)
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsyncsrc/platform/win/VirtualBox.rc_DEPS = $(VirtualBox_0_OUTDIR)/VirtualBox-icon.rc
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsyncsrc/platform/win/VirtualBox.rc_CLEAN = $(VirtualBox_0_OUTDIR)/VirtualBox-icon.rc
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsync$$(VirtualBox_0_OUTDIR)/VirtualBox-icon.rc: $(MAKEFILE_CURRENT) $(VBOX_WINDOWS_ICON_FILE) | $$(dir $$@)
cb0578a5309e1fc264e5a4acc30543bea075be43vboxsync $(APPEND) -t $@ 'IDI_ICON1 ICON "$(subst /,\\,$(VBOX_WINDOWS_ICON_FILE))"'
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncifeq ($(KBUILD_TARGET),darwin)
4c98b8b05f3783351cf256cc90cd4478fb28b62bvboxsync# Create directories for each approved language or the application
4c98b8b05f3783351cf256cc90cd4478fb28b62bvboxsync# menu won't be translated.
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncVirtualBox.lproj_INST = $(INST_VIRTUALBOX)Contents/Resources/
4c98b8b05f3783351cf256cc90cd4478fb28b62bvboxsyncVirtualBox.lproj_DIRS := $(addsuffix .lproj,$(VBOX_APPROVED_GUI_LANGUAGES))
4c98b8b05f3783351cf256cc90cd4478fb28b62bvboxsync# On OS X (darwin) we need to install icon resources and compulsory bundle contents.
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# The VirtualBoxVM.app helper is for launching VMs (fixes some issues with the dock).
4c98b8b05f3783351cf256cc90cd4478fb28b62bvboxsyncVirtualBox.app_INST = $(INST_VIRTUALBOX)Contents/
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync $(VBOX_MACOSX_ICON_FILE)=>Resources/virtualbox.icns \
4c98b8b05f3783351cf256cc90cd4478fb28b62bvboxsync $(VBOX_BRAND_GUI_VBOX_64PX_PNG)=>Resources/virtualbox.png \
4c98b8b05f3783351cf256cc90cd4478fb28b62bvboxsync $(PATH_ROOT)/src/VBox/Resources/darwin/virtualbox-vbox.icns=>Resources/virtualbox-vbox.icns \
09f4b412099acda62997fd82c8608075c453b3ebvboxsync $(PATH_ROOT)/src/VBox/Resources/darwin/virtualbox-vbox-extpack.icns=>Resources/virtualbox-vbox-extpack.icns \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync $(PATH_ROOT)/src/VBox/Resources/darwin/virtualbox-ovf.icns=>Resources/virtualbox-ovf.icns \
09f4b412099acda62997fd82c8608075c453b3ebvboxsync $(PATH_ROOT)/src/VBox/Resources/darwin/virtualbox-ova.icns=>Resources/virtualbox-ova.icns \
67b8a5a52c43a79ea7e159dbbeec99687fb9cd3bvboxsync $(PATH_ROOT)/src/VBox/Resources/darwin/virtualbox-vdi.icns=>Resources/virtualbox-vdi.icns \
4c98b8b05f3783351cf256cc90cd4478fb28b62bvboxsync $(PATH_ROOT)/src/VBox/Resources/darwin/virtualbox-vmdk.icns=>Resources/virtualbox-vmdk.icns \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(PATH_ROOT)/src/VBox/Resources/darwin/virtualbox-vhd.icns=>Resources/virtualbox-vhd.icns \
4c98b8b05f3783351cf256cc90cd4478fb28b62bvboxsync $(PATH_ROOT)/src/VBox/Resources/darwin/virtualbox-hdd.icns=>Resources/virtualbox-hdd.icns
5295c362853081eaa3944247171746a3aad9a826vboxsync$$(VirtualBox.app_0_OUTDIR)/Info.plist: $(PATH_SUB_CURRENT)/src/platform/darwin/Info.plist $(VBOX_VERSION_MK) | $$(@D)/
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync $(call MSG_GENERATE,VirtualBox.app,$<,$@)
4c98b8b05f3783351cf256cc90cd4478fb28b62bvboxsync $(QUIET)$(RM) -f $@
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync $(QUIET)$(SED) \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync -e 's/@VBOX_VERSION_STRING@/$(VBOX_VERSION_STRING)/g' \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync -e 's/@VBOX_VERSION_MAJOR@/$(VBOX_VERSION_MAJOR)/g' \
4c98b8b05f3783351cf256cc90cd4478fb28b62bvboxsync -e 's/@VBOX_VERSION_MINOR@/$(VBOX_VERSION_MINOR)/g' \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync -e 's/@VBOX_VERSION_BUILD@/$(VBOX_VERSION_BUILD)/g' \
105b1a31b6037dbe14acb8d09e60da540885202bvboxsync -e 's/@VBOX_VENDOR@/$(VBOX_VENDOR)/g' \
105b1a31b6037dbe14acb8d09e60da540885202bvboxsync -e 's/@VBOX_PRODUCT@/$(VBOX_PRODUCT)/g' \
67b8a5a52c43a79ea7e159dbbeec99687fb9cd3bvboxsync -e 's/@VBOX_C_YEAR@/$(VBOX_C_YEAR)/g' \
105b1a31b6037dbe14acb8d09e60da540885202bvboxsyncVirtualBoxVM.app_INST = $(VirtualBox.app_INST)Resources/VirtualBoxVM.app/Contents/
105b1a31b6037dbe14acb8d09e60da540885202bvboxsync $(VirtualBoxVM.app_0_OUTDIR)/VM-Info.plist=>Info.plist \
6b2a50fc09aa4f7ce2082284f082d97a2c738321vboxsync $(foreach mysrc,$(VirtualBox.app_SOURCES),$(if-expr $(pos =>Resources/,$(mysrc)) > 0,$(mysrc),))
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync MacOS=>../../../MacOS/
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync$$(VirtualBoxVM.app_0_OUTDIR)/VM-Info.plist: $(PATH_SUB_CURRENT)/src/platform/darwin/VM-Info.plist $(VBOX_VERSION_MK) | $$(@D)/
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync $(call MSG_GENERATE,VirtualBoxVM.app,$<,$@)
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync $(QUIET)$(RM) -f $@
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync $(QUIET)$(SED) \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync -e 's/@VBOX_VERSION_STRING@/$(VBOX_VERSION_STRING)/g' \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync -e 's/@VBOX_VERSION_MAJOR@/$(VBOX_VERSION_MAJOR)/g' \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync -e 's/@VBOX_VERSION_MINOR@/$(VBOX_VERSION_MINOR)/g' \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync -e 's/@VBOX_VERSION_BUILD@/$(VBOX_VERSION_BUILD)/g' \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync -e 's/@VBOX_VENDOR@/$(VBOX_VENDOR)/g' \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync -e 's/@VBOX_PRODUCT@/$(VBOX_PRODUCT)/g' \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync -e 's/@VBOX_C_YEAR@/$(VBOX_C_YEAR)/g' \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync --output $@ $<
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsyncPROGRAMS += vmstarter
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsyncvmstarter_TEMPLATE = VBOXR3EXE
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsyncvmstarter_SOURCES = src/platform/darwin/vmstarter.mm
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsyncvmstarter_LDFLAGS += -framework AppKit
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsyncvmstarter_INST = $(INST_BIN)vmstarter
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsyncvmstarter.app_INST = $(VirtualBox.app_INST)Resources/vmstarter.app/Contents/
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync $(vmstarter.app_0_OUTDIR)/vmstarter-Info.plist=>Info.plist \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync $(foreach mysrc,$(VirtualBox.app_SOURCES),$(if-expr $(pos =>Resources/,$(mysrc)) > 0,$(mysrc),))
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync MacOS=>../../../MacOS \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync$$(vmstarter.app_0_OUTDIR)/vmstarter-Info.plist: $(PATH_SUB_CURRENT)/src/platform/darwin/vmstarter-Info.plist $(VBOX_VERSION_MK) | $$(@D)/
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync $(call MSG_GENERATE,vmstarter.app,$<,$@)
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync $(QUIET)$(RM) -f $@
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync $(QUIET)$(SED) \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync -e 's/@VBOX_VERSION_STRING@/$(VBOX_VERSION_STRING)/g' \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync -e 's/@VBOX_VERSION_MAJOR@/$(VBOX_VERSION_MAJOR)/g' \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync -e 's/@VBOX_VERSION_MINOR@/$(VBOX_VERSION_MINOR)/g' \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync -e 's/@VBOX_VERSION_BUILD@/$(VBOX_VERSION_BUILD)/g' \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync -e 's/@VBOX_VENDOR@/$(VBOX_VENDOR)/g' \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync -e 's/@VBOX_PRODUCT@/$(VBOX_PRODUCT)/g' \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync -e 's/@VBOX_C_YEAR@/$(VBOX_C_YEAR)/g' \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync --output $@ $<
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsyncendif # darwin
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync# App for testing GL support
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsyncif defined(VBOX_WITH_VIDEOHWACCEL)
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync if1of ($(KBUILD_TARGET), win linux freebsd)
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync LIBRARIES += VBoxOGL2D
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync VBoxOGL2D_TEMPLATE = $(if $(VBOX_WITH_VIDEOHWACCEL),$(if $(VBOX_WITH_HARDENING),VBOXQT4GUI,VBOXQT4GUIEXE),VBOXMAINEXE)
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync VBoxOGL2D_DEFS = QT_NO_DEBUG QT_THREAD_SUPPORT QT_SHARED HAVE_CONFIG_H VBOX_WITH_VIDEOHWACCEL VBOX_GUI_USE_QGL
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync VBoxOGL2D_QT_MODULES += OpenGL
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync VBoxOGL2D_SOURCES = \
6b2a50fc09aa4f7ce2082284f082d97a2c738321vboxsync VBoxOGL2D_INCS = include
73ba84f95f918cc170be38908ad240fbb2f8f354vboxsync# Testcase for the darwin keyboard routines.
5159c4c6485473c77871b515c15b59c3caa60b46vboxsyncifdef VBOX_WITH_TESTCASES
5159c4c6485473c77871b515c15b59c3caa60b46vboxsyncPROGRAMS.darwin += tstDarwinKeyboard
5159c4c6485473c77871b515c15b59c3caa60b46vboxsynctstDarwinKeyboard_NAME = tstDarwinKeyboard
5159c4c6485473c77871b515c15b59c3caa60b46vboxsynctstDarwinKeyboard_TEMPLATE = VBOXR3TSTEXE
5159c4c6485473c77871b515c15b59c3caa60b46vboxsynctstDarwinKeyboard_DEFS.x86 = USE_HID_FOR_MODIFIERS
5159c4c6485473c77871b515c15b59c3caa60b46vboxsynctstDarwinKeyboard_INCS = include
5159c4c6485473c77871b515c15b59c3caa60b46vboxsynctstDarwinKeyboard_SOURCES = \
5159c4c6485473c77871b515c15b59c3caa60b46vboxsynctstDarwinKeyboard_LDFLAGS = -framework IOKit -framework Carbon -framework AppKit
5159c4c6485473c77871b515c15b59c3caa60b46vboxsynctstDarwinKeyboard_LIBS = \
5159c4c6485473c77871b515c15b59c3caa60b46vboxsync $(LIB_RUNTIME)
5159c4c6485473c77871b515c15b59c3caa60b46vboxsync# Unset everything that was loaded from VBoxUI.pro.
5159c4c6485473c77871b515c15b59c3caa60b46vboxsyncTEMPLATE := $(SAVED_TEMPLATE)
5159c4c6485473c77871b515c15b59c3caa60b46vboxsyncSAVED_TEMPLATE :=
5159c4c6485473c77871b515c15b59c3caa60b46vboxsyncTRANSLATIONS :=
6b2a50fc09aa4f7ce2082284f082d97a2c738321vboxsync# Doxygen documentation.
6b2a50fc09aa4f7ce2082284f082d97a2c738321vboxsyncQTGUI_DOXYFILE_OUTPUT = $(PATH_OUT)/docs/qtgui
6b2a50fc09aa4f7ce2082284f082d97a2c738321vboxsyncBLDDIRS += $(QTGUI_DOXYFILE_OUTPUT)
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsyncOTHER_CLEAN += \
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync $(QTGUI_DOXYFILE_OUTPUT)/Doxyfile.qtgui \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(QTGUI_DOXYFILE_OUTPUT)/docs.qtgui
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# Generate the Doxyfile
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync$(QTGUI_DOXYFILE_OUTPUT)/Doxyfile.qtgui: \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(PATH_SUB_CURRENT)/Doxyfile \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(PATH_SUB_CURRENT)/Makefile.kmk \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync | $$(dir $$@)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(RM) -f $@ $@.tmp $@.dep
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(CP) -f $< $@.tmp
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(APPEND) $@.tmp
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(APPEND) $@.tmp "OUTPUT_DIRECTORY = $(QTGUI_DOXYFILE_OUTPUT)"
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(APPEND) $@.tmp "WARN_LOGFILE = $(QTGUI_DOXYFILE_OUTPUT)/errors"
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(APPEND) $@.tmp "INCLUDE_PATH = $(PATH_ROOT)/include ."
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(APPEND) $@.tmp "PREDEFINED += $(ARCH_BITS_DEFS)"
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(APPEND) $@.tmp
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(APPEND) $@.tmp "INPUT = $(dir $<)"
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(APPEND) $@.tmp
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(MV) -f $@.tmp $@
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# Do the actual job.
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync$(QTGUI_DOXYFILE_OUTPUT)/docs.qtgui: $(QTGUI_DOXYFILE_OUTPUT)/Doxyfile.qtgui $$(QTGUI_DOXYFILE_INPUT) | $(QTGUI_DOXYFILE_OUTPUT)/
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(RM) -Rf -- $(QTGUI_DOXYFILE_OUTPUT)/html/
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync doxygen $(QTGUI_DOXYFILE_OUTPUT)/Doxyfile.qtgui
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(APPEND) $(QTGUI_DOXYFILE_OUTPUT)/docs.qtgui
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncif !defined(VBOX_ONLY_DOCS) && defined(VBOX_WITH_ALL_DOXYGEN_TARGETS)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncdocs: $(QTGUI_DOXYFILE_OUTPUT)/docs.qtgui
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# Commit the magic.
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# (note: before custom rules that make usage of generated variables!).
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncinclude $(FILE_KBUILD_SUB_FOOTER)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# Update all known NLS translation (.ts) files in the nls/ subdirectory.
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# NOTE: This target is intended to be run only by the GUI maintainer shortly
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# before a new product release. VirtualBox_xx_YY.ts is a template for new
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# languages and should never be actually translated or installed.
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# Use the checknls target for checking again common mistakes done by the
67b8a5a52c43a79ea7e159dbbeec99687fb9cd3bvboxsync# translators.
105b1a31b6037dbe14acb8d09e60da540885202bvboxsync# For Qt >= 4.6.0 it maybe necessary to add -I $(VBOX_GUI_INC_DIRS) to the
105b1a31b6037dbe14acb8d09e60da540885202bvboxsync# lupdate call
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync#VirtualBox_QT_TRANSLATIONS = nls/VirtualBox_de.ts
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync # Check for missing :/ in image paths
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync grep -i "src=[^:%]" $(filter-out nls/qt_%.ts,$(VirtualBox_QT_TRANSLATIONS))
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsyncupdatenls:: makeallnls nls/VirtualBox_en.ts
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsyncmakeallnls:: \
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync $(foreach header,$(VBOX_GUI_INC_DIRS),$(wildcard $(header)/*.h)) \
3a343ca21a267ec3c54e2317e2ed18fe99b8ebbbvboxsync $(filter-out %.qrc,$(VirtualBox_SOURCES) $(VirtualBox_VBOX_EXTRA_NLS_SOURCES))
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(call MSG_L1,lupdate all languages (nls/*.ts))
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(QUIET)$(TOOL_QT4_LUPDATE) \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(filter-out nls/VirtualBox_en.ts,$(filter-out nls/qt_%.ts,$(VirtualBox_QT_TRANSLATIONS))) \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# Create the English translation file. This is something special cause it will
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync# contain the plural forms only.
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(foreach header,$(VBOX_GUI_INC_DIRS),$(wildcard $(header)/*.h)) \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(filter-out %.qrc,$(VirtualBox_SOURCES) $(VirtualBox_VBOX_EXTRA_NLS_SOURCES))
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(call MSG_L1,lupdate $@)
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(QUIET)$(TOOL_QT4_LUPDATE) \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync $(QUIET)$(SED) -n -i -e \
9055f61bb57d2a625c6434d55beac7565c3b3c0dvboxsync '/<context>/,/<\/context>/!p;/<context>/h;/<name>/H;/<message numerus="yes">/,/<\/message>/H;/<\/context>/{H;x;/<message/p}' \