VirtualBox

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

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

IPRT: linux implementation of RTSystemQueryDmiString.

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