VirtualBox

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

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

iprt: RTProcIsRunningByName implementation for Linux.

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