VirtualBox

source: vbox/trunk/src/VBox/Debugger/Makefile.kmk

Last change on this file was 105536, checked in by vboxsync, 7 weeks ago

VBoxDbg: Added a ntrbtree command for dumping the red-black trees in Windows 8 and later. bugref:10727

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 4.3 KB
Line 
1# $Id: Makefile.kmk 105536 2024-07-30 01:08:28Z vboxsync $
2## @file
3# Makefile for the VBox debugger.
4#
5
6#
7# Copyright (C) 2006-2023 Oracle and/or its affiliates.
8#
9# This file is part of VirtualBox base platform packages, as
10# available from https://www.virtualbox.org.
11#
12# This program is free software; you can redistribute it and/or
13# modify it under the terms of the GNU General Public License
14# as published by the Free Software Foundation, in version 3 of the
15# License.
16#
17# This program is distributed in the hope that it will be useful, but
18# WITHOUT ANY WARRANTY; without even the implied warranty of
19# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20# General Public License for more details.
21#
22# You should have received a copy of the GNU General Public License
23# along with this program; if not, see <https://www.gnu.org/licenses>.
24#
25# SPDX-License-Identifier: GPL-3.0-only
26#
27
28SUB_DEPTH = ../../..
29include $(KBUILD_PATH)/subheader.kmk
30
31#
32# The targets.
33#
34ifdef VBOX_WITH_DEBUGGER
35 LIBRARIES += Debugger
36 ifdef VBOX_WITH_TESTCASES
37 PROGRAMS += tstDBGCParser
38 endif
39endif # VBOX_WITH_DEBUGGER
40
41
42#
43# Debugger library - linked into VBoxVMM.
44#
45Debugger_TEMPLATE = VBoxR3Dll
46Debugger_DEFS = IN_VMM_R3 IN_DBG_R3 IN_DIS
47ifneq ($(KBUILD_TYPE),release)
48 Debugger_DEFS += VBOX_WITH_DEBUGGER_TCP_BY_DEFAULT
49endif
50Debugger_SOURCES = \
51 DBGConsole.cpp \
52 DBGCEval.cpp \
53 DBGCBuiltInSymbols.cpp \
54 DBGCCmdHlp.cpp \
55 DBGCCmdWorkers.cpp \
56 DBGCCommands.cpp \
57 DBGCDumpImage.cpp \
58 DBGCNtCommands.cpp \
59 DBGCFunctions.cpp \
60 DBGCEmulateCodeView.cpp \
61 DBGCOps.cpp \
62 DBGCGdbRemoteStub.cpp \
63 DBGCRemoteKd.cpp \
64 DBGCIo.cpp \
65 DBGCIoProvTcp.cpp \
66 DBGCIoProvUdp.cpp \
67 DBGCIoProvIpc.cpp \
68 DBGCScreenAscii.cpp
69
70ifdef VBOX_WITH_VIRT_ARMV8
71 #
72 # Debugger library - linked into VBoxVMM, ARMv8 variant.
73 #
74 # @todo Can this be merged into one library later maybe?
75 ifdef VBOX_WITH_DEBUGGER
76 LIBRARIES += Debugger-armv8
77 endif
78 Debugger-armv8_TEMPLATE = VBoxR3Dll
79 Debugger-armv8_DEFS = VBOX_VMM_TARGET_ARMV8 IN_VMM_R3 IN_DBG_R3 IN_DIS
80 ifneq ($(KBUILD_TYPE),release)
81 Debugger-armv8_DEFS += VBOX_WITH_DEBUGGER_TCP_BY_DEFAULT
82 endif
83 Debugger-armv8_SOURCES = \
84 DBGConsole.cpp \
85 DBGCEval.cpp \
86 DBGCBuiltInSymbols.cpp \
87 DBGCCmdHlp.cpp \
88 DBGCCmdWorkers.cpp \
89 DBGCCommands.cpp \
90 DBGCDumpImage.cpp \
91 DBGCNtCommands.cpp \
92 DBGCFunctions.cpp \
93 DBGCEmulateCodeView.cpp \
94 DBGCOps.cpp \
95 DBGCGdbRemoteStub.cpp \
96 DBGCRemoteKd.cpp \
97 DBGCIo.cpp \
98 DBGCIoProvTcp.cpp \
99 DBGCIoProvUdp.cpp \
100 DBGCIoProvIpc.cpp \
101 DBGCScreenAscii.cpp
102endif # VBOX_WITH_VIRT_ARMV8
103
104
105#
106# Executable Image dumper based on the dumpimage debugger command.
107#
108PROGRAMS += VBoxDumpImage
109VBoxDumpImage_TEMPLATE = VBoxR3Tool
110VBoxDumpImage_DEFS := DBGC_DUMP_IMAGE_TOOL
111VBoxDumpImage_SOURCES := DBGCDumpImage.cpp
112$(call VBOX_SET_VER_INFO_DLL,VBoxDumpImage,VirtualBox Executable Image Dumper Utility)
113
114
115#
116# The diggers plug-in.
117#
118DLLS += DbgPlugInDiggers
119DbgPlugInDiggers_TEMPLATE = VBoxR3Dll
120DbgPlugInDiggers_DEFS = IN_DIS
121DbgPlugInDiggers_SOURCES = \
122 DBGPlugInDiggers.cpp \
123 DBGPlugInDarwin.cpp \
124 DBGPlugInLinux.cpp \
125 DBGPlugInSolaris.cpp \
126 DBGPlugInWinNt.cpp \
127 DBGPlugInOS2.cpp \
128 DBGPlugInFreeBsd.cpp \
129 DBGPlugInCommonELF.cpp
130DbgPlugInDiggers_LIBS = \
131 $(PATH_STAGE_LIB)/DisasmR3$(VBOX_SUFF_LIB) \
132 $(LIB_RUNTIME)
133$(call VBOX_SET_VER_INFO_DLL,DbgPlugInDiggers,VirtualBox Debugger Guest OS Digger Plug-in)
134
135
136#
137# The DBGC parser testcase.
138# This stubs all the VBoxVMM APIs.
139#
140tstDBGCParser_TEMPLATE = VBoxR3TstExe
141tstDBGCParser_DEFS = IN_VMM_R3
142tstDBGCParser_CXXFLAGS = $(VBOX_C_CXX_FLAGS_NO_UNUSED_PARAMETERS)
143tstDBGCParser_SOURCES = \
144 testcase/tstDBGCParser.cpp \
145 testcase/tstDBGCStubs.cpp
146tstDBGCParser_LIBS = \
147 $(Debugger_1_TARGET) \
148 $(LIB_RUNTIME)
149
150
151if defined(VBOX_WITH_QTGUI) && defined(VBOX_WITH_DEBUGGER_GUI)
152 #
153 # Debugger GUI component (Qt).
154 #
155 USES += qt6
156 DLLS += VBoxDbg
157 VBoxDbg_TEMPLATE = VBoxQtGuiDll
158 VBoxDbg_DEFS = IN_DBG_R3
159 VBoxDbg_INCS = .
160 VBoxDbg_QT_MODULES = Core Gui Widgets
161 VBoxDbg_QT_MOCHDRS = \
162 VBoxDbgGui.h \
163 VBoxDbgConsole.h \
164 VBoxDbgStatsQt.h
165 VBoxDbg_SOURCES = \
166 VBoxDbg.cpp \
167 VBoxDbgGui.cpp \
168 VBoxDbgBase.cpp \
169 VBoxDbgConsole.cpp \
170 VBoxDbgStatsQt.cpp
171 VBoxDbg_CXXFLAGS.win += /permissive-
172 VBoxDbg_LDFLAGS.darwin = \
173 -install_name $(VBOX_DYLD_EXECUTABLE_PATH)/VBoxDbg.dylib
174 $(call VBOX_SET_VER_INFO_DLL,VBoxDbg,VirtualBox Debugger GUI)
175endif # Qt
176
177
178include $(FILE_KBUILD_SUB_FOOTER)
179
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