VirtualBox

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

Last change on this file since 9963 was 9502, checked in by vboxsync, 17 years ago

asm strlen. Added a few more string/mem functions to the windows R0 Runtime.

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