VirtualBox

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

Last change on this file since 25605 was 25605, checked in by vboxsync, 15 years ago

tstDeadlock -> tstRTLockValidator.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 10.1 KB
Line 
1# $Id: Makefile.kmk 25605 2009-12-31 02:30:48Z vboxsync $
2## @file
3# Sub-Makefile for the IPRT testcases.
4#
5
6#
7# Copyright (C) 2006-2009 Sun Microsystems, Inc.
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# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
27# Clara, CA 95054 USA or visit http://www.sun.com if you need
28# additional information or have any questions.
29#
30
31SUB_DEPTH = ../../../..
32include $(KBUILD_PATH)/subheader.kmk
33
34ifdef VBOX_WITH_TESTCASES
35
36#
37# Globals
38#
39# WARNING: Careful with this wrt to the other sub-makefiles this joins.
40#
41TEMPLATE = VBOXR3TSTEXE
42
43# Defined by the parent makefile as well (for errmsgdata.h).
44IPRT_OUT_DIR ?= $(PATH_TARGET)/Runtime
45
46
47#
48# Target lists
49#
50PROGRAMS += \
51 tstRTAvl \
52 tstRTBase64 \
53 tstRTBitOperations \
54 tstRTCidr \
55 tstRTCritSect \
56 tstRTDigest \
57 tstDir \
58 tstDir-2 \
59 tstDir-3 \
60 tstEnv \
61 tstErrUnique \
62 tstFile \
63 tstFileAio \
64 tstFileAppend-1 \
65 tstFileLock \
66 tstFork \
67 tstGetOpt \
68 tstHandleTable \
69 tstRTHeapOffset \
70 tstRTHeapSimple \
71 tstInlineAsm \
72 tstLdr \
73 tstLdr-2 \
74 tstLdr-3 \
75 tstLdr-4 \
76 tstLdrLoad \
77 tstRTLockValidator \
78 tstLog \
79 tstMemAutoPtr \
80 tstRTMemPool \
81 tstRTR0MemUserKernelDriver \
82 tstMove \
83 tstMp-1 \
84 tstNoCrt-1 \
85 tstOnce \
86 tstPath \
87 tstPrfRT \
88 tstRand \
89 tstRTFsQueries \
90 tstR0ThreadPreemptionDriver \
91 tstRTS3 \
92 tstSemEvent \
93 tstSemMutex \
94 tstSemPingPong \
95 tstRTSemRW \
96 tstSems \
97 tstRTSemXRoads \
98 tstRTStrCache \
99 tstRTStrFormat \
100 tstStrSimplePattern \
101 tstStrToNum \
102 tstRTStrVersion \
103 tstSystemQueryOsInfo \
104 tstRTTemp \
105 tstTermCallbacks \
106 tstThread-1 \
107 tstTime \
108 tstTime-2 \
109 tstTime-3 \
110 tstTime-4 \
111 tstTimer \
112 tstTimerLR \
113 tstTimeSpec \
114 tstTSC \
115 tstUtf8 \
116 tstUuid
117# tstSems
118PROGRAMS.win += \
119 tstRTProcWait \
120 tstRTCritSectW32 \
121 tstFileAppendWin-1 \
122 ntGetTimerResolution
123PROGRAMS.linux += \
124 tstRTProcWait \
125 tstRTProcIsRunningByName \
126 tstRTBitOperationsPIC3 \
127 tstInlineAsmPIC \
128 tstInlineAsmPIC3
129PROGRAMS.l4 += \
130 tstIoCtl
131PROGRAMS.darwin += \
132 tstDarwinSched
133SYSMODS += \
134 tstLdrObj \
135 tstLdrObjR0 \
136 tstRTR0MemUserKernel \
137 tstR0ThreadPreemption
138if1of ($(VBOX_LDR_FMT)), lx pe)
139LIBRARIES += \
140 tstLdr-4Imp
141endif
142
143
144#
145# Target configs in almost alphabetical order.
146#
147
148tstRTAvl_TEMPLATE = VBOXR3TSTEXE
149tstRTAvl_SOURCES = tstRTAvl.cpp
150
151tstRTBase64_TEMPLATE = VBOXR3TSTEXE
152tstRTBase64_SOURCES = tstRTBase64.cpp
153
154tstRTBitOperations_TEMPLATE = VBOXR3TSTEXE
155tstRTBitOperations_SOURCES = tstRTBitOperations.cpp
156
157tstRTBitOperationsPIC3_TEMPLATE = VBOXR3TSTEXE
158tstRTBitOperationsPIC3_SOURCES = tstRTBitOperations.cpp
159tstRTBitOperationsPIC3_CXXFLAGS = -fPIC -fomit-frame-pointer -O3
160tstRTBitOperationsPIC3_DEFS = PIC
161
162tstRTCidr_TEMPLATE = VBOXR3TSTEXE
163tstRTCidr_SOURCES = tstRTCidr.cpp
164
165tstRTCritSect_TEMPLATE = VBOXR3TSTEXE
166tstRTCritSect_SOURCES = tstRTCritSect.cpp
167
168tstRTCritSectW32_TEMPLATE = VBOXR3TSTEXE
169tstRTCritSectW32_SOURCES = tstRTCritSect.cpp
170tstRTCritSectW32_DEFS = TRY_WIN32_CRIT
171
172tstRTDigest_SOURCES = tstRTDigest.cpp
173
174tstDir_SOURCES = tstDir.cpp
175
176tstDir-2_SOURCES = tstDir-2.cpp
177
178tstDir-3_SOURCES = tstDir-3.cpp
179
180tstEnv_SOURCES = tstEnv.cpp
181
182# Note: tstErrUnique.cpp depends on a header generated by the makefile above us.
183tstErrUnique_SOURCES = tstErrUnique.cpp
184tstErrUnique_INCS = $(IPRT_OUT_DIR)/
185tstErrUnique.cpp_DEPS = $(IPRT_OUT_DIR)/errmsgdata.h
186
187tstFile_SOURCES = tstFile.cpp
188
189tstFileAppend-1_SOURCES = tstFileAppend-1.cpp
190
191tstFileAppendWin-1_SOURCES = tstFileAppendWin-1.cpp
192
193tstFileAio_SOURCES = tstFileAio.cpp
194
195tstFileLock_SOURCES = tstFileLock.cpp
196
197tstFork_SOURCES = tstFork.cpp
198
199tstGetOpt_SOURCES = tstGetOpt.cpp
200
201tstHandleTable_SOURCES = tstHandleTable.cpp
202
203tstRTHeapOffset_TEMPLATE = VBOXR3TSTEXE
204tstRTHeapOffset_SOURCES = tstRTHeapOffset.cpp
205
206tstRTHeapSimple_TEMPLATE = VBOXR3TSTEXE
207tstRTHeapSimple_SOURCES = tstRTHeapSimple.cpp
208
209tstIoCtl_SOURCES = tstIoCtl.cpp
210
211tstInlineAsm_SOURCES = tstInlineAsm.cpp
212
213tstInlineAsmPIC_SOURCES = tstInlineAsm.cpp
214tstInlineAsmPIC_CXXFLAGS = -fPIC
215tstInlineAsmPIC_DEFS = PIC
216
217tstInlineAsmPIC3_SOURCES = tstInlineAsm.cpp
218tstInlineAsmPIC3_CXXFLAGS = -fPIC -fomit-frame-pointer -O3
219tstInlineAsmPIC3_DEFS = PIC
220
221tstLdr_SOURCES = tstLdr.cpp
222
223tstLdr-2_SOURCES = tstLdr-2.cpp
224tstLdr-2_DEFS = IN_DIS
225tstLdr-2_LIBS = \
226 $(PATH_LIB)/DisasmR3$(VBOX_SUFF_LIB)
227
228tstLdrObj_TEMPLATE = VBOXGC
229tstLdrObj_INST = $(INST_TESTCASE)
230tstLdrObj_SYSSUFF = .gc
231tstLdrObj_SOURCES = tstLdrObj.cpp
232tstLdrObj_DEFS = IN_DIS IN_RT_GC IN_RT_RC DIS_CORE_ONLY
233ifeq ($(VBOX_LDR_FMT32),elf)
234tstLdrObj_DEFS += VBOX_SOME_IMPORT_FUNCTION
235endif
236tstLdrObj_LIBS = \
237 $(PATH_LIB)/DisasmGC$(VBOX_SUFF_LIB) \
238 $(PATH_LIB)/RuntimeGC$(VBOX_SUFF_LIB)
239ifeq ($(VBOX_LDR_FMT32),pe)
240tstLdrObj_LDFLAGS = -Entry:Entrypoint
241tstLdrObj_LIBS += \
242 $(PATH_LIB)/VMMGCBuiltin$(VBOX_SUFF_LIB)
243endif # PE
244ifeq ($(VBOX_LDR_FMT32),elf)
245tstLdrObj_LDFLAGS = -e Entrypoint
246endif
247ifeq ($(VBOX_LDR_FMT32),lx)
248tstLdrObj_LIBS += \
249 $(PATH_LIB)/VMMGCBuiltin$(VBOX_SUFF_LIB)
250endif
251
252tstLdr-3_SOURCES = tstLdr-3.cpp
253tstLdr-3_DEFS = IN_DIS
254tstLdr-3_LIBS = \
255 $(PATH_LIB)/DisasmR3$(VBOX_SUFF_LIB)
256
257tstLdr-4Imp_TEMPLATE = VBOXR0
258ifeq ($(VBOX_LDR_FMT),lx)
259 tstLdr-4Imp_SOURCES = tstLdr-4Imp-os2.def
260else ifeq ($(VBOX_LDR_FMT),pe)
261 tstLdr-4Imp_SOURCES.win = tstLdr-4Imp-win.def
262endif
263
264tstLdrObjR0_TEMPLATE = VBOXR0
265tstLdrObjR0_INST = $(INST_TESTCASE)
266tstLdrObjR0_SYSSUFF = .r0
267tstLdrObjR0_SOURCES = tstLdrObjR0.cpp tstLdrDisasmTest.cpp
268tstLdrObjR0_DEFS = IN_DIS IN_RT_R0 DIS_CORE_ONLY
269ifeq ($(VBOX_LDR_FMT32),elf)
270 tstLdrObjR0_DEFS += VBOX_SOME_IMPORT_FUNCTION
271endif
272tstLdrObjR0_LIBS = \
273 $(PATH_LIB)/DisasmR0$(VBOX_SUFF_LIB) \
274 $(PATH_LIB)/RuntimeR0$(VBOX_SUFF_LIB)
275ifeq ($(VBOX_LDR_FMT),pe)
276 tstLdrObjR0_LDFLAGS = -Entry:Entrypoint
277 tstLdrObjR0_LIBS += \
278 $(PATH_LIB)/SUPR0$(VBOX_SUFF_LIB) \
279 $(TARGET_tstLdr-4Imp)
280endif
281ifeq ($(VBOX_LDR_FMT),elf)
282 tstLdrObjR0_LDFLAGS = -e Entrypoint
283endif
284ifeq ($(VBOX_LDR_FMT),lx)
285 tstLdrObjR0_LIBS += \
286 $(PATH_LIB)/SUPR0$(VBOX_SUFF_LIB) \
287 $(TARGET_tstLdr-4Imp)
288endif
289
290tstLdr-4_SOURCES = tstLdr-4.cpp tstLdrDisasmTest.cpp
291tstLdr-4_DEFS = IN_DIS
292tstLdr-4_LIBS = \
293 $(PATH_LIB)/DisasmR3$(VBOX_SUFF_LIB)
294
295tstLdrLoad_SOURCES = tstLdrLoad.cpp
296
297tstRTLockValidator_TEMPLATE = VBOXR3TSTEXE
298tstRTLockValidator_SOURCES = tstRTLockValidator.cpp
299
300tstLog_SOURCES = tstLog.cpp
301
302tstMemAutoPtr_SOURCES = tstMemAutoPtr.cpp
303
304tstRTMemPool_TEMPLATE = VBOXR3TSTEXE
305tstRTMemPool_SOURCES = tstRTMemPool.cpp
306
307tstRTR0MemUserKernel_TEMPLATE = VBOXR0
308tstRTR0MemUserKernel_INST = $(INST_TESTCASE)
309tstRTR0MemUserKernel_DEFS = IN_RT_R0
310tstRTR0MemUserKernel_SYSSUFF = .r0
311tstRTR0MemUserKernel_SOURCES = tstRTR0MemUserKernel.cpp
312tstRTR0MemUserKernel_LIBS = $(PATH_LIB)/RuntimeR0$(VBOX_SUFF_LIB)
313if1of ($(VBOX_LDR_FMT), pe lx)
314 tstRTR0MemUserKernel_LIBS += $(PATH_LIB)/SUPR0$(VBOX_SUFF_LIB)
315endif
316
317tstRTR0MemUserKernelDriver_SOURCES = tstRTR0MemUserKernelDriver.cpp
318
319tstMove_SOURCES = tstMove.cpp
320
321tstMp-1_SOURCES = tstMp-1.cpp
322
323tstNoCrt-1_DEFS = RT_WITHOUT_NOCRT_WRAPPER_ALIASES
324tstNoCrt-1_SOURCES = \
325 tstNoCrt-1.cpp \
326 ../common/string/memcpy.asm \
327 ../common/string/mempcpy.asm \
328 ../common/string/memmove.asm \
329 ../common/string/memset.asm \
330 ../common/string/memchr.asm \
331 ../common/string/memcmp.asm \
332 ../common/string/strchr.asm \
333 ../common/string/strcmp.asm \
334 ../common/string/strcpy.asm \
335 ../common/string/strlen.asm
336
337tstOnce_SOURCES = tstOnce.cpp
338
339tstPath_SOURCES = tstPath.cpp
340
341tstPrfRT_SOURCES = tstPrfRT.cpp
342
343tstRand_SOURCES = tstRand.cpp
344
345tstR0ThreadPreemption_TEMPLATE = VBOXR0
346tstR0ThreadPreemption_INST = $(INST_TESTCASE)
347tstR0ThreadPreemption_DEFS = IN_RT_R0
348tstR0ThreadPreemption_SYSSUFF = .r0
349tstR0ThreadPreemption_SOURCES = tstR0ThreadPreemption.cpp
350tstR0ThreadPreemption_LIBS = $(PATH_LIB)/RuntimeR0$(VBOX_SUFF_LIB)
351if1of ($(VBOX_LDR_FMT), pe lx)
352 tstR0ThreadPreemption_LIBS += $(PATH_LIB)/SUPR0$(VBOX_SUFF_LIB)
353endif
354
355tstR0ThreadPreemptionDriver_SOURCES = tstR0ThreadPreemptionDriver.cpp
356
357tstRTFsQueries_SOURCES = tstRTFsQueries.cpp
358
359tstRTProcWait_SOURCES = tstRTProcWait.cpp
360
361tstRTProcIsRunningByName_SOURCES = tstRTProcIsRunningByName.cpp
362
363tstRTS3_SOURCES = tstRTS3.cpp
364
365tstSemMutex_SOURCES = tstSemMutex.cpp
366
367tstSemEvent_SOURCES = tstSemEvent.cpp
368
369tstRTSemRW_TEMPLATE = VBOXR3TSTEXE
370tstRTSemRW_SOURCES = tstRTSemRW.cpp
371
372tstSemPingPong_SOURCES = tstSemPingPong.cpp
373
374tstSems_SOURCES = tstSems.cpp
375
376tstRTSemXRoads_TEMPLATE = VBOXR3TSTEXE
377tstRTSemXRoads_SOURCES = tstRTSemXRoads.cpp
378
379tstRTStrCache_TEMPLATE = VBOXR3TSTEXE
380tstRTStrCache_SOURCES = tstRTStrCache.cpp
381
382tstRTStrFormat_SOURCES = tstRTStrFormat.cpp
383
384tstStrSimplePattern_SOURCES = tstStrSimplePattern.cpp
385
386tstStrToNum_SOURCES = tstStrToNum.cpp
387
388tstRTStrVersion_TEMPLATE = VBOXR3TSTEXE
389tstRTStrVersion_SOURCES = tstRTStrVersion.cpp
390
391tstSystemQueryOsInfo_SOURCES = tstSystemQueryOsInfo.cpp
392
393tstRTTemp_TEMPLATE = VBOXR3TSTEXE
394tstRTTemp_SOURCES = tstRTTemp.cpp
395
396tstTermCallbacks_SOURCES = tstTermCallbacks.cpp
397
398tstThread-1_SOURCES = tstThread-1.cpp
399
400tstTime_SOURCES = tstTime.cpp
401
402tstTime-2_SOURCES = tstTime-2.cpp
403
404tstTime-3_SOURCES = tstTime-3.cpp
405
406tstTime-4_SOURCES = tstTime-4.cpp
407
408tstTimer_SOURCES = tstTimer.cpp
409
410tstTimerLR_SOURCES = tstTimerLR.cpp
411
412tstTimeSpec_SOURCES = tstTimeSpec.cpp
413
414tstTSC_SOURCES = tstTSC.cpp
415tstTSC_CXXFLAGS.linux += -O3
416
417tstUuid_SOURCES = tstUuid.cpp
418
419tstUtf8_SOURCES = tstUtf8.cpp
420
421
422#
423# odds and ends
424#
425
426tstDarwinSched_SOURCES = tstDarwinSched.cpp
427
428ntGetTimerResolution_SOURCES = ntGetTimerResolution.cpp
429ntGetTimerResolution_SDKS.win = WINPSDK W2K3DDK VBOX_NTDLL
430
431endif # VBOX_WITH_TESTCASES
432
433include $(KBUILD_PATH)/subfooter.kmk
434
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