VirtualBox

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

Last change on this file since 12874 was 12874, checked in by vboxsync, 16 years ago

IPRT: added a testcase for RTSemPingPong and some state inspection methods.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 7.3 KB
Line 
1# $Id: Makefile.kmk 12874 2008-10-01 20:09:09Z vboxsync $
2## @file
3# Sub-Makefile for the IPRT testcases.
4#
5
6#
7# Copyright (C) 2006-2007 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 tstAvl \
52 tstBitOperations \
53 tstCidr \
54 tstCritSect \
55 tstDeadlock \
56 tstDir \
57 tstDir-2 \
58 tstEnv \
59 tstErrUnique \
60 tstFile \
61 tstFileLock \
62 tstGetOpt \
63 tstHandleTable \
64 tstHeapSimple \
65 tstInlineAsm \
66 tstLdr \
67 tstLdr-2 \
68 tstLdr-3 \
69 tstLdr-4 \
70 tstLdrLoad \
71 tstLog \
72 tstMemAutoPtr \
73 tstMove \
74 tstMp-1 \
75 tstNoCrt-1 \
76 tstOnce \
77 tstPath \
78 tstPrfRT \
79 tstRand \
80 tstRTFsQueries \
81 tstSemPingPong \
82 tstStrFormat \
83 tstStrToNum \
84 tstSystemQueryOsInfo \
85 tstThread-1 \
86 tstTime \
87 tstTime-2 \
88 tstTime-3 \
89 tstTime-4 \
90 tstTimer \
91 tstTimerLR \
92 tstTimeSpec \
93 tstTSC \
94 tstUtf8 \
95 tstUuid
96# tstSems
97PROGRAMS.win += \
98 tstRTProcWait \
99 tstCritSectW32 \
100 tstFileAppendWin-1 \
101 ntGetTimerResolution
102PROGRAMS.linux += \
103 tstRTProcWait \
104 tstBitOperationsPIC3 \
105 tstInlineAsmPIC \
106 tstInlineAsmPIC3 \
107 tstSemMutex
108PROGRAMS.l4 += \
109 tstIoCtl
110SYSMODS += \
111 tstLdrObj \
112 tstLdrObjR0
113if1of ($(VBOX_LDR_FMT)), lx pe)
114LIBRARIES += \
115 tstLdr-4Imp
116endif
117
118
119
120#
121# Target configs in almost alphabetical order.
122#
123
124tstAvl_SOURCES = tstAvl.cpp
125
126tstBitOperations_TEMPLATE = VBOXR3TSTEXE
127tstBitOperations_SOURCES = tstBitOperations.cpp
128
129tstBitOperationsPIC3_SOURCES = tstBitOperations.cpp
130tstBitOperationsPIC3_CXXFLAGS = -fPIC -fomit-frame-pointer -O3
131tstBitOperationsPIC3_DEFS = PIC
132
133tstCidr_SOURCES = tstCidr.cpp
134
135tstCritSect_SOURCES = tstCritSect.cpp
136
137tstCritSectW32_SOURCES = tstCritSect.cpp
138tstCritSectW32_DEFS = TRY_WIN32_CRIT
139
140tstDeadlock_SOURCES = tstDeadlock.cpp
141
142tstDir_SOURCES = tstDir.cpp
143
144tstDir-2_SOURCES = tstDir-2.cpp
145
146tstEnv_SOURCES = tstEnv.cpp
147
148# Note: tstErrUnique.cpp depends on a header generated by the makefile above us.
149tstErrUnique_SOURCES = tstErrUnique.cpp
150tstErrUnique_INCS = $(IPRT_OUT_DIR)/
151tstErrUnique.cpp_DEPS = $(IPRT_OUT_DIR)/errmsgdata.h
152
153tstFile_SOURCES = tstFile.cpp
154
155tstFileAppendWin-1_SOURCES = tstFileAppendWin-1.cpp
156
157tstFileLock_SOURCES = tstFileLock.cpp
158
159tstGetOpt_SOURCES = tstGetOpt.cpp
160
161tstHandleTable_SOURCES = tstHandleTable.cpp
162
163tstHeapSimple_SOURCES = tstHeapSimple.cpp
164
165tstIoCtl_SOURCES = tstIoCtl.cpp
166
167tstInlineAsm_SOURCES = tstInlineAsm.cpp
168
169tstInlineAsmPIC_SOURCES = tstInlineAsm.cpp
170tstInlineAsmPIC_CXXFLAGS = -fPIC
171tstInlineAsmPIC_DEFS = PIC
172
173tstInlineAsmPIC3_SOURCES = tstInlineAsm.cpp
174tstInlineAsmPIC3_CXXFLAGS = -fPIC -fomit-frame-pointer -O3
175tstInlineAsmPIC3_DEFS = PIC
176
177tstLdr_SOURCES = tstLdr.cpp
178
179tstLdr-2_SOURCES = tstLdr-2.cpp
180tstLdr-2_DEFS = IN_DIS_R3
181tstLdr-2_LIBS = \
182 $(PATH_LIB)/DisasmR3$(VBOX_SUFF_LIB)
183
184tstLdrObj_TEMPLATE = VBOXGC
185tstLdrObj_INST = $(INST_TESTCASE)
186tstLdrObj_SYSSUFF = .gc
187tstLdrObj_SOURCES = tstLdrObj.cpp
188tstLdrObj_DEFS = IN_DIS_GC IN_RT_GC DIS_CORE_ONLY
189ifeq ($(VBOX_LDR_FMT32),elf)
190tstLdrObj_DEFS += VBOX_SOME_IMPORT_FUNCTION
191endif
192tstLdrObj_LIBS = \
193 $(PATH_LIB)/DisasmGC$(VBOX_SUFF_LIB) \
194 $(PATH_LIB)/RuntimeGC$(VBOX_SUFF_LIB)
195ifeq ($(VBOX_LDR_FMT32),pe)
196tstLdrObj_LDFLAGS = -Entry:Entrypoint
197tstLdrObj_LIBS += \
198 $(PATH_LIB)/VMMGCBuiltin$(VBOX_SUFF_LIB)
199endif # PE
200ifeq ($(VBOX_LDR_FMT32),elf)
201tstLdrObj_LDFLAGS = -e Entrypoint
202endif
203ifeq ($(VBOX_LDR_FMT32),lx)
204tstLdrObj_LIBS += \
205 $(PATH_LIB)/VMMGCBuiltin$(VBOX_SUFF_LIB)
206endif
207
208tstLdr-3_SOURCES = tstLdr-3.cpp
209tstLdr-3_DEFS = IN_DIS_R3
210tstLdr-3_LIBS = \
211 $(PATH_LIB)/DisasmR3$(VBOX_SUFF_LIB)
212
213tstLdr-4Imp_TEMPLATE = VBOXR0
214ifeq ($(VBOX_LDR_FMT),lx)
215 tstLdr-4Imp_SOURCES = tstLdr-4Imp-os2.def
216else ifeq ($(VBOX_LDR_FMT),pe)
217 tstLdr-4Imp_SOURCES.win = tstLdr-4Imp-win.def
218endif
219
220tstLdrObjR0_TEMPLATE = VBOXR0
221tstLdrObjR0_INST = $(INST_TESTCASE)
222tstLdrObjR0_SYSSUFF = .r0
223tstLdrObjR0_SOURCES = tstLdrObjR0.cpp tstLdrDisasmTest.cpp
224tstLdrObjR0_DEFS = IN_DIS_R0 IN_RT_R0 DIS_CORE_ONLY
225ifeq ($(VBOX_LDR_FMT32),elf)
226 tstLdrObjR0_DEFS += VBOX_SOME_IMPORT_FUNCTION
227endif
228tstLdrObjR0_LIBS = \
229 $(PATH_LIB)/DisasmR0$(VBOX_SUFF_LIB) \
230 $(PATH_LIB)/RuntimeR0$(VBOX_SUFF_LIB)
231ifeq ($(VBOX_LDR_FMT),pe)
232 tstLdrObjR0_LDFLAGS = -Entry:Entrypoint
233 tstLdrObjR0_LIBS += \
234 $(PATH_LIB)/SUPR0$(VBOX_SUFF_LIB) \
235 $(TARGET_tstLdr-4Imp)
236endif
237ifeq ($(VBOX_LDR_FMT),elf)
238 tstLdrObjR0_LDFLAGS = -e Entrypoint
239endif
240ifeq ($(VBOX_LDR_FMT),lx)
241 tstLdrObjR0_LIBS += \
242 $(PATH_LIB)/SUPR0$(VBOX_SUFF_LIB) \
243 $(TARGET_tstLdr-4Imp)
244endif
245
246tstLdr-4_SOURCES = tstLdr-4.cpp tstLdrDisasmTest.cpp
247tstLdr-4_DEFS = IN_DIS_R3
248tstLdr-4_LIBS = \
249 $(PATH_LIB)/DisasmR3$(VBOX_SUFF_LIB)
250
251tstLdrLoad_SOURCES = tstLdrLoad.cpp
252
253tstLog_SOURCES = tstLog.cpp
254
255tstMemAutoPtr_SOURCES = tstMemAutoPtr.cpp
256
257tstMove_SOURCES = tstMove.cpp
258
259tstMp-1_SOURCES = tstMp-1.cpp
260
261tstNoCrt-1_DEFS = RT_WITHOUT_NOCRT_WRAPPER_ALIASES
262tstNoCrt-1_SOURCES = \
263 tstNoCrt-1.cpp \
264 ../common/string/memcpy.asm \
265 ../common/string/mempcpy.asm \
266 ../common/string/memmove.asm \
267 ../common/string/memset.asm \
268 ../common/string/memchr.asm \
269 ../common/string/memcmp.asm \
270 ../common/string/strchr.asm \
271 ../common/string/strcmp.asm \
272 ../common/string/strlen.asm
273
274tstOnce_SOURCES = tstOnce.cpp
275
276tstPath_SOURCES = tstPath.cpp
277
278tstPrfRT_SOURCES = tstPrfRT.cpp
279
280tstRand_SOURCES = tstRand.cpp
281
282tstRTFsQueries_SOURCES = tstRTFsQueries.cpp
283
284tstRTProcWait_SOURCES = tstRTProcWait.cpp
285
286tstSemMutex_SOURCES = tstSemMutex.cpp
287
288tstSemPingPong_SOURCES = tstSemPingPong.cpp
289
290tstSems_SOURCES = tstSems.cpp
291
292tstStrFormat_SOURCES = tstStrFormat.cpp
293
294tstStrToNum_SOURCES = tstStrToNum.cpp
295
296tstSystemQueryOsInfo_SOURCES = tstSystemQueryOsInfo.cpp
297
298tstThread-1_SOURCES = tstThread-1.cpp
299
300tstTime_SOURCES = tstTime.cpp
301
302tstTime-2_SOURCES = tstTime-2.cpp
303
304tstTime-3_SOURCES = tstTime-3.cpp
305
306tstTime-4_SOURCES = tstTime-4.cpp
307
308tstTimer_SOURCES = tstTimer.cpp
309
310tstTimerLR_SOURCES = tstTimerLR.cpp
311
312tstTimeSpec_SOURCES = tstTimeSpec.cpp
313
314tstTSC_SOURCES = tstTSC.cpp
315tstTSC_CXXFLAGS.linux += -O3
316
317tstUuid_SOURCES = tstUuid.cpp
318
319tstUtf8_SOURCES = tstUtf8.cpp
320
321ntGetTimerResolution_SOURCES = ntGetTimerResolution.cpp
322ntGetTimerResolution_SDKS.win = WINPSDK W2K3DDK VBOX_NTDLL
323
324endif # VBOX_WITH_TESTCASES
325
326include $(KBUILD_PATH)/subfooter.kmk
327
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