VirtualBox

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

Last change on this file since 96781 was 96407, checked in by vboxsync, 2 years ago

scm copyright and license note update

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