VirtualBox

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

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

OSE 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 30266 2010-06-17 06:28:23Z 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
85INSTALLS += ovfdummy ovfjoomla09
86
87ovfdummy_MODE = a+r,u+w
88ovfdummy_INST = bin/ovf-testcases
89ovfdummy_SOURCES = ovf-dummy.vmdk
90
91ovfjoomla09_MODE = a+r,u+w
92ovfjoomla09_INST = bin/ovf-testcases/ovf-joomla-0.9
93ovfjoomla09_SOURCES = ovf-joomla-0.9/joomla-1.1.4-ovf.ovf
94
95#
96# tstVBoxAPILinux
97#
98# We only build the testcase here to make sure it builds.
99# It comes with a custom makefile which should be tested as well!
100#
101tstVBoxAPILinux_TEMPLATE = VBOXR3EXE
102tstVBoxAPILinux_SOURCES = tstVBoxAPILinux.cpp
103tstVBoxAPILinux_CXXFLAGS = -Wno-non-virtual-dtor -fshort-wchar
104tstVBoxAPILinux_LDFLAGS.solaris += '$(VBOX_GCC_RPATH_OPT)$$(VBOX_ORIGIN)/../../..'
105ifdef VBOX_WITH_XPCOM_NAMESPACE_CLEANUP
106 tstVBoxAPILinux_DEFS += VBOX_WITH_XPCOM_NAMESPACE_CLEANUP
107endif
108tstVBoxAPILinux_INCS = \
109 $(VBOX_XPCOM_INCS) \
110 $(VBOX_PATH_SDK)/bindings/xpcom/include
111tstVBoxAPILinux_LIBPATH = $(LIBPATH_XPCOM)
112tstVBoxAPILinux_LIBS = $(LIB_XPCOM) $(LIB_RUNTIME)
113tstVBoxAPILinux_DEPS = \
114 $(VBOX_PATH_SDK)/bindings/xpcom/include/VirtualBox_XPCOM.h
115
116
117#
118# tstVBoxAPIWin
119#
120tstVBoxAPIWin_TEMPLATE = VBOXMAINCLIENTEXE
121tstVBoxAPIWin_SOURCES = \
122 tstVBoxAPIWin.cpp \
123 $(VBOX_PATH_SDK)/bindings/mscom/lib/VirtualBox_i.c
124tstVBoxAPIWin_DEPS = \
125 $(VBOX_PATH_SDK)/bindings/mscom/include/VirtualBox.h
126
127
128#
129# tstCollector
130#
131tstCollector_TEMPLATE = VBOXMAINCLIENTEXE
132tstCollector_SOURCES = \
133 tstCollector.cpp \
134 ../Performance.cpp
135tstCollector_INCS = ../include
136tstCollector_DEFS += VBOX_COLLECTOR_TEST_CASE
137tstCollector_LDFLAGS.darwin += -lproc
138tstCollector_LDFLAGS.solaris += -lkstat
139tstCollector_LDFLAGS.win += psapi.lib powrprof.lib
140
141
142
143#
144# tstHostHardwareLinux
145#
146tstHostHardwareLinux_TEMPLATE = VBOXR3TSTNPEXE
147tstHostHardwareLinux_SOURCES = \
148 tstHostHardwareLinux.cpp \
149 ../linux/HostHardwareLinux.cpp
150tstHostHardwareLinux_INCS = . ../include
151tstHostHardwareLinux_DEFS = \
152 VBOX_TEST_USB_LINUX \
153 TESTCASE \
154 $(if $(VBOX_WITH_LINUX_COMPILER_H),VBOX_WITH_LINUX_COMPILER_H,) \
155 $(if $(VBOX_WITH_DBUS),$(if $(VBOX_USB_WITH_DBUS),VBOX_USB_WITH_DBUS,),) \
156 $(if $(VBOX_USB_WITH_SYSFS),VBOX_USB_WITH_SYSFS,) \
157 $(if $(VBOX_USB_WITH_INOTIFY),VBOX_USB_WITH_INOTIFY,)
158tstHostHardwareLinux_LIBS += \
159 $(PATH_OUT)/lib/USBLib.a
160
161
162# generate rules.
163include $(KBUILD_PATH)/subfooter.kmk
164
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