VirtualBox

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

Last change on this file since 25549 was 25516, checked in by vboxsync, 15 years ago

tstSemRW.cpp -> tstRTSemRW.cpp

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