VirtualBox

source: vbox/trunk/src/VBox/Main/testcase/Makefile.kmk@ 30832

Last change on this file since 30832 was 30299, checked in by vboxsync, 14 years ago

Main/testcase/Makefile.kmk: OVF testcase fix.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 4.6 KB
Line 
1# $Id: Makefile.kmk 30299 2010-06-18 08:37:16Z vboxsync $
2## @file
3# Sub-Makefile for the VBox API testcases.
4#
5
6#
7# Copyright (C) 2006-2007 Oracle Corporation
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
18SUB_DEPTH = ../../../..
19include $(KBUILD_PATH)/subheader.kmk
20
21#
22# Target and globals (small mess)
23#
24ifndef VBOX_ONLY_SDK
25 if defined(VBOX_WITH_TESTCASES) || "$(USERNAME)" == "umoeller"
26 PROGRAMS += \
27 tstAPI \
28 $(if $(VBOX_OSE),,tstOVF) \
29 $(if $(VBOX_WITH_XPCOM),tstVBoxAPILinux,tstVBoxAPIWin) \
30 $(if $(VBOX_WITH_RESOURCE_USAGE_API),tstCollector,)
31 PROGRAMS.linux += \
32 $(if $(VBOX_WITH_USB),tstHostHardwareLinux,)
33 endif # !VBOX_WITH_TESTCASES
34endif # !VBOX_ONLY_SDK
35if defined(VBOX_ONLY_SDK) || !defined(VBOX_WITH_XPCOM)
36 INSTALLS += samplesMSCOM
37endif
38if defined(VBOX_ONLY_SDK) || defined(VBOX_WITH_XPCOM)
39 INSTALLS += samplesXPCOM
40endif
41
42
43#
44# The samples
45#
46samplesMSCOM_MODE = a+r,u+w
47samplesMSCOM_INST = $(INST_SDK)bindings/mscom/samples/
48samplesMSCOM_SOURCES = tstVBoxAPIWin.cpp
49
50samplesXPCOM_MODE = a+r,u+w
51samplesXPCOM_INST = $(INST_SDK)bindings/xpcom/samples/
52samplesXPCOM_SOURCES = tstVBoxAPILinux.cpp makefile.tstVBoxAPILinux=>Makefile
53
54
55#
56# tstAPI
57#
58tstAPI_TEMPLATE = VBOXMAINCLIENTEXE
59#tstAPI_INST = $(INST_SDK)bindings/gluecom/samples/
60tstAPI_SOURCES = tstAPI.cpp
61ifeq ($(KBUILD_TARGET),win) ## @todo just add this to the template.
62tstAPI_DEPS = $(VBOX_PATH_SDK)/bindings/mscom/include/VirtualBox.h
63else
64tstAPI_DEPS = $(VBOX_PATH_SDK)/bindings/xpcom/include/VirtualBox_XPCOM.h
65endif
66ifdef VBOX_WITH_RESOURCE_USAGE_API
67tstAPI_DEFS += VBOX_WITH_RESOURCE_USAGE_API
68endif
69
70#
71# tstOVF
72#
73tstOVF_TEMPLATE = VBOXMAINCLIENTEXE
74#tstOVF_INST = $(INST_SDK)bindings/gluecom/samples/
75tstOVF_SOURCES = tstOVF.cpp
76ifeq ($(KBUILD_TARGET),win) ## @todo just add this to the template.
77tstOVF_DEPS = $(VBOX_PATH_SDK)/bindings/mscom/include/VirtualBox.h
78else
79tstOVF_DEPS = $(VBOX_PATH_SDK)/bindings/xpcom/include/VirtualBox_XPCOM.h
80endif
81ifdef VBOX_WITH_RESOURCE_USAGE_API
82tstOVF_DEFS += VBOX_WITH_RESOURCE_USAGE_API
83endif
84
85ifndef VBOX_OSE
86#
87# OVF test data.
88#
89INSTALLS += ovf-testcases
90ovf-testcases_MODE = a+r,u+w
91ovf-testcases_INST = $(INST_BIN)ovf-testcases/
92ovf-testcases_SOURCES = \
93 ovf-dummy.vmdk \
94 ovf-joomla-0.9/joomla-1.1.4-ovf.ovf=>ovf-joomla-0.9/joomla-1.1.4-ovf.ovf
95endif
96
97#
98# tstVBoxAPILinux
99#
100# We only build the testcase here to make sure it builds.
101# It comes with a custom makefile which should be tested as well!
102#
103tstVBoxAPILinux_TEMPLATE = VBOXR3EXE
104tstVBoxAPILinux_SOURCES = tstVBoxAPILinux.cpp
105tstVBoxAPILinux_CXXFLAGS = -Wno-non-virtual-dtor -fshort-wchar
106tstVBoxAPILinux_LDFLAGS.solaris += '$(VBOX_GCC_RPATH_OPT)$$(VBOX_ORIGIN)/../../..'
107ifdef VBOX_WITH_XPCOM_NAMESPACE_CLEANUP
108 tstVBoxAPILinux_DEFS += VBOX_WITH_XPCOM_NAMESPACE_CLEANUP
109endif
110tstVBoxAPILinux_INCS = \
111 $(VBOX_XPCOM_INCS) \
112 $(VBOX_PATH_SDK)/bindings/xpcom/include
113tstVBoxAPILinux_LIBPATH = $(LIBPATH_XPCOM)
114tstVBoxAPILinux_LIBS = $(LIB_XPCOM) $(LIB_RUNTIME)
115tstVBoxAPILinux_DEPS = \
116 $(VBOX_PATH_SDK)/bindings/xpcom/include/VirtualBox_XPCOM.h
117
118
119#
120# tstVBoxAPIWin
121#
122tstVBoxAPIWin_TEMPLATE = VBOXMAINCLIENTEXE
123tstVBoxAPIWin_SOURCES = \
124 tstVBoxAPIWin.cpp \
125 $(VBOX_PATH_SDK)/bindings/mscom/lib/VirtualBox_i.c
126tstVBoxAPIWin_DEPS = \
127 $(VBOX_PATH_SDK)/bindings/mscom/include/VirtualBox.h
128
129
130#
131# tstCollector
132#
133tstCollector_TEMPLATE = VBOXMAINCLIENTEXE
134tstCollector_SOURCES = \
135 tstCollector.cpp \
136 ../Performance.cpp
137tstCollector_INCS = ../include
138tstCollector_DEFS += VBOX_COLLECTOR_TEST_CASE
139tstCollector_LDFLAGS.darwin += -lproc
140tstCollector_LDFLAGS.solaris += -lkstat
141tstCollector_LDFLAGS.win += psapi.lib powrprof.lib
142
143
144
145#
146# tstHostHardwareLinux
147#
148tstHostHardwareLinux_TEMPLATE = VBOXR3TSTNPEXE
149tstHostHardwareLinux_SOURCES = \
150 tstHostHardwareLinux.cpp \
151 ../linux/HostHardwareLinux.cpp
152tstHostHardwareLinux_INCS = . ../include
153tstHostHardwareLinux_DEFS = \
154 VBOX_TEST_USB_LINUX \
155 TESTCASE \
156 $(if $(VBOX_WITH_LINUX_COMPILER_H),VBOX_WITH_LINUX_COMPILER_H,) \
157 $(if $(VBOX_WITH_DBUS),$(if $(VBOX_USB_WITH_DBUS),VBOX_USB_WITH_DBUS,),) \
158 $(if $(VBOX_USB_WITH_SYSFS),VBOX_USB_WITH_SYSFS,) \
159 $(if $(VBOX_USB_WITH_INOTIFY),VBOX_USB_WITH_INOTIFY,)
160tstHostHardwareLinux_LIBS += \
161 $(PATH_OUT)/lib/USBLib.a
162
163
164# generate rules.
165include $(KBUILD_PATH)/subfooter.kmk
166
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