VirtualBox

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

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

tstBitOperations -> tstRTBitOperations

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