VirtualBox

source: vbox/trunk/src/VBox/Runtime/tools/Makefile.kmk@ 71872

Last change on this file since 71872 was 71492, checked in by vboxsync, 7 years ago

Runtime: Introduce RTTraceLog* API for creating and parsing binary trace log files. The format and API is designed with the

following goals in mind:

  1. Allow streaming the data via network or write it to a file.
  2. Embed the structure of the traced data into the log allowing arbitrary structured data to be embedded without requiring adaptions on the parsing side.
  3. Allow grouping of traced data belonging together to easily follow chains of events later on.
  4. Trace events can have a parent assigned to check where an event originally originated from.
  5. Low overhead on the creation side.

The current state implements the absolute basics on the creation and parsing side and is work in progress. This will
be used later on in the device emulation fuzzer to capture device and examine device states and changes.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 6.1 KB
Line 
1# $Id: Makefile.kmk 71492 2018-03-24 22:23:10Z vboxsync $
2## @file
3# Sub-Makefile for the IPRT tools.
4#
5
6#
7# Copyright (C) 2006-2017 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# The contents of this file may alternatively be used under the terms
18# of the Common Development and Distribution License Version 1.0
19# (CDDL) only, as it comes in the "COPYING.CDDL" file of the
20# VirtualBox OSE distribution, in which case the provisions of the
21# CDDL are applicable instead of those of the GPL.
22#
23# You may elect to license modified versions of this file under the
24# terms and conditions of either the GPL or the CDDL or both.
25#
26
27SUB_DEPTH = ../../../..
28include $(KBUILD_PATH)/subheader.kmk
29
30
31# RTIsoMaker - ISO image maker - build version.
32BLDPROGS += bldRTIsoMaker
33bldRTIsoMaker_TEMPLATE = VBoxAdvBldProg
34bldRTIsoMaker_SOURCES = \
35 RTIsoMaker.cpp \
36 ../common/misc/buildconfig.cpp
37bldRTIsoMaker_DEFS = \
38 IPRT_BLDCFG_SCM_REV=$(if $(VBOX_SVN_REV_FALLBACK),$(VBOX_SVN_REV_FALLBACK),$(VBOX_SVN_REV)) \
39 IPRT_BLDCFG_VERSION_STRING=\"$(VBOX_VERSION_STRING)\" \
40 IPRT_BLDCFG_VERSION_MAJOR=$(VBOX_VERSION_MAJOR) \
41 IPRT_BLDCFG_VERSION_MINOR=$(VBOX_VERSION_MINOR) \
42 IPRT_BLDCFG_VERSION_BUILD=$(VBOX_VERSION_BUILD) \
43 IPRT_BLDCFG_TARGET=\"$(KBUILD_TARGET)\" \
44 IPRT_BLDCFG_TARGET_ARCH=\"$(KBUILD_TARGET_ARCH)\" \
45 IPRT_BLDCFG_TYPE=\"$(KBUILD_TYPE)\"
46bldRTIsoMaker_INCS = ../include
47
48
49if !defined(VBOX_ONLY_DOCS)
50
51 # RTManifest is a tool for creating and verifying manifest files - build version.
52 BLDPROGS += bldRTManifest
53 bldRTManifest_TEMPLATE = VBoxAdvBldProg
54 bldRTManifest_SOURCES = RTManifest.cpp
55
56 # RTSignTool - Signing utility - build version. Signed on windows so we can get the certificate from it.
57 BLDPROGS += bldRTSignTool
58 bldRTSignTool_TEMPLATE = VBoxAdvBldProg
59 bldRTSignTool_SOURCES = RTSignTool.cpp
60 bldRTSignTool_DEFS = IPRT_IN_BUILD_TOOL
61 bldRTSignTool_POST_CMDS.win = $(VBOX_SIGN_IMAGE_CMDS)
62
63 # RTLdrCheckImports - import checker.
64 PROGRAMS += bldRTLdrCheckImports
65 bldRTLdrCheckImports_TEMPLATE = VBoxAdvBldProg
66 bldRTLdrCheckImports_DEFS = IPRT_IN_BUILD_TOOL
67 bldRTLdrCheckImports_SOURCES = RTLdrCheckImports.cpp
68
69endif
70
71if !defined(VBOX_ONLY_BUILD)
72
73 # RTCat is a tool for displaying files.
74 PROGRAMS += RTCat
75 RTCat_TEMPLATE = VBoxR3Tool
76 RTCat_SOURCES = RTCat.cpp
77 RTCat_SOURCES += ../VBox/LoadVBoxDDU.cpp
78
79 # RTChMod - our chmod clone.
80 PROGRAMS += RTChMod
81 RTChMod_TEMPLATE = VBoxR3Tool
82 RTChMod_SOURCES = RTChMod.cpp
83
84 # RTCp - our cp clone.
85 PROGRAMS += RTCp
86 RTCp_TEMPLATE = VBoxR3Tool
87 RTCp_SOURCES = RTCp.cpp
88 RTCp_SOURCES += ../VBox/LoadVBoxDDU.cpp
89
90 # RTIsoMaker - ISO image maker - build version.
91 PROGRAMS += RTIsoMaker
92 RTIsoMaker_TEMPLATE = VBoxR3Tool
93 RTIsoMaker_SOURCES = RTIsoMaker.cpp
94 RTIsoMaker_SOURCES += ../VBox/LoadVBoxDDU.cpp
95
96 # RTLs is a tool for listing file information.
97 PROGRAMS += RTLs
98 RTLs_TEMPLATE = VBoxR3Tool
99 RTLs_SOURCES = RTLs.cpp
100 RTLs_SOURCES += ../VBox/LoadVBoxDDU.cpp
101
102 # RTRm is a tool for removing files and directories.
103 PROGRAMS += RTRm
104 RTRm_TEMPLATE = VBoxR3Tool
105 RTRm_SOURCES = RTRm.cpp
106 RTRm_SOURCES += ../VBox/LoadVBoxDDU.cpp
107
108 # RTManifest is a tool for creating and verifying manifest files.
109 PROGRAMS += RTManifest
110 RTManifest_TEMPLATE = VBoxR3Tool
111 RTManifest_SOURCES = RTManifest.cpp
112 RTManifest_SOURCES += ../VBox/LoadVBoxDDU.cpp
113
114 # RTLdrFlt is similar to c++filt, except that it's for VMMR0.r0 stacks.
115 PROGRAMS += RTLdrFlt
116 RTLdrFlt_TEMPLATE = VBoxR3Tool
117 RTLdrFlt_SOURCES = RTLdrFlt.cpp
118
119 # RTGzip - our gzip clone (for testing the gzip/gunzip streaming code)
120 PROGRAMS += RTGzip
121 RTGzip_TEMPLATE = VBoxR3Tool
122 RTGzip_SOURCES = RTGzip.cpp
123 RTGzip_SOURCES += ../VBox/LoadVBoxDDU.cpp
124
125 ifdef VBOX_WITH_LIBCURL
126 # RTHttp - our http/https fetcher (for testing the http client API).
127 PROGRAMS += RTHttp
128 RTHttp_TEMPLATE = VBoxR3Tool
129 RTHttp_SOURCES = RTHttp.cpp
130 endif
131
132 # RTLdrCheckImports - import checker.
133 PROGRAMS += RTLdrCheckImports
134 RTLdrCheckImports_TEMPLATE = VBoxR3Tool
135 RTLdrCheckImports_SOURCES = RTLdrCheckImports.cpp
136 RTLdrCheckImports_SOURCES += ../VBox/LoadVBoxDDU.cpp
137
138 # RTMkDir - our mkdir clone.
139 PROGRAMS += RTMkDir
140 RTMkDir_TEMPLATE = VBoxR3Tool
141 RTMkDir_SOURCES = RTMkDir.cpp
142
143 # RTRmDir - our mkdir clone.
144 PROGRAMS += RTRmDir
145 RTRmDir_TEMPLATE = VBoxR3Tool
146 RTRmDir_SOURCES = RTRmDir.cpp
147
148 # RTShutdown - similar (but not identical) to a typical unix shutdown command.
149 PROGRAMS += RTShutdown
150 RTShutdown_TEMPLATE = VBoxR3Tool
151 RTShutdown_SOURCES = RTShutdown.cpp
152
153 # RTTar - our tar clone (for testing the tar/gzip/gunzip streaming code)
154 PROGRAMS += RTTar
155 RTTar_TEMPLATE = VBoxR3Tool
156 RTTar_SOURCES = RTTar.cpp
157 RTTar_SOURCES += ../VBox/LoadVBoxDDU.cpp
158
159 # RTUnzip - our unzip clone (for testing the unzip streaming code)
160 PROGRAMS += RTUnzip
161 RTUnzip_TEMPLATE = VBoxR3Tool
162 RTUnzip_SOURCES = RTUnzip.cpp
163 RTUnzip_SOURCES += ../VBox/LoadVBoxDDU.cpp
164
165 # RTNtDbgHelp - our tar clone (for testing the tar/gzip/gunzip streaming code)
166 PROGRAMS.win += RTNtDbgHelp
167 RTNtDbgHelp_TEMPLATE = VBoxR3Tool
168 RTNtDbgHelp_SOURCES = RTNtDbgHelp.cpp
169
170 # RTDbgSymCache - Symbol cache manager.
171 PROGRAMS += RTDbgSymCache
172 RTDbgSymCache_TEMPLATE = VBoxR3Tool
173 RTDbgSymCache_SOURCES = RTDbgSymCache.cpp
174
175 # RTSignTool - Signing utility.
176 PROGRAMS += RTSignTool
177 RTSignTool_TEMPLATE = VBoxR3Tool
178 RTSignTool_SOURCES = RTSignTool.cpp
179 RTSignTool_LIBS = $(PATH_STAGE_LIB)/SUPR3$(VBOX_SUFF_LIB)
180
181 # RTTraceLogTool - Trace log collection and dissection tool.
182 PROGRAMS += RTTraceLogTool
183 RTTraceLogTool_TEMPLATE = VBoxR3Tool
184 RTTraceLogTool_SOURCES = RTTraceLogTool.cpp
185
186 if1of ($(KBUILD_TARGET), darwin linux solaris win)
187 # RTKrnlModInfo - our lsmod/kextstat clone (for testing the RTKrnlMod code).
188 PROGRAMS += RTKrnlModInfo
189 RTKrnlModInfo_TEMPLATE = VBoxR3Tool
190 RTKrnlModInfo_SOURCES = RTKrnlModInfo.cpp
191 endif
192
193endif # !VBOX_ONLY_BUILD
194
195include $(FILE_KBUILD_SUB_FOOTER)
196
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