VirtualBox

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

Last change on this file since 84040 was 84040, checked in by vboxsync, 5 years ago

IPRT: Removed tstRTErrUnique as it is no longer needed (since introducing status codes sorting and binary searching). bugref:9726

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