1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
|
# $Id: Makefile.kmk $
## @file
# Sub-Makefile for the Darwin VBoxUSB kernel extension.
#
#
# Copyright (C) 2006-2019 Oracle Corporation
#
# This file is part of VirtualBox Open Source Edition (OSE), as
# available from http://www.virtualbox.org. This file is free software;
# you can redistribute it and/or modify it under the terms of the GNU
# General Public License (GPL) as published by the Free Software
# Foundation, in version 2 as it comes in the "COPYING" file of the
# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
#
# The contents of this file may alternatively be used under the terms
# of the Common Development and Distribution License Version 1.0
# (CDDL) only, as it comes in the "COPYING.CDDL" file of the
# VirtualBox OSE distribution, in which case the provisions of the
# CDDL are applicable instead of those of the GPL.
#
# You may elect to license modified versions of this file under the
# terms and conditions of either the GPL or the CDDL or both.
#
SUB_DEPTH = ../../../../..
include $(KBUILD_PATH)/subheader.kmk
#
# VBoxUSB.kext - The Darwin Kernel Extension.
#
# Leopard (x86) and Snow Leopard (x86/amd64)
SYSMODS.darwin += VBoxUSB
VBoxUSB_TEMPLATE = VBOXR0DRV
VBoxUSB_INST = $(INST_VBOXUSB)Contents/MacOS/
VBoxUSB_DEBUG_INST.darwin = $(patsubst %/,%,$(INST_VBOXUSB))
VBoxUSB_INCS = \
. \
..
#VBoxUSB_LDFLAGS = -v -Wl,-whyload -Wl,-v -Wl,-whatsloaded
VBoxUSB_SOURCES := \
VBoxUSB.cpp \
../USBFilter.cpp \
../VBoxUSBFilterMgr.cpp
INSTALLS += VBoxUSB.kext
VBoxUSB.kext_INST = $(INST_VBOXUSB)Contents/
VBoxUSB.kext_SOURCES = $(VBoxUSB.kext_0_OUTDIR)/Contents/Info.plist
VBoxUSB.kext_CLEAN = $(VBoxUSB.kext_0_OUTDIR)/Contents/Info.plist
VBoxUSB.kext_BLDDIRS = $(VBoxUSB.kext_0_OUTDIR)/Contents/
$$(VBoxUSB.kext_0_OUTDIR)/Contents/Info.plist: $(PATH_SUB_CURRENT)/Info.plist $(VBOX_VERSION_MK) | $$(dir $$@)
$(call MSG_GENERATE,VBoxUSB,$@,$<)
$(QUIET)$(RM) -f $@
$(QUIET)$(SED) \
-e 's/@VBOX_VERSION_STRING@/$(VBOX_VERSION_STRING)/g' \
-e 's/@VBOX_VERSION_MAJOR@/$(VBOX_VERSION_MAJOR)/g' \
-e 's/@VBOX_VERSION_MINOR@/$(VBOX_VERSION_MINOR)/g' \
-e 's/@VBOX_VERSION_BUILD@/$(VBOX_VERSION_BUILD)/g' \
-e 's/@VBOX_VENDOR@/$(VBOX_VENDOR)/g' \
-e 's/@VBOX_PRODUCT@/$(VBOX_PRODUCT)/g' \
-e 's/@VBOX_C_YEAR@/$(VBOX_C_YEAR)/g' \
--output $@ \
$<
$(evalcall2 VBOX_TEST_SIGN_KEXT,VBoxUSB)
# Common manual loader script.
INSTALLS += ScriptsUSB
ScriptsUSB_INST = $(INST_DIST)
ScriptsUSB_EXEC_SOURCES = \
loadusb.sh
ifdef VBOX_WITH_TESTCASES
#
# Testcase for doing some manual driver testing...
#
PROGRAMS += tstOpenUSBDev
tstOpenUSBDev_TEMPLATE = VBOXR3TSTEXE
tstOpenUSBDev_SOURCES = testcase/tstOpenUSBDev.cpp
tstOpenUSBDev_LDFLAGS = -framework CoreFoundation -framework IOKit
endif
include $(FILE_KBUILD_SUB_FOOTER)
|