VirtualBox

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

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

tstHeapSimple.cpp -> tstRTHeapSimple.cpp.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 9.8 KB
Line 
1# $Id: Makefile.kmk 25057 2009-11-27 17:26:02Z 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 tstDeadlock \
57 tstRTDigest \
58 tstDir \
59 tstDir-2 \
60 tstDir-3 \
61 tstEnv \
62 tstErrUnique \
63 tstFile \
64 tstFileAio \
65 tstFileAppend-1 \
66 tstFileLock \
67 tstFork \
68 tstGetOpt \
69 tstHandleTable \
70 tstRTHeapSimple \
71 tstInlineAsm \
72 tstLdr \
73 tstLdr-2 \
74 tstLdr-3 \
75 tstLdr-4 \
76 tstLdrLoad \
77 tstLog \
78 tstMemAutoPtr \
79 tstRTMemPool \
80 tstRTR0MemUserKernelDriver \
81 tstMove \
82 tstMp-1 \
83 tstNoCrt-1 \
84 tstOnce \
85 tstPath \
86 tstPrfRT \
87 tstRand \
88 tstRTFsQueries \
89 tstR0ThreadPreemptionDriver \
90 tstRTS3 \
91 tstSems \
92 tstSemEvent \
93 tstSemPingPong \
94 tstRTStrCache \
95 tstRTStrFormat \
96 tstStrSimplePattern \
97 tstStrToNum \
98 tstRTStrVersion \
99 tstSystemQueryOsInfo \
100 tstRTTemp \
101 tstTermCallbacks \
102 tstThread-1 \
103 tstTime \
104 tstTime-2 \
105 tstTime-3 \
106 tstTime-4 \
107 tstTimer \
108 tstTimerLR \
109 tstTimeSpec \
110 tstTSC \
111 tstUtf8 \
112 tstUuid
113# tstSems
114PROGRAMS.win += \
115 tstRTProcWait \
116 tstRTCritSectW32 \
117 tstFileAppendWin-1 \
118 ntGetTimerResolution
119PROGRAMS.linux += \
120 tstRTProcWait \
121 tstRTProcIsRunningByName \
122 tstRTBitOperationsPIC3 \
123 tstInlineAsmPIC \
124 tstInlineAsmPIC3 \
125 tstSemMutex \
126 tstSemRW
127PROGRAMS.l4 += \
128 tstIoCtl
129PROGRAMS.darwin += \
130 tstDarwinSched
131SYSMODS += \
132 tstLdrObj \
133 tstLdrObjR0 \
134 tstRTR0MemUserKernel \
135 tstR0ThreadPreemption
136if1of ($(VBOX_LDR_FMT)), lx pe)
137LIBRARIES += \
138 tstLdr-4Imp
139endif
140
141
142#
143# Target configs in almost alphabetical order.
144#
145
146tstRTAvl_TEMPLATE = VBOXR3TSTEXE
147tstRTAvl_SOURCES = tstRTAvl.cpp
148
149tstRTBase64_TEMPLATE = VBOXR3TSTEXE
150tstRTBase64_SOURCES = tstRTBase64.cpp
151
152tstRTBitOperations_TEMPLATE = VBOXR3TSTEXE
153tstRTBitOperations_SOURCES = tstRTBitOperations.cpp
154
155tstRTBitOperationsPIC3_TEMPLATE = VBOXR3TSTEXE
156tstRTBitOperationsPIC3_SOURCES = tstRTBitOperations.cpp
157tstRTBitOperationsPIC3_CXXFLAGS = -fPIC -fomit-frame-pointer -O3
158tstRTBitOperationsPIC3_DEFS = PIC
159
160tstRTCidr_TEMPLATE = VBOXR3TSTEXE
161tstRTCidr_SOURCES = tstRTCidr.cpp
162
163tstRTCritSect_TEMPLATE = VBOXR3TSTEXE
164tstRTCritSect_SOURCES = tstRTCritSect.cpp
165
166tstRTCritSectW32_TEMPLATE = VBOXR3TSTEXE
167tstRTCritSectW32_SOURCES = tstRTCritSect.cpp
168tstRTCritSectW32_DEFS = TRY_WIN32_CRIT
169
170tstDeadlock_SOURCES = tstDeadlock.cpp
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
203tstRTHeapSimple_TEMPLATE = VBOXR3TSTEXE
204tstRTHeapSimple_SOURCES = tstRTHeapSimple.cpp
205
206tstIoCtl_SOURCES = tstIoCtl.cpp
207
208tstInlineAsm_SOURCES = tstInlineAsm.cpp
209
210tstInlineAsmPIC_SOURCES = tstInlineAsm.cpp
211tstInlineAsmPIC_CXXFLAGS = -fPIC
212tstInlineAsmPIC_DEFS = PIC
213
214tstInlineAsmPIC3_SOURCES = tstInlineAsm.cpp
215tstInlineAsmPIC3_CXXFLAGS = -fPIC -fomit-frame-pointer -O3
216tstInlineAsmPIC3_DEFS = PIC
217
218tstLdr_SOURCES = tstLdr.cpp
219
220tstLdr-2_SOURCES = tstLdr-2.cpp
221tstLdr-2_DEFS = IN_DIS
222tstLdr-2_LIBS = \
223 $(PATH_LIB)/DisasmR3$(VBOX_SUFF_LIB)
224
225tstLdrObj_TEMPLATE = VBOXGC
226tstLdrObj_INST = $(INST_TESTCASE)
227tstLdrObj_SYSSUFF = .gc
228tstLdrObj_SOURCES = tstLdrObj.cpp
229tstLdrObj_DEFS = IN_DIS IN_RT_GC IN_RT_RC DIS_CORE_ONLY
230ifeq ($(VBOX_LDR_FMT32),elf)
231tstLdrObj_DEFS += VBOX_SOME_IMPORT_FUNCTION
232endif
233tstLdrObj_LIBS = \
234 $(PATH_LIB)/DisasmGC$(VBOX_SUFF_LIB) \
235 $(PATH_LIB)/RuntimeGC$(VBOX_SUFF_LIB)
236ifeq ($(VBOX_LDR_FMT32),pe)
237tstLdrObj_LDFLAGS = -Entry:Entrypoint
238tstLdrObj_LIBS += \
239 $(PATH_LIB)/VMMGCBuiltin$(VBOX_SUFF_LIB)
240endif # PE
241ifeq ($(VBOX_LDR_FMT32),elf)
242tstLdrObj_LDFLAGS = -e Entrypoint
243endif
244ifeq ($(VBOX_LDR_FMT32),lx)
245tstLdrObj_LIBS += \
246 $(PATH_LIB)/VMMGCBuiltin$(VBOX_SUFF_LIB)
247endif
248
249tstLdr-3_SOURCES = tstLdr-3.cpp
250tstLdr-3_DEFS = IN_DIS
251tstLdr-3_LIBS = \
252 $(PATH_LIB)/DisasmR3$(VBOX_SUFF_LIB)
253
254tstLdr-4Imp_TEMPLATE = VBOXR0
255ifeq ($(VBOX_LDR_FMT),lx)
256 tstLdr-4Imp_SOURCES = tstLdr-4Imp-os2.def
257else ifeq ($(VBOX_LDR_FMT),pe)
258 tstLdr-4Imp_SOURCES.win = tstLdr-4Imp-win.def
259endif
260
261tstLdrObjR0_TEMPLATE = VBOXR0
262tstLdrObjR0_INST = $(INST_TESTCASE)
263tstLdrObjR0_SYSSUFF = .r0
264tstLdrObjR0_SOURCES = tstLdrObjR0.cpp tstLdrDisasmTest.cpp
265tstLdrObjR0_DEFS = IN_DIS IN_RT_R0 DIS_CORE_ONLY
266ifeq ($(VBOX_LDR_FMT32),elf)
267 tstLdrObjR0_DEFS += VBOX_SOME_IMPORT_FUNCTION
268endif
269tstLdrObjR0_LIBS = \
270 $(PATH_LIB)/DisasmR0$(VBOX_SUFF_LIB) \
271 $(PATH_LIB)/RuntimeR0$(VBOX_SUFF_LIB)
272ifeq ($(VBOX_LDR_FMT),pe)
273 tstLdrObjR0_LDFLAGS = -Entry:Entrypoint
274 tstLdrObjR0_LIBS += \
275 $(PATH_LIB)/SUPR0$(VBOX_SUFF_LIB) \
276 $(TARGET_tstLdr-4Imp)
277endif
278ifeq ($(VBOX_LDR_FMT),elf)
279 tstLdrObjR0_LDFLAGS = -e Entrypoint
280endif
281ifeq ($(VBOX_LDR_FMT),lx)
282 tstLdrObjR0_LIBS += \
283 $(PATH_LIB)/SUPR0$(VBOX_SUFF_LIB) \
284 $(TARGET_tstLdr-4Imp)
285endif
286
287tstLdr-4_SOURCES = tstLdr-4.cpp tstLdrDisasmTest.cpp
288tstLdr-4_DEFS = IN_DIS
289tstLdr-4_LIBS = \
290 $(PATH_LIB)/DisasmR3$(VBOX_SUFF_LIB)
291
292tstLdrLoad_SOURCES = tstLdrLoad.cpp
293
294tstLog_SOURCES = tstLog.cpp
295
296tstMemAutoPtr_SOURCES = tstMemAutoPtr.cpp
297
298tstRTMemPool_TEMPLATE = VBOXR3TSTEXE
299tstRTMemPool_SOURCES = tstRTMemPool.cpp
300
301tstRTR0MemUserKernel_TEMPLATE = VBOXR0
302tstRTR0MemUserKernel_INST = $(INST_TESTCASE)
303tstRTR0MemUserKernel_DEFS = IN_RT_R0
304tstRTR0MemUserKernel_SYSSUFF = .r0
305tstRTR0MemUserKernel_SOURCES = tstRTR0MemUserKernel.cpp
306tstRTR0MemUserKernel_LIBS = $(PATH_LIB)/RuntimeR0$(VBOX_SUFF_LIB)
307if1of ($(VBOX_LDR_FMT), pe lx)
308 tstRTR0MemUserKernel_LIBS += $(PATH_LIB)/SUPR0$(VBOX_SUFF_LIB)
309endif
310
311tstRTR0MemUserKernelDriver_SOURCES = tstRTR0MemUserKernelDriver.cpp
312
313tstMove_SOURCES = tstMove.cpp
314
315tstMp-1_SOURCES = tstMp-1.cpp
316
317tstNoCrt-1_DEFS = RT_WITHOUT_NOCRT_WRAPPER_ALIASES
318tstNoCrt-1_SOURCES = \
319 tstNoCrt-1.cpp \
320 ../common/string/memcpy.asm \
321 ../common/string/mempcpy.asm \
322 ../common/string/memmove.asm \
323 ../common/string/memset.asm \
324 ../common/string/memchr.asm \
325 ../common/string/memcmp.asm \
326 ../common/string/strchr.asm \
327 ../common/string/strcmp.asm \
328 ../common/string/strcpy.asm \
329 ../common/string/strlen.asm
330
331tstOnce_SOURCES = tstOnce.cpp
332
333tstPath_SOURCES = tstPath.cpp
334
335tstPrfRT_SOURCES = tstPrfRT.cpp
336
337tstRand_SOURCES = tstRand.cpp
338
339tstR0ThreadPreemption_TEMPLATE = VBOXR0
340tstR0ThreadPreemption_INST = $(INST_TESTCASE)
341tstR0ThreadPreemption_DEFS = IN_RT_R0
342tstR0ThreadPreemption_SYSSUFF = .r0
343tstR0ThreadPreemption_SOURCES = tstR0ThreadPreemption.cpp
344tstR0ThreadPreemption_LIBS = $(PATH_LIB)/RuntimeR0$(VBOX_SUFF_LIB)
345if1of ($(VBOX_LDR_FMT), pe lx)
346 tstR0ThreadPreemption_LIBS += $(PATH_LIB)/SUPR0$(VBOX_SUFF_LIB)
347endif
348
349tstR0ThreadPreemptionDriver_SOURCES = tstR0ThreadPreemptionDriver.cpp
350
351tstRTFsQueries_SOURCES = tstRTFsQueries.cpp
352
353tstRTProcWait_SOURCES = tstRTProcWait.cpp
354
355tstRTProcIsRunningByName_SOURCES = tstRTProcIsRunningByName.cpp
356
357tstRTS3_SOURCES = tstRTS3.cpp
358
359tstSemMutex_SOURCES = tstSemMutex.cpp
360
361tstSemEvent_SOURCES = tstSemEvent.cpp
362
363tstSemRW_SOURCES = tstSemRW.cpp
364
365tstSemPingPong_SOURCES = tstSemPingPong.cpp
366
367tstSems_SOURCES = tstSems.cpp
368
369tstRTStrCache_TEMPLATE = VBOXR3TSTEXE
370tstRTStrCache_SOURCES = tstRTStrCache.cpp
371
372tstRTStrFormat_SOURCES = tstRTStrFormat.cpp
373
374tstStrSimplePattern_SOURCES = tstStrSimplePattern.cpp
375
376tstStrToNum_SOURCES = tstStrToNum.cpp
377
378tstRTStrVersion_TEMPLATE = VBOXR3TSTEXE
379tstRTStrVersion_SOURCES = tstRTStrVersion.cpp
380
381tstSystemQueryOsInfo_SOURCES = tstSystemQueryOsInfo.cpp
382
383tstRTTemp_TEMPLATE = VBOXR3TSTEXE
384tstRTTemp_SOURCES = tstRTTemp.cpp
385
386tstTermCallbacks_SOURCES = tstTermCallbacks.cpp
387
388tstThread-1_SOURCES = tstThread-1.cpp
389
390tstTime_SOURCES = tstTime.cpp
391
392tstTime-2_SOURCES = tstTime-2.cpp
393
394tstTime-3_SOURCES = tstTime-3.cpp
395
396tstTime-4_SOURCES = tstTime-4.cpp
397
398tstTimer_SOURCES = tstTimer.cpp
399
400tstTimerLR_SOURCES = tstTimerLR.cpp
401
402tstTimeSpec_SOURCES = tstTimeSpec.cpp
403
404tstTSC_SOURCES = tstTSC.cpp
405tstTSC_CXXFLAGS.linux += -O3
406
407tstUuid_SOURCES = tstUuid.cpp
408
409tstUtf8_SOURCES = tstUtf8.cpp
410
411
412#
413# odds and ends
414#
415
416tstDarwinSched_SOURCES = tstDarwinSched.cpp
417
418ntGetTimerResolution_SOURCES = ntGetTimerResolution.cpp
419ntGetTimerResolution_SDKS.win = WINPSDK W2K3DDK VBOX_NTDLL
420
421endif # VBOX_WITH_TESTCASES
422
423include $(KBUILD_PATH)/subfooter.kmk
424
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