VirtualBox

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

最後變更 在這個檔案從26560是 26525,由 vboxsync 提交於 15 年 前

Runtime: win.amd64 warnings.

  • 屬性 svn:eol-style 設為 native
  • 屬性 svn:keywords 設為 Author Date Id Revision
檔案大小: 10.6 KB
 
1# $Id: Makefile.kmk 26525 2010-02-15 03:33:33Z vboxsync $
2## @file
3# Sub-Makefile for the IPRT testcases.
4#
5
6#
7# Copyright (C) 2006-2009 Sun Microsystems, Inc.
8#
9# This file is part of VirtualBox Open Source Edition (OSE), as
10# available from http://www.alldomusa.eu.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 tstRTCidr \
55 tstRTCritSect \
56 tstRTDigest \
57 tstDir \
58 tstDir-2 \
59 tstDir-3 \
60 tstEnv \
61 tstErrUnique \
62 tstFile \
63 tstFileAio \
64 tstFileAppend-1 \
65 tstFileLock \
66 tstFork \
67 tstRTGetOpt \
68 tstRTGetOptArgv \
69 tstHandleTable \
70 tstRTHeapOffset \
71 tstRTHeapSimple \
72 tstInlineAsm \
73 tstLdr \
74 tstLdr-2 \
75 tstLdr-3 \
76 tstLdr-4 \
77 tstLdrLoad \
78 tstRTLockValidator \
79 tstLog \
80 tstMemAutoPtr \
81 tstRTMemCache \
82 tstRTMemPool \
83 tstRTR0MemUserKernelDriver \
84 tstMove \
85 tstMp-1 \
86 tstNoCrt-1 \
87 tstOnce \
88 tstRTPath \
89 tstPrfRT \
90 tstRand \
91 tstRTFsQueries \
92 tstR0ThreadPreemptionDriver \
93 tstRTS3 \
94 tstSemEvent \
95 tstSemMutex \
96 tstSemPingPong \
97 tstRTSemRW \
98 tstSems \
99 tstRTSemXRoads \
100 tstRTStrAlloc \
101 tstRTStrCache \
102 tstRTStrFormat \
103 tstStrSimplePattern \
104 tstStrToNum \
105 tstRTStrVersion \
106 tstSystemQueryOsInfo \
107 tstRTTemp \
108 tstTermCallbacks \
109 tstThread-1 \
110 tstTime \
111 tstTime-2 \
112 tstTime-3 \
113 tstTime-4 \
114 tstTimer \
115 tstTimerLR \
116 tstRTTimeSpec \
117 tstTSC \
118 tstUtf8 \
119 tstRTUuid
120# tstSems
121PROGRAMS.win += \
122 tstRTProcWait \
123 tstRTCritSectW32 \
124 tstFileAppendWin-1 \
125 ntGetTimerResolution
126PROGRAMS.linux += \
127 tstRTProcWait \
128 tstRTProcIsRunningByName \
129 tstRTBitOperationsPIC3 \
130 tstInlineAsmPIC \
131 tstInlineAsmPIC3
132PROGRAMS.l4 += \
133 tstIoCtl
134PROGRAMS.darwin += \
135 tstDarwinSched
136SYSMODS += \
137 tstLdrObjR0 \
138 tstRTR0MemUserKernel \
139 tstR0ThreadPreemption
140ifdef VBOX_WITH_RAW_MODE
141 SYSMODS += tstLdrObj
142endif
143if1of ($(VBOX_LDR_FMT)), lx pe)
144LIBRARIES += \
145 tstLdr-4Imp
146endif
147
148
149#
150# Target configs in almost alphabetical order.
151#
152
153tstRTAvl_TEMPLATE = VBOXR3TSTEXE
154tstRTAvl_SOURCES = tstRTAvl.cpp
155
156tstRTBase64_TEMPLATE = VBOXR3TSTEXE
157tstRTBase64_SOURCES = tstRTBase64.cpp
158
159tstRTBitOperations_TEMPLATE = VBOXR3TSTEXE
160tstRTBitOperations_SOURCES = tstRTBitOperations.cpp
161
162tstRTBitOperationsPIC3_TEMPLATE = VBOXR3TSTEXE
163tstRTBitOperationsPIC3_SOURCES = tstRTBitOperations.cpp
164tstRTBitOperationsPIC3_CXXFLAGS = -fPIC -fomit-frame-pointer -O3
165tstRTBitOperationsPIC3_DEFS = PIC
166
167tstRTCidr_TEMPLATE = VBOXR3TSTEXE
168tstRTCidr_SOURCES = tstRTCidr.cpp
169
170tstRTCritSect_TEMPLATE = VBOXR3TSTEXE
171tstRTCritSect_SOURCES = tstRTCritSect.cpp
172
173tstRTCritSectW32_TEMPLATE = VBOXR3TSTEXE
174tstRTCritSectW32_SOURCES = tstRTCritSect.cpp
175tstRTCritSectW32_DEFS = TRY_WIN32_CRIT
176
177tstRTDigest_SOURCES = tstRTDigest.cpp
178
179tstDir_SOURCES = tstDir.cpp
180
181tstDir-2_SOURCES = tstDir-2.cpp
182
183tstDir-3_SOURCES = tstDir-3.cpp
184
185tstEnv_SOURCES = tstEnv.cpp
186
187# Note: tstErrUnique.cpp depends on a header generated by the makefile above us.
188tstErrUnique_SOURCES = tstErrUnique.cpp
189tstErrUnique_INCS = $(IPRT_OUT_DIR)/
190tstErrUnique.cpp_DEPS = $(IPRT_OUT_DIR)/errmsgdata.h
191
192tstFile_SOURCES = tstFile.cpp
193
194tstFileAppend-1_SOURCES = tstFileAppend-1.cpp
195
196tstFileAppendWin-1_SOURCES = tstFileAppendWin-1.cpp
197
198tstFileAio_SOURCES = tstFileAio.cpp
199
200tstFileLock_SOURCES = tstFileLock.cpp
201
202tstFork_SOURCES = tstFork.cpp
203
204tstRTGetOpt_TEMPLATE = VBOXR3TSTEXE
205tstRTGetOpt_SOURCES = tstRTGetOpt.cpp
206
207tstRTGetOptArgv_TEMPLATE = VBOXR3TSTEXE
208tstRTGetOptArgv_SOURCES = tstRTGetOptArgv.cpp
209
210tstHandleTable_SOURCES = tstHandleTable.cpp
211
212tstRTHeapOffset_TEMPLATE = VBOXR3TSTEXE
213tstRTHeapOffset_SOURCES = tstRTHeapOffset.cpp
214
215tstRTHeapSimple_TEMPLATE = VBOXR3TSTEXE
216tstRTHeapSimple_SOURCES = tstRTHeapSimple.cpp
217
218tstIoCtl_SOURCES = tstIoCtl.cpp
219
220tstInlineAsm_SOURCES = tstInlineAsm.cpp
221
222tstInlineAsmPIC_SOURCES = tstInlineAsm.cpp
223tstInlineAsmPIC_CXXFLAGS = -fPIC
224tstInlineAsmPIC_DEFS = PIC
225
226tstInlineAsmPIC3_SOURCES = tstInlineAsm.cpp
227tstInlineAsmPIC3_CXXFLAGS = -fPIC -fomit-frame-pointer -O3
228tstInlineAsmPIC3_DEFS = PIC
229
230tstLdr_SOURCES = tstLdr.cpp
231
232tstLdr-2_SOURCES = tstLdr-2.cpp
233tstLdr-2_DEFS = IN_DIS
234tstLdr-2_LIBS = \
235 $(PATH_LIB)/DisasmR3$(VBOX_SUFF_LIB)
236
237ifdef VBOX_WITH_RAW_MODE
238 tstLdrObj_TEMPLATE = VBoxRc
239 tstLdrObj_INST = $(INST_TESTCASE)
240 tstLdrObj_SYSSUFF = .gc
241 tstLdrObj_SOURCES = tstLdrObj.cpp
242 tstLdrObj_DEFS = IN_DIS IN_RT_RC DIS_CORE_ONLY
243 ifeq ($(VBOX_LDR_FMT32),elf)
244 tstLdrObj_DEFS += VBOX_SOME_IMPORT_FUNCTION
245 endif
246 tstLdrObj_LIBS = \
247 $(PATH_LIB)/DisasmRC$(VBOX_SUFF_LIB) \
248 $(PATH_LIB)/RuntimeRC$(VBOX_SUFF_LIB)
249 ifeq ($(VBOX_LDR_FMT32),pe)
250 tstLdrObj_LIBS += \
251 $(PATH_LIB)/VMMGCBuiltin$(VBOX_SUFF_LIB)
252 endif # PE
253 ifeq ($(VBOX_LDR_FMT32),elf)
254 tstLdrObj_LDFLAGS = -e Entrypoint
255 endif
256 ifeq ($(VBOX_LDR_FMT32),lx)
257 tstLdrObj_LIBS += \
258 $(PATH_LIB)/VMMGCBuiltin$(VBOX_SUFF_LIB)
259 endif
260endif # VBOX_WITH_RAW_MODE
261
262tstLdr-3_SOURCES = tstLdr-3.cpp
263tstLdr-3_DEFS = IN_DIS
264tstLdr-3_LIBS = \
265 $(PATH_LIB)/DisasmR3$(VBOX_SUFF_LIB)
266
267tstLdr-4Imp_TEMPLATE = VBoxR0
268ifeq ($(VBOX_LDR_FMT),lx)
269 tstLdr-4Imp_SOURCES = tstLdr-4Imp-os2.def
270else ifeq ($(VBOX_LDR_FMT),pe)
271 tstLdr-4Imp_SOURCES.win = tstLdr-4Imp-win.def
272endif
273
274tstLdrObjR0_TEMPLATE = VBoxR0
275tstLdrObjR0_INST = $(INST_TESTCASE)
276tstLdrObjR0_SYSSUFF = .r0
277tstLdrObjR0_SOURCES = tstLdrObjR0.cpp tstLdrDisasmTest.cpp
278tstLdrObjR0_DEFS = IN_DIS IN_RT_R0 DIS_CORE_ONLY
279ifeq ($(VBOX_LDR_FMT32),elf)
280 tstLdrObjR0_DEFS += VBOX_SOME_IMPORT_FUNCTION
281endif
282ifn1of ($(KBUILD_TARGET), win)
283 tstLdrObjR0_CXXFLAGS = $(VBOX_GCC_Wno-array_bounds)
284endif
285tstLdrObjR0_LIBS = \
286 $(PATH_LIB)/DisasmR0$(VBOX_SUFF_LIB) \
287 $(PATH_LIB)/RuntimeR0$(VBOX_SUFF_LIB)
288ifeq ($(VBOX_LDR_FMT),pe)
289 tstLdrObjR0_LIBS += \
290 $(PATH_LIB)/SUPR0$(VBOX_SUFF_LIB) \
291 $(TARGET_tstLdr-4Imp)
292endif
293ifeq ($(VBOX_LDR_FMT),elf)
294 tstLdrObjR0_LDFLAGS = -e Entrypoint
295endif
296ifeq ($(VBOX_LDR_FMT),lx)
297 tstLdrObjR0_LIBS += \
298 $(PATH_LIB)/SUPR0$(VBOX_SUFF_LIB) \
299 $(TARGET_tstLdr-4Imp)
300endif
301
302tstLdr-4_SOURCES = tstLdr-4.cpp tstLdrDisasmTest.cpp
303tstLdr-4_DEFS = IN_DIS
304tstLdr-4_LIBS = \
305 $(PATH_LIB)/DisasmR3$(VBOX_SUFF_LIB)
306
307tstLdrLoad_SOURCES = tstLdrLoad.cpp
308
309tstRTLockValidator_TEMPLATE = VBOXR3TSTEXE
310tstRTLockValidator_SOURCES = tstRTLockValidator.cpp
311
312tstLog_SOURCES = tstLog.cpp
313
314tstMemAutoPtr_SOURCES = tstMemAutoPtr.cpp
315
316tstRTMemCache_TEMPLATE = VBOXR3TSTEXE
317tstRTMemCache_SOURCES = tstRTMemCache.cpp
318
319tstRTMemPool_TEMPLATE = VBOXR3TSTEXE
320tstRTMemPool_SOURCES = tstRTMemPool.cpp
321
322tstRTR0MemUserKernel_TEMPLATE = VBoxR0
323tstRTR0MemUserKernel_INST = $(INST_TESTCASE)
324tstRTR0MemUserKernel_DEFS = IN_RT_R0
325tstRTR0MemUserKernel_SYSSUFF = .r0
326tstRTR0MemUserKernel_SOURCES = tstRTR0MemUserKernel.cpp
327tstRTR0MemUserKernel_LIBS = $(PATH_LIB)/RuntimeR0$(VBOX_SUFF_LIB)
328if1of ($(VBOX_LDR_FMT), pe lx)
329 tstRTR0MemUserKernel_LIBS += $(PATH_LIB)/SUPR0$(VBOX_SUFF_LIB)
330endif
331
332tstRTR0MemUserKernelDriver_SOURCES = tstRTR0MemUserKernelDriver.cpp
333
334tstMove_SOURCES = tstMove.cpp
335
336tstMp-1_SOURCES = tstMp-1.cpp
337
338tstNoCrt-1_DEFS = RT_WITHOUT_NOCRT_WRAPPER_ALIASES
339tstNoCrt-1_SOURCES = \
340 tstNoCrt-1.cpp \
341 ../common/string/memcpy.asm \
342 ../common/string/mempcpy.asm \
343 ../common/string/memmove.asm \
344 ../common/string/memset.asm \
345 ../common/string/memchr.asm \
346 ../common/string/memcmp.asm \
347 ../common/string/strchr.asm \
348 ../common/string/strcmp.asm \
349 ../common/string/strcpy.asm \
350 ../common/string/strlen.asm
351
352tstOnce_SOURCES = tstOnce.cpp
353
354tstRTPath_TEMPLATE = VBOXR3TSTEXE
355tstRTPath_SOURCES = tstRTPath.cpp
356
357tstPrfRT_SOURCES = tstPrfRT.cpp
358
359tstRand_SOURCES = tstRand.cpp
360
361tstR0ThreadPreemption_TEMPLATE = VBoxR0
362tstR0ThreadPreemption_INST = $(INST_TESTCASE)
363tstR0ThreadPreemption_DEFS = IN_RT_R0
364tstR0ThreadPreemption_SYSSUFF = .r0
365tstR0ThreadPreemption_SOURCES = tstR0ThreadPreemption.cpp
366tstR0ThreadPreemption_LIBS = $(PATH_LIB)/RuntimeR0$(VBOX_SUFF_LIB)
367if1of ($(VBOX_LDR_FMT), pe lx)
368 tstR0ThreadPreemption_LIBS += $(PATH_LIB)/SUPR0$(VBOX_SUFF_LIB)
369endif
370
371tstR0ThreadPreemptionDriver_SOURCES = tstR0ThreadPreemptionDriver.cpp
372
373tstRTFsQueries_SOURCES = tstRTFsQueries.cpp
374
375tstRTProcWait_SOURCES = tstRTProcWait.cpp
376
377tstRTProcIsRunningByName_SOURCES = tstRTProcIsRunningByName.cpp
378
379tstRTS3_SOURCES = tstRTS3.cpp
380
381tstSemMutex_SOURCES = tstSemMutex.cpp
382
383tstSemEvent_SOURCES = tstSemEvent.cpp
384
385tstRTSemRW_TEMPLATE = VBOXR3TSTEXE
386tstRTSemRW_SOURCES = tstRTSemRW.cpp
387
388tstSemPingPong_SOURCES = tstSemPingPong.cpp
389
390tstSems_SOURCES = tstSems.cpp
391
392tstRTSemXRoads_TEMPLATE = VBOXR3TSTEXE
393tstRTSemXRoads_SOURCES = tstRTSemXRoads.cpp
394
395tstRTStrAlloc_TEMPLATE = VBOXR3TSTEXE
396tstRTStrAlloc_SOURCES = tstRTStrAlloc.cpp
397
398tstRTStrCache_TEMPLATE = VBOXR3TSTEXE
399tstRTStrCache_SOURCES = tstRTStrCache.cpp
400
401tstRTStrFormat_SOURCES = tstRTStrFormat.cpp
402
403tstStrSimplePattern_SOURCES = tstStrSimplePattern.cpp
404
405tstStrToNum_SOURCES = tstStrToNum.cpp
406
407tstRTStrVersion_TEMPLATE = VBOXR3TSTEXE
408tstRTStrVersion_SOURCES = tstRTStrVersion.cpp
409
410tstSystemQueryOsInfo_SOURCES = tstSystemQueryOsInfo.cpp
411
412tstRTTemp_TEMPLATE = VBOXR3TSTEXE
413tstRTTemp_SOURCES = tstRTTemp.cpp
414
415tstTermCallbacks_SOURCES = tstTermCallbacks.cpp
416
417tstThread-1_SOURCES = tstThread-1.cpp
418
419tstTime_SOURCES = tstTime.cpp
420
421tstTime-2_SOURCES = tstTime-2.cpp
422
423tstTime-3_SOURCES = tstTime-3.cpp
424
425tstTime-4_SOURCES = tstTime-4.cpp
426
427tstTimer_SOURCES = tstTimer.cpp
428
429tstTimerLR_SOURCES = tstTimerLR.cpp
430
431tstRTTimeSpec_TEMPLATE = VBOXR3TSTEXE
432tstRTTimeSpec_SOURCES = tstRTTimeSpec.cpp
433
434tstTSC_SOURCES = tstTSC.cpp
435tstTSC_CXXFLAGS.linux += -O3
436
437tstRTUuid_TEMPLATE = VBOXR3TSTEXE
438tstRTUuid_SOURCES = tstRTUuid.cpp
439
440tstUtf8_SOURCES = tstUtf8.cpp
441
442
443#
444# odds and ends
445#
446
447tstDarwinSched_SOURCES = tstDarwinSched.cpp
448
449ntGetTimerResolution_SOURCES = ntGetTimerResolution.cpp
450ntGetTimerResolution_SDKS.win = WINPSDK W2K3DDK VBOX_NTDLL
451
452endif # VBOX_WITH_TESTCASES
453
454include $(KBUILD_PATH)/subfooter.kmk
455
注意: 瀏覽 TracBrowser 來幫助您使用儲存庫瀏覽器

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette