VirtualBox

source: vbox/trunk/src/VBox/Frontends/VirtualBox/Makefile.kmk@ 94086

Last change on this file since 94086 was 94067, checked in by vboxsync, 3 years ago

FE/Qt: qt6: Just disable VBOX_DARWIN_USE_NATIVE_CONTROLS for arm64 for now, as qt6 doesn't have QMacCocoaViewContainer and the workaround requires some code restructuring (TODO for later). There is no MacExtras module in qt6, so disable that in the Makefile. bugref:9898

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 76.4 KB
Line 
1# $Id: Makefile.kmk 94067 2022-03-02 21:04:24Z vboxsync $
2## @file
3# Makefile for the VirtualBox Qt GUI.
4#
5
6#
7# Copyright (C) 2006-2022 Oracle Corporation
8#
9# This file is part of VirtualBox Open Source Edition (OSE), as
10# available from http://www.virtualbox.org. This file is free software;
11# you can redistribute it and/or modify it under the terms of the GNU
12# General Public License (GPL) as published by the Free Software
13# Foundation, in version 2 as it comes in the "COPYING" file of the
14# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
15# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
16#
17
18SUB_DEPTH = ../../../..
19include $(KBUILD_PATH)/subheader.kmk
20
21
22#
23# Globals.
24#
25VBOX_VIRTUALBOX_SRC := $(PATH_SUB_CURRENT)
26VBOX_VIRTUALBOX_OUT_DIR := $(PATH_TARGET)/VirtualBox/misc
27ifndef VBOX_WITH_QT6
28 USES += qt5
29else
30 USES += qt6
31endif
32
33
34#
35# Targets.
36#
37ifdef VBOX_WITH_HARDENING
38 PROGRAMS += VirtualBox
39 PROGRAMS += VirtualBoxHardenedVM
40 DLLS += VirtualBoxVM
41 DLLS += UICommon
42else
43 PROGRAMS += VirtualBox
44 PROGRAMS += VirtualBoxVM
45 DLLS += UICommon
46endif
47INSTALLS += VirtualBox.nls
48
49
50#
51# Include the language lists.
52#
53include $(PATH_SUB_CURRENT)/nls/ApprovedLanguages.kmk
54
55
56#
57# Hardened VirtualBoxVM.
58#
59ifdef VBOX_WITH_HARDENING
60VirtualBoxHardenedVM_TEMPLATE = VBOXR3HARDENEDEXE
61VirtualBoxHardenedVM_INST.darwin = $(INST_VIRTUALBOX)Contents/Resources/VirtualBoxVM.app/Contents/MacOS/
62VirtualBoxHardenedVM_NAME = VirtualBoxVM
63VirtualBoxHardenedVM_DEFS += $(if $(VBOX_WITH_DRIVERLESS_NEM_FALLBACK),VBOX_WITH_DRIVERLESS_NEM_FALLBACK,)
64VirtualBoxHardenedVM_SOURCES = src/hardenedmain.cpp
65VirtualBoxHardenedVM_LDFLAGS.win = /SUBSYSTEM:$(if-expr "$(KBUILD_TYPE)" != "release",console,windows)
66$(call VBOX_SET_VER_INFO_EXE,VirtualBoxHardenedVM,VirtualBox Virtual Machine,$(VBOX_WINDOWS_ICON_FILE))
67endif
68
69
70#
71# Include Qt project file, we'll use FORMS and TRANSLATIONS in
72# the VirtualBox setup below.
73#
74# This is a bit messy. We boldly ASSUME that LANGUAGE, IMAGES, FORMS
75# and TRANSLATIONS are all unused by kBuild and the host toolchain.
76#
77SAVED_TEMPLATE := $(TEMPLATE)
78include $(PATH_SUB_CURRENT)/VBoxUI.pro
79TEMPLATE := $(SAVED_TEMPLATE)
80SAVED_TEMPLATE :=
81LANGUAGE :=
82IMAGES :=
83# FORMS and TRANSLATIONS are reset further down.
84
85
86#
87# Perform initial new version check on startup.
88# If this setting is disabled the user can still check using the menu.
89#
90ifndef VBOX_OSE
91VBOX_WITH_UPDATE_REQUEST := 1
92endif
93
94
95#
96# VirtualBox Manager Application
97#
98VirtualBox_TEMPLATE := VBOXQTGUIEXE
99VirtualBox_NAME = VirtualBox
100VirtualBox_DEPS = $(UICommon_0_OUTDIR)/include/COMWrappers
101VirtualBox_SDKS.win = ReorderCompilerIncs $(VBOX_WINPSDK) $(VBOX_WINDDK)
102VirtualBox_DEFS =
103ifdef VBOX_WITH_QT6 # moc is too stupid to parse #if QT_VERSION > xxx, '#ifdef VBOX_IS_QT6_OR_LATER' works though (no spaces).
104 VirtualBox_DEFS += VBOX_IS_QT6_OR_LATER
105endif
106VirtualBox_DEFS.debug = VBOX_CHECK_STATE # QT_FATAL_ASSERT
107VirtualBox_DEFS.linux = VBOX_WS_X11 QT_NO_DEPRECATED_WARNINGS
108VirtualBox_DEFS.solaris = VBOX_WS_X11
109VirtualBox_DEFS.freebsd = VBOX_WS_X11
110VirtualBox_DEFS.darwin = VBOX_WS_MAC
111VirtualBox_DEFS.win = VBOX_WS_WIN
112VirtualBox_DEFS.linux += VBOX_WITH_MASKED_SEAMLESS VBOX_WITH_TRANSLUCENT_SEAMLESS
113VirtualBox_DEFS.solaris += VBOX_WITH_MASKED_SEAMLESS VBOX_WITH_TRANSLUCENT_SEAMLESS
114VirtualBox_DEFS.freebsd += VBOX_WITH_MASKED_SEAMLESS VBOX_WITH_TRANSLUCENT_SEAMLESS
115VirtualBox_DEFS.darwin += VBOX_WITH_TRANSLUCENT_SEAMLESS # VBOX_WITH_MASKED_SEAMLESS
116VirtualBox_DEFS.win += VBOX_WITH_MASKED_SEAMLESS # VBOX_WITH_TRANSLUCENT_SEAMLESS
117ifn1of ($(KBUILD_TARGET_ARCH), arm64) # qt6: The UICocoaSpecialControls needs restructuring because QMacCocoaViewContainer is gone. Too lazy for now.
118 VirtualBox_DEFS.darwin += VBOX_DARWIN_USE_NATIVE_CONTROLS
119endif
120VirtualBox_DEFS.win += UNICODE QT_DLL
121VirtualBox_DEFS += \
122 $(if $(VBOX_WITH_ADDITIONS_AUTOUPDATE_UI),VBOX_WITH_ADDITIONS_AUTOUPDATE_UI) \
123 $(if $(VBOX_WITH_UPDATE_REQUEST),VBOX_WITH_UPDATE_REQUEST) \
124 $(if $(VBOX_WITH_NETFLT)$(eq $(KBUILD_TARGET),freebsd),VBOX_WITH_NETFLT) \
125 $(if $(VBOX_WITH_VDE),VBOX_WITH_VDE) \
126 $(if $(VBOX_WITH_HARDENING),VBOXR3_HARDENED_DLL) \
127 $(if $(VBOX_WITH_DRAG_AND_DROP),VBOX_WITH_DRAG_AND_DROP) \
128 $(if $(VBOX_WITH_DRAG_AND_DROP_GH),VBOX_WITH_DRAG_AND_DROP_GH) \
129 $(if $(VBOX_WITH_DRAG_AND_DROP_PROMISES),VBOX_WITH_DRAG_AND_DROP_PROMISES) \
130 $(if $(VBOX_WITH_3D_ACCELERATION),VBOX_WITH_3D_ACCELERATION) \
131 $(if $(VBOX_GUI_WITH_PIDFILE),VBOX_GUI_WITH_PIDFILE) \
132 $(if $(VBOX_GUI_WITH_KEYS_RESET_HANDLER),VBOX_GUI_WITH_KEYS_RESET_HANDLER) \
133 $(if $(VBOX_GUI_WITH_CUSTOMIZATIONS1),VBOX_GUI_WITH_CUSTOMIZATIONS1) \
134 $(if $(VBOX_WITH_RAW_MODE),VBOX_WITH_RAW_MODE) \
135 $(if $(VBOX_WITH_SDS),VBOX_WITH_SDS,)
136ifdef VBOX_WITH_DEBUGGER_GUI
137 VirtualBox_DEFS += VBOX_WITH_DEBUGGER_GUI
138 if "$(KBUILD_TYPE)" != "release"
139 VirtualBox_DEFS += VBOX_WITH_DEBUGGER_GUI_MENU
140 endif
141endif
142ifdef VBOX_WITH_LIBCURL
143 VirtualBox_DEFS += VBOX_GUI_WITH_NETWORK_MANAGER
144 VBOX_GUI_WITH_NETWORK_MANAGER := 1
145endif
146if "$(KBUILD_TYPE)" != "release" || defined(VBOX_GUI_WITH_EXTRADATA_MANAGER_UI)
147 VirtualBox_DEFS += VBOX_GUI_WITH_EXTRADATA_MANAGER_UI
148endif
149ifndef VBOX_WITHOUT_LESS_VIRTUALBOX_INCLUDING
150 VirtualBox_DEFS += VBOX_WITH_LESS_VIRTUALBOX_INCLUDING
151endif
152
153
154#
155# VirtualBox Virtual Machine Application
156#
157VirtualBoxVM_TEMPLATE := $(if $(VBOX_WITH_HARDENING),VBOXQTGUI,VBOXQTGUIEXE)
158VirtualBoxVM_NAME = VirtualBoxVM
159ifndef VBOX_WITH_HARDENING
160VirtualBoxVM_INST.darwin = $(INST_VIRTUALBOX)Contents/Resources/VirtualBoxVM.app/Contents/MacOS/
161endif
162VirtualBoxVM_DEPS = $(UICommon_0_OUTDIR)/include/COMWrappers
163VirtualBoxVM_SDKS.win = ReorderCompilerIncs $(VBOX_WINPSDK) $(VBOX_WINDDK)
164VirtualBoxVM_DEFS = VBOX_RUNTIME_UI
165ifdef VBOX_WITH_QT6 # moc is too stupid to parse #if QT_VERSION > xxx, '#ifdef VBOX_IS_QT6_OR_LATER' works though (no spaces).
166 VirtualBoxVM_DEFS += VBOX_IS_QT6_OR_LATER
167endif
168VirtualBoxVM_DEFS.debug = VBOX_CHECK_STATE # QT_FATAL_ASSERT
169VirtualBoxVM_DEFS.linux = VBOX_WS_X11 QT_NO_DEPRECATED_WARNINGS
170VirtualBoxVM_DEFS.solaris = VBOX_WS_X11
171VirtualBoxVM_DEFS.freebsd = VBOX_WS_X11
172VirtualBoxVM_DEFS.darwin = VBOX_WS_MAC
173VirtualBoxVM_DEFS.win = VBOX_WS_WIN
174VirtualBoxVM_DEFS.linux += VBOX_WITH_MASKED_SEAMLESS VBOX_WITH_TRANSLUCENT_SEAMLESS
175VirtualBoxVM_DEFS.solaris += VBOX_WITH_MASKED_SEAMLESS VBOX_WITH_TRANSLUCENT_SEAMLESS
176VirtualBoxVM_DEFS.freebsd += VBOX_WITH_MASKED_SEAMLESS VBOX_WITH_TRANSLUCENT_SEAMLESS
177VirtualBoxVM_DEFS.darwin += VBOX_WITH_TRANSLUCENT_SEAMLESS # VBOX_WITH_MASKED_SEAMLESS
178VirtualBoxVM_DEFS.win += VBOX_WITH_MASKED_SEAMLESS # VBOX_WITH_TRANSLUCENT_SEAMLESS
179ifdef VBOX_WITH_VMNET
180 VirtualBoxVM_DEFS.darwin += VBOX_WITH_VMNET
181endif
182ifn1of ($(KBUILD_TARGET_ARCH), arm64) # qt6: The UICocoaSpecialControls needs restructuring because QMacCocoaViewContainer is gone. Too lazy for now.
183 VirtualBoxVM_DEFS.darwin += VBOX_DARWIN_USE_NATIVE_CONTROLS
184endif
185VirtualBoxVM_DEFS.win += UNICODE QT_DLL
186VirtualBoxVM_DEFS += \
187 $(if $(VBOX_WITH_ADDITIONS_AUTOUPDATE_UI),VBOX_WITH_ADDITIONS_AUTOUPDATE_UI) \
188 $(if $(VBOX_WITH_UPDATE_REQUEST),VBOX_WITH_UPDATE_REQUEST) \
189 $(if $(VBOX_WITH_NETFLT)$(eq $(KBUILD_TARGET),freebsd),VBOX_WITH_NETFLT) \
190 $(if $(VBOX_WITH_VDE),VBOX_WITH_VDE) \
191 $(if $(VBOX_WITH_HARDENING),VBOXR3_HARDENED_DLL) \
192 $(if $(VBOX_WITH_DRAG_AND_DROP),VBOX_WITH_DRAG_AND_DROP) \
193 $(if $(VBOX_WITH_DRAG_AND_DROP_GH),VBOX_WITH_DRAG_AND_DROP_GH) \
194 $(if $(VBOX_WITH_DRAG_AND_DROP_PROMISES),VBOX_WITH_DRAG_AND_DROP_PROMISES) \
195 $(if $(VBOX_WITH_3D_ACCELERATION),VBOX_WITH_3D_ACCELERATION) \
196 $(if $(VBOX_GUI_WITH_PIDFILE),VBOX_GUI_WITH_PIDFILE) \
197 $(if $(VBOX_GUI_WITH_KEYS_RESET_HANDLER),VBOX_GUI_WITH_KEYS_RESET_HANDLER) \
198 $(if $(VBOX_GUI_WITH_CUSTOMIZATIONS1),VBOX_GUI_WITH_CUSTOMIZATIONS1) \
199 $(if $(VBOX_WITH_RAW_MODE),VBOX_WITH_RAW_MODE) \
200 $(if $(VBOX_WITH_SDS),VBOX_WITH_SDS,)
201ifdef VBOX_WITH_DEBUGGER_GUI
202 VirtualBoxVM_DEFS += VBOX_WITH_DEBUGGER_GUI
203 if "$(KBUILD_TYPE)" != "release"
204 VirtualBoxVM_DEFS += VBOX_WITH_DEBUGGER_GUI_MENU
205 endif
206endif
207ifdef VBOX_GUI_WITH_QTGLFRAMEBUFFER
208 VirtualBoxVM_DEFS += VBOX_GUI_WITH_QTGLFRAMEBUFFER
209endif
210ifdef VBOX_WITH_LIBCURL
211 VirtualBoxVM_DEFS += VBOX_GUI_WITH_NETWORK_MANAGER
212 VBOX_GUI_WITH_NETWORK_MANAGER := 1
213endif
214if "$(KBUILD_TYPE)" != "release" || defined(VBOX_GUI_WITH_EXTRADATA_MANAGER_UI)
215 VirtualBoxVM_DEFS += VBOX_GUI_WITH_EXTRADATA_MANAGER_UI
216endif
217ifndef VBOX_WITHOUT_LESS_VIRTUALBOX_INCLUDING
218 VirtualBoxVM_DEFS += VBOX_WITH_LESS_VIRTUALBOX_INCLUDING
219endif
220
221
222#
223# VirtualBox - GUI Global Shared Library.
224#
225UICommon_TEMPLATE = VBOXQTGUI
226UICommon_NAME = UICommon
227UICommon_DEFS = VBOX_GUI_LIBRARY
228ifdef VBOX_WITH_QT6 # moc is too stupid to parse #if QT_VERSION > xxx, '#ifdef VBOX_IS_QT6_OR_LATER' works though (no spaces).
229 UICommon_DEFS += VBOX_IS_QT6_OR_LATER
230endif
231UICommon_DEFS.darwin = VBOX_WS_MAC
232UICommon_DEFS.freebsd = VBOX_WS_X11
233UICommon_DEFS.linux = VBOX_WS_X11 QT_NO_DEPRECATED_WARNINGS
234UICommon_DEFS.solaris = VBOX_WS_X11
235UICommon_DEFS.win = VBOX_WS_WIN
236UICommon_DEFS.debug = VBOX_CHECK_STATE # QT_FATAL_ASSERT
237ifdef VBOX_WITH_VMNET
238 UICommon_DEFS.darwin += VBOX_WITH_VMNET
239endif
240ifn1of ($(KBUILD_TARGET_ARCH), arm64) # qt6: The UICocoaSpecialControls needs restructuring because QMacCocoaViewContainer is gone. Too lazy for now.
241 UICommon_DEFS.darwin += VBOX_DARWIN_USE_NATIVE_CONTROLS
242endif
243#UICommon_DEFS.win += UNICODE QT_DLL
244UICommon_DEFS += \
245 $(if $(VBOX_WITH_UPDATE_REQUEST),VBOX_WITH_UPDATE_REQUEST) \
246 $(if $(VBOX_WITH_CLOUD_NET),VBOX_WITH_CLOUD_NET) \
247 $(if $(VBOX_WITH_NETFLT)$(eq $(KBUILD_TARGET),freebsd),VBOX_WITH_NETFLT) \
248 $(if $(VBOX_WITH_VDE),VBOX_WITH_VDE) \
249 $(if $(VBOX_WITH_KCHMVIEWER),VBOX_WITH_KCHMVIEWER) \
250 $(if $(VBOX_WITH_HARDENING),VBOXR3_HARDENED_DLL) \
251 $(if $(VBOX_WITH_DRAG_AND_DROP),VBOX_WITH_DRAG_AND_DROP) \
252 $(if $(VBOX_WITH_3D_ACCELERATION),VBOX_WITH_3D_ACCELERATION) \
253 $(if $(VBOX_GUI_WITH_PIDFILE),VBOX_GUI_WITH_PIDFILE) \
254 $(if $(VBOX_GUI_WITH_CUSTOMIZATIONS1),VBOX_GUI_WITH_CUSTOMIZATIONS1) \
255 $(if $(VBOX_WITH_RAW_MODE),VBOX_WITH_RAW_MODE) \
256 $(if $(VBOX_WITH_QHELP_VIEWER),VBOX_WITH_QHELP_VIEWER) \
257 $(if $(VBOX_WITH_SDS),VBOX_WITH_SDS,)
258ifdef VBOX_WITH_DEBUGGER_GUI
259 UICommon_DEFS += VBOX_WITH_DEBUGGER_GUI
260 if "$(KBUILD_TYPE)" != "release"
261 UICommon_DEFS += VBOX_WITH_DEBUGGER_GUI_MENU
262 endif
263endif
264ifdef VBOX_WITH_LIBCURL
265 UICommon_DEFS += VBOX_GUI_WITH_NETWORK_MANAGER
266 VBOX_GUI_WITH_NETWORK_MANAGER := 1
267endif
268if "$(KBUILD_TYPE)" != "release" || defined(VBOX_GUI_WITH_EXTRADATA_MANAGER_UI)
269 UICommon_DEFS += VBOX_GUI_WITH_EXTRADATA_MANAGER_UI
270endif
271ifndef VBOX_WITHOUT_LESS_VIRTUALBOX_INCLUDING
272 UICommon_DEFS += VBOX_WITH_LESS_VIRTUALBOX_INCLUDING
273endif
274
275
276#
277# Include folders.
278#
279VBOX_GUI_INC_DIRS = \
280 ./src \
281 ./src/cloud/consolemanager \
282 ./src/cloud/machinesettings \
283 ./src/cloud/profilemanager \
284 ./src/converter \
285 ./src/extensionpackmanager \
286 ./src/extensions \
287 ./src/extensions/graphics \
288 ./src/extradata \
289 ./src/globals \
290 ./src/helpbrowser \
291 ./src/logviewer \
292 ./src/medium \
293 ./src/medium/viso \
294 ./src/networkmanager \
295 ./src/notificationcenter \
296 ./src/objects \
297 ./src/platform \
298 ./src/platform/darwin \
299 ./src/platform/win \
300 ./src/platform/x11 \
301 ./src/runtime \
302 ./src/runtime/fullscreen \
303 ./src/runtime/normal \
304 ./src/runtime/scale \
305 ./src/runtime/seamless \
306 ./src/runtime/information \
307 ./src/guestctrl \
308 ./src/settings \
309 ./src/settings/editors \
310 ./src/settings/global \
311 ./src/settings/machine \
312 ./src/softkeyboard \
313 ./src/snapshots \
314 ./src/widgets \
315 ./src/widgets/graphics \
316 ./src/wizards \
317 ./src/wizards/addcloudvm \
318 ./src/wizards/newcloudvm \
319 ./src/wizards/newvm \
320 ./src/wizards/newvd \
321 ./src/wizards/clonevm \
322 ./src/wizards/clonevd \
323 ./src/wizards/exportappliance \
324 ./src/wizards/importappliance \
325 ./src/wizards/editors
326
327VBOX_GUI_INC_DIRS += \
328 ./src/manager \
329 ./src/manager/chooser \
330 ./src/manager/details \
331 ./src/manager/tools \
332 ./src/activity \
333 ./src/activity/overview \
334 ./src/activity/vmactivity
335
336ifdef VBOX_GUI_WITH_NETWORK_MANAGER
337VBOX_GUI_INC_DIRS += \
338 ./src/networking
339endif
340
341#
342# VirtualBox Manager Application
343# Include folders.
344#
345VirtualBox_INCS = \
346 $(VBOX_GUI_INC_DIRS) \
347 $(UICommon_0_OUTDIR)/include \
348 $(VBOX_GRAPHICS_INCS)
349
350#
351# VirtualBox Virtual Machine Application
352# Include folders.
353#
354VirtualBoxVM_INCS = \
355 $(VBOX_GUI_INC_DIRS) \
356 $(UICommon_0_OUTDIR)/include \
357 $(VBOX_GRAPHICS_INCS)
358
359#
360# VirtualBox - GUI Global Shared Library.
361# Include folders.
362#
363UICommon_INCS = \
364 $(VBOX_GUI_INC_DIRS) \
365 $(UICommon_0_OUTDIR)/include
366
367
368#
369# VirtualBox Manager Application
370# Compiling/linking flags.
371#
372ifneq ($(KBUILD_TARGET),win)
373VirtualBox_CXXFLAGS += -Wno-switch
374endif
375
376VirtualBox_CXXFLAGS.linux += -Wno-class-memaccess
377
378## @todo we're using a number of deprecated APIs, please fix and remove these!
379VirtualBox_CXXFLAGS.darwin += -Wno-error=deprecated-declarations
380VirtualBox_OBJCFLAGS.darwin += -Wno-error=deprecated-declarations
381VirtualBox_OBJCXXFLAGS.darwin += -Wno-error=deprecated-declarations
382
383ifeq ($(KBUILD_TYPE),release)
384 VirtualBox_LDFLAGS.win += /SUBSYSTEM:windows
385else
386 VirtualBox_LDFLAGS.linux += -rdynamic # for backtrace_symbols()
387 VirtualBox_LDFLAGS.win += /SUBSYSTEM:console
388endif
389
390VirtualBox_LDFLAGS.darwin = \
391 $(if $(VBOX_WITH_HARDENING),,-rpath @executable_path/../MacOS -rpath @executable_path/../Frameworks) \
392 -framework AppKit -framework Carbon -framework IOKit
393
394ifdef VBOX_GUI_WITH_QTGLFRAMEBUFFER
395 VirtualBox_LDFLAGS.darwin += -framework OpenGL
396endif
397
398
399#
400# VirtualBox Virtual Machine Application
401# Compiling/linking flags.
402#
403ifneq ($(KBUILD_TARGET),win)
404 VirtualBoxVM_CXXFLAGS += -Wno-switch
405endif
406
407VirtualBoxVM_CXXFLAGS.linux += -Wno-class-memaccess
408
409## @todo we're using a number of deprecated APIs, please fix and remove these!
410VirtualBoxVM_CXXFLAGS.darwin += -Wno-error=deprecated-declarations
411VirtualBoxVM_OBJCFLAGS.darwin += -Wno-error=deprecated-declarations
412VirtualBoxVM_OBJCXXFLAGS.darwin += -Wno-error=deprecated-declarations
413
414ifeq ($(KBUILD_TYPE),release)
415 VirtualBoxVM_LDFLAGS.win += /SUBSYSTEM:windows
416else
417 VirtualBoxVM_LDFLAGS.linux += -rdynamic # for backtrace_symbols()
418 VirtualBoxVM_LDFLAGS.win += /SUBSYSTEM:console
419endif
420
421VirtualBoxVM_LDFLAGS.darwin = \
422 $(if $(VBOX_WITH_HARDENING)\
423 ,-install_name $(VBOX_DYLD_EXECUTABLE_PATH)/VirtualBoxVM.dylib \
424 ,-rpath @executable_path/../../../../MacOS \
425 -rpath @executable_path/../../../../Frameworks) \
426 -framework AppKit -framework Carbon -framework IOKit \
427
428ifdef VBOX_GUI_WITH_QTGLFRAMEBUFFER
429 VirtualBoxVM_LDFLAGS.darwin += -framework OpenGL
430endif
431
432
433#
434# VirtualBox - GUI Global Shared Library.
435# Compiling/linking flags.
436#
437
438UICommon_CXXFLAGS.linux += -Wno-class-memaccess
439UICommon_CXXFLAGS.win += -wd4868 # prevents std::stable_sort from using functor/function comparator
440UICommon_CXXFLAGS.win += -bigobj # COMWrappers.cpp fails with too many sections on win64-dep otherwise.
441
442## @todo we're using a number of deprecated APIs, please fix and remove these!
443UICommon_CXXFLAGS.darwin += -Wno-error=deprecated-declarations
444UICommon_OBJCFLAGS.darwin += -Wno-error=deprecated-declarations
445UICommon_OBJCXXFLAGS.darwin += -Wno-error=deprecated-declarations
446
447UICommon_LDFLAGS.darwin = \
448 -install_name "$(VBOX_DYLD_EXECUTABLE_PATH)/UICommon.dylib" \
449 -framework AppKit \
450 -framework Carbon \
451 -framework IOKit
452
453ifdef VBOX_GUI_WITH_QTGLFRAMEBUFFER
454 UICommon_LDFLAGS.darwin += -framework OpenGL
455endif
456
457#
458# VirtualBox Manager Application
459# Libraries.
460#
461
462# Library required for the hdd backend enumeration:
463VirtualBox_LIBS = $(LIB_DDU)
464
465# Runtime library loader required on X11 hosts:
466if1of ($(KBUILD_TARGET), linux netbsd openbsd)
467 VirtualBox_LIBS += dl
468endif
469
470# Xinerama library required for multi-monitor support:
471VirtualBox_LIBS.linux += Xinerama
472VirtualBox_LIBS.solaris += Xinerama
473VirtualBox_LIBS.freebsd += Xinerama
474
475# XCB library required for direct XCB native code support:
476VirtualBox_LIBS.linux += xcb
477VirtualBox_LIBS.solaris += xcb
478VirtualBox_LIBS.freebsd += xcb
479
480# Various Windows hosts libraries:
481VirtualBox_LIBS.win = \
482 $(PATH_SDK_$(VBOX_WINPSDK)_LIB)/Htmlhelp.Lib
483ifdef VBOX_WITH_NEW_WINDOWS_SDK
484 VirtualBox_LIBS.win += \
485 $(PATH_SDK_$(VBOX_WINPSDK)_LIB)/ddraw.lib \
486 $(PATH_SDK_$(VBOX_WINPSDK)_LIB)/dxguid.lib
487else
488 VirtualBox_LIBS.win += \
489 $(PATH_SDK_$(VBOX_WINDDK)_LIB)/ddraw.lib \
490 $(PATH_SDK_$(VBOX_WINDDK)_LIB)/dxguid.lib
491endif
492
493# VBox keyboard shared library for X11 hosts:
494if1of ($(KBUILD_TARGET), freebsd linux netbsd openbsd solaris)
495 VirtualBox_LIBS += $(PATH_STAGE_DLL)/VBoxKeyboard$(VBOX_SUFF_DLL)
496endif
497
498# These are 2D Video Acceleration and 3D Acceleration related libs:
499ifdef VBOX_GUI_WITH_QTGLFRAMEBUFFER
500 VirtualBox_LIBS.win += $(PATH_SDK_$(VBOX_WINPSDK)_LIB)/Opengl32.lib
501 VirtualBox_LIBS.solaris += GL
502 VirtualBox_LIBS.linux += GL
503 VirtualBox_LIBS.freebsd += GL
504endif
505ifdef VBOX_WITH_3D_ACCELERATION
506 VirtualBox_LIBS += $(PATH_STAGE_LIB)/VBoxOGLTest$(VBOX_SUFF_LIB)
507endif
508
509# This one is global shared GUI library:
510ifeq ($(KBUILD_TARGET),win)
511 VirtualBox_LIBS += $(PATH_STAGE_LIB)/UICommon$(VBOX_SUFF_LIB)
512else
513 VirtualBox_LIBS += $(PATH_STAGE_DLL)/UICommon$(VBOX_SUFF_DLL)
514endif
515
516
517#
518# VirtualBox Virtual Machine Application
519# Libraries.
520#
521
522# Library required for the hdd backend enumeration:
523VirtualBoxVM_LIBS = $(LIB_DDU)
524
525# Runtime library loader required on X11 hosts:
526if1of ($(KBUILD_TARGET), linux netbsd openbsd)
527 VirtualBoxVM_LIBS += dl
528endif
529
530# Xinerama library required for multi-monitor support:
531VirtualBoxVM_LIBS.linux += Xinerama
532VirtualBoxVM_LIBS.solaris += Xinerama
533VirtualBoxVM_LIBS.freebsd += Xinerama
534
535# XCB library required for direct XCB native code support:
536VirtualBoxVM_LIBS.linux += xcb
537VirtualBoxVM_LIBS.solaris += xcb
538VirtualBoxVM_LIBS.freebsd += xcb
539
540# Various Windows hosts libraries:
541VirtualBoxVM_LIBS.win = \
542 $(PATH_SDK_$(VBOX_WINPSDK)_LIB)/Htmlhelp.Lib
543ifdef VBOX_WITH_NEW_WINDOWS_SDK
544 VirtualBoxVM_LIBS.win += \
545 $(PATH_SDK_$(VBOX_WINPSDK)_LIB)/ddraw.lib \
546 $(PATH_SDK_$(VBOX_WINPSDK)_LIB)/dxguid.lib
547else
548 VirtualBoxVM_LIBS.win += \
549 $(PATH_SDK_$(VBOX_WINDDK)_LIB)/ddraw.lib \
550 $(PATH_SDK_$(VBOX_WINDDK)_LIB)/dxguid.lib
551endif
552
553# VBox keyboard shared library for X11 hosts:
554if1of ($(KBUILD_TARGET), freebsd linux netbsd openbsd solaris)
555 VirtualBoxVM_LIBS += $(PATH_STAGE_DLL)/VBoxKeyboard$(VBOX_SUFF_DLL)
556endif
557
558# These are 2D Video Acceleration and 3D Acceleration related libs:
559ifdef VBOX_GUI_WITH_QTGLFRAMEBUFFER
560 VirtualBoxVM_LIBS.win += $(PATH_SDK_$(VBOX_WINPSDK)_LIB)/Opengl32.lib
561 VirtualBoxVM_LIBS.solaris += GL
562 VirtualBoxVM_LIBS.linux += GL
563 VirtualBoxVM_LIBS.freebsd += GL
564endif
565ifdef VBOX_WITH_3D_ACCELERATION
566 VirtualBoxVM_LIBS += $(PATH_STAGE_LIB)/VBoxOGLTest$(VBOX_SUFF_LIB)
567endif
568
569ifeq ($(KBUILD_TARGET),win)
570 VirtualBoxVM_LIBS += $(PATH_STAGE_LIB)/UICommon$(VBOX_SUFF_LIB)
571else
572 VirtualBoxVM_LIBS += $(PATH_STAGE_DLL)/UICommon$(VBOX_SUFF_DLL)
573endif
574
575
576#
577# VirtualBox - GUI Global Shared Library.
578# Libraries.
579#
580
581# Xinerama library required for multi-monitor support:
582UICommon_LIBS.linux += Xinerama
583UICommon_LIBS.solaris += Xinerama
584UICommon_LIBS.freebsd += Xinerama
585
586# Various Windows hosts libraries:
587UICommon_LIBS.win = \
588 $(PATH_SDK_$(VBOX_WINPSDK)_LIB)/Htmlhelp.Lib
589
590# VBox keyboard shared library for X11 hosts:
591if1of ($(KBUILD_TARGET), freebsd linux netbsd openbsd solaris)
592 UICommon_LIBS += $(PATH_STAGE_DLL)/VBoxKeyboard$(VBOX_SUFF_DLL)
593endif
594
595# These are 2D Video Acceleration and 3D Acceleration related libs:
596ifdef VBOX_GUI_WITH_QTGLFRAMEBUFFER
597 UICommon_LIBS.win += $(PATH_SDK_$(VBOX_WINPSDK)_LIB)/Opengl32.lib
598 UICommon_LIBS.solaris += GL
599 UICommon_LIBS.linux += GL
600 UICommon_LIBS.freebsd += GL
601endif
602ifdef VBOX_WITH_3D_ACCELERATION
603 UICommon_LIBS += $(PATH_STAGE_LIB)/VBoxOGLTest$(VBOX_SUFF_LIB)
604endif
605
606
607#
608# VirtualBox Manager Application
609# Headers containing definitions of classes that use the Q_OBJECT macro.
610#
611VirtualBox_QT_MOCHDRS = \
612 src/cloud/consolemanager/UICloudConsoleDetailsWidget.h \
613 src/cloud/consolemanager/UICloudConsoleManager.h \
614 src/cloud/machinesettings/UICloudMachineSettingsDialog.h \
615 src/cloud/machinesettings/UICloudMachineSettingsDialogPage.h \
616 src/cloud/profilemanager/UICloudProfileDetailsWidget.h \
617 src/cloud/profilemanager/UICloudProfileManager.h \
618 src/extensionpackmanager/UIExtensionPackManager.h \
619 src/globals/UIStarter.h \
620 src/manager/UIErrorPane.h \
621 src/manager/UIProgressTaskReadCloudMachineList.h \
622 src/manager/UITaskCloudGetSettingsForm.h \
623 src/manager/UIToolPaneGlobal.h \
624 src/manager/UIToolPaneMachine.h \
625 src/manager/UIVirtualBoxManager.h \
626 src/manager/UIVirtualBoxManagerWidget.h \
627 src/manager/UIVirtualMachineItem.h \
628 src/manager/UIVirtualMachineItemCloud.h \
629 src/manager/UIVirtualMachineItemLocal.h \
630 src/manager/UIWelcomePane.h \
631 src/manager/chooser/UIChooser.h \
632 src/manager/chooser/UIChooserAbstractModel.h \
633 src/manager/chooser/UIChooserModel.h \
634 src/manager/chooser/UIChooserView.h \
635 src/manager/chooser/UIChooserHandlerMouse.h \
636 src/manager/chooser/UIChooserHandlerKeyboard.h \
637 src/manager/chooser/UIChooserItem.h \
638 src/manager/chooser/UIChooserItemGroup.h \
639 src/manager/chooser/UIChooserItemGlobal.h \
640 src/manager/chooser/UIChooserItemMachine.h \
641 src/manager/chooser/UIChooserNode.h \
642 src/manager/chooser/UIChooserNodeGroup.h \
643 src/manager/chooser/UIChooserNodeGlobal.h \
644 src/manager/chooser/UIChooserNodeMachine.h \
645 src/manager/chooser/UIChooserSearchWidget.h \
646 src/manager/details/UIDetails.h \
647 src/manager/details/UIDetailsContextMenu.h \
648 src/manager/details/UIDetailsModel.h \
649 src/manager/details/UIDetailsView.h \
650 src/manager/details/UIDetailsItem.h \
651 src/manager/details/UIDetailsGroup.h \
652 src/manager/details/UIDetailsSet.h \
653 src/manager/details/UIDetailsElement.h \
654 src/manager/details/UIDetailsElements.h \
655 src/manager/details/UIMachinePreview.h \
656 src/manager/tools/UITools.h \
657 src/manager/tools/UIToolsModel.h \
658 src/manager/tools/UIToolsView.h \
659 src/manager/tools/UIToolsHandlerMouse.h \
660 src/manager/tools/UIToolsHandlerKeyboard.h \
661 src/manager/tools/UIToolsItem.h \
662 src/medium/UIMediumDetailsWidget.h \
663 src/medium/UIMediumManager.h \
664 src/activity/overview/UIVMActivityOverviewWidget.h \
665 src/activity/overview/UIVMActivityToolWidget.h \
666 src/networkmanager/UIDetailsWidgetCloudNetwork.h \
667 src/networkmanager/UIDetailsWidgetHostNetwork.h \
668 src/networkmanager/UIDetailsWidgetNATNetwork.h \
669 src/networkmanager/UINetworkManager.h \
670 src/snapshots/UISnapshotDetailsWidget.h \
671 src/snapshots/UISnapshotPane.h \
672 src/widgets/UIApplianceEditorWidget.h \
673 src/widgets/UIApplianceExportEditorWidget.h \
674 src/widgets/UIApplianceImportEditorWidget.h \
675 src/widgets/UIEmptyFilePathSelector.h \
676 src/widgets/UIFormEditorWidget.h \
677 src/widgets/UIGuestOSTypeSelectionButton.h \
678 src/widgets/UILineTextEdit.h \
679 src/widgets/UISlidingAnimation.h \
680 src/widgets/UISlidingWidget.h \
681 src/widgets/UITabBar.h \
682 src/widgets/UIMenuToolBar.h \
683 src/widgets/graphics/UIGraphicsButton.h \
684 src/widgets/graphics/UIGraphicsRotatorButton.h \
685 src/widgets/graphics/UIGraphicsScrollArea.h \
686 src/widgets/graphics/UIGraphicsScrollBar.h \
687 src/widgets/graphics/UIGraphicsZoomButton.h \
688 src/widgets/graphics/UIGraphicsToolBar.h \
689 src/widgets/graphics/UIGraphicsTextPane.h \
690 src/wizards/addcloudvm/UIWizardAddCloudVM.h \
691 src/wizards/addcloudvm/UIWizardAddCloudVMPageExpert.h \
692 src/wizards/addcloudvm/UIWizardAddCloudVMPageSource.h \
693 src/wizards/editors/UIHostnameDomainNameEditor.h \
694 src/wizards/editors/UIWizardCloneVMEditors.h \
695 src/wizards/editors/UIWizardNewVMEditors.h \
696 src/wizards/newcloudvm/UIWizardNewCloudVM.h \
697 src/wizards/newcloudvm/UIWizardNewCloudVMPageExpert.h \
698 src/wizards/newcloudvm/UIWizardNewCloudVMPageProperties.h \
699 src/wizards/newcloudvm/UIWizardNewCloudVMPageSource.h \
700 src/wizards/newvm/UIWizardNewVM.h \
701 src/wizards/newvm/UIWizardNewVMNameOSTypePage.h \
702 src/wizards/newvm/UIWizardNewVMUnattendedPage.h \
703 src/wizards/newvm/UIWizardNewVMHardwarePage.h \
704 src/wizards/newvm/UIWizardNewVMDiskPage.h \
705 src/wizards/newvm/UIWizardNewVMExpertPage.h \
706 src/wizards/newvm/UIWizardNewVMSummaryPage.h \
707 src/wizards/clonevm/UIWizardCloneVM.h \
708 src/wizards/clonevm/UIWizardCloneVMNamePathPage.h \
709 src/wizards/clonevm/UIWizardCloneVMTypePage.h \
710 src/wizards/clonevm/UIWizardCloneVMModePage.h \
711 src/wizards/clonevm/UIWizardCloneVMExpertPage.h \
712 src/wizards/clonevd/UIWizardCloneVD.h \
713 src/wizards/clonevd/UIWizardCloneVDFormatPage.h \
714 src/wizards/clonevd/UIWizardCloneVDVariantPage.h \
715 src/wizards/clonevd/UIWizardCloneVDPathSizePage.h \
716 src/wizards/clonevd/UIWizardCloneVDExpertPage.h \
717 src/wizards/exportappliance/UIWizardExportApp.h \
718 src/wizards/exportappliance/UIWizardExportAppPageExpert.h \
719 src/wizards/exportappliance/UIWizardExportAppPageFormat.h \
720 src/wizards/exportappliance/UIWizardExportAppPageSettings.h \
721 src/wizards/exportappliance/UIWizardExportAppPageVMs.h \
722 src/wizards/importappliance/UIApplianceUnverifiedCertificateViewer.h \
723 src/wizards/importappliance/UIWizardImportApp.h \
724 src/wizards/importappliance/UIWizardImportAppPageExpert.h \
725 src/wizards/importappliance/UIWizardImportAppPageSettings.h \
726 src/wizards/importappliance/UIWizardImportAppPageSource.h
727
728
729#
730# VirtualBox Virtual Machine Application
731# Headers containing definitions of classes that use the Q_OBJECT macro.
732#
733VirtualBoxVM_QT_MOCHDRS = \
734 src/globals/UIStarter.h \
735 src/runtime/UIBootFailureDialog.h \
736 src/runtime/UIConsoleEventHandler.h \
737 src/runtime/UIFrameBuffer.h \
738 src/runtime/UIIndicatorsPool.h \
739 src/runtime/UIKeyboardHandler.h \
740 src/runtime/UIMachine.h \
741 src/runtime/UIMachineLogic.h \
742 src/runtime/UIMachineWindow.h \
743 src/runtime/UIMachineView.h \
744 src/runtime/UIMouseHandler.h \
745 src/runtime/UIMultiScreenLayout.h \
746 src/runtime/UISession.h \
747 src/runtime/UIVMCloseDialog.h \
748 src/runtime/fullscreen/UIKeyboardHandlerFullscreen.h \
749 src/runtime/fullscreen/UIMachineLogicFullscreen.h \
750 src/runtime/fullscreen/UIMachineViewFullscreen.h \
751 src/runtime/fullscreen/UIMachineWindowFullscreen.h \
752 src/runtime/information/UIInformationConfiguration.h \
753 src/runtime/information/UIVMInformationDialog.h \
754 src/runtime/information/UIInformationRuntime.h \
755 src/guestctrl/UIFileManagerDialog.h \
756 src/guestctrl/UIGuestControlConsole.h \
757 src/guestctrl/UIGuestControlInterface.h \
758 src/guestctrl/UIGuestControlTreeItem.h \
759 src/guestctrl/UIGuestProcessControlDialog.h \
760 src/guestctrl/UIGuestProcessControlWidget.h \
761 src/runtime/normal/UIKeyboardHandlerNormal.h \
762 src/runtime/normal/UIMachineLogicNormal.h \
763 src/runtime/normal/UIMachineViewNormal.h \
764 src/runtime/normal/UIMachineWindowNormal.h \
765 src/runtime/scale/UIKeyboardHandlerScale.h \
766 src/runtime/scale/UIMachineLogicScale.h \
767 src/runtime/scale/UIMachineViewScale.h \
768 src/runtime/scale/UIMachineWindowScale.h \
769 src/runtime/seamless/UIKeyboardHandlerSeamless.h \
770 src/runtime/seamless/UIMachineLogicSeamless.h \
771 src/runtime/seamless/UIMachineViewSeamless.h \
772 src/runtime/seamless/UIMachineWindowSeamless.h \
773 src/softkeyboard/UISoftKeyboard.h \
774 src/widgets/UIMiniToolBar.h
775
776ifdef VBOX_WITH_DRAG_AND_DROP
777 VirtualBoxVM_QT_MOCHDRS += \
778 src/runtime/UIDnDHandler.h
779 ifdef VBOX_WITH_DRAG_AND_DROP_GH
780 VirtualBoxVM_QT_MOCHDRS += \
781 src/runtime/UIDnDMIMEData.h
782 endif
783endif
784
785
786#
787# VirtualBox - GUI Global Shared Library.
788# Headers containing definitions of classes that use the Q_OBJECT macro.
789#
790UICommon_QT_MOCHDRS = \
791 src/VBoxAboutDlg.h \
792 src/VBoxLicenseViewer.h \
793 src/UITakeSnapshotDialog.h \
794 src/extensions/QIAdvancedSlider.h \
795 src/extensions/QIArrowButtonPress.h \
796 src/extensions/QIArrowButtonSwitch.h \
797 src/extensions/QIArrowSplitter.h \
798 src/extensions/QIComboBox.h \
799 src/extensions/QIDialog.h \
800 src/extensions/QIDialogButtonBox.h \
801 src/extensions/QIDialogContainer.h \
802 src/extensions/QIFileDialog.h \
803 src/extensions/QIFlowLayout.h \
804 src/extensions/QIInputDialog.h \
805 src/extensions/QILabel.h \
806 src/extensions/QILabelSeparator.h \
807 src/extensions/QILineEdit.h \
808 src/extensions/QIMainDialog.h \
809 src/extensions/QIManagerDialog.h \
810 src/extensions/QIMenu.h \
811 src/extensions/QIMessageBox.h \
812 src/extensions/QIProcess.h \
813 src/extensions/QIRichTextLabel.h \
814 src/extensions/QIRichToolButton.h \
815 src/extensions/QISplitter.h \
816 src/extensions/QIStatusBar.h \
817 src/extensions/QIStatusBarIndicator.h \
818 src/extensions/QIStyledItemDelegate.h \
819 src/extensions/QITableView.h \
820 src/extensions/QITabWidget.h \
821 src/extensions/QIToolBar.h \
822 src/extensions/QIToolButton.h \
823 src/extensions/QITreeView.h \
824 src/extensions/QITreeWidget.h \
825 src/extensions/QIWidgetValidator.h \
826 src/extensions/graphics/QIGraphicsView.h \
827 src/extensions/graphics/QIGraphicsWidget.h \
828 src/extradata/UIExtraDataDefs.h \
829 src/extradata/UIExtraDataManager.h \
830 src/globals/UIActionPool.h \
831 src/globals/UIActionPoolManager.h \
832 src/globals/UIActionPoolRuntime.h \
833 src/globals/UIAnimationFramework.h \
834 src/globals/UICommon.h \
835 src/globals/UICustomFileSystemModel.h \
836 src/globals/UIDesktopWidgetWatchdog.h \
837 src/globals/UIDialogPanel.h \
838 src/globals/UIMainEventListener.h \
839 src/globals/UIMessageCenter.h \
840 src/globals/UIModalWindowManager.h \
841 src/globals/UIPopupCenter.h \
842 src/globals/UIProgressEventHandler.h \
843 src/globals/UIProgressObject.h \
844 src/globals/UIProgressTask.h \
845 src/globals/UIQObjectStuff.h \
846 src/globals/UIShortcutPool.h \
847 src/globals/UITask.h \
848 src/globals/UIThreadPool.h \
849 src/globals/UITextTable.h \
850 src/globals/UITranslator.h \
851 src/globals/UIVirtualBoxEventHandler.h \
852 src/globals/UIVirtualBoxClientEventHandler.h \
853 src/globals/VBoxUtils.h \
854 src/guestctrl/UIFileManager.h \
855 src/guestctrl/UIFileManagerGuestTable.h \
856 src/guestctrl/UIFileManagerHostTable.h \
857 src/guestctrl/UIFileManagerLogPanel.h \
858 src/guestctrl/UIFileManagerOperationsPanel.h \
859 src/guestctrl/UIFileManagerOptionsPanel.h \
860 src/guestctrl/UIFileManagerTable.h \
861 src/helpbrowser/UIHelpBrowserDialog.h \
862 src/logviewer/UIVMLogPage.h \
863 src/logviewer/UIVMLogViewerBookmarksPanel.h \
864 src/logviewer/UIVMLogViewerDialog.h \
865 src/logviewer/UIVMLogViewerFilterPanel.h \
866 src/logviewer/UIVMLogViewerOptionsPanel.h \
867 src/logviewer/UIVMLogViewerPanel.h \
868 src/logviewer/UIVMLogViewerSearchPanel.h \
869 src/logviewer/UIVMLogViewerTextEdit.h \
870 src/logviewer/UIVMLogViewerWidget.h \
871 src/activity/vmactivity/UIVMActivityMonitor.h \
872 src/medium/UIFDCreationDialog.h \
873 src/medium/UIMediumEnumerator.h \
874 src/medium/UIMediumItem.h \
875 src/medium/UIMediumSearchWidget.h \
876 src/medium/UIMediumSelector.h \
877 src/medium/viso/UIVisoBrowserBase.h \
878 src/medium/viso/UIVisoContentBrowser.h \
879 src/medium/viso/UIVisoCreator.h \
880 src/medium/viso/UIVisoConfigurationPanel.h \
881 src/medium/viso/UIVisoCreatorOptionsPanel.h \
882 src/medium/viso/UIVisoHostBrowser.h \
883 src/notificationcenter/UINotificationCenter.h \
884 src/notificationcenter/UINotificationModel.h \
885 src/notificationcenter/UINotificationObject.h \
886 src/notificationcenter/UINotificationObjectItem.h \
887 src/notificationcenter/UINotificationObjects.h \
888 src/notificationcenter/UINotificationProgressTask.h \
889 src/objects/UIExecutionQueue.h \
890 src/settings/UISettingsDialog.h \
891 src/settings/UISettingsDialogSpecific.h \
892 src/settings/UISettingsPage.h \
893 src/settings/UISettingsSelector.h \
894 src/settings/UISettingsSerializer.h \
895 src/settings/editors/UIAudioControllerEditor.h \
896 src/settings/editors/UIAudioHostDriverEditor.h \
897 src/settings/editors/UIAutoCaptureKeyboardEditor.h \
898 src/settings/editors/UIBaseMemoryEditor.h \
899 src/settings/editors/UIBootOrderEditor.h \
900 src/settings/editors/UIColorThemeEditor.h \
901 src/settings/editors/UIDefaultMachineFolderEditor.h \
902 src/settings/editors/UIGraphicsControllerEditor.h \
903 src/settings/editors/UIHostComboEditor.h \
904 src/settings/editors/UIHotKeyEditor.h \
905 src/settings/editors/UILanguageSettingsEditor.h \
906 src/settings/editors/UIMaximumGuestScreenSizeEditor.h \
907 src/settings/editors/UINameAndSystemEditor.h \
908 src/settings/editors/UINetworkAttachmentEditor.h \
909 src/settings/editors/UIScaleFactorEditor.h \
910 src/settings/editors/UIShortcutConfigurationEditor.h \
911 src/settings/editors/UIVideoMemoryEditor.h \
912 src/settings/editors/UIVirtualCPUEditor.h \
913 src/settings/editors/UIVisualStateEditor.h \
914 src/settings/editors/UIVRDEAuthLibraryEditor.h \
915 src/settings/global/UIGlobalSettingsGeneral.h \
916 src/settings/global/UIGlobalSettingsInput.h \
917 src/settings/global/UIGlobalSettingsLanguage.h \
918 src/settings/global/UIGlobalSettingsDisplay.h \
919 src/settings/global/UIGlobalSettingsInterface.h \
920 src/settings/machine/UIMachineSettingsAudio.h \
921 src/settings/machine/UIMachineSettingsDisplay.h \
922 src/settings/machine/UIMachineSettingsGeneral.h \
923 src/settings/machine/UIMachineSettingsInterface.h \
924 src/settings/machine/UIMachineSettingsNetwork.h \
925 src/settings/machine/UIMachineSettingsPortForwardingDlg.h \
926 src/settings/machine/UIMachineSettingsSF.h \
927 src/settings/machine/UIMachineSettingsSFDetails.h \
928 src/settings/machine/UIMachineSettingsSerial.h \
929 src/settings/machine/UIMachineSettingsStorage.h \
930 src/settings/machine/UIMachineSettingsSystem.h \
931 src/settings/machine/UIMachineSettingsUSB.h \
932 src/settings/machine/UIMachineSettingsUSBFilterDetails.h \
933 src/widgets/UIAddDiskEncryptionPasswordDialog.h \
934 src/widgets/UIFilePathSelector.h \
935 src/widgets/UIFilmContainer.h \
936 src/widgets/UIMediaComboBox.h \
937 src/widgets/UIMediumSizeEditor.h \
938 src/widgets/UIMenuBar.h \
939 src/widgets/UIMenuBarEditorWindow.h \
940 src/widgets/UIPopupBox.h \
941 src/widgets/UIPopupPane.h \
942 src/widgets/UIPopupPaneButtonPane.h \
943 src/widgets/UIPopupPaneMessage.h \
944 src/widgets/UIPopupPaneDetails.h \
945 src/widgets/UIPopupStack.h \
946 src/widgets/UIPopupStackViewport.h \
947 src/widgets/UIPortForwardingTable.h \
948 src/widgets/UIProgressDialog.h \
949 src/widgets/UISlidingToolBar.h \
950 src/widgets/UISpecialControls.h \
951 src/widgets/UIStatusBarEditorWindow.h \
952 src/widgets/UISearchLineEdit.h \
953 src/widgets/UIToolBox.h \
954 src/widgets/UIWarningPane.h \
955 src/wizards/UINativeWizard.h \
956 src/wizards/UINativeWizardPage.h \
957 src/wizards/editors/UIUserNamePasswordEditor.h \
958 src/wizards/editors/UIWizardDiskEditors.h \
959 src/wizards/newvd/UIWizardNewVD.h \
960 src/wizards/newvd/UIWizardNewVDFileTypePage.h \
961 src/wizards/newvd/UIWizardNewVDVariantPage.h \
962 src/wizards/newvd/UIWizardNewVDSizeLocationPage.h \
963 src/wizards/newvd/UIWizardNewVDExpertPage.h
964
965ifdef VBOX_WITH_QHELP_VIEWER
966 UICommon_QT_MOCHDRS += \
967 src/helpbrowser/UIHelpViewer.h \
968 src/helpbrowser/UIHelpBrowserWidget.h
969endif
970
971ifdef VBOX_GUI_WITH_NETWORK_MANAGER
972 UICommon_QT_MOCHDRS += \
973 src/networking/UIDownloader.h \
974 src/networking/UIDownloaderExtensionPack.h \
975 src/networking/UIDownloaderGuestAdditions.h \
976 src/networking/UIDownloaderUserManual.h \
977 src/networking/UINetworkCustomer.h \
978 src/networking/UINetworkRequestManager.h \
979 src/networking/UINetworkRequest.h \
980 src/networking/UINetworkReply.h \
981 src/networking/UINewVersionChecker.h \
982 src/networking/UIUpdateManager.h \
983 src/settings/editors/UIUpdateSettingsEditor.h \
984 src/settings/global/UIGlobalSettingsProxy.h \
985 src/settings/global/UIGlobalSettingsUpdate.h
986endif
987
988UICommon_QT_MOCHDRS.darwin += \
989 src/platform/darwin/UICocoaSpecialControls.h \
990 src/platform/darwin/UIWindowMenuManager.h
991
992
993#
994# VirtualBox Manager Application
995# Sources containing local definitions of classes that use the Q_OBJECT macro.
996#
997VirtualBox_QT_MOCSRCS = \
998 src/cloud/consolemanager/UICloudConsoleManager.cpp \
999 src/cloud/profilemanager/UICloudProfileManager.cpp \
1000 src/extensionpackmanager/UIExtensionPackManager.cpp \
1001 src/manager/UIVirtualBoxManager.cpp \
1002 src/manager/UIVirtualMachineItemCloud.cpp \
1003 src/manager/UIWelcomePane.cpp \
1004 src/manager/chooser/UIChooserAbstractModel.cpp \
1005 src/activity/overview/UIVMActivityOverviewWidget.cpp \
1006 src/networkmanager/UINetworkManager.cpp \
1007 src/snapshots/UISnapshotDetailsWidget.cpp \
1008 src/snapshots/UISnapshotPane.cpp \
1009 src/widgets/UIApplianceEditorWidget.cpp \
1010 src/widgets/UIFormEditorWidget.cpp \
1011 src/widgets/UIMenuToolBar.cpp \
1012 src/widgets/UITabBar.cpp \
1013 src/widgets/graphics/UIGraphicsScrollBar.cpp \
1014 src/wizards/importappliance/UIWizardImportApp.cpp \
1015 src/wizards/newvm/UIWizardNewVMSummaryPage.cpp
1016
1017#
1018# VirtualBox Virtual Machine Application
1019# Sources containing local definitions of classes that use the Q_OBJECT macro.
1020#
1021VirtualBoxVM_QT_MOCSRCS = \
1022 src/runtime/UIConsoleEventHandler.cpp \
1023 src/runtime/UIFrameBuffer.cpp \
1024 src/runtime/UIIndicatorsPool.cpp \
1025 src/runtime/information/UIInformationRuntime.cpp \
1026 src/guestctrl/UIGuestProcessControlWidget.cpp \
1027 src/softkeyboard/UISoftKeyboard.cpp \
1028 src/widgets/UIMiniToolBar.cpp
1029
1030
1031#
1032# VirtualBox - GUI Global Shared Library.
1033# Sources containing local definitions of classes that use the Q_OBJECT macro.
1034#
1035UICommon_QT_MOCSRCS = \
1036 src/extensions/QIAdvancedSlider.cpp \
1037 src/extensions/QIArrowSplitter.cpp \
1038 src/extensions/QISplitter.cpp \
1039 src/extradata/UIExtraDataManager.cpp \
1040 src/globals/UIActionPool.cpp \
1041 src/globals/UIActionPoolManager.cpp \
1042 src/globals/UIActionPoolRuntime.cpp \
1043 src/globals/UIMainEventListener.cpp \
1044 src/globals/UIThreadPool.cpp \
1045 src/globals/UIVirtualBoxEventHandler.cpp \
1046 src/globals/UIVirtualBoxClientEventHandler.cpp \
1047 src/guestctrl/UIFileManager.cpp \
1048 src/guestctrl/UIFileManagerLogPanel.cpp \
1049 src/guestctrl/UIFileManagerOperationsPanel.cpp \
1050 src/guestctrl/UIFileManagerTable.cpp \
1051 src/guestctrl/UIFileManagerGuestTable.cpp \
1052 src/guestctrl/UIFileManagerHostTable.cpp \
1053 src/logviewer/UIVMLogViewerFilterPanel.cpp \
1054 src/logviewer/UIVMLogViewerTextEdit.cpp \
1055 src/logviewer/UIVMLogViewerWidget.cpp \
1056 src/activity/vmactivity/UIVMActivityMonitor.cpp \
1057 src/medium/UIMediumEnumerator.cpp \
1058 src/medium/viso/UIVisoContentBrowser.cpp \
1059 src/medium/viso/UIVisoHostBrowser.cpp \
1060 src/medium/viso/UIVisoBrowserBase.cpp \
1061 src/notificationcenter/UINotificationCenter.cpp \
1062 src/settings/editors/UIBaseMemoryEditor.cpp \
1063 src/settings/editors/UIBootOrderEditor.cpp \
1064 src/settings/editors/UIHotKeyEditor.cpp \
1065 src/settings/editors/UILanguageSettingsEditor.cpp \
1066 src/settings/editors/UIShortcutConfigurationEditor.cpp \
1067 src/settings/machine/UIMachineSettingsNetwork.cpp \
1068 src/settings/machine/UIMachineSettingsSerial.cpp \
1069 src/settings/machine/UIMachineSettingsSF.cpp \
1070 src/settings/machine/UIMachineSettingsStorage.cpp \
1071 src/settings/machine/UIMachineSettingsUSB.cpp \
1072 src/widgets/UIAddDiskEncryptionPasswordDialog.cpp \
1073 src/widgets/UIFilmContainer.cpp \
1074 src/widgets/UIPortForwardingTable.cpp \
1075 src/widgets/UIStatusBarEditorWindow.cpp \
1076 src/widgets/UIToolBox.cpp
1077
1078ifdef VBOX_WITH_QHELP_VIEWER
1079 UICommon_QT_MOCSRCS += \
1080 src/helpbrowser/UIHelpViewer.cpp \
1081 src/helpbrowser/UIHelpBrowserWidget.cpp
1082endif
1083
1084ifdef VBOX_GUI_WITH_NETWORK_MANAGER
1085 UICommon_QT_MOCSRCS += \
1086 src/networking/UINetworkReply.cpp \
1087 src/networking/UIUpdateManager.cpp
1088endif
1089
1090ifdef VBOX_WITH_XPCOM
1091 UICommon_QT_MOCSRCS += \
1092 src/globals/COMDefs.cpp
1093endif
1094
1095UICommon_QT_MOCSRCS.darwin += \
1096 src/platform/darwin/UIWindowMenuManager.cpp
1097
1098ifndef VBOX_GUI_WITH_CUSTOMIZATIONS1
1099 UICommon_QT_MOCSRCS.linux += \
1100 src/globals/UIDesktopWidgetWatchdog.cpp
1101 UICommon_QT_MOCSRCS.solaris += \
1102 src/globals/UIDesktopWidgetWatchdog.cpp
1103 UICommon_QT_MOCSRCS.freebsd += \
1104 src/globals/UIDesktopWidgetWatchdog.cpp
1105endif
1106
1107
1108#
1109# VirtualBox Manager Application
1110# Sources.
1111#
1112VirtualBox_SOURCES = \
1113 src/main.cpp \
1114 src/cloud/consolemanager/UICloudConsoleDetailsWidget.cpp \
1115 src/cloud/consolemanager/UICloudConsoleManager.cpp \
1116 src/cloud/machinesettings/UICloudMachineSettingsDialog.cpp \
1117 src/cloud/machinesettings/UICloudMachineSettingsDialogPage.cpp \
1118 src/cloud/profilemanager/UICloudProfileDetailsWidget.cpp \
1119 src/cloud/profilemanager/UICloudProfileManager.cpp \
1120 src/extensionpackmanager/UIExtensionPackManager.cpp \
1121 src/globals/UIStarter.cpp \
1122 src/manager/UICloudEntityKey.cpp \
1123 src/manager/UIErrorPane.cpp \
1124 src/manager/UIProgressTaskReadCloudMachineList.cpp \
1125 src/manager/UITaskCloudGetSettingsForm.cpp \
1126 src/manager/UIToolPaneGlobal.cpp \
1127 src/manager/UIToolPaneMachine.cpp \
1128 src/manager/UIVirtualBoxManager.cpp \
1129 src/manager/UIVirtualBoxManagerWidget.cpp \
1130 src/manager/UIVirtualMachineItem.cpp \
1131 src/manager/UIVirtualMachineItemCloud.cpp \
1132 src/manager/UIVirtualMachineItemLocal.cpp \
1133 src/manager/UIWelcomePane.cpp \
1134 src/manager/chooser/UIChooser.cpp \
1135 src/manager/chooser/UIChooserAbstractModel.cpp \
1136 src/manager/chooser/UIChooserModel.cpp \
1137 src/manager/chooser/UIChooserView.cpp \
1138 src/manager/chooser/UIChooserHandlerMouse.cpp \
1139 src/manager/chooser/UIChooserHandlerKeyboard.cpp \
1140 src/manager/chooser/UIChooserItem.cpp \
1141 src/manager/chooser/UIChooserItemGroup.cpp \
1142 src/manager/chooser/UIChooserItemGlobal.cpp \
1143 src/manager/chooser/UIChooserItemMachine.cpp \
1144 src/manager/chooser/UIChooserNode.cpp \
1145 src/manager/chooser/UIChooserNodeGroup.cpp \
1146 src/manager/chooser/UIChooserNodeGlobal.cpp \
1147 src/manager/chooser/UIChooserNodeMachine.cpp \
1148 src/manager/chooser/UIChooserSearchWidget.cpp \
1149 src/manager/details/UIDetails.cpp \
1150 src/manager/details/UIDetailsContextMenu.cpp \
1151 src/manager/details/UIDetailsModel.cpp \
1152 src/manager/details/UIDetailsView.cpp \
1153 src/manager/details/UIDetailsItem.cpp \
1154 src/manager/details/UIDetailsGroup.cpp \
1155 src/manager/details/UIDetailsSet.cpp \
1156 src/manager/details/UIDetailsElement.cpp \
1157 src/manager/details/UIDetailsElements.cpp \
1158 src/manager/details/UIMachinePreview.cpp \
1159 src/manager/tools/UITools.cpp \
1160 src/manager/tools/UIToolsModel.cpp \
1161 src/manager/tools/UIToolsView.cpp \
1162 src/manager/tools/UIToolsHandlerMouse.cpp \
1163 src/manager/tools/UIToolsHandlerKeyboard.cpp \
1164 src/manager/tools/UIToolsItem.cpp \
1165 src/medium/UIMediumDetailsWidget.cpp \
1166 src/medium/UIMediumManager.cpp \
1167 src/activity/overview/UIVMActivityOverviewWidget.cpp \
1168 src/activity/overview/UIVMActivityToolWidget.cpp \
1169 src/networkmanager/UIDetailsWidgetCloudNetwork.cpp \
1170 src/networkmanager/UIDetailsWidgetHostNetwork.cpp \
1171 src/networkmanager/UIDetailsWidgetNATNetwork.cpp \
1172 src/networkmanager/UINetworkManager.cpp \
1173 src/networkmanager/UINetworkManagerUtils.cpp \
1174 src/snapshots/UISnapshotDetailsWidget.cpp \
1175 src/snapshots/UISnapshotPane.cpp \
1176 src/widgets/UIApplianceEditorWidget.cpp \
1177 src/widgets/UIApplianceExportEditorWidget.cpp \
1178 src/widgets/UIApplianceImportEditorWidget.cpp \
1179 src/widgets/UIEmptyFilePathSelector.cpp \
1180 src/widgets/UIFormEditorWidget.cpp \
1181 src/widgets/UIGuestOSTypeSelectionButton.cpp \
1182 src/widgets/UILineTextEdit.cpp \
1183 src/widgets/UISlidingAnimation.cpp \
1184 src/widgets/UISlidingWidget.cpp \
1185 src/widgets/UITabBar.cpp \
1186 src/widgets/UIMenuToolBar.cpp \
1187 src/widgets/graphics/UIGraphicsButton.cpp \
1188 src/widgets/graphics/UIGraphicsRotatorButton.cpp \
1189 src/widgets/graphics/UIGraphicsScrollArea.cpp \
1190 src/widgets/graphics/UIGraphicsScrollBar.cpp \
1191 src/widgets/graphics/UIGraphicsZoomButton.cpp \
1192 src/widgets/graphics/UIGraphicsToolBar.cpp \
1193 src/widgets/graphics/UIGraphicsTextPane.cpp \
1194 src/wizards/addcloudvm/UIWizardAddCloudVM.cpp \
1195 src/wizards/addcloudvm/UIWizardAddCloudVMPageExpert.cpp \
1196 src/wizards/addcloudvm/UIWizardAddCloudVMPageSource.cpp \
1197 src/wizards/editors/UIHostnameDomainNameEditor.cpp \
1198 src/wizards/editors/UIWizardCloneVMEditors.cpp \
1199 src/wizards/editors/UIWizardNewVMEditors.cpp \
1200 src/wizards/newcloudvm/UIWizardNewCloudVM.cpp \
1201 src/wizards/newcloudvm/UIWizardNewCloudVMPageExpert.cpp \
1202 src/wizards/newcloudvm/UIWizardNewCloudVMPageProperties.cpp \
1203 src/wizards/newcloudvm/UIWizardNewCloudVMPageSource.cpp \
1204 src/wizards/newvm/UIWizardNewVM.cpp \
1205 src/wizards/newvm/UIWizardNewVMNameOSTypePage.cpp \
1206 src/wizards/newvm/UIWizardNewVMUnattendedPage.cpp \
1207 src/wizards/newvm/UIWizardNewVMHardwarePage.cpp \
1208 src/wizards/newvm/UIWizardNewVMDiskPage.cpp \
1209 src/wizards/newvm/UIWizardNewVMExpertPage.cpp \
1210 src/wizards/newvm/UIWizardNewVMSummaryPage.cpp \
1211 src/wizards/clonevm/UIWizardCloneVM.cpp \
1212 src/wizards/clonevm/UIWizardCloneVMNamePathPage.cpp \
1213 src/wizards/clonevm/UIWizardCloneVMTypePage.cpp \
1214 src/wizards/clonevm/UIWizardCloneVMModePage.cpp \
1215 src/wizards/clonevm/UIWizardCloneVMExpertPage.cpp \
1216 src/wizards/clonevd/UIWizardCloneVD.cpp \
1217 src/wizards/clonevd/UIWizardCloneVDFormatPage.cpp \
1218 src/wizards/clonevd/UIWizardCloneVDVariantPage.cpp \
1219 src/wizards/clonevd/UIWizardCloneVDPathSizePage.cpp \
1220 src/wizards/clonevd/UIWizardCloneVDExpertPage.cpp \
1221 src/wizards/exportappliance/UIWizardExportApp.cpp \
1222 src/wizards/exportappliance/UIWizardExportAppPageExpert.cpp \
1223 src/wizards/exportappliance/UIWizardExportAppPageFormat.cpp \
1224 src/wizards/exportappliance/UIWizardExportAppPageSettings.cpp \
1225 src/wizards/exportappliance/UIWizardExportAppPageVMs.cpp \
1226 src/wizards/importappliance/UIApplianceUnverifiedCertificateViewer.cpp \
1227 src/wizards/importappliance/UIWizardImportApp.cpp \
1228 src/wizards/importappliance/UIWizardImportAppPageExpert.cpp \
1229 src/wizards/importappliance/UIWizardImportAppPageSettings.cpp \
1230 src/wizards/importappliance/UIWizardImportAppPageSource.cpp
1231
1232VirtualBox_SOURCES.darwin += \
1233 src/platform/darwin/UIDesktopServices_darwin.cpp \
1234 src/platform/darwin/UIDesktopServices_darwin_cocoa.mm
1235
1236if1of ($(KBUILD_TARGET), freebsd linux netbsd openbsd solaris) # X11
1237 VirtualBox_SOURCES += \
1238 src/platform/x11/UIDesktopServices_x11.cpp
1239endif
1240
1241VirtualBox_SOURCES.win += \
1242 src/platform/win/UIDesktopServices_win.cpp
1243
1244$(call VBOX_SET_VER_INFO_EXE,VirtualBox,VirtualBox Manager,$(VBOX_WINDOWS_ICON_FILE),VirtualBoxGUI)
1245
1246
1247#
1248# VirtualBox Virtual Machine Application
1249# Sources.
1250#
1251VirtualBoxVM_SOURCES = \
1252 src/main.cpp \
1253 src/globals/UIStarter.cpp \
1254 src/runtime/UIBootFailureDialog.cpp \
1255 src/runtime/UIConsoleEventHandler.cpp \
1256 src/runtime/UIFrameBuffer.cpp \
1257 src/runtime/UIIndicatorsPool.cpp \
1258 src/runtime/UIKeyboardHandler.cpp \
1259 src/runtime/UIMachine.cpp \
1260 src/runtime/UIMachineLogic.cpp \
1261 src/runtime/UIMachineView.cpp \
1262 src/runtime/UIMachineWindow.cpp \
1263 src/runtime/UIMouseHandler.cpp \
1264 src/runtime/UIMultiScreenLayout.cpp \
1265 src/runtime/UISession.cpp \
1266 src/runtime/UIVMCloseDialog.cpp \
1267 src/runtime/fullscreen/UIKeyboardHandlerFullscreen.cpp \
1268 src/runtime/fullscreen/UIMachineLogicFullscreen.cpp \
1269 src/runtime/fullscreen/UIMachineViewFullscreen.cpp \
1270 src/runtime/fullscreen/UIMachineWindowFullscreen.cpp \
1271 src/runtime/information/UIInformationConfiguration.cpp \
1272 src/runtime/information/UIVMInformationDialog.cpp \
1273 src/runtime/information/UIInformationRuntime.cpp \
1274 src/guestctrl/UIFileManagerDialog.cpp \
1275 src/guestctrl/UIGuestControlConsole.cpp \
1276 src/guestctrl/UIGuestControlInterface.cpp \
1277 src/guestctrl/UIGuestControlTreeItem.cpp \
1278 src/guestctrl/UIGuestProcessControlWidget.cpp \
1279 src/guestctrl/UIGuestProcessControlDialog.cpp \
1280 src/runtime/normal/UIKeyboardHandlerNormal.cpp \
1281 src/runtime/normal/UIMachineLogicNormal.cpp \
1282 src/runtime/normal/UIMachineViewNormal.cpp \
1283 src/runtime/normal/UIMachineWindowNormal.cpp \
1284 src/runtime/scale/UIKeyboardHandlerScale.cpp \
1285 src/runtime/scale/UIMachineLogicScale.cpp \
1286 src/runtime/scale/UIMachineViewScale.cpp \
1287 src/runtime/scale/UIMachineWindowScale.cpp \
1288 src/runtime/seamless/UIKeyboardHandlerSeamless.cpp \
1289 src/runtime/seamless/UIMachineLogicSeamless.cpp \
1290 src/runtime/seamless/UIMachineViewSeamless.cpp \
1291 src/runtime/seamless/UIMachineWindowSeamless.cpp \
1292 src/softkeyboard/UISoftKeyboard.cpp \
1293 src/widgets/UIMiniToolBar.cpp
1294
1295ifdef VBOX_WITH_DRAG_AND_DROP
1296 VirtualBoxVM_SOURCES += \
1297 src/runtime/UIDnDHandler.cpp
1298 ifdef VBOX_WITH_DRAG_AND_DROP_GH
1299 VirtualBoxVM_SOURCES += \
1300 src/runtime/UIDnDMIMEData.cpp
1301 VirtualBoxVM_SOURCES.win += \
1302 src/runtime/UIDnDDropSource_win.cpp \
1303 src/runtime/UIDnDDataObject_win.cpp \
1304 src/runtime/UIDnDEnumFormat_win.cpp
1305 endif
1306endif
1307
1308VirtualBoxVM_SOURCES.darwin += \
1309 src/platform/darwin/UIAbstractDockIconPreview.cpp \
1310 src/platform/darwin/UICocoaDockIconPreview.mm
1311
1312ifdef VBOX_WITH_HARDENING
1313$(call VBOX_SET_VER_INFO_DLL,VirtualBoxVM,VirtualBox Virtual Machine (dll),$(VBOX_WINDOWS_ICON_FILE))
1314else
1315$(call VBOX_SET_VER_INFO_EXE,VirtualBoxVM,VirtualBox Virtual Machine,$(VBOX_WINDOWS_ICON_FILE))
1316endif
1317
1318
1319#
1320# VirtualBox - GUI Global Shared Library.
1321# Sources.
1322#
1323UICommon_SOURCES = \
1324 src/VBoxAboutDlg.cpp \
1325 src/VBoxLicenseViewer.cpp \
1326 src/UITakeSnapshotDialog.cpp \
1327 src/extensions/QIAdvancedSlider.cpp \
1328 src/extensions/QIArrowButtonPress.cpp \
1329 src/extensions/QIArrowButtonSwitch.cpp \
1330 src/extensions/QIArrowSplitter.cpp \
1331 src/extensions/QIComboBox.cpp \
1332 src/extensions/QIDialog.cpp \
1333 src/extensions/QIDialogButtonBox.cpp \
1334 src/extensions/QIDialogContainer.cpp \
1335 src/extensions/QIFileDialog.cpp \
1336 src/extensions/QIFlowLayout.cpp \
1337 src/extensions/QIInputDialog.cpp \
1338 src/extensions/QILabel.cpp \
1339 src/extensions/QILabelSeparator.cpp \
1340 src/extensions/QILineEdit.cpp \
1341 src/extensions/QIMainDialog.cpp \
1342 src/extensions/QIManagerDialog.cpp \
1343 src/extensions/QIMenu.cpp \
1344 src/extensions/QIMessageBox.cpp \
1345 src/extensions/QIProcess.cpp \
1346 src/extensions/QIRichTextLabel.cpp \
1347 src/extensions/QIRichToolButton.cpp \
1348 src/extensions/QISplitter.cpp \
1349 src/extensions/QIStatusBar.cpp \
1350 src/extensions/QIStatusBarIndicator.cpp \
1351 src/extensions/QIStyledItemDelegate.cpp \
1352 src/extensions/QITableView.cpp \
1353 src/extensions/QITabWidget.cpp \
1354 src/extensions/QIToolBar.cpp \
1355 src/extensions/QIToolButton.cpp \
1356 src/extensions/QITreeView.cpp \
1357 src/extensions/QITreeWidget.cpp \
1358 src/extensions/QIWidgetValidator.cpp \
1359 src/extensions/graphics/QIGraphicsView.cpp \
1360 src/extensions/graphics/QIGraphicsWidget.cpp \
1361 src/extradata/UIExtraDataDefs.cpp \
1362 src/extradata/UIExtraDataManager.cpp \
1363 src/converter/UIConverter.cpp \
1364 src/converter/UIConverterBackendCOM.cpp \
1365 src/converter/UIConverterBackendGlobal.cpp \
1366 src/globals/COMDefs.cpp \
1367 src/globals/UIActionPool.cpp \
1368 src/globals/UIActionPoolManager.cpp \
1369 src/globals/UIActionPoolRuntime.cpp \
1370 src/globals/UIAnimationFramework.cpp \
1371 src/globals/UICloudNetworkingStuff.cpp \
1372 src/globals/UICommon.cpp \
1373 src/globals/UICursor.cpp \
1374 src/globals/UICustomFileSystemModel.cpp \
1375 src/globals/UIDefs.cpp \
1376 src/globals/UIDesktopWidgetWatchdog.cpp \
1377 src/globals/UIDetailsGenerator.cpp \
1378 src/globals/UIDialogPanel.cpp \
1379 src/globals/UIErrorString.cpp \
1380 src/globals/UIExtension.cpp \
1381 src/globals/UIIconPool.cpp \
1382 src/globals/UIImageTools.cpp \
1383 src/globals/UIMachineAttributeSetter.cpp \
1384 src/globals/UIMainEventListener.cpp \
1385 src/globals/UIMessageCenter.cpp \
1386 src/globals/UIModalWindowManager.cpp \
1387 src/globals/UIMousePointerShapeData.cpp \
1388 src/globals/UIPathOperations.cpp \
1389 src/globals/UIPopupCenter.cpp \
1390 src/globals/UIProgressEventHandler.cpp \
1391 src/globals/UIProgressObject.cpp \
1392 src/globals/UIProgressTask.cpp \
1393 src/globals/UIQObjectStuff.cpp \
1394 src/globals/UIShortcutPool.cpp \
1395 src/globals/UITextTable.cpp \
1396 src/globals/UITask.cpp \
1397 src/globals/UIThreadPool.cpp \
1398 src/globals/UITranslator.cpp \
1399 src/globals/UIVersion.cpp \
1400 src/globals/UIVirtualBoxEventHandler.cpp \
1401 src/globals/UIVirtualBoxClientEventHandler.cpp \
1402 src/guestctrl/UIFileManager.cpp \
1403 src/guestctrl/UIFileManagerGuestTable.cpp \
1404 src/guestctrl/UIFileManagerHostTable.cpp \
1405 src/guestctrl/UIFileManagerLogPanel.cpp \
1406 src/guestctrl/UIFileManagerOperationsPanel.cpp \
1407 src/guestctrl/UIFileManagerOptionsPanel.cpp \
1408 src/guestctrl/UIFileManagerTable.cpp \
1409 src/helpbrowser/UIHelpBrowserDialog.cpp \
1410 src/logviewer/UIVMLogPage.cpp \
1411 src/logviewer/UIVMLogViewerBookmarksPanel.cpp \
1412 src/logviewer/UIVMLogViewerDialog.cpp \
1413 src/logviewer/UIVMLogViewerFilterPanel.cpp \
1414 src/logviewer/UIVMLogViewerOptionsPanel.cpp \
1415 src/logviewer/UIVMLogViewerPanel.cpp \
1416 src/logviewer/UIVMLogViewerSearchPanel.cpp \
1417 src/logviewer/UIVMLogViewerTextEdit.cpp \
1418 src/logviewer/UIVMLogViewerWidget.cpp \
1419 src/activity/UIMonitorCommon.cpp \
1420 src/activity/vmactivity/UIVMActivityMonitor.cpp \
1421 src/medium/UIFDCreationDialog.cpp \
1422 src/medium/UIMedium.cpp \
1423 src/medium/UIMediumDefs.cpp \
1424 src/medium/UIMediumEnumerator.cpp \
1425 src/medium/UIMediumItem.cpp \
1426 src/medium/UIMediumSearchWidget.cpp \
1427 src/medium/UIMediumSelector.cpp \
1428 src/medium/viso/UIVisoBrowserBase.cpp \
1429 src/medium/viso/UIVisoContentBrowser.cpp \
1430 src/medium/viso/UIVisoCreator.cpp \
1431 src/medium/viso/UIVisoConfigurationPanel.cpp \
1432 src/medium/viso/UIVisoCreatorOptionsPanel.cpp \
1433 src/medium/viso/UIVisoHostBrowser.cpp \
1434 src/notificationcenter/UINotificationCenter.cpp \
1435 src/notificationcenter/UINotificationModel.cpp \
1436 src/notificationcenter/UINotificationObject.cpp \
1437 src/notificationcenter/UINotificationObjectItem.cpp \
1438 src/notificationcenter/UINotificationObjects.cpp \
1439 src/notificationcenter/UINotificationProgressTask.cpp \
1440 src/objects/UIExecutionQueue.cpp \
1441 src/objects/UIRichTextString.cpp \
1442 src/settings/UISettingsDefs.cpp \
1443 src/settings/UISettingsDialog.cpp \
1444 src/settings/UISettingsDialogSpecific.cpp \
1445 src/settings/UISettingsPage.cpp \
1446 src/settings/UISettingsSelector.cpp \
1447 src/settings/UISettingsSerializer.cpp \
1448 src/settings/editors/UIAudioControllerEditor.cpp \
1449 src/settings/editors/UIAudioHostDriverEditor.cpp \
1450 src/settings/editors/UIAutoCaptureKeyboardEditor.cpp \
1451 src/settings/editors/UIBaseMemoryEditor.cpp \
1452 src/settings/editors/UIBootOrderEditor.cpp \
1453 src/settings/editors/UIColorThemeEditor.cpp \
1454 src/settings/editors/UIDefaultMachineFolderEditor.cpp \
1455 src/settings/editors/UIGraphicsControllerEditor.cpp \
1456 src/settings/editors/UIHostComboEditor.cpp \
1457 src/settings/editors/UIHotKeyEditor.cpp \
1458 src/settings/editors/UILanguageSettingsEditor.cpp \
1459 src/settings/editors/UIMaximumGuestScreenSizeEditor.cpp \
1460 src/settings/editors/UINameAndSystemEditor.cpp \
1461 src/settings/editors/UINetworkAttachmentEditor.cpp \
1462 src/settings/editors/UIScaleFactorEditor.cpp \
1463 src/settings/editors/UIShortcutConfigurationEditor.cpp \
1464 src/settings/editors/UIVideoMemoryEditor.cpp \
1465 src/settings/editors/UIVirtualCPUEditor.cpp \
1466 src/settings/editors/UIVisualStateEditor.cpp \
1467 src/settings/editors/UIVRDEAuthLibraryEditor.cpp \
1468 src/settings/global/UIGlobalSettingsGeneral.cpp \
1469 src/settings/global/UIGlobalSettingsInput.cpp \
1470 src/settings/global/UIGlobalSettingsLanguage.cpp \
1471 src/settings/global/UIGlobalSettingsDisplay.cpp \
1472 src/settings/global/UIGlobalSettingsInterface.cpp \
1473 src/settings/machine/UIMachineSettingsAudio.cpp \
1474 src/settings/machine/UIMachineSettingsDisplay.cpp \
1475 src/settings/machine/UIMachineSettingsGeneral.cpp \
1476 src/settings/machine/UIMachineSettingsInterface.cpp \
1477 src/settings/machine/UIMachineSettingsNetwork.cpp \
1478 src/settings/machine/UIMachineSettingsPortForwardingDlg.cpp \
1479 src/settings/machine/UIMachineSettingsSF.cpp \
1480 src/settings/machine/UIMachineSettingsSFDetails.cpp \
1481 src/settings/machine/UIMachineSettingsSerial.cpp \
1482 src/settings/machine/UIMachineSettingsStorage.cpp \
1483 src/settings/machine/UIMachineSettingsSystem.cpp \
1484 src/settings/machine/UIMachineSettingsUSB.cpp \
1485 src/settings/machine/UIMachineSettingsUSBFilterDetails.cpp \
1486 src/widgets/UIAddDiskEncryptionPasswordDialog.cpp \
1487 src/widgets/UIFilePathSelector.cpp \
1488 src/widgets/UIFilmContainer.cpp \
1489 src/widgets/UIMediaComboBox.cpp \
1490 src/widgets/UIMediumSizeEditor.cpp \
1491 src/widgets/UIMenuBar.cpp \
1492 src/widgets/UIMenuBarEditorWindow.cpp \
1493 src/widgets/UIPopupBox.cpp \
1494 src/widgets/UIPopupPane.cpp \
1495 src/widgets/UIPopupPaneButtonPane.cpp \
1496 src/widgets/UIPopupPaneMessage.cpp \
1497 src/widgets/UIPopupPaneDetails.cpp \
1498 src/widgets/UIPopupStack.cpp \
1499 src/widgets/UIPopupStackViewport.cpp \
1500 src/widgets/UIPortForwardingTable.cpp \
1501 src/widgets/UIProgressDialog.cpp \
1502 src/widgets/UISearchLineEdit.cpp \
1503 src/widgets/UISlidingToolBar.cpp \
1504 src/widgets/UISpecialControls.cpp \
1505 src/widgets/UIStatusBarEditorWindow.cpp \
1506 src/widgets/UIToolBox.cpp \
1507 src/widgets/UIWarningPane.cpp \
1508 src/wizards/UINativeWizard.cpp \
1509 src/wizards/UINativeWizardPage.cpp \
1510 src/wizards/editors/UIUserNamePasswordEditor.cpp \
1511 src/wizards/editors/UIWizardDiskEditors.cpp \
1512 src/wizards/newvd/UIWizardNewVD.cpp \
1513 src/wizards/newvd/UIWizardNewVDFileTypePage.cpp \
1514 src/wizards/newvd/UIWizardNewVDVariantPage.cpp \
1515 src/wizards/newvd/UIWizardNewVDSizeLocationPage.cpp \
1516 src/wizards/newvd/UIWizardNewVDExpertPage.cpp
1517
1518ifdef VBOX_WITH_QHELP_VIEWER
1519 UICommon_SOURCES += \
1520 src/helpbrowser/UIHelpViewer.cpp \
1521 src/helpbrowser/UIHelpBrowserWidget.cpp
1522endif
1523
1524ifdef VBOX_GUI_WITH_NETWORK_MANAGER
1525 UICommon_SOURCES += \
1526 src/networking/UIDownloader.cpp \
1527 src/networking/UIDownloaderExtensionPack.cpp \
1528 src/networking/UIDownloaderGuestAdditions.cpp \
1529 src/networking/UIDownloaderUserManual.cpp \
1530 src/networking/UINetworkCustomer.cpp \
1531 src/networking/UINetworkRequestManager.cpp \
1532 src/networking/UINetworkRequest.cpp \
1533 src/networking/UINetworkReply.cpp \
1534 src/networking/UIUpdateDefs.cpp \
1535 src/networking/UINewVersionChecker.cpp \
1536 src/networking/UIUpdateManager.cpp \
1537 src/settings/editors/UIUpdateSettingsEditor.cpp \
1538 src/settings/global/UIGlobalSettingsProxy.cpp \
1539 src/settings/global/UIGlobalSettingsUpdate.cpp
1540endif
1541
1542if1of ($(KBUILD_TARGET), freebsd linux netbsd openbsd solaris) # X11
1543 UICommon_SOURCES += \
1544 src/platform/x11/VBoxUtils-x11.cpp \
1545 src/platform/x11/XKeyboard-new.cpp
1546endif
1547
1548UICommon_SOURCES.win += \
1549 src/platform/win/VBoxUtils-win.cpp \
1550 src/platform/win/WinKeyboard.cpp
1551
1552UICommon_SOURCES.darwin += \
1553 src/platform/darwin/CocoaEventHelper.mm \
1554 src/platform/darwin/DarwinKeyboard.cpp \
1555 src/platform/darwin/UICocoaApplication.mm \
1556 src/platform/darwin/UICocoaSpecialControls.mm \
1557 src/platform/darwin/UIWindowMenuManager.cpp \
1558 src/platform/darwin/VBoxUtils-darwin-cocoa.mm \
1559 src/platform/darwin/VBoxUtils-darwin.cpp
1560
1561
1562#
1563# VirtualBox Manager Application
1564# Deployment.
1565#
1566if defined(VBOX_WITH_ORACLE_QT) || defined(VBOX_WITH_QT_PAYLOAD)
1567 INSTALLS.linux += VirtualBox.qt.conf
1568 INSTALLS.solaris += VirtualBox.qt.conf
1569 VirtualBox.qt.conf_INST = $(INST_BIN)
1570 VirtualBox.qt.conf_MODE = 644
1571 VirtualBox.qt.conf_SOURCES = $(VirtualBox_0_OUTDIR)/qt.conf=>qt.conf
1572
1573$$(VirtualBox_0_OUTDIR)/qt.conf: $(PATH_SUB_CURRENT)/Makefile.kmk $(VBOX_VERSION_MK) | $$(@D)/
1574 $(QUIET)$(RM) -f $@
1575 $(QUIET)$(APPEND) $@ "[Paths]"
1576 $(QUIET)$(APPEND) $@ "Plugins =" $(PATH_OUT)/$(INST_BIN)/plugins
1577endif
1578
1579
1580#
1581# VirtualBox Manager Application
1582# The Qt modules we're using.
1583# (The include directory and lib/framework for each module will be added by the Qt unit.)
1584#
1585VirtualBox_QT_MODULES = Core Gui Widgets PrintSupport
1586ifdef VBOX_WITH_QT6
1587 VirtualBox_QT_MODULES += StateMachine
1588endif
1589ifndef VBOX_WITH_QT6
1590 VirtualBox_QT_MODULES.linux += X11Extras
1591 VirtualBox_QT_MODULES.solaris += X11Extras
1592 VirtualBox_QT_MODULES.freebsd += X11Extras
1593 VirtualBox_QT_MODULES.darwin += MacExtras
1594endif
1595VirtualBox_QT_MODULES.win += WinExtras
1596ifdef VBOX_GUI_WITH_QTGLFRAMEBUFFER
1597 VirtualBox_QT_MODULES += OpenGL
1598endif
1599
1600
1601#
1602# VirtualBox Virtual Machine Application
1603# The Qt modules we're using.
1604# (The include directory and lib/framework for each module will be added by the Qt unit.)
1605#
1606VirtualBoxVM_QT_MODULES = Core Gui Widgets PrintSupport
1607ifdef VBOX_WITH_QT6
1608 VirtualBoxVM_QT_MODULES += StateMachine
1609endif
1610ifndef VBOX_WITH_QT6
1611 VirtualBoxVM_QT_MODULES.linux += X11Extras
1612 VirtualBoxVM_QT_MODULES.solaris += X11Extras
1613 VirtualBoxVM_QT_MODULES.freebsd += X11Extras
1614 VirtualBoxVM_QT_MODULES.darwin += MacExtras
1615endif
1616VirtualBoxVM_QT_MODULES.win += WinExtras
1617ifdef VBOX_GUI_WITH_QTGLFRAMEBUFFER
1618 VirtualBoxVM_QT_MODULES += OpenGL
1619endif
1620
1621
1622#
1623# VirtualBox - GUI Global Shared Library.
1624# The Qt modules we're using.
1625# (The include directory and lib/framework for each module will be added by the Qt unit.)
1626#
1627UICommon_QT_MODULES = Core Gui Widgets
1628ifdef VBOX_WITH_QT6
1629 UICommon_QT_MODULES += StateMachine
1630endif
1631ifndef VBOX_WITH_QT6
1632 UICommon_QT_MODULES.linux += X11Extras
1633endif
1634UICommon_QT_MODULES.linux += DBus
1635UICommon_QT_MODULES.linux += Xml
1636ifndef VBOX_WITH_QT6
1637 UICommon_QT_MODULES.solaris += X11Extras
1638endif
1639UICommon_QT_MODULES.solaris += DBus
1640UICommon_QT_MODULES.solaris += Xml
1641ifndef VBOX_WITH_QT6
1642 UICommon_QT_MODULES.freebsd += X11Extras
1643endif
1644UICommon_QT_MODULES.freebsd += DBus
1645UICommon_QT_MODULES.freebsd += Xml
1646ifndef VBOX_WITH_QT6
1647 UICommon_QT_MODULES.darwin += MacExtras
1648endif
1649UICommon_QT_MODULES.win += WinExtras
1650
1651ifdef VBOX_WITH_QHELP_VIEWER
1652 UICommon_QT_MODULES += Help
1653endif
1654
1655ifdef VBOX_GUI_WITH_QTGLFRAMEBUFFER
1656 UICommon_QT_MODULES += OpenGL
1657endif
1658
1659
1660# Pull in the ui files
1661$(eval VirtualBox_SOURCES += $(FORMS))
1662$(eval VirtualBoxVM_SOURCES += $(FORMS))
1663$(eval UICommon_SOURCES += $(FORMS))
1664
1665
1666# Resource files with some OSE differences (VirtualBoxBrand.qrc is created further down).
1667UICommon_SOURCES += VirtualBox1.qrc
1668VirtualBox1.qrc_RCCFLAGS = -name BASIC1
1669UICommon_SOURCES += VirtualBox2.qrc
1670VirtualBox2.qrc_RCCFLAGS = -name BASIC2
1671UICommon_SOURCES += VirtualBox1_x2.qrc
1672VirtualBox1_x2.qrc_RCCFLAGS = -name BASIC1_X2
1673UICommon_SOURCES += VirtualBox2_x2.qrc
1674VirtualBox2_x2.qrc_RCCFLAGS = -name BASIC2_X2
1675UICommon_SOURCES += VirtualBox1_x3.qrc
1676VirtualBox1_x3.qrc_RCCFLAGS = -name BASIC1_X3
1677UICommon_SOURCES += VirtualBox2_x3.qrc
1678VirtualBox2_x3.qrc_RCCFLAGS = -name BASIC2_X3
1679UICommon_SOURCES += VirtualBox1_x4.qrc
1680VirtualBox1_x4.qrc_RCCFLAGS = -name BASIC1_X4
1681UICommon_SOURCES += VirtualBox2_x4.qrc
1682VirtualBox2_x4.qrc_RCCFLAGS = -name BASIC2_X4
1683UICommon_SOURCES += VirtualBox_xml.qrc
1684VirtualBox_xml.qrc_RCCFLAGS = -name BASIC_XML
1685UICommon_SOURCES += $(VBOX_VIRTUALBOX_OUT_DIR)/VirtualBoxBrand.qrc
1686$(VBOX_VIRTUALBOX_OUT_DIR)/VirtualBoxBrand.qrc_RCCFLAGS = -name BRAND
1687
1688
1689# Import the translation source from VBoxUI.pro and add the qt_xx_YY counterparts
1690VirtualBox_QT_TRANSLATIONS := $(TRANSLATIONS) \
1691 $(patsubst nls/VirtualBox_%.ts,nls/qt_%.ts, $(filter nls/VirtualBox_%.ts,$(TRANSLATIONS)))
1692# Compress the translation units.
1693VirtualBox_LRCFLAGS = -silent
1694# Where to install the translations (a separate install target, VirtualBox-nls-inst is created).
1695VirtualBox_QT_TRANSLATIONS_INST = $(INST_BIN)nls/
1696# All files which contain translatable strings.
1697VirtualBox_VBOX_ALL_NLS_SOURCES = $(VirtualBox_SOURCES) $(VirtualBoxVM_SOURCES) $(UICommon_SOURCES)
1698
1699
1700## @todo how to detect what tool is used?
1701## @todo GCC3 seems to lack -Wno-missing-base-class-initializer, so we use
1702# more generic -Wno-extra
1703# bird: What about $(if $(VBOX_GCC_Wno-missing-base-class-initializer),$(VBOX_GCC_Wno-missing-base-class-initializer),$(VBOX_GCC_Wno-extra))?
1704ifdef VBOX_WITH_XPCOM
1705 VirtualBox_src/globals/COMDefs.cpp_CXXFLAGS = $(VBOX_GCC_Wno-extra)
1706endif
1707
1708
1709#
1710# Build generated COM wrappers as part of app.
1711# VirtualBox - GUI Global Shared Library.
1712#
1713includedep $(PATH_TARGET)/UICommonComWrapperFiles.dep
1714UICommon_BLDDIRS += $(UICommon_0_OUTDIR)/include
1715UICommon_INTERMEDIATES += $(UICommon_0_OUTDIR)/include/COMWrappers
1716UICommon_SOURCES += $(UICommon_0_OUTDIR)/include/COMWrappers.cpp
1717UICommon_CLEAN += $(wildcard $(UICommon_0_OUTDIR)/include/*) $(PATH_TARGET)/UICommonComWrapperFiles.dep
1718
1719## @todo kmk doesn't remake optional outputs when they are missing...
1720$$(UICommon_0_OUTDIR)/include/COMWrappers \
1721+ $(PATH_TARGET)/UICommonComWrapperFiles.dep \
1722+| $(if-expr defined(UICommon_VBOX_COMWRAPPERS) \
1723, $(UICommon_VBOX_COMWRAPPERS) \
1724, $$(UICommon_0_OUTDIR)/include/COMEnums.h \
1725 $$(UICommon_0_OUTDIR)/include/COMWrappers.cpp \
1726): \
1727 $(VBOX_XIDL_FILE) \
1728 $(VBOX_VIRTUALBOX_SRC)/src/globals/COMWrappers.xsl \
1729 $(VBOX_FILESPLIT) \
1730 | $$(dir $$@)
1731 $(call MSG_GENERATE,UICommon,$<,$@)
1732 $(QUIET)$(RM) -f -- "$@" "$(PATH_TARGET)/UICommonComWrapperFiles.dep"
1733 $(QUIET)$(VBOX_XSLTPROC) -o $@ \
1734 $(VBOX_VIRTUALBOX_SRC)/src/globals/COMWrappers.xsl $<
1735 $(QUIET)$(VBOX_FILESPLIT) $@ $(UICommon_0_OUTDIR)/include \
1736 $(PATH_TARGET)/UICommonComWrapperFiles.dep UICommon_VBOX_COMWRAPPERS
1737 $(APPEND) "$@"
1738
1739# alias for generating the COM Wrappers file.
1740testwrappers:: $$(UICommon_0_OUTDIR)/include/COMWrappers
1741
1742
1743#
1744# Generate qrc file with branded icons.
1745#
1746VirtualBox_BLDDIRS += $(VBOX_VIRTUALBOX_OUT_DIR)
1747VirtualBox_CLEAN += $(VBOX_VIRTUALBOX_OUT_DIR)/VirtualBoxBrand.qrc
1748$(VBOX_VIRTUALBOX_OUT_DIR)/VirtualBoxBrand.qrc: \
1749 $(VBOX_VIRTUALBOX_SRC)/VirtualBoxBrand.qrc \
1750 $(PATH_ROOT)/Config.kmk \
1751 | $$(dir $$@)
1752 $(call MSG_GENERATE,VirtualBox,$<,$@)
1753 $(QUIET)$(SED) \
1754 -e 's;@VBOX_ABOUT_PNG@;$(VBOX_BRAND_GUI_ABOUT_PNG);g' \
1755 -e 's;@VBOX_ABOUT_X2_PNG@;$(VBOX_BRAND_GUI_ABOUT_X2_PNG);g' \
1756 -e 's;@VBOX_ABOUT_X3_PNG@;$(VBOX_BRAND_GUI_ABOUT_X3_PNG);g' \
1757 -e 's;@VBOX_ABOUT_X4_PNG@;$(VBOX_BRAND_GUI_ABOUT_X4_PNG);g' \
1758 -e 's;@VBOX_ABOUT_16PX_PNG@;$(VBOX_BRAND_GUI_ABOUT_16PX_PNG);g' \
1759 -e 's;@VBOX_ABOUT_16PX_X2_PNG@;$(VBOX_BRAND_GUI_ABOUT_16PX_X2_PNG);g' \
1760 -e 's;@VBOX_ABOUT_16PX_X3_PNG@;$(VBOX_BRAND_GUI_ABOUT_16PX_X3_PNG);g' \
1761 -e 's;@VBOX_ABOUT_16PX_X4_PNG@;$(VBOX_BRAND_GUI_ABOUT_16PX_X4_PNG);g' \
1762 -e 's;@VBOX_VBOX_16PX_PNG@;$(VBOX_BRAND_GUI_VBOX_16PX_PNG);g' \
1763 -e 's;@VBOX_VBOX_20PX_PNG@;$(VBOX_BRAND_GUI_VBOX_20PX_PNG);g' \
1764 -e 's;@VBOX_VBOX_32PX_PNG@;$(VBOX_BRAND_GUI_VBOX_32PX_PNG);g' \
1765 -e 's;@VBOX_VBOX_40PX_PNG@;$(VBOX_BRAND_GUI_VBOX_40PX_PNG);g' \
1766 -e 's;@VBOX_VBOX_48PX_PNG@;$(VBOX_BRAND_GUI_VBOX_48PX_PNG);g' \
1767 -e 's;@VBOX_VBOX_64PX_PNG@;$(VBOX_BRAND_GUI_VBOX_64PX_PNG);g' \
1768 -e 's;@VBOX_CUBE_42PX_PNG@;$(VBOX_BRAND_GUI_CUBE_42PX_PNG);g' \
1769 -e 's;@VBOX_CUBE_SVG@;$(VBOX_BRAND_GUI_VBOX_SVG);g' \
1770 --output $@ \
1771 $<
1772
1773
1774#
1775# Precompiled header
1776# win.amd64 without: kmk_time: 3m51.962058s
1777# win.amd64 with: kmk_time: 2m23.336252s
1778# linux.amd64 without: time: real 1m03.719s user 26m26.766s sys 2m03.526s
1779# linux.amd64 with: time: real 0m42.650s user 14m46.332s sys 1m28.463s
1780#
1781ifdef VBOX_WITH_PRECOMPILED_HEADERS
1782 if1of ($(KBUILD_TARGET),win)
1783 VirtualBox_USES += vccprecomp
1784 VirtualBox_PCH_HDR := $(PATH_SUB_CURRENT)/src/precomp_vcc.h
1785
1786 VirtualBoxVM_USES += vccprecomp
1787 VirtualBoxVM_PCH_HDR := $(PATH_SUB_CURRENT)/src/precomp_vcc.h
1788
1789 UICommon_USES += vccprecomp
1790 UICommon_PCH_HDR := $(PATH_SUB_CURRENT)/src/precomp_vcc.h
1791
1792 else if $(KBUILD_KMK_REVISION) >= 3256 && "$(KBUILD_TARGET)" != "darwin" && !defined(VBOX_WITHOUT_PRECOMPILED_HEADERS)
1793 if $(VBOX_GCC_VERSION_CXX) >= 50000 # GCC 4.x runs into trouble compiling the header.
1794 UICommon_USES += gccprecomp
1795 UICommon_PCH_HDR := $(PATH_SUB_CURRENT)/src/precomp_gcc.h
1796 #UICommon_CXXFLAGS.linux += -H
1797
1798 VirtualBox_USES += gccprecomp
1799 VirtualBox_PCH_HDR := $(PATH_SUB_CURRENT)/src/precomp_gcc.h
1800 #VirtualBox_CXXFLAGS.linux += -H
1801
1802 VirtualBoxVM_USES += gccprecomp
1803 VirtualBoxVM_PCH_HDR := $(PATH_SUB_CURRENT)/src/precomp_gcc.h
1804 #VirtualBoxVM_CXXFLAGS.linux += -H
1805
1806 # GCC precompiled headers seems to work more efficiently when #pragma once is involved.
1807 # So, we've cooked our own camel cased qt wrapper headers with #pragma once inside.
1808 VBOX_GUI_INC_DIRS <= precomptricks
1809 endif
1810 endif
1811endif
1812
1813ifeq ($(KBUILD_TARGET),win)
1814#
1815# On Windows we'll have to generate/edit part of the resource file.
1816# The IDI_ICON1 name is Qt specific.
1817#
1818src/platform/win/VirtualBox.rc_INCS = $(VirtualBox_0_OUTDIR)
1819src/platform/win/VirtualBox.rc_DEPS = $(VirtualBox_0_OUTDIR)/VirtualBox-icon.rc
1820src/platform/win/VirtualBox.rc_CLEAN = $(VirtualBox_0_OUTDIR)/VirtualBox-icon.rc
1821src/platform/win/VirtualBoxVM.rc_INCS = $(VirtualBox_0_OUTDIR)
1822src/platform/win/VirtualBoxVM.rc_DEPS = $(VirtualBox_0_OUTDIR)/VirtualBox-icon.rc
1823src/platform/win/VirtualBoxVM.rc_CLEAN = $(VirtualBox_0_OUTDIR)/VirtualBox-icon.rc
1824
1825$$(VirtualBox_0_OUTDIR)/VirtualBox-icon.rc: $(MAKEFILE_CURRENT) $(VBOX_WINDOWS_ICON_FILE) | $$(dir $$@)
1826 $(APPEND) -t $@ 'IDI_ICON1 ICON "$(subst /,\\,$(VBOX_WINDOWS_ICON_FILE))"'
1827
1828endif # win
1829
1830
1831#
1832# Unset everything that was loaded from VBoxUI.pro.
1833#
1834FORMS :=
1835TRANSLATIONS :=
1836
1837
1838
1839ifeq ($(KBUILD_TARGET),win)
1840#
1841# Install the visual manifest and associated PNGs.
1842#
1843INSTALLS.win += VirtualBoxManifest
1844VirtualBoxManifest_INST = $(INST_VIRTUALBOX)
1845VirtualBoxManifest_DEFPATH = $(PATH_ROOT)/src/VBox/Artwork/$(if-expr defined(VBOX_OSE),OSE,NonOSE)/
1846VirtualBoxManifest_SOURCES := \
1847 virtualbox-70px.png=>VirtualBox_70px.png \
1848 virtualbox-150px.png=>VirtualBox_150px.png \
1849 $(PATH_SUB_CURRENT)/src/platform/win/VirtualBox.VisualElementsManifest.xml
1850
1851endif
1852
1853
1854ifeq ($(KBUILD_TARGET),darwin)
1855#
1856# Create directories for each approved language or the application
1857# menu won't be translated.
1858#
1859INSTALLS += VirtualBox.lproj
1860VirtualBox.lproj_INST = $(INST_VIRTUALBOX)Contents/Resources/
1861VirtualBox.lproj_MODE = 755
1862VirtualBox.lproj_DIRS := $(addsuffix .lproj,$(VBOX_APPROVED_GUI_LANGUAGES))
1863
1864#
1865# On OS X (darwin) we need to install icon resources and compulsory bundle contents.
1866# The VirtualBoxVM.app helper is for launching VMs (fixes some issues with the dock).
1867#
1868INSTALLS += VirtualBox.app
1869VirtualBox.app_INST = $(INST_VIRTUALBOX)Contents/
1870VirtualBox.app_MODE = 644
1871VirtualBox.app_SOURCES = \
1872 src/platform/darwin/PkgInfo \
1873 $(VirtualBox.app_0_OUTDIR)/Info.plist \
1874 $(VBOX_MACOSX_ICON_FILE)=>Resources/virtualbox.icns \
1875 $(VBOX_BRAND_GUI_VBOX_64PX_PNG)=>Resources/virtualbox.png \
1876 $(PATH_ROOT)/src/VBox/Artwork/darwin/virtualbox-vbox.icns=>Resources/virtualbox-vbox.icns \
1877 $(PATH_ROOT)/src/VBox/Artwork/darwin/virtualbox-vbox-extpack.icns=>Resources/virtualbox-vbox-extpack.icns \
1878 $(PATH_ROOT)/src/VBox/Artwork/darwin/virtualbox-ovf.icns=>Resources/virtualbox-ovf.icns \
1879 $(PATH_ROOT)/src/VBox/Artwork/darwin/virtualbox-ova.icns=>Resources/virtualbox-ova.icns \
1880 $(PATH_ROOT)/src/VBox/Artwork/darwin/virtualbox-vdi.icns=>Resources/virtualbox-vdi.icns \
1881 $(PATH_ROOT)/src/VBox/Artwork/darwin/virtualbox-vmdk.icns=>Resources/virtualbox-vmdk.icns \
1882 $(PATH_ROOT)/src/VBox/Artwork/darwin/virtualbox-vhd.icns=>Resources/virtualbox-vhd.icns \
1883 $(PATH_ROOT)/src/VBox/Artwork/darwin/virtualbox-hdd.icns=>Resources/virtualbox-hdd.icns
1884
1885 # Qt5 requires qt.conf on Mac OS X:
1886 VirtualBox.app_SOURCES += \
1887 $(VirtualBox.app_0_OUTDIR)/qt.conf=>Resources/qt.conf
1888
1889 $$(VirtualBox.app_0_OUTDIR)/Info.plist: $(PATH_SUB_CURRENT)/src/platform/darwin/Info.plist $(VBOX_VERSION_MK) | $$(@D)/
1890 $(call MSG_GENERATE,VirtualBox.app,$<,$@)
1891 $(QUIET)$(RM) -f $@
1892 $(QUIET)$(SED) \
1893 -e 's/@VBOX_VERSION_STRING@/$(VBOX_VERSION_STRING)/g' \
1894 -e 's/@VBOX_VERSION_MAJOR@/$(VBOX_VERSION_MAJOR)/g' \
1895 -e 's/@VBOX_VERSION_MINOR@/$(VBOX_VERSION_MINOR)/g' \
1896 -e 's/@VBOX_VERSION_BUILD@/$(VBOX_VERSION_BUILD)/g' \
1897 -e 's/@VBOX_VENDOR@/$(VBOX_VENDOR)/g' \
1898 -e 's/@VBOX_PRODUCT@/$(VBOX_PRODUCT)/g' \
1899 -e 's/@VBOX_C_YEAR@/$(VBOX_C_YEAR)/g' \
1900 $< > $@
1901
1902 $$(VirtualBox.app_0_OUTDIR)/qt.conf: $(PATH_SUB_CURRENT)/Makefile.kmk $(VBOX_VERSION_MK) | $$(@D)/
1903 $(QUIET)$(RM) -f $@
1904 $(QUIET)$(APPEND) $@ "[Paths]"
1905 ifdef VBOX_WITH_HARDENING # Not necessary and will screwup copying files elsewhere to test.
1906 $(QUIET)$(APPEND) $@ "Prefix =" $(PATH_OUT)/$(VirtualBox.app_INST)
1907 endif
1908
1909 INSTALLS += VirtualBoxVM.app
1910 VirtualBoxVM.app_INST = $(VirtualBox.app_INST)Resources/VirtualBoxVM.app/Contents/
1911 VirtualBoxVM.app_MODE = 644
1912 VirtualBoxVM.app_SOURCES = \
1913 src/platform/darwin/VM-PkgInfo=>PkgInfo \
1914 $(VirtualBoxVM.app_0_OUTDIR)/VM-Info.plist=>Info.plist \
1915 $(foreach mysrc,$(VirtualBox.app_SOURCES),$(if-expr $(pos =>Resources/,$(mysrc)) > 0,$(mysrc),))
1916
1917 $$(VirtualBoxVM.app_0_OUTDIR)/VM-Info.plist: $(PATH_SUB_CURRENT)/src/platform/darwin/VM-Info.plist $(VBOX_VERSION_MK) | $$(@D)/
1918 $(call MSG_GENERATE,VirtualBoxVM.app,$<,$@)
1919 $(QUIET)$(RM) -f $@
1920 $(QUIET)$(SED) \
1921 -e 's/@VBOX_VERSION_STRING@/$(VBOX_VERSION_STRING)/g' \
1922 -e 's/@VBOX_VERSION_MAJOR@/$(VBOX_VERSION_MAJOR)/g' \
1923 -e 's/@VBOX_VERSION_MINOR@/$(VBOX_VERSION_MINOR)/g' \
1924 -e 's/@VBOX_VERSION_BUILD@/$(VBOX_VERSION_BUILD)/g' \
1925 -e 's/@VBOX_VENDOR@/$(VBOX_VENDOR)/g' \
1926 -e 's/@VBOX_PRODUCT@/$(VBOX_PRODUCT)/g' \
1927 -e 's/@VBOX_C_YEAR@/$(VBOX_C_YEAR)/g' \
1928 --output $@ $<
1929
1930 PROGRAMS += vmstarter
1931 vmstarter_TEMPLATE = VBOXR3EXE
1932 vmstarter_OBJCXXFLAGS += -Wno-error=deprecated-declarations ## @todo fix deprecate API use!
1933 vmstarter_LDFLAGS += -framework AppKit
1934 vmstarter_SOURCES = src/platform/darwin/vmstarter.mm
1935 vmstarter_INST = $(INST_BIN)vmstarter
1936
1937 INSTALLS += vmstarter.app
1938 vmstarter.app_INST = $(VirtualBox.app_INST)Resources/vmstarter.app/Contents/
1939 vmstarter.app_MODE = 644
1940 vmstarter.app_SOURCES = \
1941 src/platform/darwin/vmstarter-PkgInfo=>PkgInfo \
1942 $(vmstarter.app_0_OUTDIR)/vmstarter-Info.plist=>Info.plist \
1943 $(foreach mysrc,$(VirtualBox.app_SOURCES),$(if-expr $(pos =>Resources/,$(mysrc)) > 0,$(mysrc),))
1944 vmstarter.app_SYMLINKS = \
1945 MacOS=>../../../MacOS \
1946
1947 $$(vmstarter.app_0_OUTDIR)/vmstarter-Info.plist: $(PATH_SUB_CURRENT)/src/platform/darwin/vmstarter-Info.plist $(VBOX_VERSION_MK) | $$(@D)/
1948 $(call MSG_GENERATE,vmstarter.app,$<,$@)
1949 $(QUIET)$(RM) -f $@
1950 $(QUIET)$(SED) \
1951 -e 's/@VBOX_VERSION_STRING@/$(VBOX_VERSION_STRING)/g' \
1952 -e 's/@VBOX_VERSION_MAJOR@/$(VBOX_VERSION_MAJOR)/g' \
1953 -e 's/@VBOX_VERSION_MINOR@/$(VBOX_VERSION_MINOR)/g' \
1954 -e 's/@VBOX_VERSION_BUILD@/$(VBOX_VERSION_BUILD)/g' \
1955 -e 's/@VBOX_VENDOR@/$(VBOX_VENDOR)/g' \
1956 -e 's/@VBOX_PRODUCT@/$(VBOX_PRODUCT)/g' \
1957 -e 's/@VBOX_C_YEAR@/$(VBOX_C_YEAR)/g' \
1958 --output $@ $<
1959endif # darwin
1960
1961
1962#
1963# Testcase for the darwin keyboard routines.
1964#
1965ifdef VBOX_WITH_TESTCASES
1966 PROGRAMS.darwin += tstDarwinKeyboard
1967 tstDarwinKeyboard_TEMPLATE = VBOXR3TSTEXE
1968 tstDarwinKeyboard_DEFS.x86 = USE_HID_FOR_MODIFIERS
1969 tstDarwinKeyboard_INCS = \
1970 $(VBOX_GUI_INC_DIRS)
1971 tstDarwinKeyboard_SOURCES = \
1972 src/platform/darwin/tstDarwinKeyboard.cpp \
1973 src/platform/darwin/DarwinKeyboard.cpp \
1974 src/platform/darwin/CocoaEventHelper.mm
1975 tstDarwinKeyboard_LDFLAGS = -framework IOKit -framework Carbon -framework AppKit
1976 tstDarwinKeyboard_LIBS = \
1977 $(LIB_RUNTIME)
1978 tstDarwinKeyboard_LIBS += $(PATH_STAGE_DLL)/UICommon$(VBOX_SUFF_DLL)
1979endif
1980
1981
1982#
1983# Doxygen documentation.
1984#
1985QTGUI_DOXYFILE_OUTPUT = $(PATH_OUT)/docs/qtgui
1986BLDDIRS += $(QTGUI_DOXYFILE_OUTPUT)
1987OTHER_CLEAN += \
1988 $(QTGUI_DOXYFILE_OUTPUT)/Doxyfile.qtgui \
1989 $(QTGUI_DOXYFILE_OUTPUT)/Doxyfile.qtgui.dep \
1990 $(QTGUI_DOXYFILE_OUTPUT)/docs.qtgui
1991
1992QTGUI_DOXYFILE_INPUT_DIRS := \
1993 $(addprefix $(PATH_SUB_CURRENT)/src/, \
1994 converter \
1995 extensions \
1996 extensions/graphics \
1997 extradata \
1998 globals \
1999 manager \
2000 manager/chooser \
2001 manager/details \
2002 manager/tools \
2003 manager \
2004 manager \
2005 medium \
2006 net \
2007 objects \
2008 platform \
2009 platform/darwin \
2010 platform/os2 \
2011 platform/win \
2012 platform/x11 \
2013 runtime \
2014 runtime/fullscreen \
2015 runtime/information \
2016 runtime/guestctrl \
2017 runtime/normal \
2018 runtime/scale \
2019 runtime/seamless \
2020 selector \
2021 selector/graphics \
2022 selector/graphics/chooser \
2023 selector/graphics/details \
2024 settings \
2025 settings/global \
2026 settings/machine \
2027 widgets \
2028 widgets/graphics \
2029 wizards \
2030 wizards/addcloudvm \
2031 wizards/clonevd \
2032 wizards/clonevm \
2033 wizards/exportappliance \
2034 wizards/importappliance \
2035 wizards/newcloudvm \
2036 wizards/newvd \
2037 wizards/newvm)
2038
2039QTGUI_DOXYFILE_INPUT := \
2040 $(foreach dir, $(QTGUI_DOXYFILE_INPUT_DIRS), \
2041 $(sort $(wildcard $(dir)/*.h)) \
2042 $(sort $(wildcard $(dir)/*.cpp $(dir)/*.m $(dir)/*.mm)))
2043
2044includedep $(QTGUI_DOXYFILE_OUTPUT)/Doxyfile.qtgui.dep
2045
2046# Generate the Doxyfile
2047$(QTGUI_DOXYFILE_OUTPUT)/Doxyfile.qtgui: \
2048 $(PATH_SUB_CURRENT)/Doxyfile \
2049 $(PATH_SUB_CURRENT)/Makefile.kmk \
2050 $(comp-vars QTGUI_DOXYFILE_INPUT,DOXYGEN_QTGUI_INPUT_PREV,FORCE) \
2051 $(comp-vars QTGUI_DOXYFILE_OUTPUT,DOXYGEN_QTGUI_OUTPUT_PREV,FORCE) \
2052 | $$(dir $$@)
2053 $(QUIET)$(RM) -f $@ [email protected] [email protected]
2054 $(QUIET)$(CP) -f $< [email protected]
2055 $(QUIET)$(APPEND) [email protected]
2056 $(QUIET)$(APPEND) [email protected] "OUTPUT_DIRECTORY = $(QTGUI_DOXYFILE_OUTPUT)"
2057 $(QUIET)$(APPEND) [email protected] "WARN_LOGFILE = $(QTGUI_DOXYFILE_OUTPUT)/errors"
2058 $(QUIET)$(APPEND) [email protected] "INCLUDE_PATH = $(PATH_ROOT)/include ."
2059 $(QUIET)$(APPEND) [email protected] "PREDEFINED += $(ARCH_BITS_DEFS)"
2060 $(QUIET)$(APPEND) [email protected]
2061 $(QUIET)$(APPEND) [email protected] 'INPUT = $(foreach x,$(QTGUI_DOXYFILE_INPUT),\$(NLTAB)$(x))'
2062 $(QUIET)$(APPEND) [email protected]
2063 $(QUIET)$(MV) -f [email protected] $@
2064 @$(APPEND) [email protected] "DOXYGEN_QTGUI_OUTPUT_PREV = $(QTGUI_DOXYFILE_OUTPUT)"
2065 @$(APPEND) [email protected] "DOXYGEN_QTGUI_INPUT_PREV = $(QTGUI_DOXYFILE_INPUT)"
2066
2067# Do the actual job.
2068$(QTGUI_DOXYFILE_OUTPUT)/docs.qtgui: $(QTGUI_DOXYFILE_OUTPUT)/Doxyfile.qtgui $$(QTGUI_DOXYFILE_INPUT) \
2069 | $(QTGUI_DOXYFILE_OUTPUT)/
2070 $(call MSG_L1,doxygen qtgui)
2071 $(QUIET)$(RM) -f $@
2072 $(QUIET)$(RM) -Rf -- $(QTGUI_DOXYFILE_OUTPUT)/html/
2073 doxygen $(QTGUI_DOXYFILE_OUTPUT)/Doxyfile.qtgui
2074 $(APPEND) $@
2075
2076# aliases
2077docs.qtgui: $(QTGUI_DOXYFILE_OUTPUT)/docs.qtgui
2078if !defined(VBOX_ONLY_DOCS) && defined(VBOX_WITH_ALL_DOXYGEN_TARGETS)
2079docs: $(QTGUI_DOXYFILE_OUTPUT)/docs.qtgui
2080endif
2081
2082
2083# Commit the magic.
2084# (note: before custom rules that make usage of generated variables!).
2085include $(FILE_KBUILD_SUB_FOOTER)
2086
2087
2088#
2089# Update all known NLS translation (.ts) files in the nls/ subdirectory.
2090#
2091# NOTE: This target is intended to be run only by the GUI maintainer shortly
2092# before a new product release. VirtualBox_xx_YY.ts is a template for new
2093# languages and should never be actually translated or installed.
2094#
2095# Use the checknls target for checking again common mistakes done by the
2096# translators.
2097#
2098# For Qt >= 4.6.0 it maybe necessary to add -I $(VBOX_GUI_INC_DIRS) to the
2099# lupdate call
2100#
2101#VirtualBox_QT_TRANSLATIONS = nls/VirtualBox_de.ts
2102checknls::
2103 # Check for missing :/ in image paths
2104 grep -i "src=[^:%]" $(filter-out nls/qt_%.ts,$(VirtualBox_QT_TRANSLATIONS))
2105
2106updatenls:: makeallnls nls/VirtualBox_en.ts
2107
2108makeallnls:: \
2109 $(foreach header,$(VBOX_GUI_INC_DIRS),$(wildcard $(header)/*.h)) \
2110 $(filter-out %.qrc,$(VirtualBox_VBOX_ALL_NLS_SOURCES) $(VirtualBox_VBOX_EXTRA_NLS_SOURCES))
2111 $(call MSG_L1,lupdate all languages (nls/*.ts))
2112 $(QUIET)$(TOOL_QT5_LUPDATE) \
2113 $^ \
2114 -ts \
2115 $(filter-out nls/VirtualBox_en.ts,$(filter-out nls/qt_%.ts,$(VirtualBox_QT_TRANSLATIONS))) \
2116 nls/VirtualBox_xx_YY.ts
2117
2118# Create the English translation file. This is something special cause it will
2119# contain the plural forms only.
2120nls/VirtualBox_en.ts: \
2121 $(foreach header,$(VBOX_GUI_INC_DIRS),$(wildcard $(header)/*.h)) \
2122 $(filter-out %.qrc,$(VirtualBox_VBOX_ALL_NLS_SOURCES) $(VirtualBox_VBOX_EXTRA_NLS_SOURCES))
2123 $(call MSG_L1,lupdate $@)
2124 $(QUIET)$(TOOL_QT5_LUPDATE) \
2125 $^ \
2126 -ts \
2127 $@
2128 $(QUIET)$(SED) -n -i -e \
2129 '/<context>/,/<\/context>/!p;/<context>/h;/<name>/H;/<message numerus="yes">/,/<\/message>/H;/<\/context>/{H;x;/<message/p}' \
2130 $@
2131
Note: See TracBrowser for help on using the repository browser.

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