VirtualBox

source: vbox/trunk/src/VBox/Additions/linux/sharedfolders/Makefile.module@ 72627

Last change on this file since 72627 was 69500, checked in by vboxsync, 7 years ago

*: scm --update-copyright-year

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 2.7 KB
Line 
1# $Id: Makefile.module 69500 2017-10-28 15:14:05Z vboxsync $
2## @file
3# VirtualBox Guest Additions Module Makefile.
4#
5# (For 2.6.x this file must be 'Makefile'!)
6#
7
8#
9# Copyright (C) 2006-2017 Oracle Corporation
10#
11# This file is part of VirtualBox Open Source Edition (OSE), as
12# available from http://www.virtualbox.org. This file is free software;
13# you can redistribute it and/or modify it under the terms of the GNU
14# General Public License (GPL) as published by the Free Software
15# Foundation, in version 2 as it comes in the "COPYING" file of the
16# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
17# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
18#
19
20# Linux kbuild sets this to our source directory if we are called from there
21obj ?= $(CURDIR)
22include $(obj)/Makefile.include.header
23
24MOD_NAME = vboxsf
25MOD_OBJS = \
26 vfsmod.o \
27 dirops.o \
28 lnkops.o \
29 regops.o \
30 utils.o \
31 VBoxGuestR0LibHGCM.o \
32 VBoxGuestR0LibIdc.o \
33 VBoxGuestR0LibIdc-unix.o \
34 VBoxGuestR0LibSharedFolders.o
35ifeq ($(BUILD_TARGET_ARCH),x86)
36MOD_OBJS += \
37 divdi3.o \
38 moddi3.o \
39 udivdi3.o \
40 udivmoddi4.o \
41 umoddi3.o \
42 qdivrem.o
43endif
44
45MOD_INCL = \
46 $(addprefix -I$(KBUILD_EXTMOD),/ /include /r0drv/linux) \
47 $(addprefix -I$(KBUILD_EXTMOD)/vboxsf,/ /include /r0drv/linux)
48
49ifneq ($(wildcard $(KBUILD_EXTMOD)/vboxsf),)
50 MANGLING := $(KBUILD_EXTMOD)/vboxsf/include/VBox/VBoxGuestMangling.h
51else
52 MANGLING := $(KBUILD_EXTMOD)/include/VBox/VBoxGuestMangling.h
53endif
54
55MOD_DEFS = -DRT_OS_LINUX -DIN_RING0 -DIN_RT_R0 \
56 -DIN_SUP_R0 -DVBOX -DVBOX_WITH_HGCM -DIN_MODULE -DIN_GUEST_R0
57# our module does not export any symbol
58MOD_DEFS += -DRT_NO_EXPORT_SYMBOL
59ifeq ($(BUILD_TARGET_ARCH),amd64)
60 MOD_DEFS += -DRT_ARCH_AMD64 -DVBOX_WITH_64_BITS_GUESTS
61else
62 MOD_DEFS += -DRT_ARCH_X86
63endif
64
65ifeq ($(KERN_VERSION), 24)
66 MOD_CFLAGS =
67else
68 MOD_CFLAGS = -Wno-declaration-after-statement -fshort-wchar -include $(MANGLING) -fno-pie
69
70# special hack for Fedora Core 6 2.6.18 (fc6), rhel5 2.6.18 (el5),
71# ClarkConnect 4.3 (cc4) and ClarkConnect 5 (v5)
72 ifeq ($(KERNELRELEASE),)
73 MOD_EXTRA += $(foreach inc,$(KERN_INCL),\
74 $(if $(wildcard $(inc)/linux/utsrelease.h),\
75 $(if $(shell grep '"2.6.18.*fc6.*"' $(inc)/linux/utsrelease.h; \
76 grep '"2.6.18.*el5.*"' $(inc)/linux/utsrelease.h; \
77 grep '"2.6.18.*v5.*"' $(inc)/linux/utsrelease.h; \
78 grep '"2.6.18.*cc4.*"' $(inc)/linux/utsrelease.h),\
79 -DKERNEL_FC6,),))
80 else
81 MOD_EXTRA += $(if $(shell echo "$(KERNELRELEASE)"|grep '2.6.18.*fc6.*';\
82 echo "$(KERNELRELEASE)"|grep '2.6.18.*el5.*';\
83 echo "$(KERNELRELEASE)"|grep '2.6.18.*v5.*';\
84 echo "$(KERNELRELEASE)"|grep '2.6.18.*cc4.*'),\
85 -DKERNEL_FC6,)
86 endif
87endif
88
89MOD_CLEAN = . linux r0drv r0drv/linux
90
91include $(obj)/Makefile.include.footer
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