VirtualBox

忽略:
時間撮記:
2011-7-26 下午01:20:51 (13 年 以前)
作者:
vboxsync
訊息:

kBuild,HostDrivers: Consolidate install targets using EXEC_SOURCES. Some cleanup, esp VBoxPci ofc.

位置:
trunk
檔案:
修改 2 筆資料

圖例:

未更動
新增
刪除
  • trunk

  • trunk/src/VBox/HostDrivers/VBoxNetFlt/Makefile.kmk

    r38082 r38183  
    2121
    2222if1of ($(KBUILD_TARGET), darwin win) # this ifeq must go, see @todo around elif
    23 #
    24 # VBoxNetFlt.sys - The mixed case driver.
    25 #
    26 SYSMODS += VBoxNetFlt
    27 VBoxNetFlt_TEMPLATE = VBOXR0DRV
    28 VBoxNetFlt_INST = $(INST_VBOXNETFLT)$(if $(eq $(KBUILD_TARGET),darwin),Contents/MacOS/)
    29 if defined(VBOX_SIGNING_MODE) && "$(KBUILD_TARGET)" == "win"
    30  VBoxNetFlt_NOINST = true
    31 endif
    32 VBoxNetFlt_DEFS = IN_RT_R0 IN_SUP_STATIC
    33 VBoxNetFlt_INCS = .
    34 VBoxNetFlt_SOURCES.darwin = \
    35         darwin/VBoxNetFlt-darwin.cpp
    36 #VBoxNetFlt_SOURCES.darwin += \
    37 #       darwin/VBoxNetAdapter-darwin.cpp
    38 VBoxNetFlt_SDKS.win = WINDDKWLH WINPSDKINCS
    39 VBoxNetFlt_SOURCES.win = \
    40         win/drv/VBoxNetFltP-win.cpp \
    41         win/drv/VBoxNetFltM-win.cpp \
    42         win/drv/VBoxNetFltRt-win.cpp \
    43         win/drv/VBoxNetFlt-win.rc
    44 # with WINDDKWLH the WIN9X_COMPAT_SPINLOCK is needed to avoid inline declaration of KeInitializeSpinLock
    45 # otherwise the linker would complain about dumplicate _KeInitializeSpinLock@4 definition
    46 # in ntoskrnl.lib and our object files
    47 VBoxNetFlt_DEFS.win += WIN9X_COMPAT_SPINLOCK=1
    48 VBoxNetFlt_DEFS.win += VBOXNETFLT_STATIC_CONFIG
    49 VBoxNetFlt_DEFS.win += VBOXNETFLT_NO_PACKET_QUEUE
    50 VBoxNetFlt_DEFS.win += NDIS_MINIPORT_DRIVER NDIS_WDM=1 BINARY_COMPATIBLE=0
    51 VBoxNetFlt_DEFS.win += NDIS50_MINIPORT=1 NDIS50=1
    52 ifdef VBOX_LOOPBACK_USEFLAGS
    53  VBoxNetFlt_DEFS.win += VBOX_LOOPBACK_USEFLAGS
    54 endif
    55 VBoxNetFlt_SOURCES = VBoxNetFlt.c
    56 #VBoxNetFlt_LDFLAGS.darwin = -v -Wl,-whyload -Wl,-v -Wl,-whatsloaded
    57 VBoxNetFlt_LDFLAGS.win.x86 = -Entry:DriverEntry@8
    58 VBoxNetFlt_LDFLAGS.win.amd64 = -Entry:DriverEntry
    59 VBoxNetFlt_LIBS.win = \
    60         $(PATH_SDK_WINDDKWLH_LIB)/ntoskrnl.lib \
    61         $(PATH_SDK_WINDDKWLH_LIB)/hal.lib \
    62         $(PATH_SDK_WINDDKWLH_LIB)/ndis.lib \
    63         $(PATH_STAGE_LIB)/RuntimeR0Drv$(VBOX_SUFF_LIB)
    64 VBoxNetFlt_LIBS = \
    65         $(PATH_STAGE_LIB)/SUPR0IdcClient$(VBOX_SUFF_LIB)
    66 
    67 darwin/VBoxNetFlt-darwin.cpp_DEFS = VBOX_SVN_REV=$(VBOX_SVN_REV)
     23 #
     24 # VBoxNetFlt.sys - The mixed case driver.
     25 #
     26 SYSMODS += VBoxNetFlt
     27 VBoxNetFlt_TEMPLATE = VBOXR0DRV
     28 VBoxNetFlt_INST = $(INST_VBOXNETFLT)$(if $(eq $(KBUILD_TARGET),darwin),Contents/MacOS/)
     29 if defined(VBOX_SIGNING_MODE) && "$(KBUILD_TARGET)" == "win"
     30  VBoxNetFlt_NOINST = true
     31 endif
     32 VBoxNetFlt_DEFS = IN_RT_R0 IN_SUP_STATIC
     33 VBoxNetFlt_INCS = .
     34 VBoxNetFlt_SOURCES.darwin = \
     35        darwin/VBoxNetFlt-darwin.cpp
     36 VBoxNetFlt_SDKS.win = WINDDKWLH WINPSDKINCS
     37 VBoxNetFlt_SOURCES.win = \
     38        win/drv/VBoxNetFltP-win.cpp \
     39        win/drv/VBoxNetFltM-win.cpp \
     40        win/drv/VBoxNetFltRt-win.cpp \
     41        win/drv/VBoxNetFlt-win.rc
     42 # with WINDDKWLH the WIN9X_COMPAT_SPINLOCK is needed to avoid inline declaration of KeInitializeSpinLock
     43 # otherwise the linker would complain about dumplicate _KeInitializeSpinLock@4 definition
     44 # in ntoskrnl.lib and our object files
     45 VBoxNetFlt_DEFS.win += WIN9X_COMPAT_SPINLOCK=1
     46 VBoxNetFlt_DEFS.win += VBOXNETFLT_STATIC_CONFIG
     47 VBoxNetFlt_DEFS.win += VBOXNETFLT_NO_PACKET_QUEUE
     48 VBoxNetFlt_DEFS.win += NDIS_MINIPORT_DRIVER NDIS_WDM=1 BINARY_COMPATIBLE=0
     49 VBoxNetFlt_DEFS.win += NDIS50_MINIPORT=1 NDIS50=1
     50 ifdef VBOX_LOOPBACK_USEFLAGS
     51  VBoxNetFlt_DEFS.win += VBOX_LOOPBACK_USEFLAGS
     52 endif
     53 VBoxNetFlt_SOURCES = VBoxNetFlt.c
     54 #VBoxNetFlt_LDFLAGS.darwin = -v -Wl,-whyload -Wl,-v -Wl,-whatsloaded
     55 VBoxNetFlt_LDFLAGS.win.x86 = -Entry:DriverEntry@8
     56 VBoxNetFlt_LDFLAGS.win.amd64 = -Entry:DriverEntry
     57 VBoxNetFlt_LIBS.win = \
     58        $(PATH_SDK_WINDDKWLH_LIB)/ntoskrnl.lib \
     59        $(PATH_SDK_WINDDKWLH_LIB)/hal.lib \
     60        $(PATH_SDK_WINDDKWLH_LIB)/ndis.lib \
     61        $(PATH_STAGE_LIB)/RuntimeR0Drv$(VBOX_SUFF_LIB)
     62 VBoxNetFlt_LIBS = \
     63        $(PATH_STAGE_LIB)/SUPR0IdcClient$(VBOX_SUFF_LIB)
     64
     65 darwin/VBoxNetFlt-darwin.cpp_DEFS = VBOX_SVN_REV=$(VBOX_SVN_REV)
    6866
    6967
    7068# Darwin extras.
    7169ifeq ($(KBUILD_TARGET),darwin)
    72 INSTALLS += VBoxNetFlt.kext
    73 VBoxNetFlt.kext_INST     = $(INST_VBOXNETFLT)Contents/
    74 VBoxNetFlt.kext_SOURCES  = \
    75         $(VBoxNetFlt.kext_0_OUTDIR)/Info.plist
    76 VBoxNetFlt.kext_CLEAN    = \
    77         $(VBoxNetFlt.kext_0_OUTDIR)/Info.plist
     70 INSTALLS += VBoxNetFlt.kext
     71 VBoxNetFlt.kext_INST     = $(INST_VBOXNETFLT)Contents/
     72 VBoxNetFlt.kext_SOURCES  = \
     73        $(VBoxNetFlt.kext_0_OUTDIR)/Info.plist
     74 VBoxNetFlt.kext_CLEAN    = \
     75        $(VBoxNetFlt.kext_0_OUTDIR)/Info.plist
    7876
    7977$$(VBoxNetFlt.kext_0_OUTDIR)/Info.plist: $(PATH_SUB_CURRENT)/darwin/Info.plist $(VBOX_VERSION_MK) | $$(dir $$@)
     
    9189                $<
    9290
    93 INSTALLS.darwin += Scripts-darwin
    94 Scripts-darwin_INST = $(INST_DIST)
    95 Scripts-darwin_SOURCES = \
    96         darwin/loadnetflt.sh
     91 INSTALLS.darwin += Scripts-darwin
     92 Scripts-darwin_INST = $(INST_DIST)
     93 Scripts-darwin_EXEC_SOURCES = \
     94        darwin/loadnetflt.sh
    9795endif # darwin
    9896
    9997
    10098ifeq ($(KBUILD_TARGET),win)
    101 #
    102 # Windows extras.
    103 #
    104 INSTALLS.win += VBoxNetFlt-inf
    105 VBoxNetFlt-inf_INST = $(INST_BIN)
    106 VBoxNetFlt-inf_MODE = a+r,u+w
    107 VBoxNetFlt-inf_SOURCES = \
    108         $(PATH_TARGET)/VBoxNetFltCat.dir/VBoxNetFlt.inf \
    109         $(PATH_TARGET)/VBoxNetFltCat.dir/VBoxNetFltM.inf
    110 VBoxNetFlt-inf_CLEAN = $(VBoxNetFlt-inf_SOURCES)
    111 VBoxNetFlt-inf_BLDDIRS = $(PATH_TARGET)/VBoxNetFltCat.dir
     99 #
     100 # Windows extras.
     101 #
     102 INSTALLS.win += VBoxNetFlt-inf
     103 VBoxNetFlt-inf_INST = $(INST_BIN)
     104 VBoxNetFlt-inf_SOURCES = \
     105        $(PATH_TARGET)/VBoxNetFltCat.dir/VBoxNetFlt.inf \
     106        $(PATH_TARGET)/VBoxNetFltCat.dir/VBoxNetFltM.inf
     107 VBoxNetFlt-inf_CLEAN = $(VBoxNetFlt-inf_SOURCES)
     108 VBoxNetFlt-inf_BLDDIRS = $(PATH_TARGET)/VBoxNetFltCat.dir
    112109
    113110$(PATH_TARGET)/VBoxNetFltCat.dir/VBoxNetFlt.inf: $(PATH_SUB_CURRENT)/win/drv/VBoxNetFlt.inf $(MAKEFILE_CURRENT) | $$(dir $$@)
     
    141138 endif # signing
    142139
    143 #
    144 # WinNetConfig - static library with host network interface config API
    145 #
    146 LIBRARIES.win += WinNetConfig
    147 WinNetConfig_TEMPLATE = VBOXR3STATIC
    148 WinNetConfig_DEFS     = _WIN32_WINNT=0x0501 _UNICODE UNICODE
    149 WinNetConfig_SDKS     = WINPSDK W2K3DDK
    150 WinNetConfig_SOURCES  = \
    151         win/cfg/VBoxNetCfg.cpp
    152 WinNetConfig_INCS.win += $(PATH_TOOL_$(VBOX_VCC_TOOL)_INC)
    153 
    154 #
    155 # NetFltInstall
    156 #
    157 PROGRAMS.win  += NetFltInstall
    158 NetFltInstall_TEMPLATE = VBOXR3STATIC
    159 NetFltInstall_SDKS     = WINPSDK W2K3DDK VBOX_NTDLL
    160 NetFltInstall_SOURCES  = win/tools/VBoxNetFltInstall.cpp
    161 NetFltInstall_LIBS     = \
    162         $(WinNetConfig_1_TARGET) \
    163         $(VBoxDrvCfg_1_TARGET) \
    164         $(PATH_TOOL_$(VBOX_VCC_TOOL)_LIB)/comsupp.lib \
    165         $(PATH_SDK_WINPSDK_LIB)/WbemUuid.Lib
    166 
    167 
    168 #
    169 # NetFltUninstall
    170 #
    171 PROGRAMS.win  += NetFltUninstall
    172 NetFltUninstall_TEMPLATE = VBOXR3STATIC
    173 NetFltUninstall_SDKS     = WINPSDK W2K3DDK VBOX_NTDLL
    174 NetFltUninstall_SOURCES  = win/tools/VBoxNetFltUninstall.cpp
    175 NetFltUninstall_LIBS     = \
    176         $(WinNetConfig_1_TARGET) \
    177         $(VBoxDrvCfg_1_TARGET) \
    178         $(PATH_TOOL_$(VBOX_VCC_TOOL)_LIB)/comsupp.lib \
    179         $(PATH_SDK_WINPSDK_LIB)/WbemUuid.Lib
    180 
    181 #
    182 # NetAdpInstall
    183 #
    184 PROGRAMS.win  += NetAdpInstall
    185 NetAdpInstall_TEMPLATE = VBOXR3STATIC
    186 NetAdpInstall_SDKS     = WINPSDK W2K3DDK VBOX_NTDLL
    187 NetAdpInstall_SOURCES  = win/tools/VBoxNetAdpInstall.cpp
    188 NetAdpInstall_LIBS     = \
    189         $(WinNetConfig_1_TARGET) \
    190         $(VBoxDrvCfg_1_TARGET) \
    191         $(PATH_TOOL_$(VBOX_VCC_TOOL)_LIB)/comsupp.lib \
    192         $(PATH_SDK_WINPSDK_LIB)/WbemUuid.Lib
    193 
    194 
    195 #
    196 # NetAdpUninstall
    197 #
    198 PROGRAMS.win  += NetAdpUninstall
    199 NetAdpUninstall_TEMPLATE = VBOXR3STATIC
    200 NetAdpUninstall_SDKS     = WINPSDK W2K3DDK VBOX_NTDLL
    201 NetAdpUninstall_SOURCES  = win/tools/VBoxNetAdpUninstall.cpp
    202 NetAdpUninstall_LIBS     = \
    203         $(WinNetConfig_1_TARGET) \
    204         $(VBoxDrvCfg_1_TARGET) \
    205         $(PATH_TOOL_$(VBOX_VCC_TOOL)_LIB)/comsupp.lib \
    206         $(PATH_SDK_WINPSDK_LIB)/WbemUuid.Lib
    207 
    208 #
    209 # VBoxNetFltNobj
    210 #
    211 DLLS.win += VBoxNetFltNobj
    212 if defined(VBOX_SIGNING_MODE)
    213 VBoxNetFltNobj_NOINST = true
    214 endif
    215 VBoxNetFltNobj_TEMPLATE   = VBOXR3STATIC
    216 VBoxNetFltNobj_SDKS       = WINPSDK W2K3DDK VBOX_NTDLL
    217 VBoxNetFltNobj_DEFS       = _WIN32_WINNT=0x0500 WIN32 _ATL_STATIC_REGISTRY
    218 VBoxNetFltNobj_INCS       = \
    219         $(VBoxNetFltNobj_0_OUTDIR)
    220 VBoxNetFltNobj_SOURCES    = \
    221         win/nobj/VBoxNetFltNobj.cpp \
    222         win/nobj/VBoxNetFltNobj.def \
    223         win/nobj/VBoxNetFltNobj.rc
    224 VBoxNetFltNobj_LIBS       = \
    225         $(PATH_TOOL_$(VBOX_VCC_TOOL)_ATLMFC_LIB)/atls$(VBOX_VCC_CRT_TYPE).lib
    226 #VBoxNetFltNobj_INTERMEDIATES =
    227 VBoxNetFltNobj_DEPS       = \
    228         $(VBoxNetFltNobj_0_OUTDIR)/VBoxNetFltNobjT_i.c \
    229         $(VBoxNetFltNobj_0_OUTDIR)/VBoxNetFltNobjT_p.c \
    230         $(VBoxNetFltNobj_0_OUTDIR)/VBoxNetFltNobjT.h \
    231         $(VBoxNetFltNobj_0_OUTDIR)/dlldata.c \
    232         $(VBoxNetFltNobj_0_OUTDIR)/VBoxNetFltNobjT.tlb
    233 VBoxNetFltNobj_CLEAN      = $(VBoxNetFltNobj_DEPS)
    234 
    235 VBOXNETFLT_NOBJ_IDL      ?= $(EXEC_X86_WIN32) $(call VBOX_FN_MAKE_WIN_PATH,$(firstword $(wildcard \
    236         $(PATH_SDK_WINPSDK_BIN)/Midl.Exe\
    237         $(PATH_SDK_WINPSDK)/Bin/Midl.Exe\
    238         $(PATH_DEVTOOLS)/win.x86/bin/midl.exe\
    239         ) Sorry_Cannot_Find_The_Midl_Compiler_In_The_PSDK))
     140 #
     141 # WinNetConfig - static library with host network interface config API
     142 #
     143 LIBRARIES.win += WinNetConfig
     144 WinNetConfig_TEMPLATE = VBOXR3STATIC
     145 WinNetConfig_DEFS     = _WIN32_WINNT=0x0501 _UNICODE UNICODE
     146 WinNetConfig_SDKS     = WINPSDK W2K3DDK
     147 WinNetConfig_SOURCES  = \
     148        win/cfg/VBoxNetCfg.cpp
     149 WinNetConfig_INCS.win += $(PATH_TOOL_$(VBOX_VCC_TOOL)_INC)
     150
     151 #
     152 # NetFltInstall
     153 #
     154 PROGRAMS.win  += NetFltInstall
     155 NetFltInstall_TEMPLATE = VBOXR3STATIC
     156 NetFltInstall_SDKS     = WINPSDK W2K3DDK VBOX_NTDLL
     157 NetFltInstall_SOURCES  = win/tools/VBoxNetFltInstall.cpp
     158 NetFltInstall_LIBS     = \
     159        $(WinNetConfig_1_TARGET) \
     160        $(VBoxDrvCfg_1_TARGET) \
     161        $(PATH_TOOL_$(VBOX_VCC_TOOL)_LIB)/comsupp.lib \
     162        $(PATH_SDK_WINPSDK_LIB)/WbemUuid.Lib
     163
     164
     165 #
     166 # NetFltUninstall
     167 #
     168 PROGRAMS.win  += NetFltUninstall
     169 NetFltUninstall_TEMPLATE = VBOXR3STATIC
     170 NetFltUninstall_SDKS     = WINPSDK W2K3DDK VBOX_NTDLL
     171 NetFltUninstall_SOURCES  = win/tools/VBoxNetFltUninstall.cpp
     172 NetFltUninstall_LIBS     = \
     173        $(WinNetConfig_1_TARGET) \
     174        $(VBoxDrvCfg_1_TARGET) \
     175        $(PATH_TOOL_$(VBOX_VCC_TOOL)_LIB)/comsupp.lib \
     176        $(PATH_SDK_WINPSDK_LIB)/WbemUuid.Lib
     177
     178 #
     179 # NetAdpInstall
     180 #
     181 PROGRAMS.win  += NetAdpInstall
     182 NetAdpInstall_TEMPLATE = VBOXR3STATIC
     183 NetAdpInstall_SDKS     = WINPSDK W2K3DDK VBOX_NTDLL
     184 NetAdpInstall_SOURCES  = win/tools/VBoxNetAdpInstall.cpp
     185 NetAdpInstall_LIBS     = \
     186        $(WinNetConfig_1_TARGET) \
     187        $(VBoxDrvCfg_1_TARGET) \
     188        $(PATH_TOOL_$(VBOX_VCC_TOOL)_LIB)/comsupp.lib \
     189        $(PATH_SDK_WINPSDK_LIB)/WbemUuid.Lib
     190
     191
     192 #
     193 # NetAdpUninstall
     194 #
     195 PROGRAMS.win  += NetAdpUninstall
     196 NetAdpUninstall_TEMPLATE = VBOXR3STATIC
     197 NetAdpUninstall_SDKS     = WINPSDK W2K3DDK VBOX_NTDLL
     198 NetAdpUninstall_SOURCES  = win/tools/VBoxNetAdpUninstall.cpp
     199 NetAdpUninstall_LIBS     = \
     200        $(WinNetConfig_1_TARGET) \
     201        $(VBoxDrvCfg_1_TARGET) \
     202        $(PATH_TOOL_$(VBOX_VCC_TOOL)_LIB)/comsupp.lib \
     203        $(PATH_SDK_WINPSDK_LIB)/WbemUuid.Lib
     204
     205 #
     206 # VBoxNetFltNobj
     207 #
     208 DLLS.win += VBoxNetFltNobj
     209 VBoxNetFltNobj_TEMPLATE   = VBOXR3STATIC
     210 if defined(VBOX_SIGNING_MODE)
     211  VBoxNetFltNobj_NOINST    = true
     212 endif
     213 VBoxNetFltNobj_SDKS       = WINPSDK W2K3DDK VBOX_NTDLL
     214 VBoxNetFltNobj_DEFS       = _WIN32_WINNT=0x0500 WIN32 _ATL_STATIC_REGISTRY
     215 VBoxNetFltNobj_INCS       = \
     216        $(VBoxNetFltNobj_0_OUTDIR)
     217 VBoxNetFltNobj_SOURCES    = \
     218        win/nobj/VBoxNetFltNobj.cpp \
     219        win/nobj/VBoxNetFltNobj.def \
     220        win/nobj/VBoxNetFltNobj.rc
     221 VBoxNetFltNobj_LIBS       = \
     222        $(PATH_TOOL_$(VBOX_VCC_TOOL)_ATLMFC_LIB)/atls$(VBOX_VCC_CRT_TYPE).lib
     223 #VBoxNetFltNobj_INTERMEDIATES =
     224 VBoxNetFltNobj_DEPS       = \
     225        $(VBoxNetFltNobj_0_OUTDIR)/VBoxNetFltNobjT_i.c \
     226        $(VBoxNetFltNobj_0_OUTDIR)/VBoxNetFltNobjT_p.c \
     227        $(VBoxNetFltNobj_0_OUTDIR)/VBoxNetFltNobjT.h \
     228        $(VBoxNetFltNobj_0_OUTDIR)/dlldata.c \
     229        $(VBoxNetFltNobj_0_OUTDIR)/VBoxNetFltNobjT.tlb
     230 VBoxNetFltNobj_CLEAN      = $(VBoxNetFltNobj_DEPS)
     231
     232 VBOXNETFLT_NOBJ_IDL      ?= $(EXEC_X86_WIN32) $(call VBOX_FN_MAKE_WIN_PATH,$(firstword $(wildcard \
     233        $(PATH_SDK_WINPSDK_BIN)/Midl.Exe\
     234        $(PATH_SDK_WINPSDK)/Bin/Midl.Exe\
     235        $(PATH_DEVTOOLS)/win.x86/bin/midl.exe\
     236        ) Sorry_Cannot_Find_The_Midl_Compiler_In_The_PSDK))
    240237
    241238$$(VBoxNetFltNobj_0_OUTDIR)/VBoxNetFltNobjT_i.c \
     
    252249                $(call VBOX_FN_MAKE_WIN_PATH,$<)
    253250
    254 #
    255 # VBoxNetAdp.sys - The VirtualBox Adapter miniport driver.
    256 #
    257 SYSMODS.win += VBoxNetAdp
    258 VBoxNetAdp_TEMPLATE = VBOXR0DRV
    259 #VBoxNetAdp_INST = $(INST_VBOXNETADP)
     251 #
     252 # VBoxNetAdp.sys - The VirtualBox Adapter miniport driver.
     253 #
     254 SYSMODS.win += VBoxNetAdp
     255 VBoxNetAdp_TEMPLATE = VBOXR0DRV
     256 #VBoxNetAdp_INST = $(INST_VBOXNETADP)
    260257 if defined(VBOX_SIGNING_MODE)
    261 VBoxNetAdp_NOINST = true
    262  endif
    263 VBoxNetAdp_DEFS = IN_RT_R0 IN_SUP_STATIC
    264 VBoxNetAdp_INCS := $(PATH_SUB_CURRENT)
    265 VBoxNetAdp_SDKS = WINDDKWLH WINPSDKINCS
    266 VBoxNetAdp_SOURCES = \
    267         VBoxNetFlt.c \
    268         win/drv/VBoxNetFltM-win.cpp \
    269         win/drv/VBoxNetFltRt-win.cpp \
    270         win/drv/VBoxNetFlt-win.rc
    271 VBoxNetAdp_DEFS += VBOXNETFLT_STATIC_CONFIG VBOXNETADP
    272 VBoxNetAdp_DEFS.win += VBOXNETFLT_NO_PACKET_QUEUE
    273 VBoxNetAdp_DEFS += NDIS_MINIPORT_DRIVER NDIS_WDM=1 BINARY_COMPATIBLE=0
    274 VBoxNetAdp_DEFS += NDIS50_MINIPORT=1 NDIS50=1
    275 VBoxNetAdp_LDFLAGS.win.x86 = -Entry:DriverEntry@8
    276 VBoxNetAdp_LDFLAGS.win.amd64 = -Entry:DriverEntry
    277 VBoxNetAdp_LIBS.win = \
    278         $(PATH_SDK_W2K3DDK_LIB)/ntoskrnl.lib \
    279         $(PATH_SDK_W2K3DDK_LIB)/hal.lib \
    280         $(PATH_SDK_W2K3DDK_LIB)/ndis.lib \
    281         $(PATH_STAGE_LIB)/RuntimeR0Drv$(VBOX_SUFF_LIB)
    282 VBoxNetAdp_LIBS = \
    283         $(PATH_STAGE_LIB)/SUPR0IdcClient$(VBOX_SUFF_LIB)
    284 
    285 
    286 INSTALLS.win += VBoxNetAdp-inf
    287 VBoxNetAdp-inf_INST = $(INST_BIN)
    288 VBoxNetAdp-inf_MODE = a+r,u+w
    289 VBoxNetAdp-inf_SOURCES = \
    290         $(PATH_TARGET)/VBoxNetAdpCat.dir/VBoxNetAdp.inf
    291 VBoxNetAdp-inf_CLEAN = $(VBoxNetAdp-inf_SOURCES)
    292 VBoxNetAdp-inf_BLDDIRS = $(PATH_TARGET)/VBoxNetAdpCat.dir
     258  VBoxNetAdp_NOINST = true
     259 endif
     260 VBoxNetAdp_DEFS = IN_RT_R0 IN_SUP_STATIC
     261 VBoxNetAdp_INCS := $(PATH_SUB_CURRENT)
     262 VBoxNetAdp_SDKS = WINDDKWLH WINPSDKINCS
     263 VBoxNetAdp_SOURCES = \
     264        VBoxNetFlt.c \
     265        win/drv/VBoxNetFltM-win.cpp \
     266        win/drv/VBoxNetFltRt-win.cpp \
     267        win/drv/VBoxNetFlt-win.rc
     268 VBoxNetAdp_DEFS += VBOXNETFLT_STATIC_CONFIG VBOXNETADP
     269 VBoxNetAdp_DEFS.win += VBOXNETFLT_NO_PACKET_QUEUE
     270 VBoxNetAdp_DEFS += NDIS_MINIPORT_DRIVER NDIS_WDM=1 BINARY_COMPATIBLE=0
     271 VBoxNetAdp_DEFS += NDIS50_MINIPORT=1 NDIS50=1
     272 VBoxNetAdp_LDFLAGS.win.x86 = -Entry:DriverEntry@8
     273 VBoxNetAdp_LDFLAGS.win.amd64 = -Entry:DriverEntry
     274 VBoxNetAdp_LIBS.win = \
     275        $(PATH_SDK_W2K3DDK_LIB)/ntoskrnl.lib \
     276        $(PATH_SDK_W2K3DDK_LIB)/hal.lib \
     277        $(PATH_SDK_W2K3DDK_LIB)/ndis.lib \
     278        $(PATH_STAGE_LIB)/RuntimeR0Drv$(VBOX_SUFF_LIB)
     279 VBoxNetAdp_LIBS = \
     280        $(PATH_STAGE_LIB)/SUPR0IdcClient$(VBOX_SUFF_LIB)
     281
     282
     283 INSTALLS.win += VBoxNetAdp-inf
     284 VBoxNetAdp-inf_INST = $(INST_BIN)
     285 VBoxNetAdp-inf_MODE = a+r,u+w
     286 VBoxNetAdp-inf_SOURCES = \
     287        $(PATH_TARGET)/VBoxNetAdpCat.dir/VBoxNetAdp.inf
     288 VBoxNetAdp-inf_CLEAN = $(VBoxNetAdp-inf_SOURCES)
     289 VBoxNetAdp-inf_BLDDIRS = $(PATH_TARGET)/VBoxNetAdpCat.dir
    293290
    294291$(PATH_TARGET)/VBoxNetAdpCat.dir/VBoxNetAdp.inf: $(PATH_SUB_CURRENT)/win/drv/VBoxNetAdp.inf $(MAKEFILE_CURRENT) | $$(dir $$@)
     
    320317#
    321318 ifdef VBOX_WITH_VBOXDRV
    322 SYSMODS += vboxnetflt
    323 vboxnetflt_TEMPLATE      = VBOXR0DRV
    324 vboxnetflt_NAME.solaris  = vboxflt
    325 vboxnetflt_DEFS.linux    = KBUILD_MODNAME=KBUILD_STR\(vboxnetflt\) KBUILD_BASENAME=KBUILD_STR\(vboxnetflt\) MODULE
    326 vboxnetflt_DEFS          = IN_RT_R0
    327 vboxnetflt_DEPS.solaris += $(VBOX_SVN_REV_KMK)
    328 vboxnetflt_NOINST.linux  = true
    329 vboxnetflt_INCS.linux   := \
    330         $(PATH_ROOT)/src/VBox/Runtime/r0drv/linux
    331 vboxnetflt_INCS         := \
    332         $(PATH_SUB_CURRENT)
    333 vboxnetflt_LDFLAGS.solaris += -N drv/vboxdrv -N misc/ctf
    334 vboxnetflt_LIBS = \
    335         $(PATH_STAGE_LIB)/SUPR0IdcClient$(VBOX_SUFF_LIB)
    336 ## @todo vboxflt should resolves all the IPRT bits from vboxdrv.
    337 #vboxnetflt_LIBS += \
    338 #       $(PATH_STAGE_LIB)/RuntimeR0Drv$(VBOX_SUFF_LIB)
    339 vboxnetflt_SOURCES.linux = linux/VBoxNetFlt-linux.c
    340 vboxnetflt_SOURCES.solaris = solaris/VBoxNetFlt-solaris.c
    341 vboxnetflt_SOURCES.freebsd = freebsd/VBoxNetFlt-freebsd.c
    342 vboxnetflt_SOURCES = VBoxNetFlt.c
    343 solaris/VBoxNetFlt-solaris.c_DEFS = VBOX_SVN_REV=$(VBOX_SVN_REV)
     319  SYSMODS += vboxnetflt
     320  vboxnetflt_TEMPLATE      = VBOXR0DRV
     321  vboxnetflt_NAME.solaris  = vboxflt
     322  vboxnetflt_DEFS.linux    = KBUILD_MODNAME=KBUILD_STR\(vboxnetflt\) KBUILD_BASENAME=KBUILD_STR\(vboxnetflt\) MODULE
     323  vboxnetflt_DEFS          = IN_RT_R0
     324  vboxnetflt_DEPS.solaris += $(VBOX_SVN_REV_KMK)
     325  vboxnetflt_NOINST.linux  = true
     326  vboxnetflt_INCS.linux   := \
     327        $(PATH_ROOT)/src/VBox/Runtime/r0drv/linux
     328  vboxnetflt_INCS         := \
     329        $(PATH_SUB_CURRENT)
     330  vboxnetflt_LDFLAGS.solaris += -N drv/vboxdrv -N misc/ctf
     331  vboxnetflt_LIBS = \
     332        $(PATH_STAGE_LIB)/SUPR0IdcClient$(VBOX_SUFF_LIB)
     333  ## @todo vboxflt should resolves all the IPRT bits from vboxdrv.
     334  #vboxnetflt_LIBS += \
     335  #     $(PATH_STAGE_LIB)/RuntimeR0Drv$(VBOX_SUFF_LIB)
     336  vboxnetflt_SOURCES.linux = linux/VBoxNetFlt-linux.c
     337  vboxnetflt_SOURCES.solaris = solaris/VBoxNetFlt-solaris.c
     338  vboxnetflt_SOURCES.freebsd = freebsd/VBoxNetFlt-freebsd.c
     339  vboxnetflt_SOURCES = VBoxNetFlt.c
     340  solaris/VBoxNetFlt-solaris.c_DEFS = VBOX_SVN_REV=$(VBOX_SVN_REV)
     341
    344342  ifdef VBOX_WITH_NETFLT_CROSSBOW
    345 SYSMODS += vboxnetbow
    346 vboxnetbow_TEMPLATE      = VBOXR0DRV
    347 vboxnetbow_NAME          = vboxbow
    348 vboxnetbow_DEFS          = vboxnetflt_DEFS VBOX_WITH_NETFLT_CROSSBOW
    349 vboxnetbow_DEPS         += $(VBOX_SVN_REV_KMK)
    350 vboxnetbow_INCS         := $(PATH_SUB_CURRENT)
    351 vboxnetbow_LDFLAGS      += -N drv/vboxdrv -N drv/vnic -N misc/mac -N misc/dls
    352 vboxnetbow_LIBS = \
    353         $(PATH_STAGE_LIB)/SUPR0IdcClient$(VBOX_SUFF_LIB)
    354 vboxnetbow_SOURCES.solaris = solaris/VBoxNetFltBow-solaris.c
    355 vboxnetbow_SOURCES         = VBoxNetFlt.c
    356 solaris/VBoxNetFltBow-solaris.c_DEFS = VBOX_SVN_REV=$(VBOX_SVN_REV)
     343   SYSMODS += vboxnetbow
     344   vboxnetbow_TEMPLATE      = VBOXR0DRV
     345   vboxnetbow_NAME          = vboxbow
     346   vboxnetbow_DEFS          = vboxnetflt_DEFS VBOX_WITH_NETFLT_CROSSBOW
     347   vboxnetbow_INCS         := $(PATH_SUB_CURRENT)
     348   vboxnetbow_LDFLAGS      += -N drv/vboxdrv -N drv/vnic -N misc/mac -N misc/dls
     349   vboxnetbow_LIBS = \
     350        $(PATH_STAGE_LIB)/SUPR0IdcClient$(VBOX_SUFF_LIB)
     351   vboxnetbow_SOURCES.solaris = solaris/VBoxNetFltBow-solaris.c
     352   vboxnetbow_SOURCES         = VBoxNetFlt.c
     353   solaris/VBoxNetFltBow-solaris.c_DEFS = VBOX_SVN_REV=$(VBOX_SVN_REV)
    357354  endif  # VBOX_WITH_NETFLT_CROSSBOW
    358355 endif # VBOX_WITH_VBOXDRV
     
    368365 INSTALLS += VBoxNetFlt-src VBoxNetFlt-sh
    369366 VBoxNetFlt-src_INST    = bin/src/vboxnetflt/
    370  VBoxNetFlt-src_MODE    = a+r,u+w
    371  VBoxNetFlt-src_SOURCES = $(subst ",,$(VBOX_VBOXNETFLT_SOURCES)) #"
    372  VBoxNetFlt-src_SOURCES+= \
     367 VBoxNetFlt-src_SOURCES = \
     368        $(subst $(DQUOTE),,$(VBOX_VBOXNETFLT_SOURCES)) \
    373369        $(VBoxNetFlt-src_0_OUTDIR)/Makefile
     370 VBoxNetFlt-src_EXEC_SOURCES = \
     371        $(VBoxNetFlt-src_0_OUTDIR)/build_in_tmp \
     372        $(PATH_ROOT)/src/VBox/HostDrivers/linux/do_Module.symvers
    374373 VBoxNetFlt-src_CLEAN   = \
    375         $(VBoxNetFlt-src_0_OUTDIR)/Makefile     \
    376         $(PATH_TARGET)/VBoxNetFlt-src-1.dep
    377 
    378  VBoxNetFlt-sh_INST    = bin/src/vboxnetflt/
    379  VBoxNetFlt-sh_MODE    = a+rx,u+w
    380  VBoxNetFlt-sh_SOURCES = \
    381         $(VBoxNetFlt-sh_0_OUTDIR)/build_in_tmp \
    382         $(PATH_ROOT)/src/VBox/HostDrivers/linux/do_Module.symvers
    383  VBoxNetFlt-sh_CLEAN   = $(VBoxNetFlt-sh_0_OUTDIR)/build_in_tmp
    384 
     374        $(VBoxNetFlt-src_0_OUTDIR)/Makefile \
     375        $(PATH_TARGET)/VBoxNetFlt-src-1.dep \
     376        $(VBoxNetFlt-src_0_OUTDIR)/build_in_tmp
     377
     378 # Scripts needed for building the kernel module.
    385379
    386380 includedep $(PATH_TARGET)/VBoxNetFlt-src-1.dep
     
    389383                $$(if $$(eq $$(VBoxNetFlt/linux/Makefile_VBOX_HARDENED),$$(VBOX_WITH_HARDENING)),,FORCE) \
    390384                | $$(dir $$@)
     385        $(QUIET)$(RM) -f -- $@
    391386 ifndef VBOX_WITH_HARDENING
    392387        $(QUIET)$(SED) -e "s;-DVBOX_WITH_HARDENING;;g" --output $@ $<
     
    397392        %$(QUIET2)$(APPEND) '$(PATH_TARGET)/VBoxNetFlt-src-1.dep' 'VBoxNetFlt/linux/Makefile_VBOX_HARDENED=$(VBOX_WITH_HARDENING)'
    398393
    399  # Script needed for building the kernel module
    400  $$(VBoxNetFlt-sh_0_OUTDIR)/build_in_tmp: \
     394 $$(VBoxNetFlt-src_0_OUTDIR)/build_in_tmp: \
    401395                $(PATH_ROOT)/src/VBox/HostDrivers/linux/build_in_tmp \
    402396                $(VBOX_VERSION_STAMP) \
    403397                | $$(dir $$@)
    404398        $(call MSG_TOOL,Creating,,$@)
     399        $(QUIET)$(RM) -f -- $@
    405400        $(QUIET)$(SED) -e "s;_VERSION_;${VBOX_VERSION_STRING};g; s;_MODULE_;vboxnetflt;g; s;_BUILDTYPE_;${KBUILD_TYPE};g" --output $@ $<
    406         $(QUIET)chmod 0755 $@
     401        $(QUIET)$(CHMOD) 0755 $@
    407402
    408403endif # linux
     
    411406## @todo Properly generate opt_netgraph.h
    412407ifeq ($(KBUILD_TARGET),freebsd)
    413 vboxnetflt_DEPS.freebsd += $(PATH_OUT)/opt_netgraph.h
     408 vboxnetflt_DEPS.freebsd += $(PATH_OUT)/opt_netgraph.h
    414409$(PATH_OUT)/opt_netgraph.h:
    415410        echo > $(PATH_OUT)/opt_netgraph.h
     
    422417 INSTALLS += VBoxNetFlt-src
    423418 VBoxNetFlt-src_INST    = bin/src/vboxnetflt/
    424  VBoxNetFlt-src_MODE    = a+r,u+w
    425  VBoxNetFlt-src_SOURCES = $(subst ",,$(VBOX_VBOXNETFLT_SOURCES)) #"
    426  VBoxNetFlt-src_SOURCES+= \
    427         $(VBoxNetFlt-src_0_OUTDIR)/Makefile
     419 VBoxNetFlt-src_SOURCES = \
     420        $(subst $(DQUOTE),,$(VBOX_VBOXNETFLT_SOURCES)) \
     421        $(VBoxNetFlt-src_0_OUTDIR)/Makefile
    428422 VBoxNetFlt-src_CLEAN   = \
    429         $(VBoxNetFlt-src_0_OUTDIR)/Makefile     \
     423        $(VBoxNetFlt-src_0_OUTDIR)/Makefile     \
    430424
    431425 $$(VBoxNetFlt-src_0_OUTDIR)/Makefile: \
     
    433427                $$(if $$(eq $$(VBoxNetFlt/freebsd/Makefile_VBOX_HARDENED),$$(VBOX_WITH_HARDENING)),,FORCE) \
    434428                | $$(dir $$@)
     429        $(QUIET)$(RM) -f -- $@
    435430        $(QUIET)$(CP) -f $< $@
    436431 ifndef VBOX_WITH_HARDENING
注意: 瀏覽 TracChangeset 來幫助您使用更動檢視器

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette