VirtualBox

source: vbox/trunk/src/VBox/Runtime/testcase/Makefile.kmk@ 85311

最後變更 在這個檔案從85311是 85311,由 vboxsync 提交於 5 年 前

IPRT: Added RTPathFindCommon[Ex] + testcases.

  • 屬性 svn:eol-style 設為 native
  • 屬性 svn:keywords 設為 Author Date Id Revision
檔案大小: 26.5 KB
 
1# $Id: Makefile.kmk 85311 2020-07-13 16:07:10Z vboxsync $
2## @file
3# Sub-Makefile for the IPRT testcases.
4#
5
6#
7# Copyright (C) 2006-2020 Oracle Corporation
8#
9# This file is part of VirtualBox Open Source Edition (OSE), as
10# available from http://www.alldomusa.eu.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
30ifdef VBOX_WITH_TESTCASES
31
32#
33# Globals
34#
35# WARNING: Careful with this wrt to the other sub-makefiles this joins.
36#
37TEMPLATE = VBOXR3TSTEXE
38
39# Defined by the parent makefile as well (for errmsgdata.h).
40IPRT_OUT_DIR ?= $(PATH_TARGET)/Runtime
41
42
43#
44# Target lists
45#
46PROGRAMS += \
47 tstRTAssertCompile \
48 tstRTAvl \
49 tstRTBase64 \
50 tstRTBitOperations \
51 tstRTBigNum \
52 tstRTCidr \
53 tstRTCritSect \
54 tstRTCritSectRw \
55 tstRTCrPkix-1 \
56 tstRTCrX509-1 \
57 tstRTCType \
58 tstRTDigest \
59 tstRTDigest-2 \
60 tstDir \
61 tstDir-2 \
62 tstDir-3 \
63 tstRTDvm \
64 tstRTEnv \
65 tstRTErr-1 \
66 tstFile \
67 tstRTFileAio \
68 tstRTFileAppend-1 \
69 tstRTFileQuerySize-1 \
70 tstRTFileModeStringToFlags \
71 tstFileLock \
72 tstRTFileOpenEx-1 \
73 tstFork \
74 tstRTFsQueries \
75 tstRTFilesystem \
76 tstRTGetOpt \
77 tstRTGetOptArgv \
78 tstHandleTable \
79 tstRTHeapOffset \
80 tstRTHeapSimple \
81 tstRTInlineAsm \
82 tstIprtList \
83 tstIprtMiniString \
84 tstLdr \
85 tstLdrLoad \
86 tstRTLocalIpc \
87 tstRTLdrVerifyPeImage \
88 tstRTList \
89 tstRTLockValidator \
90 tstLog \
91 tstRTMath \
92 tstRTMemEf \
93 tstRTMemCache \
94 tstRTMemPool \
95 tstRTMemWipe \
96 tstRTMemSafer \
97 tstMove \
98 tstRTMp-1 \
99 tstRTNetIPv4 \
100 tstRTNetIPv6 \
101 tstOnce \
102 tstRTPath \
103 tstRTPathFindCommon \
104 tstRTPathGlob \
105 tstRTPathQueryInfo \
106 tstRTPipe \
107 tstRTPoll \
108 tstRTPrfIO \
109 tstRTProcCreateEx \
110 tstRTProcCreatePrf \
111 tstRTProcQueryUsername \
112 tstPrfRT \
113 tstRand \
114 tstRTReqPool \
115 tstRTSemEventMulti \
116 tstSemMutex \
117 tstSemPingPong \
118 tstRTSemRW \
119 tstRTSemXRoads \
120 tstRTSort \
121 tstRTStrAlloc \
122 tstRTStrCache \
123 tstRTStrCatCopy \
124 tstRTStrFormat \
125 tstRTStrSplit \
126 tstStrSimplePattern \
127 tstStrToNum \
128 tstRTStrVersion \
129 tstRTSymlink \
130 tstRTSystemQueryDmi \
131 tstRTSystemQueryFirmware \
132 tstRTSystemQueryOsInfo \
133 tstRTTcp-1 \
134 tstRTTemp \
135 tstRTDirCreateUniqueNumbered \
136 tstTermCallbacks \
137 tstThread-1 \
138 tstRTThreadPoke \
139 tstRTThreadExecutionTime \
140 tstRTTime \
141 tstTime-2 \
142 tstTime-3 \
143 tstTime-4 \
144 tstTimer \
145 tstRTTimerLR \
146 tstRTTimeSpec \
147 tstRTTls-1 \
148 tstRTTraceLog \
149 tstRTUdp-1 \
150 tstUtf8 \
151 tstRTUuid \
152 tstRTCircBuf \
153 tstRTManifest \
154 tstRTUri \
155 tstVector \
156 tstRTVfs \
157 tstRTZip \
158 tstRTJson \
159 tstRTShMem
160
161PROGRAMS.win += \
162 tstRTCritSectW32 \
163 tstRTProcWait \
164 tstFileAppendWin-1 \
165 tstRTNtPath-1 \
166 ntGetTimerResolution \
167 tstRTDarwinMachKernel
168
169PROGRAMS.linux += \
170 tstRTProcWait \
171 tstRTProcIsRunningByName \
172 tstRTBitOperationsPIC3 \
173 tstRTInlineAsmPIC \
174 tstRTInlineAsmPIC3
175PROGRAMS.solaris += \
176 tstRTCoreDump
177PROGRAMS.darwin += \
178 tstDarwinSched \
179 tstRTDarwinMachKernel
180ifdef VBOX_WITH_LIBCURL
181 PROGRAMS += \
182 tstRTHttp-1 \
183 tstRTCRest-1 \
184 tstRTS3
185endif
186if1of ($(KBUILD_TARGET_ARCH), amd64 x86)
187 PROGRAMS += \
188 tstLdr-2 \
189 tstLdr-3 \
190 tstLdr-4 \
191 tstNoCrt-1 \
192 tstTSC
193 if defined(VBOX_WITH_HARDENING) && "$(KBUILD_TARGET)" == "win"
194 PROGRAMS += \
195 tstRTR0MemUserKernelDriverHardened \
196 tstRTR0SemMutexDriverHardened \
197 tstRTR0TimerDriverHardened \
198 tstRTR0ThreadPreemptionDriverHardened \
199 tstRTR0ThreadDriverHardened
200 DLLS += \
201 tstRTR0MemUserKernelDriver \
202 tstRTR0SemMutexDriver \
203 tstRTR0TimerDriver \
204 tstRTR0ThreadPreemptionDriver \
205 tstRTR0ThreadDriver
206 else
207 PROGRAMS += \
208 tstRTR0MemUserKernelDriver \
209 tstRTR0SemMutexDriver \
210 tstRTR0TimerDriver \
211 tstRTR0ThreadPreemptionDriver \
212 tstRTR0ThreadDriver
213 endif
214 if1of ($(KBUILD_TARGET_ARCH), $(VBOX_SUPPORTED_HOST_ARCHS))
215 SYSMODS += \
216 tstLdrObjR0
217 ifdef VBOX_WITH_RAW_MODE
218 SYSMODS += tstLdrObj
219 endif
220 endif
221 SYSMODS += \
222 tstRTR0MemUserKernel \
223 tstRTR0SemMutex \
224 tstRTR0Timer \
225 tstRTR0ThreadPreemption \
226 tstRTR0Thread
227 if1of ($(KBUILD_TARGET), solaris darwin)
228 PROGRAMS += tstRTR0DbgKrnlInfoDriver
229 SYSMODS += tstRTR0DbgKrnlInfo
230 endif # VBOX_SUPPORTED_HOST_ARCHS only
231
232endif
233if1of ($(VBOX_LDR_FMT)), lx pe)
234 LIBRARIES += \
235 tstLdr-4Imp
236endif
237
238
239#
240# Target configs in almost alphabetical order.
241#
242
243tstRTAssertCompile_TEMPLATE = VBOXR3TSTEXE
244tstRTAssertCompile_INSTTYPE = none
245tstRTAssertCompile_SOURCES = tstRTAssertCompile.cpp
246
247tstRTAvl_TEMPLATE = VBOXR3TSTEXE
248tstRTAvl_SOURCES = tstRTAvl.cpp
249
250tstRTBase64_TEMPLATE = VBOXR3TSTEXE
251tstRTBase64_SOURCES = tstRTBase64.cpp
252
253tstRTBigNum_TEMPLATE = VBOXR3TSTEXE
254tstRTBigNum_SOURCES = tstRTBigNum.cpp
255tstRTBigNum_SDKS = VBOX_OPENSSL2
256
257tstRTBitOperations_TEMPLATE = VBOXR3TSTEXE
258tstRTBitOperations_SOURCES = tstRTBitOperations.cpp
259
260tstRTBitOperationsPIC3_TEMPLATE = VBOXR3TSTEXE
261tstRTBitOperationsPIC3_SOURCES = tstRTBitOperations.cpp
262tstRTBitOperationsPIC3_CXXFLAGS = -fPIC -fomit-frame-pointer -O3
263tstRTBitOperationsPIC3_DEFS = PIC
264
265tstRTCidr_TEMPLATE = VBOXR3TSTEXE
266tstRTCidr_SOURCES = tstRTCidr.cpp
267
268tstRTCritSect_TEMPLATE = VBOXR3TSTEXE
269tstRTCritSect_SOURCES = tstRTCritSect.cpp
270
271tstRTCritSectRw_TEMPLATE = VBOXR3TSTEXE
272tstRTCritSectRw_SOURCES = tstRTCritSectRw.cpp
273
274tstRTCritSectW32_TEMPLATE = VBOXR3TSTEXE
275tstRTCritSectW32_SOURCES = tstRTCritSect.cpp
276tstRTCritSectW32_DEFS = TRY_WIN32_CRIT
277
278tstRTCrPkix-1_TEMPLATE = VBOXR3TSTEXE
279tstRTCrPkix-1_SOURCES = tstRTCrPkix-1.cpp
280
281tstRTCrX509-1_TEMPLATE = VBOXR3TSTEXE
282tstRTCrX509-1_SOURCES = tstRTCrX509-1.cpp
283tstRTCrX509-1_INCS = $(tstRTCrX509-1_0_OUTDIR)
284tstRTCrX509-1_CLEAN = $(tstRTCrX509-1_0_OUTDIR)/tstRTCrX509-1.h
285tstRTCrX509-1_INTERMEDIATES = $(tstRTCrX509-1_0_OUTDIR)/tstRTCrX509-1.h
286tstRTCrX509-1_VBOX_FILES := \
287 Pem_md4=$(PATH_SUB_CURRENT)/tstRTCrX509-md4.pem \
288 Pem_md5=$(PATH_SUB_CURRENT)/tstRTCrX509-md5.pem \
289 Pem_sha1=$(PATH_SUB_CURRENT)/tstRTCrX509-sha1.pem \
290 Pem_sha224=$(PATH_SUB_CURRENT)/tstRTCrX509-sha224.pem \
291 Pem_sha256=$(PATH_SUB_CURRENT)/tstRTCrX509-sha256.pem \
292 Pem_sha384=$(PATH_SUB_CURRENT)/tstRTCrX509-sha384.pem \
293 Pem_sha512=$(PATH_SUB_CURRENT)/tstRTCrX509-sha512.pem \
294 Pem_cert1=$(PATH_SUB_CURRENT)/tstRTCrX509-cert1.pem \
295 \
296 Der_md4=$(PATH_SUB_CURRENT)/tstRTCrX509-md4-cert.der \
297 Der_md5=$(PATH_SUB_CURRENT)/tstRTCrX509-md5-cert.der \
298 Der_sha1=$(PATH_SUB_CURRENT)/tstRTCrX509-sha1-cert.der \
299 Der_sha224=$(PATH_SUB_CURRENT)/tstRTCrX509-sha224-cert.der \
300 Der_sha256=$(PATH_SUB_CURRENT)/tstRTCrX509-sha256-cert.der \
301 Der_sha384=$(PATH_SUB_CURRENT)/tstRTCrX509-sha384-cert.der \
302 Der_sha512=$(PATH_SUB_CURRENT)/tstRTCrX509-sha512-cert.der \
303 Der_cert1=$(PATH_SUB_CURRENT)/tstRTCrX509-cert1.der \
304 $(NO_SUCH_VARIABLE)
305$$(tstRTCrX509-1_0_OUTDIR)/tstRTCrX509-1.h: \
306 $(foreach file,$(tstRTCrX509-1_VBOX_FILES),$(lastword $(subst =,$(SP) ,$(file)))) \
307 $(VBOX_BIN2C) \
308 | $$(dir $$@)
309 $(RM) -f -- "$@"
310 $(foreach file,$(tstRTCrX509-1_VBOX_FILES) \
311 , $(NLTAB)$(VBOX_BIN2C) -ascii --append \
312 "$(firstword $(subst =,$(SP) ,$(file)))" \
313 "$(lastword $(subst =,$(SP) ,$(file)))" \
314 "$@")
315
316
317tstRTCType_TEMPLATE = VBOXR3TSTEXE
318tstRTCType_SOURCES = tstRTCType.cpp
319
320ifdef VBOX_WITH_LIBCURL
321 tstRTCRest-1_TEMPLATE = VBOXR3TSTEXE
322 tstRTCRest-1_SOURCES = tstRTCRest-1.cpp
323endif
324
325tstRTDigest_TEMPLATE = VBOXR3TSTEXE
326tstRTDigest_SOURCES = tstRTDigest.cpp
327
328tstRTDigest-2_TEMPLATE = VBOXR3TSTEXE
329ifndef VBOX_WITH_ALT_HASH_CODE
330 tstRTDigest-2_DEFS = IPRT_WITHOUT_SHA512T224 IPRT_WITHOUT_SHA512T256
331endif
332tstRTDigest-2_SOURCES = tstRTDigest-2.cpp
333
334ifdef VBOX_WITH_LIBCURL
335tstRTHttp-1_TEMPLATE = VBOXR3TSTEXE
336tstRTHttp-1_SOURCES = tstRTHttp-1.cpp
337tstRTHttp-1_SDKS = VBOX_LIBCURL
338endif
339
340tstDir_TEMPLATE = VBOXR3TSTEXE
341tstDir_SOURCES = tstDir.cpp
342
343tstDir-2_TEMPLATE = VBOXR3TSTEXE
344tstDir-2_SOURCES = tstDir-2.cpp
345
346tstDir-3_TEMPLATE = VBOXR3TSTEXE
347tstDir-3_SOURCES = tstDir-3.cpp
348
349tstRTDvm_TEMPLATE = VBOXR3TSTEXE
350tstRTDvm_SOURCES = tstRTDvm.cpp
351
352tstRTEnv_TEMPLATE = VBOXR3TSTEXE
353tstRTEnv_SOURCES = tstRTEnv.cpp
354
355tstRTErr-1_TEMPLATE = VBOXR3TSTEXE
356tstRTErr-1_SOURCES = tstRTErr-1.cpp
357
358tstFile_TEMPLATE = VBOXR3TSTEXE
359tstFile_SOURCES = tstFile.cpp
360
361tstRTFileAio_SOURCES = VBOXR3TSTEXE
362tstRTFileAio_SOURCES = tstRTFileAio.cpp
363
364tstRTFileAppend-1_TEMPLATE = VBOXR3TSTEXE
365tstRTFileAppend-1_SOURCES = tstRTFileAppend-1.cpp
366
367tstRTFileQuerySize-1_TEMPLATE = VBOXR3TSTEXE
368tstRTFileQuerySize-1_SOURCES = tstRTFileQuerySize-1.cpp
369
370tstRTFileModeStringToFlags_TEMPLATE = VBOXR3TSTEXE
371tstRTFileModeStringToFlags_SOURCES = tstRTFileModeStringToFlags.cpp
372
373tstRTFileOpenEx-1_TEMPLATE = VBOXR3TSTEXE
374tstRTFileOpenEx-1_SOURCES = tstRTFileOpenEx-1.cpp
375
376tstFileAppendWin-1_TEMPLATE = VBOXR3TSTEXE
377tstFileAppendWin-1_SOURCES = tstFileAppendWin-1.cpp
378
379tstFileLock_TEMPLATE = VBOXR3TSTEXE
380tstFileLock_SOURCES = tstFileLock.cpp
381
382tstFork_TEMPLATE = VBOXR3TSTEXE
383tstFork_SOURCES = tstFork.cpp
384
385tstRTFsQueries_TEMPLATE = VBOXR3TSTEXE
386tstRTFsQueries_SOURCES = tstRTFsQueries.cpp
387
388tstRTFilesystem_TEMPLATE = VBOXR3TSTEXE
389tstRTFilesystem_SOURCES = tstRTFilesystem.cpp
390
391tstRTGetOpt_TEMPLATE = VBOXR3TSTEXE
392tstRTGetOpt_SOURCES = tstRTGetOpt.cpp
393
394tstRTGetOptArgv_TEMPLATE = VBOXR3TSTEXE
395tstRTGetOptArgv_SOURCES = tstRTGetOptArgv.cpp
396
397tstHandleTable_SOURCES = tstHandleTable.cpp
398
399tstRTHeapOffset_TEMPLATE = VBOXR3TSTEXE
400tstRTHeapOffset_SOURCES = tstRTHeapOffset.cpp
401
402tstRTHeapSimple_TEMPLATE = VBOXR3TSTEXE
403tstRTHeapSimple_SOURCES = tstRTHeapSimple.cpp
404
405tstRTInlineAsm_TEMPLATE = VBOXR3TSTEXE
406tstRTInlineAsm_SOURCES = tstRTInlineAsm.cpp
407
408tstRTInlineAsmPIC_TEMPLATE = VBOXR3TSTEXE
409tstRTInlineAsmPIC_SOURCES = tstRTInlineAsm.cpp
410tstRTInlineAsmPIC_CXXFLAGS = -fPIC
411tstRTInlineAsmPIC_DEFS = PIC
412
413tstRTInlineAsmPIC3_TEMPLATE = VBOXR3TSTEXE
414tstRTInlineAsmPIC3_SOURCES = tstRTInlineAsm.cpp
415tstRTInlineAsmPIC3_CXXFLAGS = -fPIC -fomit-frame-pointer -O3
416tstRTInlineAsmPIC3_DEFS = PIC
417
418tstIprtList_TEMPLATE = VBOXR3TSTEXE
419tstIprtList_SOURCES = tstIprtList.cpp
420
421tstIprtMiniString_TEMPLATE = VBOXR3TSTEXE
422tstIprtMiniString_SOURCES = tstIprtMiniString.cpp
423
424tstLdr_TEMPLATE = VBOXR3TSTEXE
425tstLdr_SOURCES = tstLdr.cpp
426
427tstLdr-2_TEMPLATE = VBOXR3TSTEXE
428tstLdr-2_SOURCES = tstLdr-2.cpp
429tstLdr-2_DEFS = IN_DIS
430tstLdr-2_LIBS = \
431 $(PATH_STAGE_LIB)/DisasmR3$(VBOX_SUFF_LIB)
432
433ifdef VBOX_WITH_RAW_MODE
434 tstLdrObj_TEMPLATE = VBoxRc
435 tstLdrObj_INST = $(INST_TESTCASE)
436 tstLdrObj_SYSSUFF = .gc
437 tstLdrObj_SOURCES = tstLdrObj.cpp
438 tstLdrObj_DEFS = IN_DIS IN_RT_RC DIS_CORE_ONLY
439 ifeq ($(VBOX_LDR_FMT32),elf)
440 tstLdrObj_DEFS += VBOX_SOME_IMPORT_FUNCTION
441 endif
442 tstLdrObj_LIBS = \
443 $(PATH_STAGE_LIB)/DisasmRC$(VBOX_SUFF_LIB) \
444 $(PATH_STAGE_LIB)/RuntimeRC$(VBOX_SUFF_LIB)
445 if1of ($(VBOX_LDR_FMT32),lx pe)
446 tstLdrObj_LIBS += \
447 $(PATH_STAGE_LIB)/VMMRCBuiltin$(VBOX_SUFF_LIB) \
448 $(PATH_STAGE_LIB)/VMMRCImp$(VBOX_SUFF_LIB)
449 endif
450endif # VBOX_WITH_RAW_MODE
451
452tstLdr-3_TEMPLATE = VBOXR3TSTEXE
453tstLdr-3_SOURCES = tstLdr-3.cpp
454tstLdr-3_DEFS = IN_DIS
455tstLdr-3_LIBS = \
456 $(PATH_STAGE_LIB)/DisasmR3$(VBOX_SUFF_LIB)
457
458tstLdr-4Imp_TEMPLATE = VBoxR0
459ifeq ($(VBOX_LDR_FMT),lx)
460 tstLdr-4Imp_SOURCES = tstLdr-4Imp-os2.def
461else ifeq ($(VBOX_LDR_FMT),pe)
462 tstLdr-4Imp_SOURCES.win = tstLdr-4Imp-win.def
463endif
464
465tstLdrObjR0_TEMPLATE = VBoxR0
466tstLdrObjR0_INST = $(INST_TESTCASE)
467tstLdrObjR0_SYSSUFF = .r0
468tstLdrObjR0_SOURCES = tstLdrObjR0.cpp tstLdrDisasmTest.cpp
469tstLdrObjR0_DEFS = IN_DIS IN_RT_R0 DIS_CORE_ONLY
470ifeq ($(VBOX_LDR_FMT32),elf)
471 tstLdrObjR0_DEFS += VBOX_SOME_IMPORT_FUNCTION
472endif
473ifn1of ($(KBUILD_TARGET), win)
474 tstLdrObjR0_CXXFLAGS = $(VBOX_GCC_Wno-array_bounds)
475endif
476tstLdrObjR0_LIBS = \
477 $(PATH_STAGE_LIB)/DisasmR0$(VBOX_SUFF_LIB) \
478 $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB)
479ifeq ($(VBOX_LDR_FMT),pe)
480 tstLdrObjR0_LIBS += \
481 $(PATH_STAGE_LIB)/SUPR0$(VBOX_SUFF_LIB) \
482 $(TARGET_tstLdr-4Imp)
483endif
484ifeq ($(VBOX_LDR_FMT),lx)
485 tstLdrObjR0_LIBS += \
486 $(PATH_STAGE_LIB)/SUPR0$(VBOX_SUFF_LIB) \
487 $(TARGET_tstLdr-4Imp)
488endif
489
490tstLdr-4_TEMPLATE = VBOXR3TSTEXE
491tstLdr-4_SOURCES = tstLdr-4.cpp tstLdrDisasmTest.cpp
492tstLdr-4_DEFS = IN_DIS
493tstLdr-4_LIBS = \
494 $(PATH_STAGE_LIB)/DisasmR3$(VBOX_SUFF_LIB)
495
496tstLdrLoad_TEMPLATE = VBOXR3TSTEXE
497tstLdrLoad_SOURCES = tstLdrLoad.cpp
498
499tstRTLdrVerifyPeImage_TEMPLATE = VBOXR3TSTEXE
500tstRTLdrVerifyPeImage_SOURCES = tstRTLdrVerifyPeImage.cpp
501
502tstRTList_TEMPLATE = VBOXR3TSTEXE
503tstRTList_SOURCES = tstRTList.cpp
504
505tstRTLocalIpc_TEMPLATE = VBOXR3TSTEXE
506tstRTLocalIpc_SOURCES = tstRTLocalIpc.cpp
507
508tstRTLockValidator_TEMPLATE = VBOXR3TSTEXE
509tstRTLockValidator_SOURCES = tstRTLockValidator.cpp
510
511tstLog_TEMPLATE = VBOXR3TSTEXE
512tstLog_SOURCES = tstLog.cpp
513tstLog_INCS = $(tstLog_0_OUTDIR)
514tstLog_INTERMEDIATES = $(tstLog_0_OUTDIR)/tstLogGroups.h
515tstLog_CLEAN = $(tstLog_0_OUTDIR)/tstLogGroups.h
516$$(tstLog_0_OUTDIR)/tstLogGroups.h: $(PATH_ROOT)/include/VBox/log.h
517 $(call MSG_GENERATE,,$@,$<)
518 $(QUIET)$(RM) -f -- "$@"
519 $(QUIET)$(SED) -n -e 's/^ *LOG_GROUP_\([A-Z0-9_]*\),.*$(DOLLAR)/{ LOG_GROUP_\1, "\1" },/p' --output "$@" "$<"
520
521tstRTMemEf_TEMPLATE = VBOXR3TSTEXE
522tstRTMemEf_SOURCES = tstRTMemEf.cpp
523
524tstRTMemCache_TEMPLATE = VBOXR3TSTEXE
525tstRTMemCache_SOURCES = tstRTMemCache.cpp
526
527tstRTMemPool_TEMPLATE = VBOXR3TSTEXE
528tstRTMemPool_SOURCES = tstRTMemPool.cpp
529
530tstRTMemWipe_TEMPLATE = VBOXR3TSTEXE
531tstRTMemWipe_SOURCES = tstRTMemWipe.cpp
532
533tstRTMemSafer_TEMPLATE = VBOXR3TSTEXE
534tstRTMemSafer_SOURCES = tstRTMemSafer.cpp
535
536tstMove_TEMPLATE = VBOXR3TSTEXE
537tstMove_SOURCES = tstMove.cpp
538
539tstRTMp-1_TEMPLATE = VBOXR3TSTEXE
540tstRTMp-1_SOURCES = tstRTMp-1.cpp
541
542tstRTNetIPv4_TEMPLATE = VBOXR3TSTEXE
543tstRTNetIPv4_SOURCES = tstRTNetIPv4.cpp
544
545tstRTNetIPv6_TEMPLATE = VBOXR3TSTEXE
546tstRTNetIPv6_SOURCES = tstRTNetIPv6.cpp
547
548tstNoCrt-1_TEMPLATE = VBOXR3TSTEXE
549tstNoCrt-1_DEFS = RT_WITHOUT_NOCRT_WRAPPER_ALIASES
550tstNoCrt-1_SOURCES = \
551 tstNoCrt-1.cpp \
552 ../common/string/memcpy.asm \
553 ../common/string/mempcpy.asm \
554 ../common/string/memmove.asm \
555 ../common/string/memset.asm \
556 ../common/string/memchr.asm \
557 ../common/string/memcmp.asm \
558 ../common/string/strchr.asm \
559 ../common/string/strcmp.asm \
560 ../common/string/strcpy.asm \
561 ../common/string/strlen.asm
562
563tstRTNtPath-1_TEMPLATE = VBOXR3TSTEXE
564tstRTNtPath-1_SOURCES = tstRTNtPath-1.cpp
565
566tstOnce_TEMPLATE = VBOXR3TSTEXE
567tstOnce_SOURCES = tstOnce.cpp
568
569tstRTPath_TEMPLATE = VBOXR3TSTEXE
570tstRTPath_SOURCES = tstRTPath.cpp
571
572tstRTPathFindCommon_TEMPLATE = VBOXR3TSTEXE
573tstRTPathFindCommon_SOURCES = tstRTPathFindCommon.cpp
574
575tstRTPathGlob_TEMPLATE = VBOXR3TSTEXE
576tstRTPathGlob_SOURCES = tstRTPathGlob.cpp
577
578tstRTPathQueryInfo_TEMPLATE = VBOXR3TSTEXE
579tstRTPathQueryInfo_SOURCES = tstRTPathQueryInfo.cpp
580
581tstRTPipe_TEMPLATE = VBOXR3TSTEXE
582tstRTPipe_SOURCES = tstRTPipe.cpp
583
584tstRTPoll_TEMPLATE = VBOXR3TSTEXE
585tstRTPoll_SOURCES = tstRTPoll.cpp
586
587tstPrfRT_TEMPLATE = VBOXR3TSTEXE
588tstPrfRT_SOURCES = tstPrfRT.cpp
589tstPrfRT_SOURCES.x86 = tstRTPrfA.asm
590tstPrfRT_SOURCES.amd64 = tstRTPrfA.asm
591
592tstRTPrfIO_TEMPLATE = VBOXR3TSTEXE
593tstRTPrfIO_SOURCES = tstRTPrfIO.cpp
594
595tstRTProcCreateEx_TEMPLATE = VBOXR3TSTEXE
596tstRTProcCreateEx_SOURCES = tstRTProcCreateEx.cpp
597
598tstRTProcCreatePrf_TEMPLATE = VBOXR3TSTEXE
599tstRTProcCreatePrf_SOURCES = tstRTProcCreatePrf.cpp
600
601tstRTProcQueryUsername_TEMPLATE = VBOXR3TSTEXE
602tstRTProcQueryUsername_SOURCES = tstRTProcQueryUsername.cpp
603
604tstRTProcWait_TEMPLATE = VBOXR3TSTEXE
605tstRTProcWait_SOURCES = tstRTProcWait.cpp
606
607tstRTProcIsRunningByName_TEMPLATE = VBOXR3TSTEXE
608tstRTProcIsRunningByName_SOURCES = tstRTProcIsRunningByName.cpp
609
610tstRand_TEMPLATE = VBOXR3TSTEXE
611tstRand_SOURCES = tstRand.cpp
612
613tstRTReqPool_TEMPLATE = VBOXR3TSTEXE
614tstRTReqPool_SOURCES = tstRTReqPool.cpp
615
616tstRTS3_TEMPLATE = VBOXR3TSTEXE
617tstRTS3_SOURCES = tstRTS3.cpp
618
619tstSemMutex_TEMPLATE = VBOXR3TSTEXE
620tstSemMutex_SOURCES = tstSemMutex.cpp
621
622tstRTSemEventMulti_TEMPLATE = VBOXR3TSTEXE
623tstRTSemEventMulti_SOURCES = tstRTSemEventMulti.cpp
624
625tstRTSemRW_TEMPLATE = VBOXR3TSTEXE
626tstRTSemRW_SOURCES = tstRTSemRW.cpp
627
628tstSemPingPong_TEMPLATE = VBOXR3TSTEXE
629tstSemPingPong_SOURCES = tstSemPingPong.cpp
630
631tstRTSemXRoads_TEMPLATE = VBOXR3TSTEXE
632tstRTSemXRoads_SOURCES = tstRTSemXRoads.cpp
633
634tstRTSort_TEMPLATE = VBOXR3TSTEXE
635tstRTSort_SOURCES = tstRTSort.cpp
636
637tstRTStrAlloc_TEMPLATE = VBOXR3TSTEXE
638tstRTStrAlloc_SOURCES = tstRTStrAlloc.cpp
639
640tstRTStrCache_TEMPLATE = VBOXR3TSTEXE
641tstRTStrCache_SOURCES = tstRTStrCache.cpp
642
643tstRTStrCatCopy_TEMPLATE = VBOXR3TSTEXE
644tstRTStrCatCopy_SOURCES = tstRTStrCatCopy.cpp
645
646tstRTStrFormat_TEMPLATE = VBOXR3TSTEXE
647tstRTStrFormat_SOURCES = tstRTStrFormat.cpp
648
649tstRTStrSplit_TEMPLATE = VBOXR3TSTEXE
650tstRTStrSplit_SOURCES = tstRTStrSplit.cpp
651
652tstStrSimplePattern_TEMPLATE = VBOXR3TSTEXE
653tstStrSimplePattern_SOURCES = tstStrSimplePattern.cpp
654
655tstStrToNum_TEMPLATE = VBOXR3TSTEXE
656tstStrToNum_SOURCES = tstStrToNum.cpp
657
658tstRTStrVersion_TEMPLATE = VBOXR3TSTEXE
659tstRTStrVersion_SOURCES = tstRTStrVersion.cpp
660
661tstRTSymlink_TEMPLATE = VBOXR3TSTEXE
662tstRTSymlink_SOURCES = tstRTSymlink.cpp
663
664tstRTSystemQueryDmi_TEMPLATE = VBOXR3TSTEXE
665tstRTSystemQueryDmi_SOURCES = tstRTSystemQueryDmi.cpp
666
667tstRTSystemQueryFirmware_TEMPLATE = VBOXR3TSTEXE
668tstRTSystemQueryFirmware_SOURCES = tstRTSystemQueryFirmware.cpp
669
670tstRTSystemQueryOsInfo_TEMPLATE = VBOXR3TSTEXE
671tstRTSystemQueryOsInfo_SOURCES = tstRTSystemQueryOsInfo.cpp
672
673tstRTTcp-1_TEMPLATE = VBOXR3TSTEXE
674tstRTTcp-1_SOURCES = tstRTTcp-1.cpp
675
676tstRTTemp_TEMPLATE = VBOXR3TSTEXE
677tstRTTemp_SOURCES = tstRTTemp.cpp
678
679tstRTDirCreateUniqueNumbered_TEMPLATE = VBOXR3TSTEXE
680tstRTDirCreateUniqueNumbered_SOURCES = tstRTDirCreateUniqueNumbered.cpp
681
682tstTermCallbacks_TEMPLATE = VBOXR3TSTEXE
683tstTermCallbacks_SOURCES = tstTermCallbacks.cpp
684
685tstThread-1_TEMPLATE = VBOXR3TSTEXE
686tstThread-1_SOURCES = tstThread-1.cpp
687
688tstRTThreadPoke_TEMPLATE = VBOXR3TSTEXE
689tstRTThreadPoke_SOURCES = tstRTThreadPoke.cpp
690
691tstRTThreadExecutionTime_TEMPLATE = VBOXR3TSTEXE
692tstRTThreadExecutionTime_SOURCES = tstRTThreadExecutionTime.cpp
693
694tstRTTime_TEMPLATE = VBOXR3TSTEXE
695tstRTTime_SOURCES = tstRTTime.cpp
696
697tstRTTls-1_TEMPLATE = VBOXR3TSTEXE
698tstRTTls-1_SOURCES = tstRTTls-1.cpp
699
700tstRTTraceLog_TEMPLATE = VBOXR3TSTEXE
701tstRTTraceLog_SOURCES = tstRTTraceLog.cpp
702
703tstTime-2_TEMPLATE = VBOXR3TSTEXE
704tstTime-2_SOURCES = tstTime-2.cpp
705
706tstTime-3_TEMPLATE = VBOXR3TSTEXE
707tstTime-3_SOURCES = tstTime-3.cpp
708
709tstTime-4_TEMPLATE = VBOXR3TSTEXE
710tstTime-4_SOURCES = tstTime-4.cpp
711
712tstTimer_TEMPLATE = VBOXR3TSTEXE
713tstTimer_SOURCES = tstTimer.cpp
714
715tstRTTimerLR_TEMPLATE = VBOXR3TSTEXE
716tstRTTimerLR_SOURCES = tstRTTimerLR.cpp
717
718tstRTTimeSpec_TEMPLATE = VBOXR3TSTEXE
719tstRTTimeSpec_SOURCES = tstRTTimeSpec.cpp
720
721tstTSC_SOURCES = tstTSC.cpp
722tstTSC_CXXFLAGS.linux += -O3
723
724tstRTUuid_TEMPLATE = VBOXR3TSTEXE
725tstRTUuid_SOURCES = tstRTUuid.cpp
726
727tstRTUdp-1_TEMPLATE = VBOXR3TSTEXE
728tstRTUdp-1_SOURCES = tstRTUdp-1.cpp
729
730tstUtf8_TEMPLATE = VBOXR3TSTEXE
731tstUtf8_SOURCES = tstUtf8.cpp
732
733tstRTCircBuf_TEMPLATE = VBOXR3TSTEXE
734tstRTCircBuf_SOURCES = tstRTCircBuf.cpp
735
736tstRTManifest_TEMPLATE = VBOXR3TSTEXE
737tstRTManifest_SOURCES = tstRTManifest.cpp
738
739tstRTMath_TEMPLATE = VBOXR3TSTEXE
740tstRTMath_SOURCES = \
741 tstRTMath.cpp \
742 ../common/math/gcc/udivmoddi4.c
743
744tstRTUri_TEMPLATE = VBOXR3TSTEXE
745tstRTUri_SOURCES = tstRTUri.cpp
746
747tstRTVfs_TEMPLATE = VBOXR3TSTEXE
748tstRTVfs_SOURCES = tstRTVfs.cpp
749
750tstRTCoreDump_TEMPLACE = VBOXR3TSTEXE
751tstRTCoreDump_SOURCES = tstRTCoreDump.cpp
752
753tstVector_TEMPLATE = VBOXR3TSTEXE
754tstVector_SOURCES = tstVector.cpp
755
756
757tstRTZip_TEMPLATE = VBOXR3TSTEXE
758tstRTZip_SOURCES = tstRTZip.cpp
759
760tstRTJson_TEMPLATE = VBOXR3TSTEXE
761tstRTJson_SOURCES = tstRTJson.cpp
762
763tstRTShMem_TEMPLATE = VBOXR3TSTEXE
764tstRTShMem_SOURCES = tstRTShMem.cpp
765
766#
767# Ring-0 testcases.
768#
769
770## @todo create a template for compiling the ring-0 part.
771tstRTR0DbgKrnlInfo_TEMPLATE = VBoxR0
772tstRTR0DbgKrnlInfo_INST = $(INST_TESTCASE)
773tstRTR0DbgKrnlInfo_DEFS = IN_RT_R0
774tstRTR0DbgKrnlInfo_SYSSUFF = .r0
775tstRTR0DbgKrnlInfo_SOURCES = tstRTR0DbgKrnlInfo.cpp
776tstRTR0DbgKrnlInfo_LIBS = $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB)
777if1of ($(VBOX_LDR_FMT), pe lx)
778 tstRTR0DbgKrnlInfo_LIBS += $(PATH_STAGE_LIB)/SUPR0$(VBOX_SUFF_LIB)
779endif
780if defined(VBOX_WITH_HARDENING) && "$(KBUILD_TARGET)" == "win"
781 tstRTR0DbgKrnlInfoDriverHardened_TEMPLATE = VBoxR3HardenedTstExe
782 tstRTR0DbgKrnlInfoDriverHardened_NAME = tstRTR0DbgKrnlInfoDriver
783 ifdef VBOX_WITH_AUTOMATIC_DEFS_QUOTING
784 tstRTR0DbgKrnlInfoDriverHardened_DEFS = PROGRAM_NAME_STR="tstRTR0DbgKrnlInfoDriver"
785 else
786 tstRTR0DbgKrnlInfoDriverHardened_DEFS = PROGRAM_NAME_STR=\"tstRTR0DbgKrnlInfoDriver\"
787 endif
788 tstRTR0DbgKrnlInfoDriverHardened_SOURCES = ../../HostDrivers/Support/SUPR3HardenedMainTemplateTestcase.cpp
789 tstRTR0DbgKrnlInfoDriver_TEMPLATE = VBoxR3HardenedTstDll
790else
791 tstRTR0DbgKrnlInfoDriver_TEMPLATE = VBOXR3TSTEXE
792endif
793tstRTR0DbgKrnlInfoDriver_TEMPLATE = VBOXR3TSTEXE
794tstRTR0DbgKrnlInfoDriver_SOURCES = tstRTR0DbgKrnlInfoDriver.cpp
795
796
797tstRTR0MemUserKernel_TEMPLATE = VBoxR0
798tstRTR0MemUserKernel_INST = $(INST_TESTCASE)
799tstRTR0MemUserKernel_DEFS = IN_RT_R0
800tstRTR0MemUserKernel_SYSSUFF = .r0
801tstRTR0MemUserKernel_SOURCES = tstRTR0MemUserKernel.cpp
802tstRTR0MemUserKernel_LIBS = $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB)
803if1of ($(VBOX_LDR_FMT), pe lx)
804 tstRTR0MemUserKernel_LIBS += $(PATH_STAGE_LIB)/SUPR0$(VBOX_SUFF_LIB)
805endif
806if defined(VBOX_WITH_HARDENING) && "$(KBUILD_TARGET)" == "win"
807 tstRTR0MemUserKernelDriverHardened_TEMPLATE = VBoxR3HardenedTstExe
808 tstRTR0MemUserKernelDriverHardened_NAME = tstRTR0MemUserKernelDriver
809 ifdef VBOX_WITH_AUTOMATIC_DEFS_QUOTING
810 tstRTR0MemUserKernelDriverHardened_DEFS = PROGRAM_NAME_STR="tstRTR0MemUserKernelDriver"
811 else
812 tstRTR0MemUserKernelDriverHardened_DEFS = PROGRAM_NAME_STR=\"tstRTR0MemUserKernelDriver\"
813 endif
814 tstRTR0MemUserKernelDriverHardened_SOURCES = ../../HostDrivers/Support/SUPR3HardenedMainTemplateTestcase.cpp
815 tstRTR0MemUserKernelDriver_TEMPLATE = VBoxR3HardenedTstDll
816else
817 tstRTR0MemUserKernelDriver_TEMPLATE = VBOXR3TSTEXE
818endif
819tstRTR0MemUserKernelDriver_SOURCES = tstRTR0MemUserKernelDriver.cpp
820
821
822tstRTR0SemMutex_TEMPLATE = VBoxR0
823tstRTR0SemMutex_INST = $(INST_TESTCASE)
824tstRTR0SemMutex_DEFS = IN_RT_R0
825tstRTR0SemMutex_SYSSUFF = .r0
826tstRTR0SemMutex_SOURCES = tstRTR0SemMutex.cpp
827tstRTR0SemMutex_LIBS = $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB)
828if1of ($(VBOX_LDR_FMT), pe lx)
829 tstRTR0SemMutex_LIBS += $(PATH_STAGE_LIB)/SUPR0$(VBOX_SUFF_LIB)
830endif
831if defined(VBOX_WITH_HARDENING) && "$(KBUILD_TARGET)" == "win"
832 tstRTR0SemMutexDriverHardened_TEMPLATE = VBoxR3HardenedTstExe
833 tstRTR0SemMutexDriverHardened_NAME = tstRTR0SemMutexDriver
834 ifdef VBOX_WITH_AUTOMATIC_DEFS_QUOTING
835 tstRTR0SemMutexDriverHardened_DEFS = PROGRAM_NAME_STR="tstRTR0SemMutexDriver"
836 else
837 tstRTR0SemMutexDriverHardened_DEFS = PROGRAM_NAME_STR=\"tstRTR0SemMutexDriver\"
838 endif
839 tstRTR0SemMutexDriverHardened_SOURCES = ../../HostDrivers/Support/SUPR3HardenedMainTemplateTestcase.cpp
840 tstRTR0SemMutexDriver_TEMPLATE = VBoxR3HardenedTstDll
841else
842 tstRTR0SemMutexDriver_TEMPLATE = VBOXR3TSTEXE
843endif
844tstRTR0SemMutexDriver_SOURCES = tstRTR0SemMutexDriver.cpp
845
846
847tstRTR0Thread_TEMPLATE = VBoxR0
848tstRTR0Thread_INST = $(INST_TESTCASE)
849tstRTR0Thread_DEFS = IN_RT_R0
850tstRTR0Thread_SYSSUFF = .r0
851tstRTR0Thread_SOURCES = tstRTR0Thread.cpp
852tstRTR0Thread_LIBS = $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB)
853if1of ($(VBOX_LDR_FMT), pe lx)
854 tstRTR0Thread_LIBS += $(PATH_STAGE_LIB)/SUPR0$(VBOX_SUFF_LIB)
855endif
856if defined(VBOX_WITH_HARDENING) && "$(KBUILD_TARGET)" == "win"
857 tstRTR0ThreadDriverHardened_TEMPLATE = VBoxR3HardenedTstExe
858 tstRTR0ThreadDriverHardened_NAME = tstRTR0ThreadDriver
859 ifdef VBOX_WITH_AUTOMATIC_DEFS_QUOTING
860 tstRTR0ThreadDriverHardened_DEFS = PROGRAM_NAME_STR="tstRTR0ThreadDriver"
861 else
862 tstRTR0ThreadDriverHardened_DEFS = PROGRAM_NAME_STR=\"tstRTR0ThreadDriver\"
863 endif
864 tstRTR0ThreadDriverHardened_SOURCES = ../../HostDrivers/Support/SUPR3HardenedMainTemplateTestcase.cpp
865 tstRTR0ThreadDriver_TEMPLATE = VBoxR3HardenedTstDll
866else
867 tstRTR0ThreadDriver_TEMPLATE = VBOXR3TSTEXE
868endif
869tstRTR0ThreadDriver_SOURCES = tstRTR0ThreadDriver.cpp
870
871
872tstRTR0Timer_TEMPLATE = VBoxR0
873tstRTR0Timer_INST = $(INST_TESTCASE)
874tstRTR0Timer_DEFS = IN_RT_R0
875tstRTR0Timer_SYSSUFF = .r0
876tstRTR0Timer_SOURCES = tstRTR0Timer.cpp
877tstRTR0Timer_LIBS = $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB)
878if1of ($(VBOX_LDR_FMT), pe lx)
879 tstRTR0Timer_LIBS += $(PATH_STAGE_LIB)/SUPR0$(VBOX_SUFF_LIB)
880endif
881if defined(VBOX_WITH_HARDENING) && "$(KBUILD_TARGET)" == "win"
882 tstRTR0TimerDriverHardened_TEMPLATE = VBoxR3HardenedTstExe
883 tstRTR0TimerDriverHardened_NAME = tstRTR0TimerDriver
884 ifdef VBOX_WITH_AUTOMATIC_DEFS_QUOTING
885 tstRTR0TimerDriverHardened_DEFS = PROGRAM_NAME_STR="tstRTR0TimerDriver"
886 else
887 tstRTR0TimerDriverHardened_DEFS = PROGRAM_NAME_STR=\"tstRTR0TimerDriver\"
888 endif
889 tstRTR0TimerDriverHardened_SOURCES = ../../HostDrivers/Support/SUPR3HardenedMainTemplateTestcase.cpp
890 tstRTR0TimerDriver_TEMPLATE = VBoxR3HardenedTstDll
891else
892 tstRTR0TimerDriver_TEMPLATE = VBOXR3TSTEXE
893endif
894tstRTR0TimerDriver_SOURCES = tstRTR0TimerDriver.cpp
895
896
897tstRTR0ThreadPreemption_TEMPLATE = VBoxR0
898tstRTR0ThreadPreemption_INST = $(INST_TESTCASE)
899tstRTR0ThreadPreemption_DEFS = IN_RT_R0
900tstRTR0ThreadPreemption_SYSSUFF = .r0
901tstRTR0ThreadPreemption_SOURCES = tstRTR0ThreadPreemption.cpp
902tstRTR0ThreadPreemption_LIBS = $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB)
903if1of ($(VBOX_LDR_FMT), pe lx)
904 tstRTR0ThreadPreemption_LIBS += $(PATH_STAGE_LIB)/SUPR0$(VBOX_SUFF_LIB)
905endif
906if defined(VBOX_WITH_HARDENING) && "$(KBUILD_TARGET)" == "win"
907 tstRTR0ThreadPreemptionDriverHardened_TEMPLATE = VBoxR3HardenedTstExe
908 tstRTR0ThreadPreemptionDriverHardened_NAME = tstRTR0ThreadPreemptionDriver
909 ifdef VBOX_WITH_AUTOMATIC_DEFS_QUOTING
910 tstRTR0ThreadPreemptionDriverHardened_DEFS = PROGRAM_NAME_STR="tstRTR0ThreadPreemptionDriver"
911 else
912 tstRTR0ThreadPreemptionDriverHardened_DEFS = PROGRAM_NAME_STR=\"tstRTR0ThreadPreemptionDriver\"
913 endif
914 tstRTR0ThreadPreemptionDriverHardened_SOURCES = ../../HostDrivers/Support/SUPR3HardenedMainTemplateTestcase.cpp
915 tstRTR0ThreadPreemptionDriver_TEMPLATE = VBoxR3HardenedTstDll
916else
917 tstRTR0ThreadPreemptionDriver_TEMPLATE = VBOXR3TSTEXE
918endif
919tstRTR0ThreadPreemptionDriver_SOURCES = tstRTR0ThreadPreemptionDriver.cpp
920
921
922#
923# Odds and ends.
924#
925
926tstDarwinSched_TEMPLATE = VBOXR3TSTEXE
927tstDarwinSched_SOURCES = tstDarwinSched.cpp
928
929tstRTDarwinMachKernel_TEMPLATE = VBOXR3TSTEXE
930tstRTDarwinMachKernel_INCS = ../include
931tstRTDarwinMachKernel_SOURCES = \
932 tstRTDarwinMachKernel.cpp \
933 ../r0drv/darwin/dbgkrnlinfo-r0drv-darwin.cpp
934
935ntGetTimerResolution_SOURCES = ntGetTimerResolution.cpp
936ntGetTimerResolution_SDKS.win = ReorderCompilerIncs $(VBOX_WINPSDK) $(VBOX_WINDDK) VBOX_NTDLL
937
938endif # VBOX_WITH_TESTCASES
939
940include $(FILE_KBUILD_SUB_FOOTER)
941
注意: 瀏覽 TracBrowser 來幫助您使用儲存庫瀏覽器

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