VirtualBox

source: vbox/trunk/src/VBox/Additions/Makefile@ 720

Last change on this file since 720 was 720, checked in by vboxsync, 18 years ago

Small cleanup, move host to variable in LocalConfig.kmk

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 4.5 KB
Line 
1#
2# Top-level makefile for the VirtualBox Guest Additions.
3#
4
5#
6# Copyright (C) 2006 InnoTek Systemberatung GmbH
7#
8# This file is part of VirtualBox Open Source Edition (OSE), as
9# available from http://www.virtualbox.org. This file is free software;
10# you can redistribute it and/or modify it under the terms of the GNU
11# General Public License as published by the Free Software Foundation,
12# in version 2 as it comes in the "COPYING" file of the VirtualBox OSE
13# distribution. VirtualBox OSE is distributed in the hope that it will
14# be useful, but WITHOUT ANY WARRANTY of any kind.
15#
16# If you received this file as part of a commercial VirtualBox
17# distribution, then only the terms of your commercial VirtualBox
18# license agreement apply instead of the previous paragraph.
19#
20
21DEPTH = ../../..
22include $(PATH_KBUILD)/header.kmk
23
24SUBDIRS = common
25ifdef VBOX_WITH_WIN32_ADDITIONS
26SUBDIRS += WINNT
27endif
28ifdef VBOX_WITH_LINUX_ADDITIONS
29SUBDIRS += linux
30LINUXINSTALLER = $(PATH_BIN)/additions/VBoxLinuxAdditions.run
31endif
32ifneq ($(VBOX_WITH_WIN32_ADDITIONS)$(VBOX_WITH_LINUX_ADDITIONS),)
33PACKING += $(PATH_BIN)/additions/VBoxGuestAdditions.iso
34endif
35
36LINUXINSTALLER_CROSS = $(PATH_ROOT)/out/linux.x86/$(BUILD_TYPE)/bin/additions/VBoxLinuxAdditions.run
37# If the build (Windows host only, problem doesn't exist for Linux) should
38# include Linux additions, set VBOX_ADDITIONS_LINUX_CROSS. This causes the
39# Linux additions to be built via a ssh session (to the host specified in
40# VBOX_ADDITIONS_LINUX_CROSS_HOST, usually set in LocalConfig.kmk. Needs
41# eventually be generalized once more additions platforms are supported.
42# This host has the Windows build box tree mounted, in order to make 100% sure
43# that a complete build is created from a single consistent revision.
44ifdef VBOX_ADDITIONS_LINUX_CROSS
45OTHER_CLEAN += $(LINUXINSTALLER_CROSS)
46LINUXINSTALLER = $(LINUXINSTALLER_CROSS)
47endif
48
49
50include $(PATH_KBUILD)/footer.kmk
51
52
53ifdef VBOX_WITH_WIN32_ADDITIONS
54GUESTADDITIONS_WIN32_DEPS = $(PATH_BIN)/additions/VBoxGuest.sys \
55 ./WINNT/VBoxGuest/VBoxGuest.inf \
56 $(PATH_BIN)/additions/VBoxService.exe \
57 $(PATH_BIN)/additions/VBoxControl.exe \
58 $(PATH_BIN)/additions/VBCoInst.dll \
59 $(PATH_BIN)/additions/VBoxMouse.sys \
60 ./WINNT/MouseFilter/VBoxMouse.inf \
61 $(PATH_BIN)/additions/VBoxVideo.sys \
62 ./WINNT/Graphics/Miniport/VBoxVideo.inf \
63 $(PATH_BIN)/additions/VBoxDisp.dll \
64 $(PATH_BIN)/additions/VBoxGINA.dll \
65 $(PATH_BIN)/additions/VBoxGuestAdditions.exe \
66 ./WINNT/Installer/AUTORUN.INF
67GUESTADDITIONS_WIN32_FILESPEC = driver/VBoxGuest/VBoxGuest.sys=$(PATH_BIN)/additions/VBoxGuest.sys \
68 driver/VBoxGuest/VBoxGuest.inf=./WINNT/VBoxGuest/VBoxGuest.inf \
69 driver/VBoxGuest/VBoxService.exe=$(PATH_BIN)/additions/VBoxService.exe \
70 driver/VBoxGuest/VBoxControl.exe=$(PATH_BIN)/additions/VBoxControl.exe \
71 driver/VBoxGuest/VBCoInst.dll=$(PATH_BIN)/additions/VBCoInst.dll \
72 driver/VBoxGuest/VBoxMouse.sys=$(PATH_BIN)/additions/VBoxMouse.sys \
73 driver/VBoxGuest/VBoxMouse.inf=./WINNT/MouseFilter/VBoxMouse.inf \
74 driver/VBoxVideo/VBoxVideo.sys=$(PATH_BIN)/additions/VBoxVideo.sys \
75 driver/VBoxVideo/VBoxVideo.inf=./WINNT/Graphics/Miniport/VBoxVideo.inf \
76 driver/VBoxVideo/VBoxDisp.dll=$(PATH_BIN)/additions/VBoxDisp.dll \
77 gina/VBoxGINA.dll=$(PATH_BIN)/additions/VBoxGINA.dll \
78 VBoxGuestAdditions.exe=$(PATH_BIN)/additions/VBoxGuestAdditions.exe \
79 AUTORUN.INF=./WINNT/Installer/AUTORUN.INF
80endif
81
82ifdef LINUXINSTALLER
83GUESTADDITIONS_LINUX_DEPS = $(LINUXINSTALLER)
84GUESTADDITIONS_LINUX_FILESPEC = VBoxLinuxAdditions.run=$(LINUXINSTALLER)
85endif
86
87#
88# Build the Guest Additions ISO image.
89#
90$(PATH_BIN)/additions/VBoxGuestAdditions.iso: \
91 $(GUESTADDITIONS_WIN32_DEPS) $(GUESTADDITIONS_LINUX_DEPS) \
92 Makefile
93 $(call MSG_L1,Creating $@)
94 $(QUIET)$(VBOX_MKISOFS) -rational-rock -joliet -iso-level 4 -volid "VBOXADDITIONS" -l -graft-points -o $@ \
95 $(GUESTADDITIONS_WIN32_FILESPEC) $(GUESTADDITIONS_LINUX_FILESPEC)
96
97# build the Linux installer on a remote machine
98$(LINUXINSTALLER_CROSS):
99 ssh vbox@$(VBOX_ADDITIONS_LINUX_CROSS_HOST) "./enter-rhel3-jail /mnt/tinderwin_vbox/w32-rel/tools/env.sh --no-wine kmk -C src/VBox/Runtime BUILD_TYPE=release VBOX_ADDITIONS_LINUX_ONLY=1"
100 ssh vbox@$(VBOX_ADDITIONS_LINUX_CROSS_HOST) "./enter-rhel3-jail /mnt/tinderwin_vbox/w32-rel/tools/env.sh --no-wine kmk -C src/VBox/Additions/common BUILD_TYPE=release VBOX_ADDITIONS_LINUX_ONLY=1"
101 ssh vbox@$(VBOX_ADDITIONS_LINUX_CROSS_HOST) "./enter-rhel3-jail /mnt/tinderwin_vbox/w32-rel/tools/env.sh --no-wine kmk -C src/VBox/Additions/linux BUILD_TYPE=release all packing"
102
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