VirtualBox

source: vbox/trunk/src/VBox/Additions/common/VBoxGuestLib/Makefile.kmk@ 9435

Last change on this file since 9435 was 9061, checked in by vboxsync, 17 years ago

fix for Linux hosts compiling X11 additions but no Linux additions

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 5.0 KB
Line 
1# $Id: Makefile.kmk 9061 2008-05-23 06:48:50Z vboxsync $
2## @file
3# Sub-Makefile for the common guest addition code library.
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# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
18# Clara, CA 95054 USA or visit http://www.sun.com if you need
19# additional information or have any questions.
20#
21
22DEPTH ?= ../../../../..
23SUB_DEPTH = ../..
24include $(KBUILD_PATH)/subheader.kmk
25
26#
27# Target config.
28#
29ifn1of ($(KBUILD_TARGET),l4 linux win)
30 LIBRARIES += \
31 VBoxGuestR0Lib \
32 VBoxGuestR0LibBase
33 LIBRARIES += \
34 VBoxGuestR3Lib \
35 VBoxGuestR3LibShared
36 if1of ($(KBUILD_TARGET),freebsd linux netbsd openbsd)
37 LIBRARIES += \
38 VBoxGuestR3LibXFree86
39 endif
40else
41 # As we build Windows Additions on Linux as well, we need a
42 # separate Linux target for each library so that both platforms
43 # are built.
44 # NOTE: This is going to be obsoleted before long, everyone is going to
45 # use VBoxGuestR0Lib* and VBoxGuestR3Lib.
46 ifdef VBOX_WITH_WIN32_ADDITIONS
47 ifndef VBOX_ADDITIONS_LINUX_ONLY
48 LIBRARIES += \
49 VBoxGuestLib \
50 VBoxGuestLibBase
51 endif
52 endif
53 ifdef VBOX_WITH_LINUX_ADDITIONS
54 LIBRARIES += \
55 VBoxGuestR0Lib \
56 VBoxGuestR0LibBase \
57 VBoxGuestR3Lib \
58 VBoxGuestR3LibShared \
59 VBoxGuestR3LibXFree86
60 else ifdef VBOX_WITH_X11_ADDITIONS
61 LIBRARIES += \
62 VBoxGuestR3Lib \
63 VBoxGuestR3LibShared \
64 VBoxGuestR3LibXFree86
65 endif
66endif
67
68ifndef VBOX_WITH_ADDITION_DRIVERS
69 if1of ($(KBUILD_TARGET), linux l4) # All drivers are optional, can skip RuntimeGuestR0.
70 LIBRARIES := $(filter-out VBoxGuestR0Lib VBoxGuestR0LibBase, $(LIBRARIES))
71 endif
72endif
73
74
75#
76# VBoxGuestR0Lib
77#
78VBoxGuestR0Lib_TEMPLATE = VBOXGUESTR0LIB
79VBoxGuestR0Lib_DEFS = VBOX_HGCM
80VBoxGuestR0Lib_INCS = \
81 $(PATH_VBoxGuestLib)
82VBoxGuestR0Lib_INCS.win = \
83 $(PATH_SUB_ROOT)/WINNT/SharedFolders/include
84VBoxGuestR0Lib_SOURCES = \
85 GenericRequest.cpp \
86 SysHlp.cpp \
87 PhysHeap.cpp \
88 Init.cpp \
89 VMMDev.cpp \
90 HGCM.cpp \
91 VBoxCalls.c
92
93#
94# VBoxGuestR0LibBase
95#
96VBoxGuestR0LibBase_TEMPLATE = VBOXGUESTR0LIB
97VBoxGuestR0LibBase_DEFS = VBOX_HGCM VBGL_VBOXGUEST
98VBoxGuestR0LibBase_INCS = $(VBoxGuestR0Lib_INCS)
99VBoxGuestR0LibBase_INCS.win = $(VBoxGuestR0Lib_INCS.win)
100VBoxGuestR0LibBase_SOURCES = \
101 GenericRequest.cpp \
102 SysHlp.cpp \
103 PhysHeap.cpp \
104 Init.cpp \
105 VMMDev.cpp \
106 HGCMInternal.cpp
107
108#
109# VBoxGuestR3Lib
110#
111VBoxGuestR3Lib_TEMPLATE = VBOXGUESTR3LIB
112VBoxGuestR3Lib_DEFS = VBOX_HGCM
113VBoxGuestR3Lib_SOURCES = \
114 VBoxGuestR3Lib.cpp \
115 VBoxGuestR3LibClipboard.cpp \
116 VBoxGuestR3LibDaemonize.cpp \
117 VBoxGuestR3LibGR.cpp \
118 VBoxGuestR3LibMouse.cpp \
119 VBoxGuestR3LibMisc.cpp \
120 VBoxGuestR3LibSeamless.cpp \
121 VBoxGuestR3LibTime.cpp \
122 VBoxGuestR3LibVideo.cpp
123
124#
125# VBoxGuestR3LibShared - a PIC variant of VBoxGuestR3Lib for linking into .so/.dll/.dylib.
126#
127VBoxGuestR3LibShared_TEMPLATE = VBOXGUESTR3DLL
128VBoxGuestR3LibShared_DEFS := $(VBoxGuestR3Lib_DEFS)
129VBoxGuestR3LibShared_SOURCES := $(VBoxGuestR3Lib_SOURCES)
130VBoxGuestR3LibShared_INST := $(INST_ADDITIONS_LIB)
131
132
133#
134# VBoxGuestR3LibXFree86 - a reduced version of the guest library which uses
135# the X server runtime instead of IPRT, for use with old servers where the
136# C library is not available.
137#
138VBoxGuestR3LibXFree86_TEMPLATE = VBOXGUESTR3LIB
139VBoxGuestR3LibXFree86_DEFS = VBOX_HGCM VBOX_VBGLR3_XFREE86
140VBoxGuestR3LibXFree86_SOURCES = \
141 VBoxGuestR3Lib.cpp \
142 VBoxGuestR3LibGR.cpp \
143 VBoxGuestR3LibMouse.cpp \
144 VBoxGuestR3LibMisc.cpp \
145 VBoxGuestR3LibVideo.cpp
146VBoxGuestR3LibXFree86_INCS = \
147 $(VBOX_PATH_X11_XFREE_4_2)/programs/Xserver/hw/xfree86/common/ \
148 $(VBOX_PATH_X11_XFREE_4_2)/programs/Xserver/hw/xfree86/os-support \
149 $(VBOX_PATH_X11_XFREE_4_2)/programs/Xserver/include \
150 $(VBOX_PATH_X11_XFREE_4_2)/exports/include/X11
151
152
153#
154# VBoxGuestLib (Windows)
155#
156VBoxGuestLib_TEMPLATE = VBOXW32GUESTR0LIB
157VBoxGuestLib_SDKS.win = W2K3DDKX86 WIN32SDK
158VBoxGuestLib_SOURCES = $(VBoxGuestR0Lib_SOURCES)
159VBoxGuestLib_INCS = \
160 $(PATH_VBoxGuestLib)
161VBoxGuestLib_INCS.win = \
162 $(PATH_SUB_ROOT)/WINNT/SharedFolders/include
163VBoxGuestLib_DEFS = IN_RING0 IN_RT_R0 VBOX_HGCM LOG_TO_BACKDOOR
164#VBoxGuestLib_DEFS += LOG_ENABLED
165
166
167#
168# VBoxGuestLibBase (Windows)
169#
170VBoxGuestLibBase_TEMPLATE = VBOXW32GUESTR0LIB
171VBoxGuestLibBase_SDKS.win = $(VBoxGuestLib_SDKS.win)
172VBoxGuestLibBase_SOURCES = $(VBoxGuestR0LibBase_SOURCES)
173VBoxGuestLibBase_INCS = $(VBoxGuestLib_INCS)
174VBoxGuestLibBase_INCS.win = $(VBoxGuestLib_INCS.win)
175VBoxGuestLibBase_DEFS = $(VBoxGuestLib_DEFS) VBGL_VBOXGUEST
176VBoxGuestLibBase_DEFS.win = $(VBoxGuestLib_DEFS.win)
177#VBoxGuestLibBase_DEFS += LOG_ENABLED
178
179
180include $(KBUILD_PATH)/subfooter.kmk
181
Note: See TracBrowser for help on using the repository browser.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette