VirtualBox

source: vbox/trunk/src/VBox/Additions/Makefile.kmk@ 2483

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

[Mm]akefile -> Makefile.kmk

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