Makefile.kmk revision 38ce01f0174eaa361f03608d5576e517a615a9db
fc3a35e9acf780b1098f7d03bc0df1ef09bca298vboxsync# Copyright (C) 2006-2012 Oracle Corporation
fc3a35e9acf780b1098f7d03bc0df1ef09bca298vboxsync# This file is part of VirtualBox Open Source Edition (OSE), as
d65680efa46fa49e8bf14e67b29b782510ff934cvboxsync# available from http://www.virtualbox.org. This file is free software;
d65680efa46fa49e8bf14e67b29b782510ff934cvboxsync# you can redistribute it and/or modify it under the terms of the GNU
d65680efa46fa49e8bf14e67b29b782510ff934cvboxsync# General Public License (GPL) as published by the Free Software
d65680efa46fa49e8bf14e67b29b782510ff934cvboxsync# Foundation, in version 2 as it comes in the "COPYING" file of the
d65680efa46fa49e8bf14e67b29b782510ff934cvboxsync# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
d65680efa46fa49e8bf14e67b29b782510ff934cvboxsync# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
d65680efa46fa49e8bf14e67b29b782510ff934cvboxsyncSUB_DEPTH = ../../../..
d65680efa46fa49e8bf14e67b29b782510ff934cvboxsyncinclude $(KBUILD_PATH)/subheader.kmk
fc3a35e9acf780b1098f7d03bc0df1ef09bca298vboxsync# Disable Slirp based service.
fc3a35e9acf780b1098f7d03bc0df1ef09bca298vboxsync#ifdef VBOX_WITH_HARDENING
456f370fcde010d585d9174df045978a6c9893c1vboxsync# PROGRAMS += VBoxNetNATHardened
fc3a35e9acf780b1098f7d03bc0df1ef09bca298vboxsync# DLLS += VBoxNetNAT
fc3a35e9acf780b1098f7d03bc0df1ef09bca298vboxsync# PROGRAMS += VBoxNetNAT
fc3a35e9acf780b1098f7d03bc0df1ef09bca298vboxsyncVBoxNetNAT_TEMPLATE =
fc3a35e9acf780b1098f7d03bc0df1ef09bca298vboxsyncVBoxNetNAT_TEMPLATE := VBOXR3$(if-expr defined(VBOX_WITH_HARDENING),,EXE)
fc3a35e9acf780b1098f7d03bc0df1ef09bca298vboxsyncVBoxNetNAT_INCS = ../../Devices/Network/slirp
fc3a35e9acf780b1098f7d03bc0df1ef09bca298vboxsyncVBoxNetNAT_DEFS = VBOX_WITH_NAT_SERVICE
fc3a35e9acf780b1098f7d03bc0df1ef09bca298vboxsyncVBoxNetNAT_SOURCES += VBoxNetNAT.cpp
fc3a35e9acf780b1098f7d03bc0df1ef09bca298vboxsyncVBoxNetNAT_DEFS += VBOX_WITH_NAT_SERVICE
3f8fa562bb916e87b0beff9ec2a4e241c643dcc8vboxsync#define def_vbox_slirp_service_cflags
fc3a35e9acf780b1098f7d03bc0df1ef09bca298vboxsync# $(file)_DEFS += VBOX_WITH_NAT_SERVICE
e59bab2566ad92512870157a325472857d8b692cvboxsyncdefine def_vbox_nat_network_service_sources
e59bab2566ad92512870157a325472857d8b692cvboxsync $(1)_SOURCES += $2/$3
fc3a35e9acf780b1098f7d03bc0df1ef09bca298vboxsyncdefine def_vbox_nat_network_service_incs
fc3a35e9acf780b1098f7d03bc0df1ef09bca298vboxsync $(1)_INCS += $2/$3
34d1c9a81582b1acc9831732458231fcd8ddf2a5vboxsyncVBOX_NOT_IN_NATSERVICE = Network/DrvNAT.cpp
34d1c9a81582b1acc9831732458231fcd8ddf2a5vboxsync$(foreach file,$(filter-out $(VBOX_NOT_IN_NATSERVICE), $(VBOX_SLIRP_SOURCES)),$(eval $(call def_vbox_nat_network_service_sources,VBoxNetNAT,../../Devices,$(file))))
34d1c9a81582b1acc9831732458231fcd8ddf2a5vboxsync$(foreach file,$(VBOX_SLIRP_ALIAS_SOURCES),$(eval $(call def_vbox_nat_network_service_sources, VBoxNetNAT,../../Devices,$(file))))
34d1c9a81582b1acc9831732458231fcd8ddf2a5vboxsync$(foreach file,$(VBOX_SLIRP_BSD_SOURCES),$(eval $(call def_vbox_nat_network_service_sources, VBoxNetNAT,../../Devices,$(file))))
34d1c9a81582b1acc9831732458231fcd8ddf2a5vboxsync$(foreach file,$(addprefix ../../Devices/, $(VBOX_SLIRP_BSD_SOURCES)),$(eval $(call def_vbox_slirp_cflags,../../Devices/Network)))
34d1c9a81582b1acc9831732458231fcd8ddf2a5vboxsync$(foreach file,$(addprefix ../../Devices/, $(VBOX_SLIRP_BSD_SOURCES)),$(eval $(call def_vbox_slirp_bsd_cflags,../../Devices/Network)))
fc3a35e9acf780b1098f7d03bc0df1ef09bca298vboxsync$(foreach file,$(addprefix ../../Devices/, $(filter-out $(VBOX_WITH_NAT_SERVICE), $(VBOX_SLIRP_SOURCES))),$(eval $(call def_vbox_slirp_service_cflags, ../../Devices/Network)))
fc3a35e9acf780b1098f7d03bc0df1ef09bca298vboxsync$(foreach file,$(addprefix ../../Devices/, $(filter-out $(VBOX_WITH_NAT_SERVICE), $(VBOX_SLIRP_SOURCES))),$(eval $(call def_vbox_slirp_cflags,../../Devices/Network)))
$(foreach file,$(addprefix ../../Devices/, $(VBOX_SLIRP_ALIAS_SOURCES)),$(eval $(call def_vbox_slirp_cflags, ../../Devices/Network)))
$(foreach file,$(addprefix ../../Devices/, $(VBOX_SLIRP_ALIAS_SOURCES)),$(eval $(call def_vbox_slirp_alias_cflags, ../../Devices/Network)))
VBoxNetNAT_SOURCES += ../NetLib/VBoxNetBaseService.cpp
VBoxNetNAT_LDFLAGS.win = /SUBSYSTEM:windows
VBoxNetLwipNATHardened_SOURCES += VBoxNetNATHardened.cpp
VBoxNetLwipNAT_INCS += ../../Devices/Network \
VBoxNetLwipNAT_DEFS.win += _WIN32_WINNT=0x501 # Windows XP
VBoxNetLwipNAT_SOURCES += VBoxNetLwipNAT.cpp \
VBoxNetLwipNAT_LIBS.solaris += socket nsl
VBoxNetLwipNAT_LDFLAGS.win = /SUBSYSTEM:windows
$(foreach file,$(LWIP_SOURCES) $(LWIP_NAT_SOURCES),$(eval $(call def_vbox_nat_network_service_sources, VBoxNetLwipNAT, ../../Devices,$(file))))
$(foreach incs,$(LWIP_INCS),$(eval $(call def_vbox_nat_network_service_incs, VBoxNetLwipNAT, ../../Devices,$(incs))))
tstNetPfAddressPortPairParse_SOURCES = ../NetLib/testcase/tstNetPfAddressPortPairParse.cpp \