blob: ae414d7cc14cae986a22d497af3ea48632fb7276 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
|
# $Id: Makefile.kmk $
## @file
# Makefile for the VBox debugger.
#
#
# Copyright (C) 2006-2019 Oracle Corporation
#
# This file is part of VirtualBox Open Source Edition (OSE), as
# available from http://www.virtualbox.org. This file is free software;
# you can redistribute it and/or modify it under the terms of the GNU
# General Public License (GPL) as published by the Free Software
# Foundation, in version 2 as it comes in the "COPYING" file of the
# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
#
SUB_DEPTH = ../../..
include $(KBUILD_PATH)/subheader.kmk
#
# The targets.
#
ifdef VBOX_WITH_DEBUGGER
LIBRARIES += Debugger
ifdef VBOX_WITH_TESTCASES
PROGRAMS += tstDBGCParser
endif
endif # VBOX_WITH_DEBUGGER
#
# Debugger library - linked into VBoxVMM.
#
Debugger_TEMPLATE = VBOXR3
Debugger_DEFS = IN_VMM_R3 IN_DBG_R3 IN_DIS
ifneq ($(KBUILD_TYPE),release)
Debugger_DEFS += VBOX_WITH_DEBUGGER_TCP_BY_DEFAULT
endif
Debugger_SOURCES = \
DBGConsole.cpp \
DBGCEval.cpp \
DBGCBuiltInSymbols.cpp \
DBGCCmdHlp.cpp \
DBGCCmdWorkers.cpp \
DBGCCommands.cpp \
DBGCDumpImage.cpp \
DBGCFunctions.cpp \
DBGCEmulateCodeView.cpp \
DBGCOps.cpp \
DBGCGdbRemoteStub.cpp \
DBGCTcp.cpp \
DBGCScreenAscii.cpp
#
# The diggers plug-in.
#
DLLS += DbgPlugInDiggers
DbgPlugInDiggers_TEMPLATE = VBOXR3
DbgPlugInDiggers_DEFS = IN_DIS
DbgPlugInDiggers_SOURCES = \
DBGPlugInDiggers.cpp \
DBGPlugInDarwin.cpp \
DBGPlugInLinux.cpp \
DBGPlugInSolaris.cpp \
DBGPlugInWinNt.cpp \
DBGPlugInOS2.cpp \
DBGPlugInFreeBsd.cpp \
DBGPlugInCommonELF.cpp
DbgPlugInDiggers_LIBS = \
$(PATH_STAGE_LIB)/DisasmR3$(VBOX_SUFF_LIB) \
$(if-expr "$(LIB_VMM)" == "$(VBOX_LIB_VMM_LAZY)",$(LIB_REM),) \
$(VBOX_LIB_VMM_LAZY) \
$(LIB_RUNTIME)
$(call VBOX_SET_VER_INFO_DLL,DbgPlugInDiggers,VirtualBox Debugger Guest OS Digger Plug-in)
#
# The DBGC parser testcase.
# This stubs all the VBoxVMM APIs.
#
tstDBGCParser_TEMPLATE = VBOXR3TSTEXE
tstDBGCParser_DEFS = IN_VMM_R3
tstDBGCParser_CXXFLAGS = $(VBOX_C_CXX_FLAGS_NO_UNUSED_PARAMETERS)
tstDBGCParser_SOURCES = \
testcase/tstDBGCParser.cpp \
testcase/tstDBGCStubs.cpp
tstDBGCParser_LIBS = \
$(Debugger_1_TARGET) \
$(LIB_RUNTIME)
if defined(VBOX_WITH_QTGUI) && defined(VBOX_WITH_DEBUGGER_GUI)
#
# Debugger GUI component (Qt).
#
USES += qt5
DLLS += VBoxDbg
VBoxDbg_TEMPLATE = VBOXQTGUI
VBoxDbg_DEFS = IN_DBG_R3
VBoxDbg_INCS = .
VBoxDbg_QT_MODULES = Core Gui Widgets
VBoxDbg_QT_MOCHDRS = \
VBoxDbgGui.h \
VBoxDbgConsole.h \
VBoxDbgStatsQt.h
VBoxDbg_SOURCES = \
VBoxDbg.cpp \
VBoxDbgGui.cpp \
VBoxDbgBase.cpp \
VBoxDbgConsole.cpp \
VBoxDbgStatsQt.cpp
VBoxDbg_LIBS = \
$(VBOX_LIB_VMM_LAZY)
VBoxDbg_LDFLAGS.darwin = \
-install_name $(VBOX_DYLD_EXECUTABLE_PATH)/VBoxDbg.dylib
$(call VBOX_SET_VER_INFO_DLL,VBoxDbg,VirtualBox Debugger GUI)
ifdef VBOX_WITH_TESTCASES
#
# The VBoxDbg testcase (Qt).
#
PROGRAMS += tstVBoxDbg
tstVBoxDbg_TEMPLATE = VBOXQTGUIEXE
tstVBoxDbg_USES = qt5
tstVBoxDbg_QTTOOL = QT5
tstVBoxDbg_QT_MODULES = Core Gui Widgets
tstVBoxDbg_LIBS.linux += xcb
tstVBoxDbg_LIBS.solaris += xcb
tstVBoxDbg_LIBS.freebsd += xcb
tstVBoxDbg_SOURCES = testcase/tstVBoxDbg.cpp
tstVBoxDbg_LIBS = \
$(LIB_VMM) \
$(LIB_REM) \
$(LIB_RUNTIME)
ifeq ($(KBUILD_TARGET),win)
tstVBoxDbg_LIBS += \
$(PATH_STAGE_LIB)/VBoxDbg.lib
else
tstVBoxDbg_LIBS += \
$(PATH_STAGE_BIN)/VBoxDbg$(VBOX_SUFF_DLL)
endif
endif # TESTCASES
endif # Qt
include $(FILE_KBUILD_SUB_FOOTER)
|