VirtualBox

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

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

Main,IPRT,SUP,SharedClipboard: Cleanup fixes.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 25.5 KB
Line 
1# $Id: Makefile.kmk 82741 2020-01-14 15:41:36Z vboxsync $
2## @file
3# Sub-Makefile for the IPRT testcases.
4#
5
6#
7# Copyright (C) 2006-2019 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 tstRTErrUnique \
66 tstFile \
67 tstRTFileAio \
68 tstRTFileAppend-1 \
69 tstRTFileQuerySize-1 \
70 tstRTFileModeStringToFlags \
71 tstFileLock \
72 tstRTFileOpenEx-1 \
73 tstFork \
74 tstRTFsQueries \
75 tstRTFilesystem \
76 tstRTGetOpt \
77 tstRTGetOptArgv \
78 tstHandleTable \
79 tstRTHeapOffset \
80 tstRTHeapSimple \
81 tstRTInlineAsm \
82 tstIprtList \
83 tstIprtMiniString \
84 tstLdr \
85 tstLdrLoad \
86 tstRTLocalIpc \
87 tstRTLdrVerifyPeImage \
88 tstRTList \
89 tstRTLockValidator \
90 tstLog \
91 tstRTMath \
92 tstRTMemEf \
93 tstRTMemCache \
94 tstRTMemPool \
95 tstRTMemWipe \
96 tstRTMemSafer \
97 tstMove \
98 tstRTMp-1 \
99 tstRTNetIPv4 \
100 tstRTNetIPv6 \
101 tstOnce \
102 tstRTPath \
103 tstRTPathGlob \
104 tstRTPathQueryInfo \
105 tstRTPipe \
106 tstRTPoll \
107 tstRTPrfIO \
108 tstRTProcCreateEx \
109 tstRTProcCreatePrf \
110 tstRTProcQueryUsername \
111 tstPrfRT \
112 tstRand \
113 tstRTReqPool \
114 tstRTSemEventMulti \
115 tstSemMutex \
116 tstSemPingPong \
117 tstRTSemRW \
118 tstRTSemXRoads \
119 tstRTSort \
120 tstRTStrAlloc \
121 tstRTStrCache \
122 tstRTStrCatCopy \
123 tstRTStrFormat \
124 tstStrSimplePattern \
125 tstStrToNum \
126 tstRTStrVersion \
127 tstRTSymlink \
128 tstRTSystemQueryDmi \
129 tstRTSystemQueryFirmware \
130 tstRTSystemQueryOsInfo \
131 tstRTTcp-1 \
132 tstRTTemp \
133 tstRTDirCreateUniqueNumbered \
134 tstTermCallbacks \
135 tstThread-1 \
136 tstRTThreadPoke \
137 tstRTThreadExecutionTime \
138 tstRTTime \
139 tstRTTraceLog \
140 tstTime-2 \
141 tstTime-3 \
142 tstTime-4 \
143 tstTimer \
144 tstRTTimerLR \
145 tstRTTimeSpec \
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
352tstRTErrUnique_SOURCES = tstRTErrUnique.cpp
353tstRTErrUnique_INCS = $(IPRT_OUT_DIR)/
354tstRTErrUnique.cpp_DEPS = $(IPRT_OUT_DIR)/errmsgdata.h # generate by ../Makefile.kmk
355
356tstFile_TEMPLATE = VBOXR3TSTEXE
357tstFile_SOURCES = tstFile.cpp
358
359tstRTFileAio_SOURCES = VBOXR3TSTEXE
360tstRTFileAio_SOURCES = tstRTFileAio.cpp
361
362tstRTFileAppend-1_TEMPLATE = VBOXR3TSTEXE
363tstRTFileAppend-1_SOURCES = tstRTFileAppend-1.cpp
364
365tstRTFileQuerySize-1_TEMPLATE = VBOXR3TSTEXE
366tstRTFileQuerySize-1_SOURCES = tstRTFileQuerySize-1.cpp
367
368tstRTFileModeStringToFlags_TEMPLATE = VBOXR3TSTEXE
369tstRTFileModeStringToFlags_SOURCES = tstRTFileModeStringToFlags.cpp
370
371tstRTFileOpenEx-1_TEMPLATE = VBOXR3TSTEXE
372tstRTFileOpenEx-1_SOURCES = tstRTFileOpenEx-1.cpp
373
374tstFileAppendWin-1_TEMPLATE = VBOXR3TSTEXE
375tstFileAppendWin-1_SOURCES = tstFileAppendWin-1.cpp
376
377tstFileLock_TEMPLATE = VBOXR3TSTEXE
378tstFileLock_SOURCES = tstFileLock.cpp
379
380tstFork_TEMPLATE = VBOXR3TSTEXE
381tstFork_SOURCES = tstFork.cpp
382
383tstRTFsQueries_TEMPLATE = VBOXR3TSTEXE
384tstRTFsQueries_SOURCES = tstRTFsQueries.cpp
385
386tstRTFilesystem_TEMPLATE = VBOXR3TSTEXE
387tstRTFilesystem_SOURCES = tstRTFilesystem.cpp
388
389tstRTGetOpt_TEMPLATE = VBOXR3TSTEXE
390tstRTGetOpt_SOURCES = tstRTGetOpt.cpp
391
392tstRTGetOptArgv_TEMPLATE = VBOXR3TSTEXE
393tstRTGetOptArgv_SOURCES = tstRTGetOptArgv.cpp
394
395tstHandleTable_SOURCES = tstHandleTable.cpp
396
397tstRTHeapOffset_TEMPLATE = VBOXR3TSTEXE
398tstRTHeapOffset_SOURCES = tstRTHeapOffset.cpp
399
400tstRTHeapSimple_TEMPLATE = VBOXR3TSTEXE
401tstRTHeapSimple_SOURCES = tstRTHeapSimple.cpp
402
403tstRTInlineAsm_TEMPLATE = VBOXR3TSTEXE
404tstRTInlineAsm_SOURCES = tstRTInlineAsm.cpp
405
406tstRTInlineAsmPIC_TEMPLATE = VBOXR3TSTEXE
407tstRTInlineAsmPIC_SOURCES = tstRTInlineAsm.cpp
408tstRTInlineAsmPIC_CXXFLAGS = -fPIC
409tstRTInlineAsmPIC_DEFS = PIC
410
411tstRTInlineAsmPIC3_TEMPLATE = VBOXR3TSTEXE
412tstRTInlineAsmPIC3_SOURCES = tstRTInlineAsm.cpp
413tstRTInlineAsmPIC3_CXXFLAGS = -fPIC -fomit-frame-pointer -O3
414tstRTInlineAsmPIC3_DEFS = PIC
415
416tstIprtList_TEMPLATE = VBOXR3TSTEXE
417tstIprtList_SOURCES = tstIprtList.cpp
418
419tstIprtMiniString_TEMPLATE = VBOXR3TSTEXE
420tstIprtMiniString_SOURCES = tstIprtMiniString.cpp
421
422tstLdr_TEMPLATE = VBOXR3TSTEXE
423tstLdr_SOURCES = tstLdr.cpp
424
425tstLdr-2_TEMPLATE = VBOXR3TSTEXE
426tstLdr-2_SOURCES = tstLdr-2.cpp
427tstLdr-2_DEFS = IN_DIS
428tstLdr-2_LIBS = \
429 $(PATH_STAGE_LIB)/DisasmR3$(VBOX_SUFF_LIB)
430
431ifdef VBOX_WITH_RAW_MODE
432 tstLdrObj_TEMPLATE = VBoxRc
433 tstLdrObj_INST = $(INST_TESTCASE)
434 tstLdrObj_SYSSUFF = .gc
435 tstLdrObj_SOURCES = tstLdrObj.cpp
436 tstLdrObj_DEFS = IN_DIS IN_RT_RC DIS_CORE_ONLY
437 ifeq ($(VBOX_LDR_FMT32),elf)
438 tstLdrObj_DEFS += VBOX_SOME_IMPORT_FUNCTION
439 endif
440 tstLdrObj_LIBS = \
441 $(PATH_STAGE_LIB)/DisasmRC$(VBOX_SUFF_LIB) \
442 $(PATH_STAGE_LIB)/RuntimeRC$(VBOX_SUFF_LIB)
443 if1of ($(VBOX_LDR_FMT32),lx pe)
444 tstLdrObj_LIBS += \
445 $(PATH_STAGE_LIB)/VMMRCBuiltin$(VBOX_SUFF_LIB) \
446 $(PATH_STAGE_LIB)/VMMRCImp$(VBOX_SUFF_LIB)
447 endif
448endif # VBOX_WITH_RAW_MODE
449
450tstLdr-3_TEMPLATE = VBOXR3TSTEXE
451tstLdr-3_SOURCES = tstLdr-3.cpp
452tstLdr-3_DEFS = IN_DIS
453tstLdr-3_LIBS = \
454 $(PATH_STAGE_LIB)/DisasmR3$(VBOX_SUFF_LIB)
455
456tstLdr-4Imp_TEMPLATE = VBoxR0
457ifeq ($(VBOX_LDR_FMT),lx)
458 tstLdr-4Imp_SOURCES = tstLdr-4Imp-os2.def
459else ifeq ($(VBOX_LDR_FMT),pe)
460 tstLdr-4Imp_SOURCES.win = tstLdr-4Imp-win.def
461endif
462
463tstLdrObjR0_TEMPLATE = VBoxR0
464tstLdrObjR0_INST = $(INST_TESTCASE)
465tstLdrObjR0_SYSSUFF = .r0
466tstLdrObjR0_SOURCES = tstLdrObjR0.cpp tstLdrDisasmTest.cpp
467tstLdrObjR0_DEFS = IN_DIS IN_RT_R0 DIS_CORE_ONLY
468ifeq ($(VBOX_LDR_FMT32),elf)
469 tstLdrObjR0_DEFS += VBOX_SOME_IMPORT_FUNCTION
470endif
471ifn1of ($(KBUILD_TARGET), win)
472 tstLdrObjR0_CXXFLAGS = $(VBOX_GCC_Wno-array_bounds)
473endif
474tstLdrObjR0_LIBS = \
475 $(PATH_STAGE_LIB)/DisasmR0$(VBOX_SUFF_LIB) \
476 $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB)
477ifeq ($(VBOX_LDR_FMT),pe)
478 tstLdrObjR0_LIBS += \
479 $(PATH_STAGE_LIB)/SUPR0$(VBOX_SUFF_LIB) \
480 $(TARGET_tstLdr-4Imp)
481endif
482ifeq ($(VBOX_LDR_FMT),lx)
483 tstLdrObjR0_LIBS += \
484 $(PATH_STAGE_LIB)/SUPR0$(VBOX_SUFF_LIB) \
485 $(TARGET_tstLdr-4Imp)
486endif
487
488tstLdr-4_TEMPLATE = VBOXR3TSTEXE
489tstLdr-4_SOURCES = tstLdr-4.cpp tstLdrDisasmTest.cpp
490tstLdr-4_DEFS = IN_DIS
491tstLdr-4_LIBS = \
492 $(PATH_STAGE_LIB)/DisasmR3$(VBOX_SUFF_LIB)
493
494tstLdrLoad_TEMPLATE = VBOXR3TSTEXE
495tstLdrLoad_SOURCES = tstLdrLoad.cpp
496
497tstRTLdrVerifyPeImage_TEMPLATE = VBOXR3TSTEXE
498tstRTLdrVerifyPeImage_SOURCES = tstRTLdrVerifyPeImage.cpp
499
500tstRTList_TEMPLATE = VBOXR3TSTEXE
501tstRTList_SOURCES = tstRTList.cpp
502
503tstRTLocalIpc_TEMPLATE = VBOXR3TSTEXE
504tstRTLocalIpc_SOURCES = tstRTLocalIpc.cpp
505
506tstRTLockValidator_TEMPLATE = VBOXR3TSTEXE
507tstRTLockValidator_SOURCES = tstRTLockValidator.cpp
508
509tstLog_TEMPLATE = VBOXR3TSTEXE
510tstLog_SOURCES = tstLog.cpp
511tstLog_INCS = $(tstLog_0_OUTDIR)
512tstLog_INTERMEDIATES = $(tstLog_0_OUTDIR)/tstLogGroups.h
513tstLog_CLEAN = $(tstLog_0_OUTDIR)/tstLogGroups.h
514$$(tstLog_0_OUTDIR)/tstLogGroups.h: $(PATH_ROOT)/include/VBox/log.h
515 $(call MSG_GENERATE,,$@,$<)
516 $(QUIET)$(RM) -f -- "$@"
517 $(QUIET)$(SED) -n -e 's/^ *LOG_GROUP_\([A-Z0-9_]*\),.*$(DOLLAR)/{ LOG_GROUP_\1, "\1" },/p' --output "$@" "$<"
518
519tstRTMemEf_TEMPLATE = VBOXR3TSTEXE
520tstRTMemEf_SOURCES = tstRTMemEf.cpp
521
522tstRTMemCache_TEMPLATE = VBOXR3TSTEXE
523tstRTMemCache_SOURCES = tstRTMemCache.cpp
524
525tstRTMemPool_TEMPLATE = VBOXR3TSTEXE
526tstRTMemPool_SOURCES = tstRTMemPool.cpp
527
528tstRTMemWipe_TEMPLATE = VBOXR3TSTEXE
529tstRTMemWipe_SOURCES = tstRTMemWipe.cpp
530
531tstRTMemSafer_TEMPLATE = VBOXR3TSTEXE
532tstRTMemSafer_SOURCES = tstRTMemSafer.cpp
533
534tstMove_TEMPLATE = VBOXR3TSTEXE
535tstMove_SOURCES = tstMove.cpp
536
537tstRTMp-1_TEMPLATE = VBOXR3TSTEXE
538tstRTMp-1_SOURCES = tstRTMp-1.cpp
539
540tstRTNetIPv4_TEMPLATE = VBOXR3TSTEXE
541tstRTNetIPv4_SOURCES = tstRTNetIPv4.cpp
542
543tstRTNetIPv6_TEMPLATE = VBOXR3TSTEXE
544tstRTNetIPv6_SOURCES = tstRTNetIPv6.cpp
545
546tstNoCrt-1_TEMPLATE = VBOXR3TSTEXE
547tstNoCrt-1_DEFS = RT_WITHOUT_NOCRT_WRAPPER_ALIASES
548tstNoCrt-1_SOURCES = \
549 tstNoCrt-1.cpp \
550 ../common/string/memcpy.asm \
551 ../common/string/mempcpy.asm \
552 ../common/string/memmove.asm \
553 ../common/string/memset.asm \
554 ../common/string/memchr.asm \
555 ../common/string/memcmp.asm \
556 ../common/string/strchr.asm \
557 ../common/string/strcmp.asm \
558 ../common/string/strcpy.asm \
559 ../common/string/strlen.asm
560
561tstRTNtPath-1_TEMPLATE = VBOXR3TSTEXE
562tstRTNtPath-1_SOURCES = tstRTNtPath-1.cpp
563
564tstOnce_TEMPLATE = VBOXR3TSTEXE
565tstOnce_SOURCES = tstOnce.cpp
566
567tstRTPath_TEMPLATE = VBOXR3TSTEXE
568tstRTPath_SOURCES = tstRTPath.cpp
569
570tstRTPathGlob_TEMPLATE = VBOXR3TSTEXE
571tstRTPathGlob_SOURCES = tstRTPathGlob.cpp
572
573tstRTPathQueryInfo_TEMPLATE = VBOXR3TSTEXE
574tstRTPathQueryInfo_SOURCES = tstRTPathQueryInfo.cpp
575
576tstRTPipe_TEMPLATE = VBOXR3TSTEXE
577tstRTPipe_SOURCES = tstRTPipe.cpp
578
579tstRTPoll_TEMPLATE = VBOXR3TSTEXE
580tstRTPoll_SOURCES = tstRTPoll.cpp
581
582tstPrfRT_TEMPLATE = VBOXR3TSTEXE
583tstPrfRT_SOURCES = tstPrfRT.cpp
584tstPrfRT_SOURCES.x86 = tstRTPrfA.asm
585tstPrfRT_SOURCES.amd64 = tstRTPrfA.asm
586
587tstRTPrfIO_TEMPLATE = VBOXR3TSTEXE
588tstRTPrfIO_SOURCES = tstRTPrfIO.cpp
589
590tstRTProcCreateEx_TEMPLATE = VBOXR3TSTEXE
591tstRTProcCreateEx_SOURCES = tstRTProcCreateEx.cpp
592
593tstRTProcCreatePrf_TEMPLATE = VBOXR3TSTEXE
594tstRTProcCreatePrf_SOURCES = tstRTProcCreatePrf.cpp
595
596tstRTProcQueryUsername_TEMPLATE = VBOXR3TSTEXE
597tstRTProcQueryUsername_SOURCES = tstRTProcQueryUsername.cpp
598
599tstRTProcWait_TEMPLATE = VBOXR3TSTEXE
600tstRTProcWait_SOURCES = tstRTProcWait.cpp
601
602tstRTProcIsRunningByName_TEMPLATE = VBOXR3TSTEXE
603tstRTProcIsRunningByName_SOURCES = tstRTProcIsRunningByName.cpp
604
605tstRand_TEMPLATE = VBOXR3TSTEXE
606tstRand_SOURCES = tstRand.cpp
607
608tstRTReqPool_TEMPLATE = VBOXR3TSTEXE
609tstRTReqPool_SOURCES = tstRTReqPool.cpp
610
611tstRTS3_TEMPLATE = VBOXR3TSTEXE
612tstRTS3_SOURCES = tstRTS3.cpp
613
614tstSemMutex_TEMPLATE = VBOXR3TSTEXE
615tstSemMutex_SOURCES = tstSemMutex.cpp
616
617tstRTSemEventMulti_TEMPLATE = VBOXR3TSTEXE
618tstRTSemEventMulti_SOURCES = tstRTSemEventMulti.cpp
619
620tstRTSemRW_TEMPLATE = VBOXR3TSTEXE
621tstRTSemRW_SOURCES = tstRTSemRW.cpp
622
623tstSemPingPong_TEMPLATE = VBOXR3TSTEXE
624tstSemPingPong_SOURCES = tstSemPingPong.cpp
625
626tstRTSemXRoads_TEMPLATE = VBOXR3TSTEXE
627tstRTSemXRoads_SOURCES = tstRTSemXRoads.cpp
628
629tstRTSort_TEMPLATE = VBOXR3TSTEXE
630tstRTSort_SOURCES = tstRTSort.cpp
631
632tstRTStrAlloc_TEMPLATE = VBOXR3TSTEXE
633tstRTStrAlloc_SOURCES = tstRTStrAlloc.cpp
634
635tstRTStrCache_TEMPLATE = VBOXR3TSTEXE
636tstRTStrCache_SOURCES = tstRTStrCache.cpp
637
638tstRTStrCatCopy_TEMPLATE = VBOXR3TSTEXE
639tstRTStrCatCopy_SOURCES = tstRTStrCatCopy.cpp
640
641tstRTStrFormat_TEMPLATE = VBOXR3TSTEXE
642tstRTStrFormat_SOURCES = tstRTStrFormat.cpp
643
644tstStrSimplePattern_TEMPLATE = VBOXR3TSTEXE
645tstStrSimplePattern_SOURCES = tstStrSimplePattern.cpp
646
647tstStrToNum_TEMPLATE = VBOXR3TSTEXE
648tstStrToNum_SOURCES = tstStrToNum.cpp
649
650tstRTStrVersion_TEMPLATE = VBOXR3TSTEXE
651tstRTStrVersion_SOURCES = tstRTStrVersion.cpp
652
653tstRTSymlink_TEMPLATE = VBOXR3TSTEXE
654tstRTSymlink_SOURCES = tstRTSymlink.cpp
655
656tstRTSystemQueryDmi_TEMPLATE = VBOXR3TSTEXE
657tstRTSystemQueryDmi_SOURCES = tstRTSystemQueryDmi.cpp
658
659tstRTSystemQueryFirmware_TEMPLATE = VBOXR3TSTEXE
660tstRTSystemQueryFirmware_SOURCES = tstRTSystemQueryFirmware.cpp
661
662tstRTSystemQueryOsInfo_TEMPLATE = VBOXR3TSTEXE
663tstRTSystemQueryOsInfo_SOURCES = tstRTSystemQueryOsInfo.cpp
664
665tstRTTcp-1_TEMPLATE = VBOXR3TSTEXE
666tstRTTcp-1_SOURCES = tstRTTcp-1.cpp
667
668tstRTTemp_TEMPLATE = VBOXR3TSTEXE
669tstRTTemp_SOURCES = tstRTTemp.cpp
670
671tstRTDirCreateUniqueNumbered_TEMPLATE = VBOXR3TSTEXE
672tstRTDirCreateUniqueNumbered_SOURCES = tstRTDirCreateUniqueNumbered.cpp
673
674tstTermCallbacks_TEMPLATE = VBOXR3TSTEXE
675tstTermCallbacks_SOURCES = tstTermCallbacks.cpp
676
677tstThread-1_TEMPLATE = VBOXR3TSTEXE
678tstThread-1_SOURCES = tstThread-1.cpp
679
680tstRTThreadPoke_TEMPLATE = VBOXR3TSTEXE
681tstRTThreadPoke_SOURCES = tstRTThreadPoke.cpp
682
683tstRTThreadExecutionTime_TEMPLATE = VBOXR3TSTEXE
684tstRTThreadExecutionTime_SOURCES = tstRTThreadExecutionTime.cpp
685
686tstRTTime_TEMPLATE = VBOXR3TSTEXE
687tstRTTime_SOURCES = tstRTTime.cpp
688
689tstRTTraceLog_TEMPLATE = VBOXR3TSTEXE
690tstRTTraceLog_SOURCES = tstRTTraceLog.cpp
691
692tstTime-2_TEMPLATE = VBOXR3TSTEXE
693tstTime-2_SOURCES = tstTime-2.cpp
694
695tstTime-3_TEMPLATE = VBOXR3TSTEXE
696tstTime-3_SOURCES = tstTime-3.cpp
697
698tstTime-4_TEMPLATE = VBOXR3TSTEXE
699tstTime-4_SOURCES = tstTime-4.cpp
700
701tstTimer_TEMPLATE = VBOXR3TSTEXE
702tstTimer_SOURCES = tstTimer.cpp
703
704tstRTTimerLR_TEMPLATE = VBOXR3TSTEXE
705tstRTTimerLR_SOURCES = tstRTTimerLR.cpp
706
707tstRTTimeSpec_TEMPLATE = VBOXR3TSTEXE
708tstRTTimeSpec_SOURCES = tstRTTimeSpec.cpp
709
710tstTSC_SOURCES = tstTSC.cpp
711tstTSC_CXXFLAGS.linux += -O3
712
713tstRTUuid_TEMPLATE = VBOXR3TSTEXE
714tstRTUuid_SOURCES = tstRTUuid.cpp
715
716tstRTUdp-1_TEMPLATE = VBOXR3TSTEXE
717tstRTUdp-1_SOURCES = tstRTUdp-1.cpp
718
719tstUtf8_TEMPLATE = VBOXR3TSTEXE
720tstUtf8_SOURCES = tstUtf8.cpp
721
722tstRTCircBuf_TEMPLATE = VBOXR3TSTEXE
723tstRTCircBuf_SOURCES = tstRTCircBuf.cpp
724
725tstRTManifest_TEMPLATE = VBOXR3TSTEXE
726tstRTManifest_SOURCES = tstRTManifest.cpp
727
728tstRTMath_TEMPLATE = VBOXR3TSTEXE
729tstRTMath_SOURCES = \
730 tstRTMath.cpp \
731 ../common/math/gcc/udivmoddi4.c
732
733tstRTUri_TEMPLATE = VBOXR3TSTEXE
734tstRTUri_SOURCES = tstRTUri.cpp
735
736tstRTVfs_TEMPLATE = VBOXR3TSTEXE
737tstRTVfs_SOURCES = tstRTVfs.cpp
738
739tstRTCoreDump_TEMPLACE = VBOXR3TSTEXE
740tstRTCoreDump_SOURCES = tstRTCoreDump.cpp
741
742tstVector_TEMPLATE = VBOXR3TSTEXE
743tstVector_SOURCES = tstVector.cpp
744
745
746tstRTZip_TEMPLATE = VBOXR3TSTEXE
747tstRTZip_SOURCES = tstRTZip.cpp
748
749tstRTJson_TEMPLATE = VBOXR3TSTEXE
750tstRTJson_SOURCES = tstRTJson.cpp
751
752tstRTShMem_TEMPLATE = VBOXR3TSTEXE
753tstRTShMem_SOURCES = tstRTShMem.cpp
754
755#
756# Ring-0 testcases.
757#
758
759## @todo create a template for compiling the ring-0 part.
760tstRTR0DbgKrnlInfo_TEMPLATE = VBoxR0
761tstRTR0DbgKrnlInfo_INST = $(INST_TESTCASE)
762tstRTR0DbgKrnlInfo_DEFS = IN_RT_R0
763tstRTR0DbgKrnlInfo_SYSSUFF = .r0
764tstRTR0DbgKrnlInfo_SOURCES = tstRTR0DbgKrnlInfo.cpp
765tstRTR0DbgKrnlInfo_LIBS = $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB)
766if1of ($(VBOX_LDR_FMT), pe lx)
767 tstRTR0DbgKrnlInfo_LIBS += $(PATH_STAGE_LIB)/SUPR0$(VBOX_SUFF_LIB)
768endif
769if defined(VBOX_WITH_HARDENING) && "$(KBUILD_TARGET)" == "win"
770 tstRTR0DbgKrnlInfoDriverHardened_TEMPLATE = VBoxR3HardenedTstExe
771 tstRTR0DbgKrnlInfoDriverHardened_NAME = tstRTR0DbgKrnlInfoDriver
772 tstRTR0DbgKrnlInfoDriverHardened_DEFS = PROGRAM_NAME_STR=\"tstRTR0DbgKrnlInfoDriver\"
773 tstRTR0DbgKrnlInfoDriverHardened_SOURCES = ../../HostDrivers/Support/SUPR3HardenedMainTemplateTestcase.cpp
774 tstRTR0DbgKrnlInfoDriver_TEMPLATE = VBoxR3HardenedTstDll
775else
776 tstRTR0DbgKrnlInfoDriver_TEMPLATE = VBOXR3TSTEXE
777endif
778tstRTR0DbgKrnlInfoDriver_TEMPLATE = VBOXR3TSTEXE
779tstRTR0DbgKrnlInfoDriver_SOURCES = tstRTR0DbgKrnlInfoDriver.cpp
780
781
782tstRTR0MemUserKernel_TEMPLATE = VBoxR0
783tstRTR0MemUserKernel_INST = $(INST_TESTCASE)
784tstRTR0MemUserKernel_DEFS = IN_RT_R0
785tstRTR0MemUserKernel_SYSSUFF = .r0
786tstRTR0MemUserKernel_SOURCES = tstRTR0MemUserKernel.cpp
787tstRTR0MemUserKernel_LIBS = $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB)
788if1of ($(VBOX_LDR_FMT), pe lx)
789 tstRTR0MemUserKernel_LIBS += $(PATH_STAGE_LIB)/SUPR0$(VBOX_SUFF_LIB)
790endif
791if defined(VBOX_WITH_HARDENING) && "$(KBUILD_TARGET)" == "win"
792 tstRTR0MemUserKernelDriverHardened_TEMPLATE = VBoxR3HardenedTstExe
793 tstRTR0MemUserKernelDriverHardened_NAME = tstRTR0MemUserKernelDriver
794 tstRTR0MemUserKernelDriverHardened_DEFS = PROGRAM_NAME_STR=\"tstRTR0MemUserKernelDriver\"
795 tstRTR0MemUserKernelDriverHardened_SOURCES = ../../HostDrivers/Support/SUPR3HardenedMainTemplateTestcase.cpp
796 tstRTR0MemUserKernelDriver_TEMPLATE = VBoxR3HardenedTstDll
797else
798 tstRTR0MemUserKernelDriver_TEMPLATE = VBOXR3TSTEXE
799endif
800tstRTR0MemUserKernelDriver_SOURCES = tstRTR0MemUserKernelDriver.cpp
801
802
803tstRTR0SemMutex_TEMPLATE = VBoxR0
804tstRTR0SemMutex_INST = $(INST_TESTCASE)
805tstRTR0SemMutex_DEFS = IN_RT_R0
806tstRTR0SemMutex_SYSSUFF = .r0
807tstRTR0SemMutex_SOURCES = tstRTR0SemMutex.cpp
808tstRTR0SemMutex_LIBS = $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB)
809if1of ($(VBOX_LDR_FMT), pe lx)
810 tstRTR0SemMutex_LIBS += $(PATH_STAGE_LIB)/SUPR0$(VBOX_SUFF_LIB)
811endif
812if defined(VBOX_WITH_HARDENING) && "$(KBUILD_TARGET)" == "win"
813 tstRTR0SemMutexDriverHardened_TEMPLATE = VBoxR3HardenedTstExe
814 tstRTR0SemMutexDriverHardened_NAME = tstRTR0SemMutexDriver
815 tstRTR0SemMutexDriverHardened_DEFS = PROGRAM_NAME_STR=\"tstRTR0SemMutexDriver\"
816 tstRTR0SemMutexDriverHardened_SOURCES = ../../HostDrivers/Support/SUPR3HardenedMainTemplateTestcase.cpp
817 tstRTR0SemMutexDriver_TEMPLATE = VBoxR3HardenedTstDll
818else
819 tstRTR0SemMutexDriver_TEMPLATE = VBOXR3TSTEXE
820endif
821tstRTR0SemMutexDriver_SOURCES = tstRTR0SemMutexDriver.cpp
822
823
824tstRTR0Thread_TEMPLATE = VBoxR0
825tstRTR0Thread_INST = $(INST_TESTCASE)
826tstRTR0Thread_DEFS = IN_RT_R0
827tstRTR0Thread_SYSSUFF = .r0
828tstRTR0Thread_SOURCES = tstRTR0Thread.cpp
829tstRTR0Thread_LIBS = $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB)
830if1of ($(VBOX_LDR_FMT), pe lx)
831 tstRTR0Thread_LIBS += $(PATH_STAGE_LIB)/SUPR0$(VBOX_SUFF_LIB)
832endif
833if defined(VBOX_WITH_HARDENING) && "$(KBUILD_TARGET)" == "win"
834 tstRTR0ThreadDriverHardened_TEMPLATE = VBoxR3HardenedTstExe
835 tstRTR0ThreadDriverHardened_NAME = tstRTR0ThreadDriver
836 tstRTR0ThreadDriverHardened_DEFS = PROGRAM_NAME_STR=\"tstRTR0ThreadDriver\"
837 tstRTR0ThreadDriverHardened_SOURCES = ../../HostDrivers/Support/SUPR3HardenedMainTemplateTestcase.cpp
838 tstRTR0ThreadDriver_TEMPLATE = VBoxR3HardenedTstDll
839else
840 tstRTR0ThreadDriver_TEMPLATE = VBOXR3TSTEXE
841endif
842tstRTR0ThreadDriver_SOURCES = tstRTR0ThreadDriver.cpp
843
844
845tstRTR0Timer_TEMPLATE = VBoxR0
846tstRTR0Timer_INST = $(INST_TESTCASE)
847tstRTR0Timer_DEFS = IN_RT_R0
848tstRTR0Timer_SYSSUFF = .r0
849tstRTR0Timer_SOURCES = tstRTR0Timer.cpp
850tstRTR0Timer_LIBS = $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB)
851if1of ($(VBOX_LDR_FMT), pe lx)
852 tstRTR0Timer_LIBS += $(PATH_STAGE_LIB)/SUPR0$(VBOX_SUFF_LIB)
853endif
854if defined(VBOX_WITH_HARDENING) && "$(KBUILD_TARGET)" == "win"
855 tstRTR0TimerDriverHardened_TEMPLATE = VBoxR3HardenedTstExe
856 tstRTR0TimerDriverHardened_NAME = tstRTR0TimerDriver
857 tstRTR0TimerDriverHardened_DEFS = PROGRAM_NAME_STR=\"tstRTR0TimerDriver\"
858 tstRTR0TimerDriverHardened_SOURCES = ../../HostDrivers/Support/SUPR3HardenedMainTemplateTestcase.cpp
859 tstRTR0TimerDriver_TEMPLATE = VBoxR3HardenedTstDll
860else
861 tstRTR0TimerDriver_TEMPLATE = VBOXR3TSTEXE
862endif
863tstRTR0TimerDriver_SOURCES = tstRTR0TimerDriver.cpp
864
865
866tstRTR0ThreadPreemption_TEMPLATE = VBoxR0
867tstRTR0ThreadPreemption_INST = $(INST_TESTCASE)
868tstRTR0ThreadPreemption_DEFS = IN_RT_R0
869tstRTR0ThreadPreemption_SYSSUFF = .r0
870tstRTR0ThreadPreemption_SOURCES = tstRTR0ThreadPreemption.cpp
871tstRTR0ThreadPreemption_LIBS = $(PATH_STAGE_LIB)/RuntimeR0$(VBOX_SUFF_LIB)
872if1of ($(VBOX_LDR_FMT), pe lx)
873 tstRTR0ThreadPreemption_LIBS += $(PATH_STAGE_LIB)/SUPR0$(VBOX_SUFF_LIB)
874endif
875if defined(VBOX_WITH_HARDENING) && "$(KBUILD_TARGET)" == "win"
876 tstRTR0ThreadPreemptionDriverHardened_TEMPLATE = VBoxR3HardenedTstExe
877 tstRTR0ThreadPreemptionDriverHardened_NAME = tstRTR0ThreadPreemptionDriver
878 tstRTR0ThreadPreemptionDriverHardened_DEFS = PROGRAM_NAME_STR=\"tstRTR0ThreadPreemptionDriver\"
879 tstRTR0ThreadPreemptionDriverHardened_SOURCES = ../../HostDrivers/Support/SUPR3HardenedMainTemplateTestcase.cpp
880 tstRTR0ThreadPreemptionDriver_TEMPLATE = VBoxR3HardenedTstDll
881else
882 tstRTR0ThreadPreemptionDriver_TEMPLATE = VBOXR3TSTEXE
883endif
884tstRTR0ThreadPreemptionDriver_SOURCES = tstRTR0ThreadPreemptionDriver.cpp
885
886
887#
888# Odds and ends.
889#
890
891tstDarwinSched_TEMPLATE = VBOXR3TSTEXE
892tstDarwinSched_SOURCES = tstDarwinSched.cpp
893
894tstRTDarwinMachKernel_TEMPLATE = VBOXR3TSTEXE
895tstRTDarwinMachKernel_INCS = ../include
896tstRTDarwinMachKernel_SOURCES = \
897 tstRTDarwinMachKernel.cpp \
898 ../r0drv/darwin/dbgkrnlinfo-r0drv-darwin.cpp
899
900ntGetTimerResolution_SOURCES = ntGetTimerResolution.cpp
901ntGetTimerResolution_SDKS.win = ReorderCompilerIncs $(VBOX_WINPSDK) $(VBOX_WINDDK) VBOX_NTDLL
902
903endif # VBOX_WITH_TESTCASES
904
905include $(FILE_KBUILD_SUB_FOOTER)
906
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