VirtualBox

source: vbox/trunk/src/VBox/Frontends/VBoxBFE/Makefile.kmk@ 18866

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

*: VBOX_WITHOUT_LINUX_COMPILER_H -> VBOX_WITH_LINUX_COMPILER_H. TODO: regenerate RDP/client/configure.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 4.3 KB
Line 
1# $Id: Makefile.kmk 18866 2009-04-10 14:13:10Z vboxsync $
2## @file
3# Sub-Makefile for VBoxBFE (a basic frontend which doesn't make use of Main).
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
22SUB_DEPTH = ../../../..
23include $(KBUILD_PATH)/subheader.kmk
24if !defined(VBOX_WITH_HARDENING) || "$(KBUILD_TARGET)" != "darwin" # No hardened VBoxBFE on darwin (.m).
25
26#
27# Targets.
28#
29ifdef VBOX_WITH_HARDENING
30 PROGRAMS += VBoxBFEHardened
31 DLLS += VBoxBFE
32else
33 PROGRAMS += VBoxBFE
34endif
35
36
37#
38# Hardened VBoxBFE.
39#
40VBoxBFEHardened_TEMPLATE = VBOXR3HARDENEDEXE
41VBoxBFEHardened_SOURCES = VBoxBFEHardened.cpp
42VBoxBFEHardened_NAME = VBoxBFE
43
44
45#
46# VBoxBFE
47#
48VBoxBFE_TEMPLATE := $(if $(VBOX_WITH_HARDENING),VBOXR3NP,VBOXR3NPEXE)
49#ifdef VBOX_WITH_SECURELABEL
50#VBoxBFE_DEFS += VBOX_SECURELABEL
51#endif
52ifdef VBOX_WITH_VRDP
53VBoxBFE_DEFS += VBOX_WITH_VRDP
54endif
55ifneq ($(KBUILD_TARGET).$(VBOX_WITHOUT_COM),win.)
56VBoxBFE_DEFS += VBOXBFE_WITHOUT_COM
57endif
58ifdef VBOX_WITH_LINUX_COMPILER_H
59VBoxBFE_DEFS += VBOX_WITH_LINUX_COMPILER_H
60endif
61VBoxBFE_DEFS.freebsd = VBOXBFE_WITH_X11
62VBoxBFE_DEFS.l4 = _GNU_SOURCE
63VBoxBFE_DEFS.linux = _GNU_SOURCE VBOXBFE_WITH_X11
64VBoxBFE_DEFS.solaris = VBOXBFE_WITH_X11
65ifdef VBOX_WITH_CROSSBOW
66 VBoxBFE_DEFS.solaris += VBOX_WITH_CROSSBOW
67endif
68VBoxBFE_DEFS.win.x86 = _WIN32_WINNT=0x0500
69
70VBoxBFE_SOURCES = \
71 VBoxBFE.cpp \
72 VMMDevInterface.cpp \
73 DisplayImpl.cpp \
74 MouseImpl.cpp \
75 KeyboardImpl.cpp \
76 StatusImpl.cpp \
77 MachineDebuggerImpl.cpp \
78 VMControl.cpp
79
80ifdef VBOX_WITH_HGCM
81VBoxBFE_DEFS += VBOX_WITH_HGCM
82VBoxBFE_SOURCES += \
83 HGCM.cpp \
84 HGCMThread.cpp \
85 HGCMObjects.cpp
86endif
87
88VBoxBFE_SOURCES.darwin = \
89 VBoxBFEMain-darwin.m
90
91VBoxBFE_SOURCES.l4 = \
92 L4Console.cpp \
93 L4Framebuffer.cpp \
94 L4IDLInterface.cpp \
95 EmulCpp.cpp
96
97# SDL
98ifneq ($(KBUILD_TARGET),l4)
99VBoxBFE_SDKS += LIBSDL
100VBoxBFE_DEFS += USE_SDL
101VBoxBFE_SOURCES += \
102 SDLConsole.cpp \
103 SDLFramebuffer.cpp
104endif
105
106# USB Support
107if1of ($(KBUILD_TARGET), l4 win)
108VBoxBFE_DEFS += VBOXBFE_WITH_USB
109VBoxBFE_SOURCES += \
110 HostUSBImpl.cpp \
111 HostUSBDeviceImpl.cpp \
112 USBProxyService.cpp
113VBoxBFE_SOURCES.l4 += \
114 USBProxyServiceLinux.cpp
115VBoxBFE_SOURCES.linux += \
116 USBProxyServiceLinux.cpp
117endif
118
119VBoxBFE_INCS = \
120 $(PATH_VBoxBFE) \
121 $(VBOX_PATH_SDK)/include
122ifneq ($(filter-out win os2 l4 darwin,$(KBUILD_TARGET)),) # X11
123VBoxBFE_INCS += \
124 $(VBOX_XCURSOR_INCS)
125endif
126
127VBoxBFE_LIBS = \
128 $(LIB_RUNTIME) \
129 $(LIB_VMM)
130ifneq ($(filter-out win os2 l4,$(KBUILD_TARGET)),)
131VBoxBFE_LIBS += \
132 $(LIB_REM)
133endif
134ifneq ($(filter-out win os2 l4 darwin,$(KBUILD_TARGET)),) # X11
135VBoxBFE_LIBS += \
136 $(VBOX_XCURSOR_LIBS) \
137 X11
138VBoxBFE_LIBPATH += \
139 $(VBOX_LIBPATH_X11)
140endif
141ifndef VBOX_WITHOUT_COM
142VBoxBFE_LIBS.win = \
143 $(PATH_TOOL_$(VBOX_VCC_TOOL)_ATLMFC_LIB)/atls.lib
144endif
145VBoxBFE_LIBS.l4 = \
146 $(L4_LIBDIR)/libl4con-idl.a \
147 $(L4_LIBDIR)/libconstream-server.a \
148 $(L4_LIBDIR)/libvboxctrl-server.a \
149 $(L4_LIBDIR)/libl4sys.a
150VBoxBFE_LIBS.darwin = \
151 $(LIB_SDK_LIBSDL_SDLMAIN)
152VBoxBFE_LDFLAGS.darwin = -framework Foundation -framework AppKit
153
154VBoxBFE_CXXFLAGS.l4 += -fno-rtti -nostdinc -Wno-non-virtual-dtor \
155 $(addprefix -I,$(VBOX_L4_GCC3_INCS) $(L4_INCDIR))
156## @todo why is it all this cool stuff here only for linux? If it's important, -fshort-wchar would apply to all GCC platforms.
157VBoxBFE_DEFS.linux = \
158 NDEBUG TRIMMED
159VBoxBFE_CXXFLAGS.linux = \
160 -fno-rtti -fno-exceptions -fshort-wchar -pthread
161
162VBoxBFE_CLEAN = $(PATH_VBoxBFE)/Ico64x01.h
163VBoxBFE_SDLConsole.cpp_DEPS = $(PATH_VBoxBFE)/Ico64x01.h
164
165# Convert the pnm-file to a byte array.
166$$(PATH_VBoxBFE)/Ico64x01.h: $(PATH_ROOT)/src/VBox/Frontends/VBoxBFE/ico64x01.pnm $(VBOX_BIN2C) | $$(dir $$@)
167 $(call MSG_TOOL,bin2c,VBoxBFE,$<,$@)
168 $(QUIET)$(VBOX_BIN2C) Ico64x01 $< $@
169
170
171endif # !VBOX_WITH_HARDENING || !darwin
172include $(KBUILD_PATH)/subfooter.kmk
173
174
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