VirtualBox

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

Last change on this file since 79891 was 79891, checked in by vboxsync, 6 years ago

*.kmk: Preparing for dropping 32-bit host support. Introducing a variable VBOX_SUPPORTED_HOST_ARCHS controlling what's supported and not. bugref:9511

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