VirtualBox

source: vbox/trunk/src/VBox/Additions/linux/Makefile@ 1071

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

Rewrote the additions installer and made it work with Slackware

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 4.4 KB
Line 
1#
2# Makefile for the linux guest additions base directory.
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
24# This can only be built on a real Linux system.
25SUBDIRS =
26ifeq ($(filter-out linux l4, $(BUILD_TARGET)),)
27SUBDIRS += \
28 module \
29 daemon \
30 xgraphics \
31 xmouse
32ifndef VBOX_OSE
33SUBDIRS += \
34 sharedfolders
35endif
36endif
37
38PACKING = $(PATH_BIN)/additions/VBoxLinuxAdditions.run
39OTHER_CLEAN = $(PACKING)
40
41
42include $(PATH_KBUILD)/footer.kmk
43
44
45#
46# Build the Linux Guest Additions self extracting installer.
47#
48
49# We need to depend on all source files for the additions and shared
50# folders kernel modules.
51$(PATH_BIN)/additions/VBoxLinuxAdditions.run: \
52 $(INSTARGET_vboxmod-bin) \
53 $(PATH_BIN)/additions/vboxadd-timesync \
54 installer/vboxadd-timesync.sh \
55 installer/vboxadd.sh \
56 installer/install.sh \
57 ../../Installer/linux/routines.sh \
58 ../../Installer/linux/runlevel.sh \
59 installer/x11config.pl \
60 installer/Makefile.test \
61 installer/test.c \
62 $(PATH_BIN)/additions/vboxmouse_drv.o \
63 $(PATH_BIN)/additions/vboxmouse_drv_70.so \
64 $(PATH_BIN)/additions/vboxmouse_drv_71.so \
65 $(PATH_BIN)/additions/vboxvideo_drv.o \
66 $(PATH_BIN)/additions/vboxvideo_drv_70.so \
67 $(PATH_BIN)/additions/vboxvideo_drv_71.so \
68 $(if VBOX_OSE,,installer/vboxvfs.sh $(PATH_BIN)/additions/mountvboxsf) \
69 $(VBOX_VERSION_STAMP)
70 $(call MSG_L1,Creating $@)
71 $(QUIET)$(MKDIR) -p $(PATH_TARGET)/install
72# Remove target directory first, otherwise the behaviour of cp will not be
73# what we want if it already exists. See the cp manual page for more details.
74 $(QUIET)rm -rf $(PATH_TARGET)/install/module
75 $(QUIET)cp -af $(PATH_BIN)/additions/src $(PATH_TARGET)/install/module
76 $(QUIET)$(MKDIR) -p $(PATH_TARGET)/install/module/test
77 $(QUIET)$(INSTALL) -m 0644 installer/Makefile.test $(PATH_TARGET)/install/module/test/Makefile
78 $(QUIET)$(INSTALL) -m 0644 installer/test.c $(PATH_TARGET)/install/module/test/
79 $(QUIET)objcopy -S -R .comment $(PATH_BIN)/additions/vboxadd-timesync $(PATH_TARGET)/install/vboxadd-timesync
80 $(QUIET)$(SED) "s;_VERSION_;$(VBOX_VERSION);g" installer/install.sh | $(SED) "s;_BUILD_;$(shell date);g" | $(SED) "s;_OSE_;$(VBOX_OSE);g" > $(PATH_TARGET)/install/install_.sh
81 $(QUIET)$(INSTALL) -m 0755 $(PATH_TARGET)/install/install_.sh $(PATH_TARGET)/install/install.sh
82 $(QUIET)$(RM) $(PATH_TARGET)/install/install_.sh
83 $(QUIET)$(INSTALL) -m 0755 installer/vboxadd-timesync.sh $(PATH_TARGET)/install
84 $(QUIET)$(INSTALL) -m 0755 installer/vboxadd.sh $(PATH_TARGET)/install
85 $(QUIET)$(INSTALL) -m 0755 ../../Installer/linux/routines.sh $(PATH_TARGET)/install
86 $(QUIET)$(INSTALL) -m 0755 ../../Installer/linux/runlevel.sh $(PATH_TARGET)/install
87 $(QUIET)$(INSTALL) -m 0755 installer/x11config.pl $(PATH_TARGET)/install
88 $(QUIET)objcopy -g -R .comment $(PATH_BIN)/additions/vboxmouse_drv.o $(PATH_TARGET)/install/vboxmouse_drv.o
89 $(QUIET)objcopy -S -R .comment $(PATH_BIN)/additions/vboxmouse_drv_70.so $(PATH_TARGET)/install/vboxmouse_drv_70.so
90 $(QUIET)objcopy -S -R .comment $(PATH_BIN)/additions/vboxmouse_drv_71.so $(PATH_TARGET)/install/vboxmouse_drv_71.so
91 $(QUIET)objcopy -g -R .comment $(PATH_BIN)/additions/vboxvideo_drv.o $(PATH_TARGET)/install/vboxvideo_drv.o
92 $(QUIET)objcopy -S -R .comment $(PATH_BIN)/additions/vboxvideo_drv_70.so $(PATH_TARGET)/install/vboxvideo_drv_70.so
93 $(QUIET)objcopy -S -R .comment $(PATH_BIN)/additions/vboxvideo_drv_71.so $(PATH_TARGET)/install/vboxvideo_drv_71.so
94ifndef VBOX_OSE
95 $(QUIET)$(INSTALL) -m 0755 installer/vboxvfs.sh $(PATH_TARGET)/install
96 $(QUIET)objcopy -S -R .comment $(PATH_BIN)/additions/mountvboxsf $(PATH_TARGET)/install/mount.vboxsf
97endif
98 $(QUIET)$(VBOX_MAKESELF) $(PATH_TARGET)/install $@ \
99 "VirtualBox $(VBOX_VERSION) Guest Additions for Linux installation" /bin/sh ./install.sh "> /dev/null"
100
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