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
RevLine 
[31510]1# $Id: Makefile.kmk 105536 2024-07-30 01:08:28Z vboxsync $
2## @file
3# Makefile for the VBox debugger.
4#
5
6#
[98103]7# Copyright (C) 2006-2023 Oracle and/or its affiliates.
[31510]8#
[96407]9# This file is part of VirtualBox base platform packages, as
10# available from https://www.virtualbox.org.
[31510]11#
[96407]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#
[31510]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#
[98133]45Debugger_TEMPLATE = VBoxR3Dll
[31510]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 \
[35628]52 DBGCEval.cpp \
[31510]53 DBGCBuiltInSymbols.cpp \
54 DBGCCmdHlp.cpp \
55 DBGCCmdWorkers.cpp \
[46474]56 DBGCCommands.cpp \
[73131]57 DBGCDumpImage.cpp \
[105536]58 DBGCNtCommands.cpp \
[41561]59 DBGCFunctions.cpp \
[31510]60 DBGCEmulateCodeView.cpp \
61 DBGCOps.cpp \
[31846]62 DBGCGdbRemoteStub.cpp \
[86105]63 DBGCRemoteKd.cpp \
[86327]64 DBGCIo.cpp \
65 DBGCIoProvTcp.cpp \
[96865]66 DBGCIoProvUdp.cpp \
[86327]67 DBGCIoProvIpc.cpp \
[64554]68 DBGCScreenAscii.cpp
[31510]69
[99010]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?
[105531]75 ifdef VBOX_WITH_DEBUGGER
76 LIBRARIES += Debugger-armv8
77 endif
[99010]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 \
[105536]91 DBGCNtCommands.cpp \
[99010]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
[105531]102endif # VBOX_WITH_VIRT_ARMV8
[99010]103
[105531]104
[31510]105#
[105531]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#
[31510]116# The diggers plug-in.
117#
[55881]118DLLS += DbgPlugInDiggers
[98133]119DbgPlugInDiggers_TEMPLATE = VBoxR3Dll
[61373]120DbgPlugInDiggers_DEFS = IN_DIS
[55881]121DbgPlugInDiggers_SOURCES = \
[31510]122 DBGPlugInDiggers.cpp \
[49044]123 DBGPlugInDarwin.cpp \
[31510]124 DBGPlugInLinux.cpp \
125 DBGPlugInSolaris.cpp \
126 DBGPlugInWinNt.cpp \
[40726]127 DBGPlugInOS2.cpp \
[64371]128 DBGPlugInFreeBsd.cpp \
[31510]129 DBGPlugInCommonELF.cpp
[55881]130DbgPlugInDiggers_LIBS = \
[61370]131 $(PATH_STAGE_LIB)/DisasmR3$(VBOX_SUFF_LIB) \
[31510]132 $(LIB_RUNTIME)
[55881]133$(call VBOX_SET_VER_INFO_DLL,DbgPlugInDiggers,VirtualBox Debugger Guest OS Digger Plug-in)
[31510]134
135
136#
137# The DBGC parser testcase.
138# This stubs all the VBoxVMM APIs.
139#
[98169]140tstDBGCParser_TEMPLATE = VBoxR3TstExe
[31510]141tstDBGCParser_DEFS = IN_VMM_R3
[39091]142tstDBGCParser_CXXFLAGS = $(VBOX_C_CXX_FLAGS_NO_UNUSED_PARAMETERS)
[31510]143tstDBGCParser_SOURCES = \
144 testcase/tstDBGCParser.cpp \
145 testcase/tstDBGCStubs.cpp
146tstDBGCParser_LIBS = \
[35440]147 $(Debugger_1_TARGET) \
[31510]148 $(LIB_RUNTIME)
149
150
151if defined(VBOX_WITH_QTGUI) && defined(VBOX_WITH_DEBUGGER_GUI)
[98439]152 #
153 # Debugger GUI component (Qt).
154 #
[101554]155 USES += qt6
[98439]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
[101554]171 VBoxDbg_CXXFLAGS.win += /permissive-
[98439]172 VBoxDbg_LDFLAGS.darwin = \
173 -install_name $(VBOX_DYLD_EXECUTABLE_PATH)/VBoxDbg.dylib
174 $(call VBOX_SET_VER_INFO_DLL,VBoxDbg,VirtualBox Debugger GUI)
[67067]175endif # Qt
[31510]176
177
[41477]178include $(FILE_KBUILD_SUB_FOOTER)
[31510]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