VirtualBox

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

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

IPRT: Added tstMemAutoPtr - a testcase for RTMemAutoPtr.

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