VirtualBox

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

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

Converted the (recursive) linux makefiles to sub-makefiles.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 6.3 KB
Line 
1# $Id: Makefile.kmk 6757 2008-02-02 08:51:14Z vboxsync $
2## @file
3# Makefile for the linux guest additions base directory.
4#
5
6#
7# Copyright (C) 2006-2007 innotek 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 (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
18DEPTH ?= ../../../..
19SUB_DEPTH = ..
20include $(PATH_KBUILD)/subheader.kmk
21
22# This can only be built on a real Linux system.
23ifeq ($(filter-out linux l4, $(BUILD_TARGET)),)
24 include $(PATH_SUB_CURRENT)/module/Makefile.kmk
25 include $(PATH_SUB_CURRENT)/daemon/Makefile.kmk
26 include $(PATH_SUB_CURRENT)/sharedfolders/Makefile.kmk
27endif
28
29ifndef VBOX_OSE
30 PACKING += $(PATH_BIN)/additions/VBoxLinuxAdditions.run
31 OTHER_CLEAN += $(PACKING)
32 # OSE only contains the source code for this
33 VBOX_SELINUX_CMPLD := $(PATH_SUB_CURRENT)/selinux-fedora/vbox_x11.pp
34endif
35
36VBOX_PATH_LINUX_ADDITION_INSTALLER := $(PATH_SUB_CURRENT)/installer
37
38include $(PATH_KBUILD)/subfooter.kmk
39
40
41#
42# Build the Linux Guest Additions self extracting installer.
43#
44# Note that $(PATH_SUB_CURRENT) was changed by subfooter.kmk above and
45# any references should be made via variables assigned a know value via := .
46#
47# We need to depend on all source files for the additions and shared
48# folders kernel modules.
49## @todo Replace the wildcard stuff by the correct file lists now that
50# we've got everything included.
51#
52$(PATH_BIN)/additions/VBoxLinuxAdditions.run: \
53 $(INSTARGET_vboxmod-bin) \
54 $(PATH_BIN)/additions/vboxadd-timesync \
55 $(PATH_BIN)/additions/VBoxClient \
56 $(VBOX_PATH_LINUX_ADDITION_INSTALLER)/vboxadd-timesync.sh \
57 $(VBOX_PATH_LINUX_ADDITION_INSTALLER)/98vboxadd-xclient \
58 $(VBOX_PATH_LINUX_ADDITION_INSTALLER)/vboxadd.sh \
59 $(VBOX_PATH_LINUX_ADDITION_INSTALLER)/install.sh \
60 $(PATH_ROOT)/src/VBox/Installer/linux/routines.sh \
61 $(VBOX_PATH_LINUX_ADDITION_INSTALLER)/x11config.pl \
62 $(VBOX_PATH_LINUX_ADDITION_INSTALLER)/Makefile.test \
63 $(VBOX_PATH_LINUX_ADDITION_INSTALLER)/test.c \
64 $(PATH_BIN)/additions/vboxmouse_drv.o \
65 $(PATH_BIN)/additions/vboxmouse_drv_70.so \
66 $(PATH_BIN)/additions/vboxmouse_drv_71.so \
67 $(PATH_BIN)/additions/vboxmouse_drv_14.so \
68 $(PATH_BIN)/additions/vboxvideo_drv.o \
69 $(PATH_BIN)/additions/vboxvideo_drv_70.so \
70 $(PATH_BIN)/additions/vboxvideo_drv_71.so \
71 $(PATH_BIN)/additions/vboxvideo_drv_13.so \
72 $(PATH_BIN)/additions/vboxvideo_drv_14.so \
73 $(VBOX_PATH_LINUX_ADDITION_INSTALLER)/vboxvfs.sh $(PATH_BIN)/additions/mountvboxsf \
74 $(VBOX_SELINUX_CMPLD) \
75 $(wildcard $(PATH_BIN)/additions/src/*) \
76 $(wildcard $(PATH_BIN)/additions/src/*/*) \
77 $(wildcard $(PATH_BIN)/additions/src/*/*/*) \
78 $(wildcard $(PATH_BIN)/additions/src/*/*/*/*) \
79 $(VBOX_VERSION_STAMP)
80 $(call MSG_L1,Creating $@)
81 $(QUIET)$(MKDIR) -p $(PATH_TARGET)/install
82# Remove target directory first, otherwise the behaviour of cp will not be
83# what we want if it already exists. See the cp manual page for more details.
84 $(QUIET)rm -rf $(PATH_TARGET)/install/module
85 $(QUIET)cp -af $(PATH_BIN)/additions/src $(PATH_TARGET)/install/module
86 $(QUIET)$(MKDIR) -p $(PATH_TARGET)/install/module/test
87 $(QUIET)$(INSTALL) -m 0644 $(VBOX_PATH_LINUX_ADDITION_INSTALLER)/Makefile.test $(PATH_TARGET)/install/module/test/Makefile
88 $(QUIET)$(INSTALL) -m 0644 $(VBOX_PATH_LINUX_ADDITION_INSTALLER)/test.c $(PATH_TARGET)/install/module/test/
89 $(QUIET)objcopy -S -R .comment $(PATH_BIN)/additions/vboxadd-timesync $(PATH_TARGET)/install/vboxadd-timesync
90 $(QUIET)objcopy -S -R .comment $(PATH_BIN)/additions/VBoxClient $(PATH_TARGET)/install/VBoxClient
91 $(QUIET)$(SED) "s;_VERSION_;$(VBOX_VERSION_STRING);g" $(VBOX_PATH_LINUX_ADDITION_INSTALLER)/install.sh \
92 | $(SED) "s;_BUILD_;$(shell date);g" \
93 | $(SED) "s;_OSE_;$(VBOX_OSE);g" \
94 | $(SED) "s;_BUILDTYPE_;$(BUILD_TYPE);g" \
95 > $(PATH_TARGET)/install/install_.sh
96 $(QUIET)$(INSTALL) -m 0755 $(PATH_TARGET)/install/install_.sh $(PATH_TARGET)/install/install.sh
97 $(QUIET)$(RM) $(PATH_TARGET)/install/install_.sh
98 $(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_LINUX_ADDITION_INSTALLER)/vboxadd-timesync.sh $(PATH_TARGET)/install
99 $(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_LINUX_ADDITION_INSTALLER)/98vboxadd-xclient $(PATH_TARGET)/install
100 $(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_LINUX_ADDITION_INSTALLER)/vboxadd.sh $(PATH_TARGET)/install
101 $(QUIET)$(INSTALL) -m 0755 $(PATH_ROOT)/src/VBox/Installer/linux/routines.sh $(PATH_TARGET)/install
102 $(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_LINUX_ADDITION_INSTALLER)/x11config.pl $(PATH_TARGET)/install
103 $(QUIET)objcopy -g -R .comment $(PATH_BIN)/additions/vboxmouse_drv.o $(PATH_TARGET)/install/vboxmouse_drv.o
104 $(QUIET)objcopy -S -R .comment $(PATH_BIN)/additions/vboxmouse_drv_70.so $(PATH_TARGET)/install/vboxmouse_drv_70.so
105 $(QUIET)objcopy -S -R .comment $(PATH_BIN)/additions/vboxmouse_drv_71.so $(PATH_TARGET)/install/vboxmouse_drv_71.so
106 $(QUIET)objcopy -S -R .comment $(PATH_BIN)/additions/vboxmouse_drv_14.so $(PATH_TARGET)/install/vboxmouse_drv_14.so
107 $(QUIET)objcopy -g -R .comment $(PATH_BIN)/additions/vboxvideo_drv.o $(PATH_TARGET)/install/vboxvideo_drv.o
108 $(QUIET)objcopy -S -R .comment $(PATH_BIN)/additions/vboxvideo_drv_70.so $(PATH_TARGET)/install/vboxvideo_drv_70.so
109 $(QUIET)objcopy -S -R .comment $(PATH_BIN)/additions/vboxvideo_drv_71.so $(PATH_TARGET)/install/vboxvideo_drv_71.so
110 $(QUIET)objcopy -S -R .comment $(PATH_BIN)/additions/vboxvideo_drv_13.so $(PATH_TARGET)/install/vboxvideo_drv_13.so
111 $(QUIET)objcopy -S -R .comment $(PATH_BIN)/additions/vboxvideo_drv_14.so $(PATH_TARGET)/install/vboxvideo_drv_14.so
112 $(QUIET)objcopy -S -R .comment $(PATH_BIN)/additions/mountvboxsf $(PATH_TARGET)/install/mount.vboxsf
113 $(QUIET)$(INSTALL) -m 0755 $(VBOX_PATH_LINUX_ADDITION_INSTALLER)/vboxvfs.sh $(PATH_TARGET)/install
114ifdef VBOX_SELINUX_CMPLD
115 $(QUIET)$(INSTALL) -m 0755 $(VBOX_SELINUX_CMPLD) $(PATH_TARGET)/install
116endif
117 $(QUIET)$(VBOX_MAKESELF) $(PATH_TARGET)/install $@ \
118 "VirtualBox $(VBOX_VERSION_STRING) Guest Additions for Linux installation" /bin/sh ./install.sh "> /dev/null"
119
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