Makefile.kmk revision c04c59898d189a1cec4f3de89f60da653358762e
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync# $Id$
247efe202344328bffb8de7e47aee60039cd95e0vboxsync## @file
247efe202344328bffb8de7e47aee60039cd95e0vboxsync# Sub-Makefile for the Network Filter Driver (VBoxNetFlt).
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync#
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync#
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync# Copyright (C) 2008 Oracle Corporation
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync#
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync# This file is part of VirtualBox Open Source Edition (OSE), as
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync# available from http://www.virtualbox.org. This file is free software;
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync# you can redistribute it and/or modify it under the terms of the GNU
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync# General Public License (GPL) as published by the Free Software
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync# Foundation, in version 2 as it comes in the "COPYING" file of the
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync#
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncSUB_DEPTH = ../../../..
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncinclude $(KBUILD_PATH)/subheader.kmk
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncif1of ($(KBUILD_TARGET), darwin win) # this ifeq must go, see @todo around elif
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync#
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync# VBoxNetFlt.sys - The mixed case driver.
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync#
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncSYSMODS += VBoxNetFlt
6095269a3237b1ef8bf4edefc11f2d888d8a41ebvboxsyncVBoxNetFlt_TEMPLATE = VBOXR0DRV
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxNetFlt_INST = $(INST_VBOXNETFLT)$(if $(eq $(KBUILD_TARGET),darwin),Contents/MacOS/)
685409983863f02e8295369273d1844dca1f51c5vboxsyncif defined(VBOX_SIGNING_MODE) && "$(KBUILD_TARGET)" == "win"
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync VBoxNetFlt_NOINST = true
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncendif
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxNetFlt_DEFS = IN_RT_R0 IN_SUP_STATIC
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxNetFlt_SDKS.win = W2K3DDK WINPSDKINCS
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxNetFlt_INCS = .
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxNetFlt_SOURCES.darwin = \
969643a53adfd6346c00c1a5fbbe64d9cacff0a7vboxsync darwin/VBoxNetFlt-darwin.cpp
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync#VBoxNetFlt_SOURCES.darwin += \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync# darwin/VBoxNetAdapter-darwin.cpp
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxNetFlt_SOURCES.win = \
969643a53adfd6346c00c1a5fbbe64d9cacff0a7vboxsync win/VBoxNetFlt-win.c \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync win/VBoxNetFltPt-win.c \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync win/VBoxNetFlt-win.rc
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncifdef VBOX_NETFLT_ONDEMAND_BIND
969643a53adfd6346c00c1a5fbbe64d9cacff0a7vboxsync VBoxNetFlt_DEFS.win += VBOX_NETFLT_ONDEMAND_BIND
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncelse
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync VBoxNetFlt_DEFS.win += VBOXNETFLT_STATIC_CONFIG
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync VBoxNetFlt_DEFS.win += VBOXNETFLT_NO_PACKET_QUEUE
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync VBoxNetFlt_DEFS.win += NDIS_MINIPORT_DRIVER NDIS_WDM=1 BINARY_COMPATIBLE=0
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync VBoxNetFlt_DEFS.win += NDIS50_MINIPORT=1 NDIS50=1
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync VBoxNetFlt_SOURCES.win += win/VBoxNetFltMp-win.c
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncendif
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncifdef VBOX_LOOPBACK_USEFLAGS
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync VBoxNetFlt_DEFS.win += VBOX_LOOPBACK_USEFLAGS
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncendif
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxNetFlt_SOURCES = VBoxNetFlt.c
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync#VBoxNetFlt_LDFLAGS.darwin = -v -Wl,-whyload -Wl,-v -Wl,-whatsloaded
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxNetFlt_LDFLAGS.win.x86 = -Entry:DriverEntry@8
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxNetFlt_LDFLAGS.win.amd64 = -Entry:DriverEntry
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxNetFlt_LIBS.win = \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(PATH_SDK_W2K3DDK_LIB)/ntoskrnl.lib \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(PATH_SDK_W2K3DDK_LIB)/hal.lib \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(PATH_SDK_W2K3DDK_LIB)/ndis.lib \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(PATH_LIB)/RuntimeR0Drv$(VBOX_SUFF_LIB)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxNetFlt_LIBS = \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(PATH_LIB)/SUPR0IdcClient$(VBOX_SUFF_LIB)
8d4665a316d78d6587fd1c9da948f7aa37d0bfddvboxsync
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncdarwin/VBoxNetFlt-darwin.cpp_DEFS = VBOX_SVN_REV=$(VBOX_SVN_REV)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync
ec9aa1180070b037866f064ce720254cd9f03721vboxsync
ec9aa1180070b037866f064ce720254cd9f03721vboxsync# Darwin extras.
969643a53adfd6346c00c1a5fbbe64d9cacff0a7vboxsyncifeq ($(KBUILD_TARGET),darwin)
ec9aa1180070b037866f064ce720254cd9f03721vboxsyncINSTALLS += VBoxNetFlt.kext
ec9aa1180070b037866f064ce720254cd9f03721vboxsyncVBoxNetFlt.kext_INST = $(INST_VBOXNETFLT)Contents/
8d4665a316d78d6587fd1c9da948f7aa37d0bfddvboxsyncVBoxNetFlt.kext_SOURCES = \
dba1919dac01f490c625e0470b528e469c30651dvboxsync $(PATH_VBoxNetFlt.kext)/Info.plist
ec9aa1180070b037866f064ce720254cd9f03721vboxsyncVBoxNetFlt.kext_CLEAN = \
ec9aa1180070b037866f064ce720254cd9f03721vboxsync $(PATH_VBoxNetFlt.kext)/Info.plist
8d4665a316d78d6587fd1c9da948f7aa37d0bfddvboxsync
efe619f27bff8e4d2124d1f09a327c7a63abe1dcvboxsync$$(PATH_VBoxNetFlt.kext)/Info.plist: $(PATH_SUB_CURRENT)/darwin/Info.plist $(VBOX_VERSION_MK) | $$(dir $$@)
ec9aa1180070b037866f064ce720254cd9f03721vboxsync $(call MSG_GENERATE,VBoxNetFlt,$@,$<)
ec9aa1180070b037866f064ce720254cd9f03721vboxsync $(QUIET)$(RM) -f $@
8d4665a316d78d6587fd1c9da948f7aa37d0bfddvboxsync $(QUIET)$(SED) \
efe619f27bff8e4d2124d1f09a327c7a63abe1dcvboxsync -e 's/@VBOX_VERSION_STRING@/$(VBOX_VERSION_STRING)/g' \
ec9aa1180070b037866f064ce720254cd9f03721vboxsync -e 's/@VBOX_VERSION_MAJOR@/$(VBOX_VERSION_MAJOR)/g' \
ec9aa1180070b037866f064ce720254cd9f03721vboxsync -e 's/@VBOX_VERSION_MINOR@/$(VBOX_VERSION_MINOR)/g' \
ec9aa1180070b037866f064ce720254cd9f03721vboxsync -e 's/@VBOX_VERSION_BUILD@/$(VBOX_VERSION_BUILD)/g' \
dba1919dac01f490c625e0470b528e469c30651dvboxsync -e 's/@VBOX_VENDOR@/$(VBOX_VENDOR)/g' \
ec9aa1180070b037866f064ce720254cd9f03721vboxsync -e 's/@VBOX_PRODUCT@/$(VBOX_PRODUCT)/g' \
ec9aa1180070b037866f064ce720254cd9f03721vboxsync -e 's/@VBOX_C_YEAR@/$(VBOX_C_YEAR)/g' \
ec9aa1180070b037866f064ce720254cd9f03721vboxsync --output $@ \
dba1919dac01f490c625e0470b528e469c30651dvboxsync $<
ec9aa1180070b037866f064ce720254cd9f03721vboxsync
ec9aa1180070b037866f064ce720254cd9f03721vboxsyncINSTALLS.darwin += Scripts-darwin
ec9aa1180070b037866f064ce720254cd9f03721vboxsyncScripts-darwin_INST = $(INST_DIST)
dba1919dac01f490c625e0470b528e469c30651dvboxsyncScripts-darwin_SOURCES = \
ec9aa1180070b037866f064ce720254cd9f03721vboxsync darwin/loadnetflt.sh
ec9aa1180070b037866f064ce720254cd9f03721vboxsyncendif # darwin
ec9aa1180070b037866f064ce720254cd9f03721vboxsync
dba1919dac01f490c625e0470b528e469c30651dvboxsync
ec9aa1180070b037866f064ce720254cd9f03721vboxsyncifeq ($(KBUILD_TARGET),win)
ec9aa1180070b037866f064ce720254cd9f03721vboxsync#
8d4665a316d78d6587fd1c9da948f7aa37d0bfddvboxsync# Windows extras.
dba1919dac01f490c625e0470b528e469c30651dvboxsync#
ec9aa1180070b037866f064ce720254cd9f03721vboxsyncINSTALLS.win += VBoxNetFlt-inf
969643a53adfd6346c00c1a5fbbe64d9cacff0a7vboxsyncVBoxNetFlt-inf_INST = $(INST_BIN)
969643a53adfd6346c00c1a5fbbe64d9cacff0a7vboxsyncVBoxNetFlt-inf_MODE = a+r,u+w
e77749d161a9912b95090202d25c428bc8314dadvboxsyncVBoxNetFlt-inf_SOURCES = \
969643a53adfd6346c00c1a5fbbe64d9cacff0a7vboxsync $(PATH_TARGET)/VBoxNetFltCat.dir/VBoxNetFlt.inf \
ec9aa1180070b037866f064ce720254cd9f03721vboxsync $(PATH_TARGET)/VBoxNetFltCat.dir/VBoxNetFlt_m.inf
ec9aa1180070b037866f064ce720254cd9f03721vboxsyncVBoxNetFlt-inf_CLEAN = $(VBoxNetFlt-inf_SOURCES)
ec9aa1180070b037866f064ce720254cd9f03721vboxsyncVBoxNetFlt-inf_BLDDIRS = $(PATH_TARGET)/VBoxNetFltCat.dir
ec9aa1180070b037866f064ce720254cd9f03721vboxsync
ec9aa1180070b037866f064ce720254cd9f03721vboxsync$(PATH_TARGET)/VBoxNetFltCat.dir/VBoxNetFlt.inf: $(PATH_SUB_CURRENT)/win/VBoxNetFlt.inf $(MAKEFILE_CURRENT) | $$(dir $$@)
dba1919dac01f490c625e0470b528e469c30651dvboxsync $(call MSG_GENERATE,VBoxNetFlt-inf,$@,$<)
ec9aa1180070b037866f064ce720254cd9f03721vboxsync $(call VBOX_EDIT_INF_FN,$<,$@)
ec9aa1180070b037866f064ce720254cd9f03721vboxsync
ec9aa1180070b037866f064ce720254cd9f03721vboxsync$(PATH_TARGET)/VBoxNetFltCat.dir/VBoxNetFlt_m.inf: $(PATH_SUB_CURRENT)/win/VBoxNetFlt_m.inf $(MAKEFILE_CURRENT) | $$(dir $$@)
dba1919dac01f490c625e0470b528e469c30651dvboxsync $(call MSG_GENERATE,VBoxNetFlt-inf,$@,$<)
ec9aa1180070b037866f064ce720254cd9f03721vboxsync $(call VBOX_EDIT_INF_FN,$<,$@)
ec9aa1180070b037866f064ce720254cd9f03721vboxsync
ec9aa1180070b037866f064ce720254cd9f03721vboxsync ifdef VBOX_SIGNING_MODE
ec9aa1180070b037866f064ce720254cd9f03721vboxsyncVBoxNetFlt-inf_SOURCES += \
ec9aa1180070b037866f064ce720254cd9f03721vboxsync $(PATH_TARGET)/VBoxNetFltCat.dir/VBoxNetFlt.sys \
ec9aa1180070b037866f064ce720254cd9f03721vboxsync $(PATH_TARGET)/VBoxNetFltCat.dir/VBoxNetFltNotify.dll \
efe619f27bff8e4d2124d1f09a327c7a63abe1dcvboxsync $(PATH_TARGET)/VBoxNetFltCat.dir/VBoxNetFlt.cat
ec9aa1180070b037866f064ce720254cd9f03721vboxsync
ec9aa1180070b037866f064ce720254cd9f03721vboxsync$(PATH_TARGET)/VBoxNetFltCat.dir/VBoxNetFlt.sys: $$(TARGET_VBoxNetFlt) | $$(dir $$@)
ec9aa1180070b037866f064ce720254cd9f03721vboxsync $(INSTALL) -m 644 $< $(@D)
efe619f27bff8e4d2124d1f09a327c7a63abe1dcvboxsync
ec9aa1180070b037866f064ce720254cd9f03721vboxsync$(PATH_TARGET)/VBoxNetFltCat.dir/VBoxNetFltNotify.dll: $$(TARGET_VBoxNetFltNotify) | $$(dir $$@)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(INSTALL) -m 644 $< $(@D)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync$(PATH_TARGET)/VBoxNetFltCat.dir/VBoxNetFlt.cat: \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(PATH_TARGET)/VBoxNetFltCat.dir/VBoxNetFlt.sys \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(PATH_TARGET)/VBoxNetFltCat.dir/VBoxNetFltNotify.dll \
969643a53adfd6346c00c1a5fbbe64d9cacff0a7vboxsync $(PATH_TARGET)/VBoxNetFltCat.dir/VBoxNetFlt.inf \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(PATH_TARGET)/VBoxNetFltCat.dir/VBoxNetFlt_m.inf
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(call MSG_TOOL,Inf2Cat,VBoxNetFlt-inf,$@,$<)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(call VBOX_MAKE_CAT_FN, $(@D),$@)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync endif # signing
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync
247efe202344328bffb8de7e47aee60039cd95e0vboxsync#
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync# WinNetConfig - static library with host network interface config API
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync#
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncLIBRARIES.win += WinNetConfig
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncWinNetConfig_TEMPLATE = VBOXR3STATIC
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncWinNetConfig_DEFS = _WIN32_WINNT=0x0501 _UNICODE UNICODE
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncWinNetConfig_SDKS = WINPSDK W2K3DDK
969643a53adfd6346c00c1a5fbbe64d9cacff0a7vboxsyncWinNetConfig_SOURCES = \
969643a53adfd6346c00c1a5fbbe64d9cacff0a7vboxsync win/WinNetConfig.cpp
969643a53adfd6346c00c1a5fbbe64d9cacff0a7vboxsyncWinNetConfig_INCS.win += $(PATH_TOOL_$(VBOX_VCC_TOOL)_INC)
969643a53adfd6346c00c1a5fbbe64d9cacff0a7vboxsync
e77749d161a9912b95090202d25c428bc8314dadvboxsync#
969643a53adfd6346c00c1a5fbbe64d9cacff0a7vboxsync# NetFltInstall
969643a53adfd6346c00c1a5fbbe64d9cacff0a7vboxsync#
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncPROGRAMS.win += NetFltInstall
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncNetFltInstall_TEMPLATE = VBOXR3STATIC
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncNetFltInstall_SDKS = WINPSDK W2K3DDK VBOX_NTDLL
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncNetFltInstall_SOURCES = win/NetFltInstall.cpp
969643a53adfd6346c00c1a5fbbe64d9cacff0a7vboxsyncNetFltInstall_LIBS = $(TARGET_WinNetConfig) \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(PATH_TOOL_$(VBOX_VCC_TOOL)_LIB)/comsupp.lib \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(PATH_SDK_WINPSDK_LIB)/WbemUuid.Lib
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync#
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync# NetFltUninstall
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync#
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncPROGRAMS.win += NetFltUninstall
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncNetFltUninstall_TEMPLATE = VBOXR3STATIC
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncNetFltUninstall_SDKS = WINPSDK W2K3DDK VBOX_NTDLL
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncNetFltUninstall_SOURCES = win/NetFltUninstall.cpp
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncNetFltUninstall_LIBS = $(TARGET_WinNetConfig) \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(PATH_TOOL_$(VBOX_VCC_TOOL)_LIB)/comsupp.lib \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(PATH_SDK_WINPSDK_LIB)/WbemUuid.Lib
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync#
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync# NetAdpInstall
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync#
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncPROGRAMS.win += NetAdpInstall
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncNetAdpInstall_TEMPLATE = VBOXR3STATIC
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncNetAdpInstall_SDKS = WINPSDK W2K3DDK VBOX_NTDLL
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncNetAdpInstall_SOURCES = win/NetAdpInstall.cpp
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncNetAdpInstall_LIBS = $(TARGET_WinNetConfig) \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(PATH_TOOL_$(VBOX_VCC_TOOL)_LIB)/comsupp.lib \
ec9aa1180070b037866f064ce720254cd9f03721vboxsync $(PATH_SDK_WINPSDK_LIB)/WbemUuid.Lib
ec9aa1180070b037866f064ce720254cd9f03721vboxsync
dba1919dac01f490c625e0470b528e469c30651dvboxsync
ec9aa1180070b037866f064ce720254cd9f03721vboxsync#
ec9aa1180070b037866f064ce720254cd9f03721vboxsync# NetAdpUninstall
ec9aa1180070b037866f064ce720254cd9f03721vboxsync#
dba1919dac01f490c625e0470b528e469c30651dvboxsyncPROGRAMS.win += NetAdpUninstall
ec9aa1180070b037866f064ce720254cd9f03721vboxsyncNetAdpUninstall_TEMPLATE = VBOXR3STATIC
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncNetAdpUninstall_SDKS = WINPSDK W2K3DDK VBOX_NTDLL
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncNetAdpUninstall_SOURCES = win/NetAdpUninstall.cpp
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncNetAdpUninstall_LIBS = $(TARGET_WinNetConfig) \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(PATH_TOOL_$(VBOX_VCC_TOOL)_LIB)/comsupp.lib \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(PATH_SDK_WINPSDK_LIB)/WbemUuid.Lib
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync#
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync# VBoxNetFltNotify
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync#
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncDLLS.win += VBoxNetFltNotify
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncif defined(VBOX_SIGNING_MODE)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxNetFltNotify_NOINST = true
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncendif
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxNetFltNotify_TEMPLATE = VBOXR3STATIC
8d4665a316d78d6587fd1c9da948f7aa37d0bfddvboxsyncVBoxNetFltNotify_SDKS = WINPSDK W2K3DDK VBOX_NTDLL
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxNetFltNotify_DEFS = _WIN32_WINNT=0x0500 WIN32 _ATL_STATIC_REGISTRY
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxNetFltNotify_INCS = \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync $(PATH_VBoxNetFltNotify)
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsyncVBoxNetFltNotify_SOURCES = \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync win/notifyobj/VBoxNetFltNotify.cpp \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync win/notifyobj/VBoxNetFltNotify.def \
1a04ec99647f9be2f2ba19cf247c0f989aa2e80cvboxsync win/notifyobj/VBoxNetFltNotify.rc
c07a12f4bcb3336334f7b439375deae8dbd2bf83vboxsyncVBoxNetFltNotify_LIBS = \
c07a12f4bcb3336334f7b439375deae8dbd2bf83vboxsync $(PATH_TOOL_$(VBOX_VCC_TOOL)_ATLMFC_LIB)/atls$(VBOX_VCC_CRT_TYPE).lib
c07a12f4bcb3336334f7b439375deae8dbd2bf83vboxsync#VBoxNetFltNotify_INTERMEDIATES =
c07a12f4bcb3336334f7b439375deae8dbd2bf83vboxsyncVBoxNetFltNotify_DEPS = \
685409983863f02e8295369273d1844dca1f51c5vboxsync $(PATH_VBoxNetFltNotify)/VBoxNetFltNotifyn_i.c \
c07a12f4bcb3336334f7b439375deae8dbd2bf83vboxsync $(PATH_VBoxNetFltNotify)/VBoxNetFltNotifyn_p.c \
c07a12f4bcb3336334f7b439375deae8dbd2bf83vboxsync $(PATH_VBoxNetFltNotify)/VBoxNetFltNotifyn.h \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_VBoxNetFltNotify)/dlldata.c \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_VBoxNetFltNotify)/VBoxNetFltNotifyn.tlb
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncVBoxNetFltNotify_CLEAN = $(VBoxNetFltNotify_DEPS)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncVBOXNETFLT_NOTIFY_IDL ?= $(EXEC_X86_WIN32) $(call VBOX_FN_MAKE_WIN_PATH,$(firstword $(wildcard \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_SDK_WINPSDK_BIN)/Midl.Exe\
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_SDK_WINPSDK)/Bin/Midl.Exe\
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_DEVTOOLS)/win.x86/bin/midl.exe\
3c616a9e81ee0ab32e2a3a65379eb9dd386e61d2vboxsync ) Sorry_Cannot_Find_The_Midl_Compiler_In_The_PSDK))
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync$$(PATH_VBoxNetFltNotify)/VBoxNetFltNotifyn_i.c \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync+ $$(PATH_VBoxNetFltNotify)/VBoxNetFltNotifyn_p.c \
e8f997cba588730c203f0bdb07bcb9cbb5814c99vboxsync+ $$(PATH_VBoxNetFltNotify)/VBoxNetFltNotifyn.h \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync+ $$(PATH_VBoxNetFltNotify)/dlldata.c \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync+ $$(PATH_VBoxNetFltNotify)/VBoxNetFltNotifyn.tlb: \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_SUB_CURRENT)/win/notifyobj/VBoxNetFltNotifyn.idl \
3c616a9e81ee0ab32e2a3a65379eb9dd386e61d2vboxsync | $$(dir $$@)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(VBOXNETFLT_NOTIFY_IDL) /nologo \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync /out $(call VBOX_FN_MAKE_WIN_PATH,$(PATH_VBoxNetFltNotify)) \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync /cpp_cmd $(subst $(EXEC_X86_WIN32),,$(call VBOX_FN_MAKE_WIN_PATH,$(TOOL_$(VBOX_VCC_TOOL)_CC))) \
e8f997cba588730c203f0bdb07bcb9cbb5814c99vboxsync $(addprefix /I , $(call VBOX_FN_MAKE_WIN_PATH,$(SDK_W2K3DDK_INCS))) \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(call VBOX_FN_MAKE_WIN_PATH,$<)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync#
efe619f27bff8e4d2124d1f09a327c7a63abe1dcvboxsync# VBoxNetAdp.sys - The VirtualBox Adapter miniport driver.
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync#
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncSYSMODS.win += VBoxNetAdp
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncVBoxNetAdp_TEMPLATE = VBOXR0DRV
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync#VBoxNetAdp_INST = $(INST_VBOXNETADP)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync if defined(VBOX_SIGNING_MODE)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncVBoxNetAdp_NOINST = true
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync endif
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncVBoxNetAdp_DEFS = IN_RT_R0 IN_SUP_STATIC
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncVBoxNetAdp_SDKS = W2K3DDK WINPSDKINCS
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncVBoxNetAdp_INCS := $(PATH_SUB_CURRENT)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncVBoxNetAdp_SOURCES = \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync VBoxNetFlt.c \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync win/VBoxNetFlt-win.c \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync win/VBoxNetFltMp-win.c \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync win/VBoxNetFlt-win.rc
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncVBoxNetAdp_DEFS += VBOXNETFLT_STATIC_CONFIG VBOXNETADP
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncVBoxNetAdp_DEFS.win += VBOXNETFLT_NO_PACKET_QUEUE
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncVBoxNetAdp_DEFS += NDIS_MINIPORT_DRIVER NDIS_WDM=1 BINARY_COMPATIBLE=0
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncVBoxNetAdp_DEFS += NDIS50_MINIPORT=1 NDIS50=1
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncVBoxNetAdp_LDFLAGS.win.x86 = -Entry:DriverEntry@8
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncVBoxNetAdp_LDFLAGS.win.amd64 = -Entry:DriverEntry
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncVBoxNetAdp_LIBS.win = \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_SDK_W2K3DDK_LIB)/ntoskrnl.lib \
e8f997cba588730c203f0bdb07bcb9cbb5814c99vboxsync $(PATH_SDK_W2K3DDK_LIB)/hal.lib \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_SDK_W2K3DDK_LIB)/ndis.lib \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_LIB)/RuntimeR0Drv$(VBOX_SUFF_LIB)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncVBoxNetAdp_LIBS = \
e8f997cba588730c203f0bdb07bcb9cbb5814c99vboxsync $(PATH_LIB)/SUPR0IdcClient$(VBOX_SUFF_LIB)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncINSTALLS.win += VBoxNetAdp-inf
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncVBoxNetAdp-inf_INST = $(INST_BIN)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncVBoxNetAdp-inf_MODE = a+r,u+w
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncVBoxNetAdp-inf_SOURCES = \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_TARGET)/VBoxNetAdpCat.dir/VBoxNetAdp.inf
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncVBoxNetAdp-inf_CLEAN = $(VBoxNetAdp-inf_SOURCES)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncVBoxNetAdp-inf_BLDDIRS = $(PATH_TARGET)/VBoxNetAdpCat.dir
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync$(PATH_TARGET)/VBoxNetAdpCat.dir/VBoxNetAdp.inf: $(PATH_SUB_CURRENT)/win/VBoxNetAdp.inf $(MAKEFILE_CURRENT) | $$(dir $$@)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(call MSG_GENERATE,VBoxNetAdp-inf,$@,$<)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(call VBOX_EDIT_INF_FN,$<,$@)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync ifdef VBOX_SIGNING_MODE
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncVBoxNetAdp-inf_SOURCES += \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_TARGET)/VBoxNetAdpCat.dir/VBoxNetAdp.sys \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_TARGET)/VBoxNetAdpCat.dir/VBoxNetAdp.cat
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync$(PATH_TARGET)/VBoxNetAdpCat.dir/VBoxNetAdp.sys: $$(TARGET_VBoxNetAdp) | $$(dir $$@)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(INSTALL) -m 644 $< $(@D)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync$(PATH_TARGET)/VBoxNetAdpCat.dir/VBoxNetAdp.cat: \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_TARGET)/VBoxNetAdpCat.dir/VBoxNetAdp.sys \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_TARGET)/VBoxNetAdpCat.dir/VBoxNetAdp.inf
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(call MSG_TOOL,Inf2Cat,VBoxNetFlt-inf,$@,$<)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(call VBOX_MAKE_CAT_FN, $(@D),$@)
e8f997cba588730c203f0bdb07bcb9cbb5814c99vboxsync
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync endif # ifdef VBOX_SIGNING_MODE
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncendif #ifeq ($(KBUILD_TARGET), win)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncelse if1of ($(KBUILD_TARGET), linux solaris freebsd) ## @todo merge this with the mixed case stuff.
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync#
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync# vboxnetflt(.ko/.o/) - The lower case driver.
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync# Note! On Solaris the name has to be <= 8 chars long.
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync#
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync ifdef VBOX_WITH_VBOXDRV
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncSYSMODS += vboxnetflt
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetflt_TEMPLATE = VBOXR0DRV
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetflt_NAME.solaris = vboxflt
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetflt_DEFS.linux = KBUILD_MODNAME=KBUILD_STR\(vboxnetflt\) KBUILD_BASENAME=KBUILD_STR\(vboxnetflt\) MODULE
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetflt_DEFS = IN_RT_R0
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetflt_DEPS.solaris += $(VBOX_SVN_REV_KMK)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetflt_NOINST.linux = true
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetflt_INCS.linux := \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_ROOT)/src/VBox/Runtime/r0drv/linux
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetflt_INCS := \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_SUB_CURRENT)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetflt_LDFLAGS.solaris += -N drv/vboxdrv
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync ifdef VBOXNETFLT_SOLARIS_USE_NETINFO
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetflt_DEFS.solaris += VBOXNETFLT_SOLARIS_USE_NETINFO
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetflt_LDFLAGS.solaris += -N misc/neti
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync endif
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetflt_LIBS = \
3f49af6c5cdf3b99ed24d7803fc4e616ce79a907vboxsync $(PATH_LIB)/SUPR0IdcClient$(VBOX_SUFF_LIB)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync## @todo vboxflt should resolves all the IPRT bits from vboxdrv.
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync#vboxnetflt_LIBS += \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync# $(PATH_LIB)/RuntimeR0Drv$(VBOX_SUFF_LIB)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetflt_SOURCES.linux = linux/VBoxNetFlt-linux.c
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetflt_SOURCES.solaris = solaris/VBoxNetFlt-solaris.c
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetflt_SOURCES.freebsd = freebsd/VBoxNetFlt-freebsd.c
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetflt_SOURCES = VBoxNetFlt.c
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncsolaris/VBoxNetFlt-solaris.c_DEFS = VBOX_SVN_REV=$(VBOX_SVN_REV)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync ifdef VBOX_WITH_NETFLT_CROSSBOW
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncSYSMODS += vboxnetbow
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetbow_TEMPLATE = VBOXR0DRV
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetbow_NAME = vboxbow
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetbow_DEFS = vboxnetflt_DEFS VBOX_WITH_NETFLT_CROSSBOW
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetbow_DEPS += $(VBOX_SVN_REV_KMK)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetbow_INCS := $(PATH_SUB_CURRENT)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetbow_LDFLAGS += -N drv/vboxdrv -N drv/vnic -N misc/mac -N misc/dls
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetbow_LIBS = \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_LIB)/SUPR0IdcClient$(VBOX_SUFF_LIB)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetbow_SOURCES.solaris = solaris/VBoxNetFltBow-solaris.c
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetbow_SOURCES = VBoxNetFlt.c
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncsolaris/VBoxNetFltBow-solaris.c_DEFS = VBOX_SVN_REV=$(VBOX_SVN_REV)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync endif # VBOX_WITH_NETFLT_CROSSBOW
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync endif # VBOX_WITH_VBOXDRV
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncendif # to be removed.
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncifeq ($(KBUILD_TARGET),linux)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync #
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync # Install source files for compliation on Linux.
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync # files_vboxnetflt defines VBOX_VBOXNETFLT_SOURCES.
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync #
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync include $(PATH_SUB_CURRENT)/linux/files_vboxnetflt
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync INSTALLS += VBoxNetFlt-src VBoxNetFlt-sh
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync VBoxNetFlt-src_INST = bin/src/vboxnetflt/
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync VBoxNetFlt-src_MODE = a+r,u+w
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync VBoxNetFlt-src_SOURCES = $(subst ",,$(VBOX_VBOXNETFLT_SOURCES)) #"
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync VBoxNetFlt-src_SOURCES+= \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_VBoxNetFlt-src)/dkms.conf \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_VBoxNetFlt-src)/Makefile
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync VBoxNetFlt-src_CLEAN = \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_VBoxNetFlt-src)/dkms.conf \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_VBoxNetFlt-src)/Makefile \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_TARGET)/VBoxNetFlt-src-1.dep
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync VBoxNetFlt-sh_INST = bin/src/vboxnetflt/
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync VBoxNetFlt-sh_MODE = a+rx,u+w
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync VBoxNetFlt-sh_SOURCES = \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_VBoxNetFlt-sh)/build_in_tmp \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_ROOT)/src/VBox/HostDrivers/linux/do_Module.symvers
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync VBoxNetFlt-sh_CLEAN = $(PATH_VBoxNetFlt-sh)/build_in_tmp
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync
3c616a9e81ee0ab32e2a3a65379eb9dd386e61d2vboxsync
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync includedep $(PATH_TARGET)/VBoxNetFlt-src-1.dep
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $$(PATH_VBoxNetFlt-src)/Makefile: \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_SUB_CURRENT)/linux/Makefile \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $$(if $$(eq $$(VBoxNetFlt/linux/Makefile_VBOX_HARDENED),$$(VBOX_WITH_HARDENING)),,FORCE) \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync | $$(dir $$@)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync ifndef VBOX_WITH_HARDENING
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(QUIET)$(SED) -e "s;-DVBOX_WITH_HARDENING;;g" --output $@ $<
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync else
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(QUIET)$(CP) -f $< $@
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync endif
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync %$(QUIET2)$(RM) -f -- $(PATH_TARGET)/VBoxNetFlt-src-1.dep
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync %$(QUIET2)$(APPEND) '$(PATH_TARGET)/VBoxNetFlt-src-1.dep' 'VBoxNetFlt/linux/Makefile_VBOX_HARDENED=$(VBOX_WITH_HARDENING)'
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync # Script needed for building the kernel module
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $$(PATH_VBoxNetFlt-sh)/build_in_tmp: \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_ROOT)/src/VBox/HostDrivers/linux/build_in_tmp \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(VBOX_VERSION_STAMP) \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync | $$(dir $$@)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(call MSG_TOOL,Creating,,$@)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(QUIET)$(SED) -e "s;_VERSION_;${VBOX_VERSION_STRING};g; s;_MODULE_;vboxnetflt;g; s;_BUILDTYPE_;${KBUILD_TYPE};g" --output $@ $<
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(QUIET)chmod 0755 $@
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync # Script needed for building the kernel module
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $$(PATH_VBoxNetFlt-src)/dkms.conf: \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(PATH_SUB_CURRENT)/linux/dkms.conf \
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(VBOX_VERSION_STAMP) \
3c616a9e81ee0ab32e2a3a65379eb9dd386e61d2vboxsync | $$(dir $$@)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(call MSG_TOOL,Creating,,$@)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync $(QUIET)$(SED) -e "s;_VERSION_;${VBOX_VERSION_STRING};g" --output $@ $<
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncendif # linux
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync# Gross hack for FreeBSD 7, should figure this out properly
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync## @todo Properly generate opt_netgraph.h
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncifeq ($(KBUILD_TARGET),freebsd)
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsyncvboxnetflt_DEPS.freebsd += $(PATH_OUT)/opt_netgraph.h
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync$(PATH_OUT)/opt_netgraph.h:
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync echo > $(PATH_OUT)/opt_netgraph.h
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync #
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync # Install source files for compliation on FreeBSD.
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync # files_vboxnetflt defines VBOX_VBOXNETFLT_SOURCES.
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync #
f36e34993b3bddde17e7a88121dc26d3ec197ee0vboxsync include $(PATH_SUB_CURRENT)/freebsd/files_vboxnetflt
3c616a9e81ee0ab32e2a3a65379eb9dd386e61d2vboxsync INSTALLS += VBoxNetFlt-src
3c616a9e81ee0ab32e2a3a65379eb9dd386e61d2vboxsync VBoxNetFlt-src_INST = bin/src/vboxnetflt/
e8f997cba588730c203f0bdb07bcb9cbb5814c99vboxsync VBoxNetFlt-src_MODE = a+r,u+w
3c616a9e81ee0ab32e2a3a65379eb9dd386e61d2vboxsync VBoxNetFlt-src_SOURCES = $(subst ",,$(VBOX_VBOXNETFLT_SOURCES)) #"
3c616a9e81ee0ab32e2a3a65379eb9dd386e61d2vboxsync VBoxNetFlt-src_SOURCES+= \
3c616a9e81ee0ab32e2a3a65379eb9dd386e61d2vboxsync $(PATH_VBoxNetFlt-src)/Makefile
e8f997cba588730c203f0bdb07bcb9cbb5814c99vboxsync VBoxNetFlt-src_CLEAN = \
3c616a9e81ee0ab32e2a3a65379eb9dd386e61d2vboxsync $(PATH_VBoxNetFlt-src)/Makefile \
3c616a9e81ee0ab32e2a3a65379eb9dd386e61d2vboxsync
3c616a9e81ee0ab32e2a3a65379eb9dd386e61d2vboxsync $$(PATH_VBoxNetFlt-src)/Makefile: \
e8f997cba588730c203f0bdb07bcb9cbb5814c99vboxsync $(PATH_SUB_CURRENT)/freebsd/Makefile \
3c616a9e81ee0ab32e2a3a65379eb9dd386e61d2vboxsync $$(if $$(eq $$(VBoxNetFlt/freebsd/Makefile_VBOX_HARDENED),$$(VBOX_WITH_HARDENING)),,FORCE) \
3c616a9e81ee0ab32e2a3a65379eb9dd386e61d2vboxsync | $$(dir $$@)
3c616a9e81ee0ab32e2a3a65379eb9dd386e61d2vboxsync ifndef VBOX_WITH_HARDENING
e8f997cba588730c203f0bdb07bcb9cbb5814c99vboxsync $(QUIET)$(SED) -e "s;-DVBOX_WITH_HARDENING;;g" --output $@ $<
3c616a9e81ee0ab32e2a3a65379eb9dd386e61d2vboxsync else
3c616a9e81ee0ab32e2a3a65379eb9dd386e61d2vboxsync $(QUIET)$(CP) -f $< $@
3c616a9e81ee0ab32e2a3a65379eb9dd386e61d2vboxsync endif
e8f997cba588730c203f0bdb07bcb9cbb5814c99vboxsyncendif # freebsd
3c616a9e81ee0ab32e2a3a65379eb9dd386e61d2vboxsync
3c616a9e81ee0ab32e2a3a65379eb9dd386e61d2vboxsyncinclude $(KBUILD_PATH)/subfooter.kmk
3c616a9e81ee0ab32e2a3a65379eb9dd386e61d2vboxsync
e8f997cba588730c203f0bdb07bcb9cbb5814c99vboxsync