VirtualBox

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

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

tstDarwinSched: experiment with darwin scheduling.

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