VirtualBox

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

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

Disassembler: Get rid of PAGE_SIZE dependency in userspace for hosts where the page size can't be determined during build time. Use the smallest possible page size available across all supported architectures, bugref:10391

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 3.0 KB
Line 
1# $Id: Makefile.kmk 108699 2025-03-21 16:55:53Z vboxsync $
2## @file
3# Sub-Makefile for the VBox Disassembler.
4#
5
6#
7# Copyright (C) 2006-2024 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# include the sub-makefile first.
32if defined(VBOX_WITH_TESTCASES) && !defined(VBOX_ONLY_VALIDATIONKIT)
33 include $(PATH_SUB_CURRENT)/testcase/Makefile.kmk
34endif
35
36
37LIBRARIES += DisasmR3
38DisasmR3_TEMPLATE = VBoxR3Dll
39DisasmR3_DEFS = IN_DIS
40DisasmR3_SOURCES = \
41 Disasm.cpp \
42 DisasmMisc.cpp \
43 DisasmFormatBytes.cpp
44if 1
45 DisasmR3_DEFS += VBOX_DIS_WITH_X86_AMD64
46 DisasmR3_SOURCES += \
47 DisasmCore-x86-amd64.cpp \
48 DisasmTables-x86-amd64.cpp \
49 DisasmTablesX64.cpp \
50 DisasmFormatYasm.cpp
51endif
52if 1
53 DisasmR3_DEFS += VBOX_DIS_WITH_ARMV8
54 DisasmR3_SOURCES += \
55 DisasmCore-armv8.cpp \
56 DisasmTables-armv8-a64.cpp \
57 DisasmFormatArmV8.cpp
58endif
59
60ifn1of ($(KBUILD_TARGET).$(KBUILD_TARGET_ARCH), linux.arm64)
61 LIBRARIES += DisasmR3Static
62endif
63DisasmR3Static_TEMPLATE = VBoxR3Static
64DisasmR3Static_EXTENDS = DisasmR3
65
66ifndef VBOX_ONLY_VALIDATIONKIT
67
68 LIBRARIES += DisasmBldProg
69 DisasmBldProg_TEMPLATE = VBoxAdvBldProg
70 DisasmBldProg_EXTENDS = DisasmR3
71
72 LIBRARIES += DisasmCoreR3
73 DisasmCoreR3_TEMPLATE = VBoxR3Dll
74 DisasmCoreR3_DEFS = IN_DIS DIS_CORE_ONLY VBOX_DIS_WITH_X86_AMD64
75 DisasmCoreR3_SOURCES = \
76 Disasm.cpp \
77 DisasmCore-x86-amd64.cpp \
78 DisasmTables-x86-amd64.cpp \
79 DisasmTablesX64.cpp \
80 DisasmMisc.cpp
81
82 ifdef VBOX_WITH_RAW_MODE
83 LIBRARIES += DisasmRC
84 DisasmRC_TEMPLATE = VBoxRc
85 DisasmRC_DEFS = IN_DIS IN_RT_RC DIS_CORE_ONLY VBOX_DIS_WITH_X86_AMD64
86 DisasmRC_SOURCES = \
87 Disasm.cpp \
88 DisasmCore-x86-amd64.cpp \
89 DisasmTables-x86-amd64.cpp \
90 DisasmTablesX64.cpp \
91 DisasmMisc.cpp
92 endif # VBOX_WITH_RAW_MODE
93
94 ifdef VBOX_WITH_R0_MODULES
95 LIBRARIES += DisasmR0
96 DisasmR0_TEMPLATE = VBoxR0
97 DisasmR0_DEFS = IN_DIS IN_RT_R0 DIS_CORE_ONLY VBOX_DIS_WITH_X86_AMD64
98 DisasmR0_SOURCES = \
99 Disasm.cpp \
100 DisasmCore-x86-amd64.cpp \
101 DisasmTables-x86-amd64.cpp \
102 DisasmTablesX64.cpp \
103 DisasmMisc.cpp
104 endif
105
106endif # !VBOX_ONLY_VALIDATIONKIT
107
108include $(FILE_KBUILD_SUB_FOOTER)
109
Note: See TracBrowser for help on using the repository browser.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette