VirtualBox

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

Last change on this file since 99844 was 99010, checked in by vboxsync, 21 months ago

Debugger: Build a debugger library specific for the armv8 target, bugref:10385

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 4.0 KB
Line 
1# $Id: Makefile.kmk 99010 2023-03-16 18:12:43Z 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 DBGCFunctions.cpp \
59 DBGCEmulateCodeView.cpp \
60 DBGCOps.cpp \
61 DBGCGdbRemoteStub.cpp \
62 DBGCRemoteKd.cpp \
63 DBGCIo.cpp \
64 DBGCIoProvTcp.cpp \
65 DBGCIoProvUdp.cpp \
66 DBGCIoProvIpc.cpp \
67 DBGCScreenAscii.cpp
68
69ifdef VBOX_WITH_VIRT_ARMV8
70 ifdef VBOX_WITH_DEBUGGER
71 LIBRARIES += Debugger-armv8
72 endif # VBOX_WITH_DEBUGGER
73
74 #
75 # Debugger library - linked into VBoxVMM, ARMv8 variant.
76 #
77 # @todo Can this be merged into one library later maybe?
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 DBGCFunctions.cpp \
92 DBGCEmulateCodeView.cpp \
93 DBGCOps.cpp \
94 DBGCGdbRemoteStub.cpp \
95 DBGCRemoteKd.cpp \
96 DBGCIo.cpp \
97 DBGCIoProvTcp.cpp \
98 DBGCIoProvUdp.cpp \
99 DBGCIoProvIpc.cpp \
100 DBGCScreenAscii.cpp
101endif
102
103#
104# The diggers plug-in.
105#
106DLLS += DbgPlugInDiggers
107DbgPlugInDiggers_TEMPLATE = VBoxR3Dll
108DbgPlugInDiggers_DEFS = IN_DIS
109DbgPlugInDiggers_SOURCES = \
110 DBGPlugInDiggers.cpp \
111 DBGPlugInDarwin.cpp \
112 DBGPlugInLinux.cpp \
113 DBGPlugInSolaris.cpp \
114 DBGPlugInWinNt.cpp \
115 DBGPlugInOS2.cpp \
116 DBGPlugInFreeBsd.cpp \
117 DBGPlugInCommonELF.cpp
118DbgPlugInDiggers_LIBS = \
119 $(PATH_STAGE_LIB)/DisasmR3$(VBOX_SUFF_LIB) \
120 $(LIB_RUNTIME)
121$(call VBOX_SET_VER_INFO_DLL,DbgPlugInDiggers,VirtualBox Debugger Guest OS Digger Plug-in)
122
123
124#
125# The DBGC parser testcase.
126# This stubs all the VBoxVMM APIs.
127#
128tstDBGCParser_TEMPLATE = VBoxR3TstExe
129tstDBGCParser_DEFS = IN_VMM_R3
130tstDBGCParser_CXXFLAGS = $(VBOX_C_CXX_FLAGS_NO_UNUSED_PARAMETERS)
131tstDBGCParser_SOURCES = \
132 testcase/tstDBGCParser.cpp \
133 testcase/tstDBGCStubs.cpp
134tstDBGCParser_LIBS = \
135 $(Debugger_1_TARGET) \
136 $(LIB_RUNTIME)
137
138
139if defined(VBOX_WITH_QTGUI) && defined(VBOX_WITH_DEBUGGER_GUI)
140 #
141 # Debugger GUI component (Qt).
142 #
143 ifndef VBOX_WITH_QT6
144 USES += qt5
145 else
146 USES += qt6
147 endif
148 DLLS += VBoxDbg
149 VBoxDbg_TEMPLATE = VBoxQtGuiDll
150 VBoxDbg_DEFS = IN_DBG_R3
151 VBoxDbg_INCS = .
152 VBoxDbg_QT_MODULES = Core Gui Widgets
153 VBoxDbg_QT_MOCHDRS = \
154 VBoxDbgGui.h \
155 VBoxDbgConsole.h \
156 VBoxDbgStatsQt.h
157 VBoxDbg_SOURCES = \
158 VBoxDbg.cpp \
159 VBoxDbgGui.cpp \
160 VBoxDbgBase.cpp \
161 VBoxDbgConsole.cpp \
162 VBoxDbgStatsQt.cpp
163 VBoxDbg_LDFLAGS.darwin = \
164 -install_name $(VBOX_DYLD_EXECUTABLE_PATH)/VBoxDbg.dylib
165 $(call VBOX_SET_VER_INFO_DLL,VBoxDbg,VirtualBox Debugger GUI)
166endif # Qt
167
168
169include $(FILE_KBUILD_SUB_FOOTER)
170
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