VirtualBox

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

最後變更 在這個檔案是 108115,由 vboxsync 提交於 5 週 前

Runtime/testcase: Start some ACPI testcase exercising the ASL -> AML -> ASL path, bugref:10733

  • 屬性 svn:eol-style 設為 native
  • 屬性 svn:keywords 設為 Author Date Id Revision
檔案大小: 34.3 KB
 
1# $Id: Makefile.kmk 108115 2025-02-07 14:05:39Z vboxsync $
2## @file
3# Sub-Makefile for the IPRT testcases.
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.alldomusa.eu.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# The contents of this file may alternatively be used under the terms
26# of the Common Development and Distribution License Version 1.0
27# (CDDL), a copy of it is provided in the "COPYING.CDDL" file included
28# in the VirtualBox distribution, in which case the provisions of the
29# CDDL are applicable instead of those of the GPL.
30#
31# You may elect to license modified versions of this file under the
32# terms and conditions of either the GPL or the CDDL or both.
33#
34# SPDX-License-Identifier: GPL-3.0-only OR CDDL-1.0
35#
36
37SUB_DEPTH = ../../../..
38include $(KBUILD_PATH)/subheader.kmk
39
40ifdef VBOX_WITH_TESTCASES # The whole file
41
42 #
43 # Include the Validation Kit configuration to make use of build templates needed
44 # for testcases to be included on the Validation Kit .ISO.
45 #
46 ifdef VBOX_WITH_VALIDATIONKIT_UNITTESTS_PACKING
47 ifndef VBOX_VALIDATIONKIT_CONFIG_KMK_INCLUDED
48 include $(PATH_ROOT)/src/VBox/ValidationKit/Config.kmk
49 endif
50 endif
51
52
53 #
54 # Globals
55 #
56 # WARNING: Careful with this wrt to the other sub-makefiles this joins.
57 #
58 TEMPLATE = VBoxR3TstExe
59
60 # Defined by the parent makefile as well (for errmsgdata.h).
61 IPRT_OUT_DIR ?= $(PATH_TARGET)/Runtime
62
63
64 #
65 # Target lists
66 #
67 ifndef VBOX_ONLY_VALIDATIONKIT
68 PROGRAMS += \
69 tstRTAcpi \
70 tstRTArmv8 \
71 tstRTAssertCompile \
72 tstRTAvl \
73 tstRTBase64 \
74 tstRTBitOperations \
75 tstRTBigNum \
76 tstRTCidr \
77 tstRTCritSect \
78 tstRTCritSectRw \
79 tstRTCrPkix-1 \
80 tstRTCrShaCrypt \
81 tstRTCrX509-1 \
82 tstRTCType \
83 tstRTDigest \
84 tstRTDigest-2 \
85 tstDir \
86 tstDir-2 \
87 tstDir-3 \
88 tstRTDvm \
89 tstRTEnv \
90 tstRTErr-1 \
91 tstFile \
92 tstRTFileAio \
93 tstRTFileAppend-1 \
94 tstRTFileQuerySize-1 \
95 tstRTFileModeStringToFlags \
96 tstFileLock \
97 tstRTFileOpenEx-1 \
98 tstFork \
99 tstRTFsQueries \
100 tstRTFilesystem \
101 tstRTExprEval \
102 tstRTGetOpt \
103 tstRTGetOptArgv \
104 tstHandleTable \
105 tstRTHeapOffset \
106 tstRTHeapSimple \
107 tstRTInlineAsm \
108 tstIprtList \
109 tstIprtMiniList \
110 tstIprtMiniString \
111 tstLdr \
112 tstLdrLoad \
113 tstRTLocalIpc \
114 tstRTLdrVerifyPeImage \
115 tstRTList \
116 tstRTLockValidator \
117 tstLog \
118 tstRTMath \
119 tstRTMemEf \
120 tstRTMemCache \
121 tstRTMemPool \
122 tstRTMemWipe \
123 tstRTMemSafer \
124 tstMove \
125 tstRTMp-1 \
126 tstRTNetIPv4 \
127 tstRTNetIPv6 \
128 tstOnce \
129 tstRTPath \
130 tstRTPathGlob \
131 tstRTPathQueryInfo \
132 tstRTPathUnlink \
133 tstRTPipe \
134 tstRTPoll \
135 tstRTPrfIO \
136 tstRTProcCreateEx \
137 tstRTProcCreatePrf \
138 tstRTProcQueryUsername \
139 tstPrfRT \
140 tstRand \
141 tstRTReqPool \
142 tstRTSemEvent \
143 tstRTSemEventMulti \
144 tstSemMutex \
145 tstSemPingPong \
146 tstRTSemRW \
147 tstRTSemXRoads \
148 tstRTSg \
149 tstRTSort \
150 tstRTStrAlloc \
151 tstRTStrCache \
152 tstRTStrCatCopy \
153 tstRTStrFormat \
154 tstRTStrSplit \
155 tstRTStrSimplePattern \
156 tstStrToNum \
157 tstRTStrVersion \
158 tstRTSymlink \
159 tstRTSystemQueryDmi \
160 tstRTSystemQueryFirmware \
161 tstRTSystemQueryOsInfo \
162 tstRTTcp-1 \
163 tstRTTemp \
164 tstRTDirCreateUniqueNumbered \
165 tstTermCallbacks \
166 tstThread-1 \
167 tstRTThreadPoke \
168 tstRTThreadExecutionTime \
169 tstRTTime \
170 tstTime-2 \
171 tstTime-3 \
172 tstTime-4 \
173 tstTimer \
174 tstRTTimerLR \
175 tstRTTimeSpec \
176 tstRTTls-1 \
177 tstRTTraceLog \
178 tstRTUdp-1 \
179 tstUtf8 \
180 tstRTUuid \
181 tstRTCircBuf \
182 tstRTManifest \
183 tstRTUri \
184 tstVector \
185 tstRTVfs \
186 tstRTZip \
187 tstRTJson \
188 tstRTShMem
189
190 PROGRAMS.win += \
191 tstRTCritSectW32 \
192 tstRTProcWait \
193 tstFileAppendWin-1 \
194 tstRTNtPath-1 \
195 ntGetTimerResolution \
196 tstRTDarwinMachKernel
197
198 PROGRAMS.linux += \
199 tstRTProcWait \
200 tstRTProcIsRunningByName \
201 tstRTBitOperationsPIC3 \
202 tstRTInlineAsmPIC \
203 tstRTInlineAsmPIC3
204 PROGRAMS.solaris += \
205 tstRTCoreDump
206 PROGRAMS.darwin += \
207 tstDarwinSched \
208 tstRTDarwinMachKernel
209 ifdef VBOX_WITH_LIBCURL
210 PROGRAMS += \
211 tstRTHttp-1 \
212 tstRTCRest-1
213 endif
214
215 if1of ($(KBUILD_TARGET_ARCH), x86 amd64)
216 PROGRAMS += \
217 tstNoCrt-1
218 if1of ($(KBUILD_TARGET).$(KBUILD_TARGET_ARCH), win.amd64) ## Build and test x86 too!
219 PROGRAMS += tstRTNoCrt-2
220 endif
221 if1of ($(KBUILD_TARGET).$(KBUILD_TARGET_ARCH), win.x86 win.amd64)
222 PROGRAMS += tstRTNoCrt-3 tstRTNoCrt-3r tstRTNoCrt-4 tstRTNoCrt-5
223 endif
224 endif
225
226 if defined(VBOX_WITH_R0_MODULES)
227 PROGRAMS += \
228 tstLdr-2 \
229 tstLdr-3 \
230 tstLdr-4 \
231 tstTSC
232 if defined(VBOX_WITH_HARDENING) && "$(KBUILD_TARGET)" == "win"
233 PROGRAMS += \
234 tstRTR0MemUserKernelDriverHardened \
235 tstRTR0SemMutexDriverHardened \
236 tstRTR0TimerDriverHardened \
237 tstRTR0ThreadPreemptionDriverHardened \
238 tstRTR0ThreadDriverHardened
239 DLLS += \
240 tstRTR0MemUserKernelDriver \
241 tstRTR0SemMutexDriver \
242 tstRTR0TimerDriver \
243 tstRTR0ThreadPreemptionDriver \
244 tstRTR0ThreadDriver
245 else
246 PROGRAMS += \
247 tstRTR0MemUserKernelDriver \
248 tstRTR0SemMutexDriver \
249 tstRTR0TimerDriver \
250 tstRTR0ThreadPreemptionDriver \
251 tstRTR0ThreadDriver
252 endif
253 if1of ($(KBUILD_TARGET_ARCH), $(VBOX_SUPPORTED_HOST_ARCHS))
254 $(if-expr defined(VBOX_WITH_VBOXR0_AS_DLL),DLLS,SYSMODS) += \
255 tstLdrObjR0
256 ifdef VBOX_WITH_RAW_MODE
257 SYSMODS += tstLdrObj
258 endif
259 endif
260 $(if-expr defined(VBOX_WITH_VBOXR0_AS_DLL),DLLS,SYSMODS) += \
261 tstRTR0MemUserKernel \
262 tstRTR0SemMutex \
263 tstRTR0Timer \
264 tstRTR0ThreadPreemption \
265 tstRTR0Thread
266 if1of ($(KBUILD_TARGET), solaris darwin)
267 PROGRAMS += tstRTR0DbgKrnlInfoDriver
268 $(if-expr defined(VBOX_WITH_VBOXR0_AS_DLL),DLLS,SYSMODS) += tstRTR0DbgKrnlInfo
269 endif # VBOX_SUPPORTED_HOST_ARCHS only
270
271 endif
272 if1of ($(VBOX_LDR_FMT)), lx pe)
273 LIBRARIES += \
274 tstLdr-4Imp
275 endif
276
277 endif # !VBOX_ONLY_VALIDATIONKIT
278
279
280 #
281 # Target configs in almost alphabetical order.
282 #
283 tstRTAcpi_TEMPLATE = VBoxR3TstExe
284 tstRTAcpi_SOURCES = tstRTAcpi.cpp
285
286 tstRTArmv8_TEMPLATE = VBoxR3TstExe
287 tstRTArmv8_SOURCES = tstRTArmv8.cpp
288
289 tstRTAssertCompile_TEMPLATE = VBoxR3TstExe
290 tstRTAssertCompile_INSTTYPE = none
291 tstRTAssertCompile_SOURCES = tstRTAssertCompile.cpp
292
293 tstRTAvl_TEMPLATE = VBoxR3TstExe
294 tstRTAvl_SOURCES = tstRTAvl.cpp
295
296 tstRTBase64_TEMPLATE = VBoxR3TstExe
297 tstRTBase64_SOURCES = tstRTBase64.cpp
298
299 tstRTBigNum_TEMPLATE = VBoxR3TstExe
300 tstRTBigNum_SOURCES = tstRTBigNum.cpp
301 tstRTBigNum_SDKS = VBoxOpenSsl
302 tstRTBigNum_CXXFLAGS.win = -bigobj
303
304 tstRTBitOperations_TEMPLATE = VBoxR3TstExe
305 tstRTBitOperations_SOURCES = tstRTBitOperations.cpp
306
307 tstRTBitOperationsPIC3_TEMPLATE = VBoxR3TstExe
308 tstRTBitOperationsPIC3_SOURCES = tstRTBitOperations.cpp
309 tstRTBitOperationsPIC3_CXXFLAGS = -fPIC -fomit-frame-pointer -O3
310 tstRTBitOperationsPIC3_DEFS = PIC
311
312 tstRTCidr_TEMPLATE = VBoxR3TstExe
313 tstRTCidr_SOURCES = tstRTCidr.cpp
314
315 tstRTCritSect_TEMPLATE = VBoxR3TstExe
316 tstRTCritSect_SOURCES = tstRTCritSect.cpp
317
318 tstRTCritSectRw_TEMPLATE = VBoxR3TstExe
319 tstRTCritSectRw_SOURCES = tstRTCritSectRw.cpp
320
321 tstRTCritSectW32_TEMPLATE = VBoxR3TstExe
322 tstRTCritSectW32_SOURCES = tstRTCritSect.cpp
323 tstRTCritSectW32_DEFS = TRY_WIN32_CRIT
324
325 tstRTCrPkix-1_TEMPLATE = VBoxR3TstExe
326 tstRTCrPkix-1_SOURCES = tstRTCrPkix-1.cpp
327
328 ifndef VBOX_ONLY_VALIDATIONKIT
329 tstRTCrX509-1_TEMPLATE = VBoxR3TstExe
330 tstRTCrX509-1_SOURCES = tstRTCrX509-1.cpp
331 tstRTCrX509-1_INCS = $(tstRTCrX509-1_0_OUTDIR)
332 tstRTCrX509-1_CLEAN = $(tstRTCrX509-1_0_OUTDIR)/tstRTCrX509-1.h
333 tstRTCrX509-1_INTERMEDIATES = $(tstRTCrX509-1_0_OUTDIR)/tstRTCrX509-1.h
334 tstRTCrX509-1_VBOX_FILES := \
335 Pem_md4=$(PATH_SUB_CURRENT)/tstRTCrX509-md4.pem \
336 Pem_md5=$(PATH_SUB_CURRENT)/tstRTCrX509-md5.pem \
337 Pem_sha1=$(PATH_SUB_CURRENT)/tstRTCrX509-sha1.pem \
338 Pem_sha224=$(PATH_SUB_CURRENT)/tstRTCrX509-sha224.pem \
339 Pem_sha256=$(PATH_SUB_CURRENT)/tstRTCrX509-sha256.pem \
340 Pem_sha384=$(PATH_SUB_CURRENT)/tstRTCrX509-sha384.pem \
341 Pem_sha512=$(PATH_SUB_CURRENT)/tstRTCrX509-sha512.pem \
342 Pem_cert1=$(PATH_SUB_CURRENT)/tstRTCrX509-cert1.pem \
343 \
344 Der_md4=$(PATH_SUB_CURRENT)/tstRTCrX509-md4-cert.der \
345 Der_md5=$(PATH_SUB_CURRENT)/tstRTCrX509-md5-cert.der \
346 Der_sha1=$(PATH_SUB_CURRENT)/tstRTCrX509-sha1-cert.der \
347 Der_sha224=$(PATH_SUB_CURRENT)/tstRTCrX509-sha224-cert.der \
348 Der_sha256=$(PATH_SUB_CURRENT)/tstRTCrX509-sha256-cert.der \
349 Der_sha384=$(PATH_SUB_CURRENT)/tstRTCrX509-sha384-cert.der \
350 Der_sha512=$(PATH_SUB_CURRENT)/tstRTCrX509-sha512-cert.der \
351 Der_cert1=$(PATH_SUB_CURRENT)/tstRTCrX509-cert1.der \
352 $(NO_SUCH_VARIABLE)
353 $$(tstRTCrX509-1_0_OUTDIR)/tstRTCrX509-1.h: \
354 $(foreach file,$(tstRTCrX509-1_VBOX_FILES),$(lastword $(subst =,$(SP) ,$(file)))) \
355 $(VBOX_BIN2C) \
356 | $$(dir $$@)
357 $(RM) -f -- "$@"
358 $(foreach file,$(tstRTCrX509-1_VBOX_FILES) \
359 , $(NLTAB)$(VBOX_BIN2C) -ascii --append \
360 "$(firstword $(subst =,$(SP) ,$(file)))" \
361 "$(lastword $(subst =,$(SP) ,$(file)))" \
362 "$@")
363 endif # !VBOX_ONLY_VALIDATIONKIT
364
365
366 tstRTCType_TEMPLATE = VBoxR3TstExe
367 tstRTCType_SOURCES = tstRTCType.cpp
368
369 ifdef VBOX_WITH_LIBCURL
370 tstRTCRest-1_TEMPLATE = VBoxR3TstExe
371 tstRTCRest-1_SOURCES = tstRTCRest-1.cpp
372 if ("$(KBUILD_TARGET)" == "solaris" && $(VBOX_GCC_VERSION_CXX) <= 70500)
373 tstRTCRest-1_DEFS = VBOX_SOLARIS_WITHOUT_XPG6_ENABLED
374 endif
375 endif
376
377 tstRTDigest_TEMPLATE = VBoxR3TstExe
378 tstRTDigest_SOURCES = tstRTDigest.cpp
379
380 tstRTDigest-2_TEMPLATE = VBoxR3TstExe
381 ifndef VBOX_WITH_ALT_HASH_CODE
382 tstRTDigest-2_DEFS = IPRT_WITHOUT_SHA512T224 IPRT_WITHOUT_SHA512T256
383 endif
384 tstRTDigest-2_SOURCES = tstRTDigest-2.cpp
385
386 ifdef VBOX_WITH_LIBCURL
387 tstRTHttp-1_TEMPLATE = VBoxR3TstExe
388 tstRTHttp-1_SOURCES = tstRTHttp-1.cpp
389 tstRTHttp-1_SDKS = VBoxLibCurl
390 endif
391
392 tstDir_TEMPLATE = VBoxR3TstExe
393 tstDir_SOURCES = tstDir.cpp
394
395 tstDir-2_TEMPLATE = VBoxR3TstExe
396 tstDir-2_SOURCES = tstDir-2.cpp
397
398 tstDir-3_TEMPLATE = VBoxR3TstExe
399 tstDir-3_SOURCES = tstDir-3.cpp
400
401 tstRTDvm_TEMPLATE = VBoxR3TstExe
402 tstRTDvm_SOURCES = tstRTDvm.cpp
403
404 tstRTEnv_TEMPLATE = VBoxR3TstExe
405 tstRTEnv_SOURCES = tstRTEnv.cpp
406
407 tstRTErr-1_TEMPLATE = VBoxR3TstExe
408 tstRTErr-1_SOURCES = tstRTErr-1.cpp
409
410 tstFile_TEMPLATE = VBoxR3TstExe
411 tstFile_SOURCES = tstFile.cpp
412
413 tstRTFileAio_SOURCES = VBoxR3TstExe
414 tstRTFileAio_SOURCES = tstRTFileAio.cpp
415
416 tstRTFileAppend-1_TEMPLATE = VBoxR3TstExe
417 tstRTFileAppend-1_SOURCES = tstRTFileAppend-1.cpp
418
419 tstRTFileQuerySize-1_TEMPLATE = VBoxR3TstExe
420 tstRTFileQuerySize-1_SOURCES = tstRTFileQuerySize-1.cpp
421
422 tstRTFileModeStringToFlags_TEMPLATE = VBoxR3TstExe
423 tstRTFileModeStringToFlags_SOURCES = tstRTFileModeStringToFlags.cpp
424
425 tstRTFileOpenEx-1_TEMPLATE = VBoxR3TstExe
426 tstRTFileOpenEx-1_SOURCES = tstRTFileOpenEx-1.cpp
427
428 tstFileAppendWin-1_TEMPLATE = VBoxR3TstExe
429 tstFileAppendWin-1_SOURCES = tstFileAppendWin-1.cpp
430
431 tstFileLock_TEMPLATE = VBoxR3TstExe
432 tstFileLock_SOURCES = tstFileLock.cpp
433
434 tstFork_TEMPLATE = VBoxR3TstExe
435 tstFork_SOURCES = tstFork.cpp
436
437 tstRTFsQueries_TEMPLATE = VBoxR3TstExe
438 tstRTFsQueries_SOURCES = tstRTFsQueries.cpp
439
440 tstRTFilesystem_TEMPLATE = VBoxR3TstExe
441 tstRTFilesystem_SOURCES = tstRTFilesystem.cpp
442
443 tstRTExprEval_TEMPLATE = VBoxR3TstExe
444 tstRTExprEval_SOURCES = tstRTExprEval.cpp
445
446 tstRTGetOpt_TEMPLATE = VBoxR3TstExe
447 tstRTGetOpt_SOURCES = tstRTGetOpt.cpp
448
449 tstRTGetOptArgv_TEMPLATE = VBoxR3TstExe
450 tstRTGetOptArgv_SOURCES = tstRTGetOptArgv.cpp
451
452 tstHandleTable_SOURCES = tstHandleTable.cpp
453
454 tstRTHeapOffset_TEMPLATE = VBoxR3TstExe
455 tstRTHeapOffset_SOURCES = tstRTHeapOffset.cpp
456
457 tstRTHeapSimple_TEMPLATE = VBoxR3TstExe
458 tstRTHeapSimple_SOURCES = tstRTHeapSimple.cpp
459
460 tstRTInlineAsm_TEMPLATE = VBoxR3TstExe
461 tstRTInlineAsm_SOURCES = tstRTInlineAsm.cpp
462
463 tstRTInlineAsmPIC_TEMPLATE = VBoxR3TstExe
464 tstRTInlineAsmPIC_SOURCES = tstRTInlineAsm.cpp
465 tstRTInlineAsmPIC_CXXFLAGS = -fPIC
466 tstRTInlineAsmPIC_DEFS = PIC
467
468 tstRTInlineAsmPIC3_TEMPLATE = VBoxR3TstExe
469 tstRTInlineAsmPIC3_SOURCES = tstRTInlineAsm.cpp
470 tstRTInlineAsmPIC3_CXXFLAGS = -fPIC -fomit-frame-pointer -O3
471 tstRTInlineAsmPIC3_DEFS = PIC
472
473 tstIprtList_TEMPLATE = VBoxR3TstExe
474 tstIprtList_SOURCES = tstIprtList.cpp
475
476 tstIprtMiniList_TEMPLATE = VBoxR3TstExe
477 tstIprtMiniList_SOURCES = tstIprtMiniList.cpp
478
479 tstIprtMiniString_TEMPLATE = VBoxR3TstExe
480 tstIprtMiniString_SOURCES = tstIprtMiniString.cpp
481
482 tstLdr_TEMPLATE = VBoxR3TstExe
483 tstLdr_SOURCES = tstLdr.cpp
484
485 tstLdr-2_TEMPLATE = VBoxR3TstExe
486 tstLdr-2_SOURCES = tstLdr-2.cpp
487 tstLdr-2_DEFS = IN_DIS
488 tstLdr-2_LIBS = \
489 $(PATH_STAGE_LIB)/DisasmR3$(VBOX_SUFF_LIB)
490
491 ifdef VBOX_WITH_RAW_MODE
492 tstLdrObj_TEMPLATE = VBoxRc
493 tstLdrObj_INST = $(INST_TESTCASE)
494 tstLdrObj_SYSSUFF = .gc
495 tstLdrObj_SOURCES = tstLdrObj.cpp
496 tstLdrObj_DEFS = IN_DIS IN_RT_RC DIS_CORE_ONLY
497 ifeq ($(VBOX_LDR_FMT32),elf)
498 tstLdrObj_DEFS += VBOX_SOME_IMPORT_FUNCTION
499 endif
500 tstLdrObj_LIBS = \
501 $(PATH_STAGE_LIB)/DisasmRC$(VBOX_SUFF_LIB) \
502 $(PATH_STAGE_LIB)/RuntimeRC$(VBOX_SUFF_LIB)
503 if1of ($(VBOX_LDR_FMT32), lx pe)
504 tstLdrObj_LIBS += \
505 $(PATH_STAGE_LIB)/VMMRCBuiltin$(VBOX_SUFF_LIB) \
506 $(PATH_STAGE_LIB)/VMMRCImp$(VBOX_SUFF_LIB)
507 endif
508 endif # VBOX_WITH_RAW_MODE
509
510 tstLdr-3_TEMPLATE = VBoxR3TstExe
511 tstLdr-3_SOURCES = tstLdr-3.cpp
512 tstLdr-3_DEFS = IN_DIS
513 tstLdr-3_LIBS = \
514 $(PATH_STAGE_LIB)/DisasmR3$(VBOX_SUFF_LIB)
515
516 tstLdr-4Imp_TEMPLATE = VBoxR0
517 ifeq ($(VBOX_LDR_FMT),lx)
518 tstLdr-4Imp_SOURCES = tstLdr-4Imp-os2.def
519 else ifeq ($(VBOX_LDR_FMT),pe)
520 tstLdr-4Imp_SOURCES.win = tstLdr-4Imp-win.def
521 endif
522
523 tstLdrObjR0_TEMPLATE = VBoxR0
524 tstLdrObjR0_INST = $(INST_TESTCASE)
525 tstLdrObjR0_SYSSUFF = .r0
526 tstLdrObjR0_SOURCES = tstLdrObjR0.cpp tstLdrDisasmTest.cpp
527 tstLdrObjR0_DEFS = IN_DIS IN_RT_R0 DIS_CORE_ONLY
528 ifeq ($(VBOX_LDR_FMT32),elf)
529 tstLdrObjR0_DEFS += VBOX_SOME_IMPORT_FUNCTION
530 endif
531 ifn1of ($(KBUILD_TARGET), win)
532 tstLdrObjR0_CXXFLAGS = $(VBOX_GCC_Wno-array_bounds)
533 endif
534 tstLdrObjR0_LIBS = \
535 $(PATH_STAGE_LIB)/DisasmR0$(VBOX_SUFF_LIB) \
536 $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB) \
537 $(VBOX_LIB_SUPR0)
538 if1of ($(VBOX_LDR_FMT), pe lx)
539 tstLdrObjR0_LIBS += \
540 $(TARGET_tstLdr-4Imp)
541 endif
542
543 tstLdr-4_TEMPLATE = VBoxR3TstExe
544 tstLdr-4_SOURCES = tstLdr-4.cpp tstLdrDisasmTest.cpp
545 tstLdr-4_DEFS = IN_DIS
546 tstLdr-4_LIBS = \
547 $(PATH_STAGE_LIB)/DisasmR3$(VBOX_SUFF_LIB)
548
549 tstLdrLoad_TEMPLATE = VBoxR3TstExe
550 tstLdrLoad_SOURCES = tstLdrLoad.cpp
551
552 tstRTLdrVerifyPeImage_TEMPLATE = VBoxR3TstExe
553 tstRTLdrVerifyPeImage_SOURCES = tstRTLdrVerifyPeImage.cpp
554
555 tstRTList_TEMPLATE = VBoxR3TstExe
556 tstRTList_SOURCES = tstRTList.cpp
557
558 tstRTLocalIpc_TEMPLATE = VBoxR3TstExe
559 tstRTLocalIpc_SOURCES = tstRTLocalIpc.cpp
560
561 tstRTLockValidator_TEMPLATE = VBoxR3TstExe
562 tstRTLockValidator_SOURCES = tstRTLockValidator.cpp
563
564 ifndef VBOX_ONLY_VALIDATIONKIT
565 tstLog_TEMPLATE = VBoxR3TstExe
566 tstLog_SOURCES = tstLog.cpp
567 tstLog_INCS = $(tstLog_0_OUTDIR)
568 tstLog_INTERMEDIATES = $(tstLog_0_OUTDIR)/tstLogGroups.h
569 tstLog_CLEAN = $(tstLog_0_OUTDIR)/tstLogGroups.h
570 $$(tstLog_0_OUTDIR)/tstLogGroups.h: $(PATH_ROOT)/include/VBox/log.h
571 $(call MSG_GENERATE,,$@,$<)
572 $(QUIET)$(RM) -f -- "$@"
573 $(QUIET)$(SED) -n -e 's/^ *LOG_GROUP_\([A-Z0-9_]*\),.*$(DOLLAR)/{ LOG_GROUP_\1, "\1" },/p' --output "$@" "$<"
574 endif # !VBOX_ONLY_VALIDATIONKIT
575
576 tstRTMemEf_TEMPLATE = VBoxR3TstExe
577 tstRTMemEf_SOURCES = tstRTMemEf.cpp
578
579 tstRTMemCache_TEMPLATE = VBoxR3TstExe
580 tstRTMemCache_SOURCES = tstRTMemCache.cpp
581
582 tstRTMemPool_TEMPLATE = VBoxR3TstExe
583 tstRTMemPool_SOURCES = tstRTMemPool.cpp
584
585 tstRTMemWipe_TEMPLATE = VBoxR3TstExe
586 tstRTMemWipe_SOURCES = tstRTMemWipe.cpp
587
588 tstRTMemSafer_TEMPLATE = VBoxR3TstExe
589 tstRTMemSafer_SOURCES = tstRTMemSafer.cpp
590
591 tstMove_TEMPLATE = VBoxR3TstExe
592 tstMove_SOURCES = tstMove.cpp
593
594 tstRTMp-1_TEMPLATE = VBoxR3TstExe
595 tstRTMp-1_SOURCES = tstRTMp-1.cpp
596
597 tstRTNetIPv4_TEMPLATE = VBoxR3TstExe
598 tstRTNetIPv4_SOURCES = tstRTNetIPv4.cpp
599
600 tstRTNetIPv6_TEMPLATE = VBoxR3TstExe
601 tstRTNetIPv6_SOURCES = tstRTNetIPv6.cpp
602
603 tstNoCrt-1_TEMPLATE = VBoxR3TstExe
604 tstNoCrt-1_DEFS = RT_WITHOUT_NOCRT_WRAPPER_ALIASES
605 tstNoCrt-1_SOURCES = \
606 tstNoCrt-1.cpp \
607 ../common/string/memcpy.asm \
608 ../common/string/mempcpy.asm \
609 ../common/string/memmove.asm \
610 ../common/string/memset.asm \
611 ../common/string/memchr.asm \
612 ../common/string/memcmp.asm \
613 ../common/string/strchr.asm \
614 ../common/string/strcmp.asm \
615 ../common/string/strcpy.asm \
616 ../common/string/strlen.asm \
617 ../common/string/wcslen.asm
618
619 tstRTNoCrt-2_TEMPLATE = VBoxR3TstExe
620 tstRTNoCrt-2_DEFS = RT_WITHOUT_NOCRT_WRAPPER_ALIASES
621 tstRTNoCrt-2_INCS = ../include
622 tstRTNoCrt-2_SDKS = VBoxSoftFloatR3Shared
623 tstRTNoCrt-2_SOURCES = \
624 tstRTNoCrt-2.cpp \
625 \
626 ../common/math/copysign.cpp \
627 ../common/math/copysignf.cpp \
628 ../common/math/copysignl.cpp \
629 ../common/math/fma.cpp \
630 ../common/math/fmaf.cpp \
631 ../common/math/fmax.cpp \
632 ../common/math/fmaxf.cpp \
633 ../common/math/fmaxl.cpp \
634 ../common/math/fmin.cpp \
635 ../common/math/fminf.cpp \
636 ../common/math/fminl.cpp \
637 ../common/math/isinf.cpp \
638 ../common/math/isnan.cpp \
639 ../common/math/isnanf.cpp \
640 ../common/math/llround.cpp \
641 ../common/math/llroundf.cpp \
642 ../common/math/lround.cpp \
643 ../common/math/lroundf.cpp \
644 ../common/math/nocrt-abs.cpp \
645 ../common/math/nocrt-labs.cpp \
646 ../common/math/nocrt-llabs.cpp \
647 ../common/math/round.cpp \
648 ../common/math/roundf.cpp \
649 ../common/math/frexp.cpp \
650 ../common/math/frexpf.cpp \
651 ../common/math/frexpl.cpp \
652 ../common/math/__fpclassifyd.cpp \
653 ../common/math/__fpclassifyf.cpp \
654 ../common/math/__fpclassifyl.cpp \
655 ../common/math/__isfinite.cpp \
656 ../common/math/__isfinitef.cpp \
657 ../common/math/__isfinitel.cpp \
658 ../common/math/__isinff.cpp \
659 ../common/math/__isinfl.cpp \
660 ../common/math/__isnanl.cpp \
661 ../common/math/__isnormal.cpp \
662 ../common/math/__isnormalf.cpp \
663 ../common/math/__isnormall.cpp \
664 ../common/math/__signbit.cpp \
665 ../common/math/__signbitf.cpp \
666 ../common/math/__signbitl.cpp
667
668 if1of ($(KBUILD_TARGET_ARCH), x86 amd64)
669 tstRTNoCrt-2_SOURCES.x86 += \
670 ../common/math/rtNoCrtHasSse.asm
671 tstRTNoCrt-2_SOURCES += \
672 ../common/math/atan.asm \
673 ../common/math/atan2.asm \
674 ../common/math/atan2f.asm \
675 ../common/math/atanf.asm \
676 ../common/math/ceil.asm \
677 ../common/math/ceilf.asm \
678 ../common/math/cos.asm \
679 ../common/math/cosf.asm \
680 ../common/math/cosl.asm \
681 ../common/math/exp.asm \
682 ../common/math/expf.asm \
683 ../common/math/exp2.asm \
684 ../common/math/exp2f.asm \
685 ../common/math/fabs.asm \
686 ../common/math/fabsf.asm \
687 ../common/math/fegetenv.asm \
688 ../common/math/fesetenv.asm \
689 ../common/math/feholdexcept.asm \
690 ../common/math/fegetround.asm \
691 ../common/math/fesetround.asm \
692 ../common/math/fegetx87precision.asm \
693 ../common/math/fesetx87precision.asm \
694 ../common/math/fegetexcept.asm \
695 ../common/math/feenableexcept.asm \
696 ../common/math/fedisableexcept.asm \
697 ../common/math/feclearexcept.asm \
698 ../common/math/fegetexceptflag.asm \
699 ../common/math/fesetexceptflag.asm \
700 ../common/math/fetestexcept.asm \
701 ../common/math/feraiseexcept.asm \
702 ../common/math/floor.asm \
703 ../common/math/floorf.asm \
704 ../common/math/fma-asm.asm \
705 ../common/math/fmaf-asm.asm \
706 ../common/math/ldexp.asm \
707 ../common/math/ldexpf.asm \
708 ../common/math/llrint.asm \
709 ../common/math/llrintf.asm \
710 ../common/math/log.asm \
711 ../common/math/logf.asm \
712 ../common/math/log2.asm \
713 ../common/math/log2f.asm \
714 ../common/math/lrint.asm \
715 ../common/math/lrintf.asm \
716 ../common/math/pow.asm \
717 ../common/math/powf.asm \
718 ../common/math/powcore.asm \
719 ../common/math/remainder.asm \
720 ../common/math/remainderf.asm \
721 ../common/math/rint.asm \
722 ../common/math/rintf.asm \
723 ../common/math/sin.asm \
724 ../common/math/sinf.asm \
725 ../common/math/sincore.asm \
726 ../common/math/sqrt.asm \
727 ../common/math/sqrtf.asm \
728 ../common/math/tan.asm \
729 ../common/math/tanf.asm \
730 ../common/math/trunc.asm \
731 ../common/math/truncf.asm
732 endif
733
734 #
735 # For testing no-CRT exception handling we need to use the static build,
736 # assuming ofc that VBOX_WITH_NOCRT_STATIC is in effect.
737 #
738 TEMPLATE_VBoxR3TstExeStatic := Testcase for the static (no-CRT) libraries.
739 TEMPLATE_VBoxR3TstExeStatic_EXTENDS := VBoxR3Static
740 TEMPLATE_VBoxR3TstExeStatic_INST = $(INST_TESTCASE)
741
742 tstRTNoCrt-3_TEMPLATE := VBoxR3TstExeStatic
743 tstRTNoCrt-3_SOURCES := tstRTNoCrt-3.cpp
744
745 tstRTNoCrt-3r_TEMPLATE := VBoxR3TstExe
746 tstRTNoCrt-3r_SOURCES := tstRTNoCrt-3.cpp
747
748 tstRTNoCrt-4_TEMPLATE := VBoxR3TstExe
749 tstRTNoCrt-4_SOURCES := tstRTNoCrt-4.cpp
750
751 tstRTNoCrt-5_TEMPLATE := VBoxR3TstExeStatic
752 if "$(KBUILD_TARGET_ARCH)" == "amd64" \
753 && !defined(VBOX_ONLY_ADDITIONS) && !defined(VBOX_ONLY_VALIDATIONKIT) && !defined(VBOX_ONLY_DOCS) \
754 && !defined(VBOX_WITH_PARFAIT) # mirrors RuntimeR3-x86 cond
755 tstRTNoCrt-5_BLD_TRG_ARCH := x86
756 endif
757 tstRTNoCrt-5_SOURCES := tstRTNoCrt-5.cpp
758 tstRTNoCrt-5_SOURCES.win.x86 := \
759 ../common/compiler/vcc/x86-allshl.asm \
760 ../common/compiler/vcc/x86-allshr.asm \
761 ../common/compiler/vcc/x86-aullshr.asm \
762 ../common/compiler/vcc/x86-allmul.asm \
763 ../common/compiler/vcc/x86-aulldiv.asm \
764 ../common/compiler/vcc/x86-aullrem.asm \
765 ../common/compiler/vcc/x86-aulldvrm.asm \
766 ../common/compiler/vcc/x86-alldiv.asm \
767 ../common/compiler/vcc/x86-allrem.asm \
768 ../common/compiler/vcc/x86-alldvrm.asm \
769 ../common/compiler/vcc/RTVccUInt64Div.cpp
770
771 tstRTNtPath-1_TEMPLATE = VBoxR3TstExe
772 tstRTNtPath-1_SOURCES = tstRTNtPath-1.cpp
773
774 tstOnce_TEMPLATE = VBoxR3TstExe
775 tstOnce_SOURCES = tstOnce.cpp
776
777 tstRTPath_TEMPLATE = VBoxR3TstExe
778 tstRTPath_SOURCES = tstRTPath.cpp
779
780 tstRTPathFindCommon_TEMPLATE = VBoxR3TstExe
781 tstRTPathFindCommon_SOURCES = tstRTPathFindCommon.cpp
782
783 tstRTPathGlob_TEMPLATE = VBoxR3TstExe
784 tstRTPathGlob_SOURCES = tstRTPathGlob.cpp
785
786 tstRTPathQueryInfo_TEMPLATE = VBoxR3TstExe
787 tstRTPathQueryInfo_SOURCES = tstRTPathQueryInfo.cpp
788
789 tstRTPathUnlink_TEMPLATE = VBoxR3TstExe
790 tstRTPathUnlink_SOURCES = tstRTPathUnlink.cpp
791
792 tstRTPipe_TEMPLATE = VBoxR3TstExe
793 tstRTPipe_SOURCES = tstRTPipe.cpp
794
795 tstRTPoll_TEMPLATE = VBoxR3TstExe
796 tstRTPoll_SOURCES = tstRTPoll.cpp
797
798 tstPrfRT_TEMPLATE = VBoxR3TstExe
799 tstPrfRT_SOURCES = tstPrfRT.cpp
800 tstPrfRT_SOURCES.x86 = tstRTPrfA.asm
801 tstPrfRT_SOURCES.amd64 = tstRTPrfA.asm
802
803 tstRTPrfIO_TEMPLATE = VBoxR3TstExe
804 tstRTPrfIO_SOURCES = tstRTPrfIO.cpp
805
806 tstRTProcCreateEx_TEMPLATE = VBoxR3TstExe
807 tstRTProcCreateEx_SOURCES = tstRTProcCreateEx.cpp
808
809 tstRTProcCreatePrf_TEMPLATE = VBoxR3TstExe
810 tstRTProcCreatePrf_SOURCES = tstRTProcCreatePrf.cpp
811
812 tstRTProcQueryUsername_TEMPLATE = VBoxR3TstExe
813 tstRTProcQueryUsername_SOURCES = tstRTProcQueryUsername.cpp
814
815 tstRTProcWait_TEMPLATE = VBoxR3TstExe
816 tstRTProcWait_SOURCES = tstRTProcWait.cpp
817
818 tstRTProcIsRunningByName_TEMPLATE = VBoxR3TstExe
819 tstRTProcIsRunningByName_SOURCES = tstRTProcIsRunningByName.cpp
820
821 tstRand_TEMPLATE = VBoxR3TstExe
822 tstRand_SOURCES = tstRand.cpp
823
824 tstRTReqPool_TEMPLATE = VBoxR3TstExe
825 tstRTReqPool_SOURCES = tstRTReqPool.cpp
826
827 tstSemMutex_TEMPLATE = VBoxR3TstExe
828 tstSemMutex_SOURCES = tstSemMutex.cpp
829
830 tstRTSemEvent_TEMPLATE = VBoxR3TstExe
831 tstRTSemEvent_SOURCES = tstRTSemEvent.cpp
832
833 tstRTSemEventMulti_TEMPLATE = VBoxR3TstExe
834 tstRTSemEventMulti_SOURCES = tstRTSemEventMulti.cpp
835
836 tstRTSemRW_TEMPLATE = VBoxR3TstExe
837 tstRTSemRW_SOURCES = tstRTSemRW.cpp
838
839 tstSemPingPong_TEMPLATE = VBoxR3TstExe
840 tstSemPingPong_SOURCES = tstSemPingPong.cpp
841
842 tstRTSemXRoads_TEMPLATE = VBoxR3TstExe
843 tstRTSemXRoads_SOURCES = tstRTSemXRoads.cpp
844
845 tstRTSg_TEMPLATE = VBoxR3TstExe
846 tstRTSg_SOURCES = tstRTSg.cpp
847
848 tstRTCrShaCrypt_TEMPLATE = VBoxR3TstExe
849 tstRTCrShaCrypt_SOURCES = tstRTCrShaCrypt.cpp
850
851 tstRTSort_TEMPLATE = VBoxR3TstExe
852 tstRTSort_SOURCES = tstRTSort.cpp
853
854 tstRTStrAlloc_TEMPLATE = VBoxR3TstExe
855 tstRTStrAlloc_SOURCES = tstRTStrAlloc.cpp
856
857 tstRTStrCache_TEMPLATE = VBoxR3TstExe
858 tstRTStrCache_SOURCES = tstRTStrCache.cpp
859
860 tstRTStrCatCopy_TEMPLATE = VBoxR3TstExe
861 tstRTStrCatCopy_SOURCES = tstRTStrCatCopy.cpp
862
863 tstRTStrFormat_TEMPLATE = VBoxR3TstExe
864 tstRTStrFormat_SOURCES = tstRTStrFormat.cpp
865
866 tstRTStrSplit_TEMPLATE = VBoxR3TstExe
867 tstRTStrSplit_SOURCES = tstRTStrSplit.cpp
868
869 tstRTStrSimplePattern_TEMPLATE = VBoxR3TstExe
870 tstRTStrSimplePattern_SOURCES = tstRTStrSimplePattern.cpp
871
872 tstStrToNum_TEMPLATE = VBoxR3TstExe
873 tstStrToNum_SOURCES = tstStrToNum.cpp
874
875 tstRTStrVersion_TEMPLATE = VBoxR3TstExe
876 tstRTStrVersion_SOURCES = tstRTStrVersion.cpp
877
878 tstRTSymlink_TEMPLATE = VBoxR3TstExe
879 tstRTSymlink_SOURCES = tstRTSymlink.cpp
880
881 tstRTSystemQueryDmi_TEMPLATE = VBoxR3TstExe
882 tstRTSystemQueryDmi_SOURCES = tstRTSystemQueryDmi.cpp
883
884 tstRTSystemQueryFirmware_TEMPLATE = VBoxR3TstExe
885 tstRTSystemQueryFirmware_SOURCES = tstRTSystemQueryFirmware.cpp
886
887 tstRTSystemQueryOsInfo_TEMPLATE = VBoxR3TstExe
888 tstRTSystemQueryOsInfo_SOURCES = tstRTSystemQueryOsInfo.cpp
889
890 tstRTTcp-1_TEMPLATE = VBoxR3TstExe
891 tstRTTcp-1_SOURCES = tstRTTcp-1.cpp
892
893 tstRTTemp_TEMPLATE = VBoxR3TstExe
894 tstRTTemp_SOURCES = tstRTTemp.cpp
895
896 tstRTDirCreateUniqueNumbered_TEMPLATE = VBoxR3TstExe
897 tstRTDirCreateUniqueNumbered_SOURCES = tstRTDirCreateUniqueNumbered.cpp
898
899 tstTermCallbacks_TEMPLATE = VBoxR3TstExe
900 tstTermCallbacks_SOURCES = tstTermCallbacks.cpp
901
902 tstThread-1_TEMPLATE = VBoxR3TstExe
903 tstThread-1_SOURCES = tstThread-1.cpp
904
905 tstRTThreadPoke_TEMPLATE = VBoxR3TstExe
906 tstRTThreadPoke_SOURCES = tstRTThreadPoke.cpp
907
908 tstRTThreadExecutionTime_TEMPLATE = VBoxR3TstExe
909 tstRTThreadExecutionTime_SOURCES = tstRTThreadExecutionTime.cpp
910
911 tstRTTime_TEMPLATE = VBoxR3TstExe
912 tstRTTime_SOURCES = tstRTTime.cpp
913
914 tstRTTls-1_TEMPLATE = VBoxR3TstExe
915 tstRTTls-1_SOURCES = tstRTTls-1.cpp
916
917 tstRTTraceLog_TEMPLATE = VBoxR3TstExe
918 tstRTTraceLog_SOURCES = tstRTTraceLog.cpp
919
920 tstTime-2_TEMPLATE = VBoxR3TstExe
921 tstTime-2_SOURCES = tstTime-2.cpp
922
923 tstTime-3_TEMPLATE = VBoxR3TstExe
924 tstTime-3_SOURCES = tstTime-3.cpp
925
926 tstTime-4_TEMPLATE = VBoxR3TstExe
927 tstTime-4_SOURCES = tstTime-4.cpp
928
929 tstTimer_TEMPLATE = VBoxR3TstExe
930 tstTimer_SOURCES = tstTimer.cpp
931
932 tstRTTimerLR_TEMPLATE = VBoxR3TstExe
933 tstRTTimerLR_SOURCES = tstRTTimerLR.cpp
934
935 tstRTTimeSpec_TEMPLATE = VBoxR3TstExe
936 tstRTTimeSpec_SOURCES = tstRTTimeSpec.cpp
937
938 tstTSC_SOURCES = tstTSC.cpp
939 tstTSC_CXXFLAGS.linux += -O3
940
941 tstRTUuid_TEMPLATE = VBoxR3TstExe
942 tstRTUuid_SOURCES = tstRTUuid.cpp
943
944 tstRTUdp-1_TEMPLATE = VBoxR3TstExe
945 tstRTUdp-1_SOURCES = tstRTUdp-1.cpp
946
947 tstUtf8_TEMPLATE = VBoxR3TstExe
948 tstUtf8_SOURCES = tstUtf8.cpp
949
950 tstRTCircBuf_TEMPLATE = VBoxR3TstExe
951 tstRTCircBuf_SOURCES = tstRTCircBuf.cpp
952
953 tstRTManifest_TEMPLATE = VBoxR3TstExe
954 tstRTManifest_SOURCES = tstRTManifest.cpp
955
956 tstRTMath_TEMPLATE = VBoxR3TstExe
957 tstRTMath_SOURCES = \
958 tstRTMath.cpp \
959 ../common/math/gcc/udivmoddi4.c
960
961 tstRTUri_TEMPLATE = VBoxR3TstExe
962 tstRTUri_SOURCES = tstRTUri.cpp
963
964 tstRTVfs_TEMPLATE = VBoxR3TstExe
965 tstRTVfs_SOURCES = tstRTVfs.cpp
966
967 tstRTCoreDump_TEMPLACE = VBoxR3TstExe
968 tstRTCoreDump_SOURCES = tstRTCoreDump.cpp
969
970 tstVector_TEMPLATE = VBoxR3TstExe
971 tstVector_SOURCES = tstVector.cpp
972
973
974 tstRTZip_TEMPLATE = VBoxR3TstExe
975 tstRTZip_SOURCES = tstRTZip.cpp
976
977 tstRTJson_TEMPLATE = VBoxR3TstExe
978 tstRTJson_SOURCES = tstRTJson.cpp
979
980 tstRTShMem_TEMPLATE = VBoxR3TstExe
981 tstRTShMem_SOURCES = tstRTShMem.cpp
982
983 #
984 # Ring-0 testcases.
985 #
986
987 ## @todo create a template for compiling the ring-0 part.
988 tstRTR0DbgKrnlInfo_TEMPLATE = VBoxR0
989 tstRTR0DbgKrnlInfo_INST = $(INST_TESTCASE)
990 tstRTR0DbgKrnlInfo_DEFS = IN_RT_R0
991 tstRTR0DbgKrnlInfo_SYSSUFF = .r0
992 tstRTR0DbgKrnlInfo_SOURCES = tstRTR0DbgKrnlInfo.cpp
993 tstRTR0DbgKrnlInfo_LIBS = \
994 $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB) \
995 $(VBOX_LIB_SUPR0)
996 if defined(VBOX_WITH_HARDENING) && "$(KBUILD_TARGET)" == "win"
997 tstRTR0DbgKrnlInfoDriverHardened_TEMPLATE = VBoxR3HardenedTstExe
998 tstRTR0DbgKrnlInfoDriverHardened_NAME = tstRTR0DbgKrnlInfoDriver
999 ifdef VBOX_WITH_AUTOMATIC_DEFS_QUOTING
1000 tstRTR0DbgKrnlInfoDriverHardened_DEFS = PROGRAM_NAME_STR="tstRTR0DbgKrnlInfoDriver"
1001 else
1002 tstRTR0DbgKrnlInfoDriverHardened_DEFS = PROGRAM_NAME_STR=\"tstRTR0DbgKrnlInfoDriver\"
1003 endif
1004 tstRTR0DbgKrnlInfoDriverHardened_SOURCES = ../../HostDrivers/Support/SUPR3HardenedMainTemplateTestcase.cpp
1005 tstRTR0DbgKrnlInfoDriver_TEMPLATE = VBoxR3HardenedTstDll
1006 else
1007 tstRTR0DbgKrnlInfoDriver_TEMPLATE = VBoxR3TstExe
1008 endif
1009 tstRTR0DbgKrnlInfoDriver_TEMPLATE = VBoxR3TstExe
1010 tstRTR0DbgKrnlInfoDriver_SOURCES = tstRTR0DbgKrnlInfoDriver.cpp
1011
1012
1013 tstRTR0MemUserKernel_TEMPLATE = VBoxR0
1014 tstRTR0MemUserKernel_INST = $(INST_TESTCASE)
1015 tstRTR0MemUserKernel_DEFS = IN_RT_R0
1016 tstRTR0MemUserKernel_SYSSUFF = .r0
1017 tstRTR0MemUserKernel_SOURCES = tstRTR0MemUserKernel.cpp
1018 tstRTR0MemUserKernel_LIBS = \
1019 $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB) \
1020 $(VBOX_LIB_SUPR0)
1021 if defined(VBOX_WITH_HARDENING) && "$(KBUILD_TARGET)" == "win"
1022 tstRTR0MemUserKernelDriverHardened_TEMPLATE = VBoxR3HardenedTstExe
1023 tstRTR0MemUserKernelDriverHardened_NAME = tstRTR0MemUserKernelDriver
1024 ifdef VBOX_WITH_AUTOMATIC_DEFS_QUOTING
1025 tstRTR0MemUserKernelDriverHardened_DEFS = PROGRAM_NAME_STR="tstRTR0MemUserKernelDriver"
1026 else
1027 tstRTR0MemUserKernelDriverHardened_DEFS = PROGRAM_NAME_STR=\"tstRTR0MemUserKernelDriver\"
1028 endif
1029 tstRTR0MemUserKernelDriverHardened_SOURCES = ../../HostDrivers/Support/SUPR3HardenedMainTemplateTestcase.cpp
1030 tstRTR0MemUserKernelDriver_TEMPLATE = VBoxR3HardenedTstDll
1031 else
1032 tstRTR0MemUserKernelDriver_TEMPLATE = VBoxR3TstExe
1033 endif
1034 tstRTR0MemUserKernelDriver_SOURCES = tstRTR0MemUserKernelDriver.cpp
1035
1036
1037 tstRTR0SemMutex_TEMPLATE = VBoxR0
1038 tstRTR0SemMutex_INST = $(INST_TESTCASE)
1039 tstRTR0SemMutex_DEFS = IN_RT_R0
1040 tstRTR0SemMutex_SYSSUFF = .r0
1041 tstRTR0SemMutex_SOURCES = tstRTR0SemMutex.cpp
1042 tstRTR0SemMutex_LIBS = \
1043 $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB) \
1044 $(VBOX_LIB_SUPR0)
1045 if defined(VBOX_WITH_HARDENING) && "$(KBUILD_TARGET)" == "win"
1046 tstRTR0SemMutexDriverHardened_TEMPLATE = VBoxR3HardenedTstExe
1047 tstRTR0SemMutexDriverHardened_NAME = tstRTR0SemMutexDriver
1048 ifdef VBOX_WITH_AUTOMATIC_DEFS_QUOTING
1049 tstRTR0SemMutexDriverHardened_DEFS = PROGRAM_NAME_STR="tstRTR0SemMutexDriver"
1050 else
1051 tstRTR0SemMutexDriverHardened_DEFS = PROGRAM_NAME_STR=\"tstRTR0SemMutexDriver\"
1052 endif
1053 tstRTR0SemMutexDriverHardened_SOURCES = ../../HostDrivers/Support/SUPR3HardenedMainTemplateTestcase.cpp
1054 tstRTR0SemMutexDriver_TEMPLATE = VBoxR3HardenedTstDll
1055 else
1056 tstRTR0SemMutexDriver_TEMPLATE = VBoxR3TstExe
1057 endif
1058 tstRTR0SemMutexDriver_SOURCES = tstRTR0SemMutexDriver.cpp
1059
1060
1061 tstRTR0Thread_TEMPLATE = VBoxR0
1062 tstRTR0Thread_INST = $(INST_TESTCASE)
1063 tstRTR0Thread_DEFS = IN_RT_R0
1064 tstRTR0Thread_SYSSUFF = .r0
1065 tstRTR0Thread_SOURCES = tstRTR0Thread.cpp
1066 tstRTR0Thread_LIBS = \
1067 $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB) \
1068 $(VBOX_LIB_SUPR0)
1069 if defined(VBOX_WITH_HARDENING) && "$(KBUILD_TARGET)" == "win"
1070 tstRTR0ThreadDriverHardened_TEMPLATE = VBoxR3HardenedTstExe
1071 tstRTR0ThreadDriverHardened_NAME = tstRTR0ThreadDriver
1072 ifdef VBOX_WITH_AUTOMATIC_DEFS_QUOTING
1073 tstRTR0ThreadDriverHardened_DEFS = PROGRAM_NAME_STR="tstRTR0ThreadDriver"
1074 else
1075 tstRTR0ThreadDriverHardened_DEFS = PROGRAM_NAME_STR=\"tstRTR0ThreadDriver\"
1076 endif
1077 tstRTR0ThreadDriverHardened_SOURCES = ../../HostDrivers/Support/SUPR3HardenedMainTemplateTestcase.cpp
1078 tstRTR0ThreadDriver_TEMPLATE = VBoxR3HardenedTstDll
1079 else
1080 tstRTR0ThreadDriver_TEMPLATE = VBoxR3TstExe
1081 endif
1082 tstRTR0ThreadDriver_SOURCES = tstRTR0ThreadDriver.cpp
1083
1084
1085 tstRTR0Timer_TEMPLATE = VBoxR0
1086 tstRTR0Timer_INST = $(INST_TESTCASE)
1087 tstRTR0Timer_DEFS = IN_RT_R0
1088 tstRTR0Timer_SYSSUFF = .r0
1089 tstRTR0Timer_SOURCES = tstRTR0Timer.cpp
1090 tstRTR0Timer_LIBS = \
1091 $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB) \
1092 $(VBOX_LIB_SUPR0)
1093 if defined(VBOX_WITH_HARDENING) && "$(KBUILD_TARGET)" == "win"
1094 tstRTR0TimerDriverHardened_TEMPLATE = VBoxR3HardenedTstExe
1095 tstRTR0TimerDriverHardened_NAME = tstRTR0TimerDriver
1096 ifdef VBOX_WITH_AUTOMATIC_DEFS_QUOTING
1097 tstRTR0TimerDriverHardened_DEFS = PROGRAM_NAME_STR="tstRTR0TimerDriver"
1098 else
1099 tstRTR0TimerDriverHardened_DEFS = PROGRAM_NAME_STR=\"tstRTR0TimerDriver\"
1100 endif
1101 tstRTR0TimerDriverHardened_SOURCES = ../../HostDrivers/Support/SUPR3HardenedMainTemplateTestcase.cpp
1102 tstRTR0TimerDriver_TEMPLATE = VBoxR3HardenedTstDll
1103 else
1104 tstRTR0TimerDriver_TEMPLATE = VBoxR3TstExe
1105 endif
1106 tstRTR0TimerDriver_SOURCES = tstRTR0TimerDriver.cpp
1107
1108
1109 tstRTR0ThreadPreemption_TEMPLATE = VBoxR0
1110 tstRTR0ThreadPreemption_INST = $(INST_TESTCASE)
1111 tstRTR0ThreadPreemption_DEFS = IN_RT_R0
1112 tstRTR0ThreadPreemption_SYSSUFF = .r0
1113 tstRTR0ThreadPreemption_SOURCES = tstRTR0ThreadPreemption.cpp
1114 tstRTR0ThreadPreemption_LIBS = \
1115 $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB) \
1116 $(VBOX_LIB_SUPR0)
1117 if defined(VBOX_WITH_HARDENING) && "$(KBUILD_TARGET)" == "win"
1118 tstRTR0ThreadPreemptionDriverHardened_TEMPLATE = VBoxR3HardenedTstExe
1119 tstRTR0ThreadPreemptionDriverHardened_NAME = tstRTR0ThreadPreemptionDriver
1120 ifdef VBOX_WITH_AUTOMATIC_DEFS_QUOTING
1121 tstRTR0ThreadPreemptionDriverHardened_DEFS = PROGRAM_NAME_STR="tstRTR0ThreadPreemptionDriver"
1122 else
1123 tstRTR0ThreadPreemptionDriverHardened_DEFS = PROGRAM_NAME_STR=\"tstRTR0ThreadPreemptionDriver\"
1124 endif
1125 tstRTR0ThreadPreemptionDriverHardened_SOURCES = ../../HostDrivers/Support/SUPR3HardenedMainTemplateTestcase.cpp
1126 tstRTR0ThreadPreemptionDriver_TEMPLATE = VBoxR3HardenedTstDll
1127 else
1128 tstRTR0ThreadPreemptionDriver_TEMPLATE = VBoxR3TstExe
1129 endif
1130 tstRTR0ThreadPreemptionDriver_SOURCES = tstRTR0ThreadPreemptionDriver.cpp
1131
1132
1133 #
1134 # Odds and ends.
1135 #
1136
1137 tstDarwinSched_TEMPLATE = VBoxR3TstExe
1138 tstDarwinSched_SOURCES = tstDarwinSched.cpp
1139
1140 tstRTDarwinMachKernel_TEMPLATE = VBoxR3TstExe
1141 tstRTDarwinMachKernel_INCS = ../include
1142 tstRTDarwinMachKernel_SOURCES = \
1143 tstRTDarwinMachKernel.cpp \
1144 ../r0drv/darwin/dbgkrnlinfo-r0drv-darwin.cpp
1145
1146 ntGetTimerResolution_SOURCES = ntGetTimerResolution.cpp
1147 ntGetTimerResolution_SDKS.win = ReorderCompilerIncs $(VBOX_WINPSDK) $(VBOX_WINDDK) VBoxNtDll
1148
1149
1150 #
1151 # ValKit versions of selected tests.
1152 #
1153 ifdef VBOX_WITH_VALIDATIONKIT_UNITTESTS_PACKING
1154 define def_valkit_unittest_iprt
1155 PROGRAMS += $(unittest)-ValKit
1156 $(unittest)-ValKit_TEMPLATE := VBoxValidationKitR3TstExe
1157 $(unittest)-ValKit_EXTENDS := $(unittest)
1158 $(unittest)-ValKit_NAME := $(unittest)
1159 endef
1160 $(foreach unittest, $(VALKIT_UNITTESTS_WHITELIST_IPRT) $($(VALKIT_UNITTESTS_WHITELIST_IPRT).$(KBUILD_TARGET)) \
1161 ,$(evalcall2 def_valkit_unittest_iprt))
1162 endif
1163
1164endif # VBOX_WITH_TESTCASES
1165
1166include $(FILE_KBUILD_SUB_FOOTER)
注意: 瀏覽 TracBrowser 來幫助您使用儲存庫瀏覽器

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