VirtualBox

source: vbox/trunk/src/VBox/Installer/linux/Makefile.include.footer@ 59865

Last change on this file since 59865 was 59453, checked in by vboxsync, 9 years ago

ticketref:15069: Minor issue with file permissions - fail SCAP security validation: change the permissions with which Linux kernel module files (host and guest) are installed under /lib/modules from 0664 to 0644. I note in passing that the host module make files have not yet been changed to use the generic make file template code, so four changes are needed for the host modules versus one for the guest ones.

  • Property svn:eol-style set to LF
  • Property svn:keywords set to Author Date Id Revision
File size: 2.4 KB
Line 
1#
2# VirtualBox Guest Additions kernel module Makefile, common parts.
3#
4# See Makefile.include.header for details of how to use this.
5#
6# Copyright (C) 2006-2015 Oracle Corporation
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 (GPL) as published by the Free Software
12# Foundation, in version 2 as it comes in the "COPYING" file of the
13# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
14# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
15#
16
17# override is required by the Debian guys
18override MODULE = $(MOD_NAME)
19OBJS = $(MOD_OBJS)
20
21ifneq ($(MAKECMDGOALS),clean)
22
23KBUILD_VERBOSE ?= 1
24
25#
26# Compiler options
27#
28ifndef INCL
29 INCL := $(addprefix -I,$(KERN_INCL) $(EXTRA_INCL))
30 ifndef KBUILD_EXTMOD
31 KBUILD_EXTMOD := $(shell pwd)
32 endif
33 INCL += $(MOD_INCL)
34 export INCL
35endif
36KFLAGS := -D__KERNEL__ -DMODULE $(MOD_DEFS)
37ifeq ($(BUILD_TYPE),debug)
38 KFLAGS += -DDEBUG -DDEBUG_$(subst $(subst _, ,_),_,$(USERNAME)) -DDEBUG_USERNAME=$(subst $(subst _, ,_),_,$(USERNAME))
39endif
40
41ifeq ($(KERN_VERSION), 24)
42#
43# 2.4
44#
45
46ifeq ($(BUILD_TARGET_ARCH),amd64)
47 KFLAGS += -mcmodel=kernel
48endif
49
50CFLAGS := -O2 -DVBOX_LINUX_2_4 $(MOD_CFLAGS) $(INCL) $(KFLAGS) $(MOD_EXTRA) $(KDEBUG)
51MODULE_EXT := o
52
53# 2.4 Module linking
54$(MODULE).o: $(OBJS)
55 $(LD) -o $@ -r $(OBJS)
56
57.PHONY: $(MODULE)
58all: $(MODULE)
59$(MODULE): $(MODULE).o
60
61else
62#
63# 2.6 and later
64#
65
66MODULE_EXT := ko
67
68$(MODULE)-y := $(OBJS)
69
70# build defs
71EXTRA_CFLAGS += $(MOD_CFLAGS) $(INCL) $(KFLAGS) $(MOD_EXTRA) $(KDEBUG)
72
73all: $(MODULE)
74
75obj-m += $(MODULE).o
76
77# OL/UEK: disable module signing for external modules -- we don't have any private key
78$(MODULE):
79 $(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) CONFIG_MODULE_SIG= -C $(KERN_DIR) SUBDIRS=$(CURDIR) SRCROOT=$(CURDIR) modules
80
81modules_install:
82 $(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) CONFIG_MODULE_SIG= -C $(KERN_DIR) SUBDIRS=$(CURDIR) SRCROOT=$(CURDIR) modules_install
83
84endif
85
86install: $(MODULE)
87 @mkdir -p $(MODULE_DIR); \
88 install -m 0644 -o root -g root $(MODULE).$(MODULE_EXT) $(MODULE_DIR); \
89 PATH="$(PATH):/bin:/sbin" depmod -a;
90
91endif # eq($(MAKECMDGOALS),clean)
92
93clean:
94 for f in $(MOD_CLEAN); do rm -f $$f/*.o $$f/.*.cmd $$f/.*.flags; done
95 rm -rf .$(MOD_NAME)* .tmp_ver* $(MOD_NAME).* Modules.symvers modules.order
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