VirtualBox

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

Last change on this file since 65641 was 64554, checked in by vboxsync, 8 years ago

Debugger/DBGC: Add helpers providing a virtual screen with some simple drawing primitives and optional color support using escape sequences

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 3.9 KB
Line 
1# $Id: Makefile.kmk 64554 2016-11-04 10:41:06Z vboxsync $
2## @file
3# Makefile for the VBox debugger.
4#
5
6#
7# Copyright (C) 2006-2016 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# The targets.
23#
24ifdef VBOX_WITH_DEBUGGER
25 LIBRARIES += Debugger
26 ifdef VBOX_WITH_TESTCASES
27 PROGRAMS += tstDBGCParser
28 endif
29endif # VBOX_WITH_DEBUGGER
30
31
32#
33# Debugger library - linked into VBoxVMM.
34#
35Debugger_TEMPLATE = VBOXR3
36Debugger_DEFS = IN_VMM_R3 IN_DBG_R3 IN_DIS
37ifneq ($(KBUILD_TYPE),release)
38 Debugger_DEFS += VBOX_WITH_DEBUGGER_TCP_BY_DEFAULT
39endif
40Debugger_SOURCES = \
41 DBGConsole.cpp \
42 DBGCEval.cpp \
43 DBGCBuiltInSymbols.cpp \
44 DBGCCmdHlp.cpp \
45 DBGCCmdWorkers.cpp \
46 DBGCCommands.cpp \
47 DBGCFunctions.cpp \
48 DBGCEmulateCodeView.cpp \
49 DBGCOps.cpp \
50 DBGCGdbRemoteStub.cpp \
51 DBGCTcp.cpp \
52 DBGCScreenAscii.cpp
53
54#
55# The diggers plug-in.
56#
57DLLS += DbgPlugInDiggers
58DbgPlugInDiggers_TEMPLATE = VBOXR3
59DbgPlugInDiggers_DEFS = IN_DIS
60DbgPlugInDiggers_SOURCES = \
61 DBGPlugInDiggers.cpp \
62 DBGPlugInDarwin.cpp \
63 DBGPlugInLinux.cpp \
64 DBGPlugInSolaris.cpp \
65 DBGPlugInWinNt.cpp \
66 DBGPlugInOS2.cpp \
67 DBGPlugInFreeBsd.cpp \
68 DBGPlugInCommonELF.cpp
69DbgPlugInDiggers_LIBS = \
70 $(PATH_STAGE_LIB)/DisasmR3$(VBOX_SUFF_LIB) \
71 $(if-expr "$(LIB_VMM)" == "$(VBOX_LIB_VMM_LAZY)",$(LIB_REM),) \
72 $(VBOX_LIB_VMM_LAZY) \
73 $(LIB_RUNTIME)
74$(call VBOX_SET_VER_INFO_DLL,DbgPlugInDiggers,VirtualBox Debugger Guest OS Digger Plug-in)
75
76
77#
78# The DBGC parser testcase.
79# This stubs all the VBoxVMM APIs.
80#
81tstDBGCParser_TEMPLATE = VBOXR3TSTEXE
82tstDBGCParser_DEFS = IN_VMM_R3
83tstDBGCParser_CXXFLAGS = $(VBOX_C_CXX_FLAGS_NO_UNUSED_PARAMETERS)
84tstDBGCParser_SOURCES = \
85 testcase/tstDBGCParser.cpp \
86 testcase/tstDBGCStubs.cpp
87tstDBGCParser_LIBS = \
88 $(Debugger_1_TARGET) \
89 $(LIB_RUNTIME)
90
91
92if defined(VBOX_WITH_QTGUI) && defined(VBOX_WITH_DEBUGGER_GUI)
93#
94# Debugger GUI component (Qt4).
95#
96ifndef VBOX_WITH_QTGUI_V5
97 USES += qt4
98else # VBOX_WITH_QTGUI_V5
99 USES += qt5
100endif # VBOX_WITH_QTGUI_V5
101DLLS += VBoxDbg
102VBoxDbg_TEMPLATE = VBOXQTGUI
103VBoxDbg_DEFS = IN_DBG_R3 VBOXDBG_USE_QT4
104VBoxDbg_INCS = .
105VBoxDbg_QT_MODULES = Core Gui
106ifdef VBOX_WITH_QTGUI_V5
107 # Qt5 requires additional modules:
108 VBoxDbg_QT_MODULES += Widgets
109endif # VBOX_WITH_QTGUI_V5
110VBoxDbg_QT_MOCHDRS = \
111 VBoxDbgGui.h \
112 VBoxDbgConsole.h \
113 VBoxDbgStatsQt4.h
114VBoxDbg_SOURCES = \
115 VBoxDbg.cpp \
116 VBoxDbgGui.cpp \
117 VBoxDbgBase.cpp \
118 VBoxDbgConsole.cpp \
119 VBoxDbgStatsQt4.cpp
120VBoxDbg_LIBS = \
121 $(VBOX_LIB_VMM_LAZY)
122VBoxDbg_LDFLAGS.darwin = \
123 -install_name $(VBOX_DYLD_EXECUTABLE_PATH)/VBoxDbg.dylib
124$(call VBOX_SET_VER_INFO_DLL,VBoxDbg,VirtualBox Debugger GUI)
125
126 ifdef VBOX_WITH_TESTCASES
127#
128# The VBoxDbg testcase (Qt4).
129#
130PROGRAMS += tstVBoxDbg
131tstVBoxDbg_TEMPLATE = VBOXQTGUIEXE
132ifndef VBOX_WITH_QTGUI_V5
133 tstVBoxDbg_USES = qt4
134 tstVBoxDbg_QTTOOL = QT4
135else # VBOX_WITH_QTGUI_V5
136 tstVBoxDbg_USES = qt5
137 tstVBoxDbg_QTTOOL = QT5
138endif # VBOX_WITH_QTGUI_V5
139tstVBoxDbg_QT_MODULES = Core Gui
140ifdef VBOX_WITH_QTGUI_V5
141 # Qt5 requires additional modules:
142 tstVBoxDbg_QT_MODULES += Widgets
143 tstVBoxDbg_LIBS.linux += xcb
144 tstVBoxDbg_LIBS.solaris += xcb
145 tstVBoxDbg_LIBS.freebsd += xcb
146endif # VBOX_WITH_QTGUI_V5
147tstVBoxDbg_SOURCES = testcase/tstVBoxDbg.cpp
148tstVBoxDbg_LIBS = \
149 $(LIB_VMM) \
150 $(LIB_REM) \
151 $(LIB_RUNTIME)
152 ifeq ($(KBUILD_TARGET),win)
153tstVBoxDbg_LIBS += \
154 $(PATH_STAGE_LIB)/VBoxDbg.lib
155 else
156tstVBoxDbg_LIBS += \
157 $(PATH_STAGE_BIN)/VBoxDbg$(VBOX_SUFF_DLL)
158 endif
159 endif # TESTCASES
160endif # Qt4
161
162
163include $(FILE_KBUILD_SUB_FOOTER)
164
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