VirtualBox

source: vbox/trunk/src/VBox/NetworkServices/NAT/Makefile.kmk@ 47894

Last change on this file since 47894 was 47894, checked in by vboxsync, 12 years ago

VBoxNetLwipNAT => VBoxNetNAT

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 4.3 KB
Line 
1# $Id: Makefile.kmk 47894 2013-08-20 11:37:09Z vboxsync $
2## @file
3#
4
5#
6# Copyright (C) 2006-2012 Oracle Corporation
7#
8# This file is part of VirtualBox Open Source Edition (OSE), as
9# available from http://www.virtualbox.org. This file is free software;
10# you can redistribute it and/or modify it under the terms of the GNU
11# General Public License (GPL) as published by the Free Software
12# Foundation, in version 2 as it comes in the "COPYING" file of the
13# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
14# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
15#
16
17SUB_DEPTH = ../../../..
18include $(KBUILD_PATH)/subheader.kmk
19#
20# Disable Slirp based service.
21#ifdef VBOX_WITH_HARDENING
22# PROGRAMS += VBoxNetNATHardened
23# DLLS += VBoxNetNAT
24#else
25# PROGRAMS += VBoxNetNAT
26#endif
27VBoxNetNAT_TEMPLATE =
28VBoxNetNAT_TEMPLATE := VBOXR3$(if-expr defined(VBOX_WITH_HARDENING),,EXE)
29VBoxNetNAT_INCS = ../../Devices/Network/slirp
30VBoxNetNAT_DEFS = VBOX_WITH_NAT_SERVICE
31VBoxNetNAT_SOURCES += VBoxNetNAT.cpp
32VBoxNetNAT_DEFS += VBOX_WITH_NAT_SERVICE
33
34#define def_vbox_slirp_service_cflags
35# $(file)_DEFS += VBOX_WITH_NAT_SERVICE
36#endef
37
38define def_vbox_nat_network_service_sources
39 $(1)_SOURCES += $2/$3
40endef
41
42define def_vbox_nat_network_service_incs
43 $(1)_INCS += $2/$3
44endef
45
46VBOX_NOT_IN_NATSERVICE = Network/DrvNAT.cpp
47$(foreach file,$(filter-out $(VBOX_NOT_IN_NATSERVICE), $(VBOX_SLIRP_SOURCES)),$(eval $(call def_vbox_nat_network_service_sources,VBoxNetNAT,../../Devices,$(file))))
48$(foreach file,$(VBOX_SLIRP_ALIAS_SOURCES),$(eval $(call def_vbox_nat_network_service_sources, VBoxNetNAT,../../Devices,$(file))))
49$(foreach file,$(VBOX_SLIRP_BSD_SOURCES),$(eval $(call def_vbox_nat_network_service_sources, VBoxNetNAT,../../Devices,$(file))))
50
51$(foreach file,$(addprefix ../../Devices/, $(VBOX_SLIRP_BSD_SOURCES)),$(eval $(call def_vbox_slirp_cflags,../../Devices/Network)))
52$(foreach file,$(addprefix ../../Devices/, $(VBOX_SLIRP_BSD_SOURCES)),$(eval $(call def_vbox_slirp_bsd_cflags,../../Devices/Network)))
53$(foreach file,$(addprefix ../../Devices/, $(filter-out $(VBOX_WITH_NAT_SERVICE), $(VBOX_SLIRP_SOURCES))),$(eval $(call def_vbox_slirp_service_cflags, ../../Devices/Network)))
54$(foreach file,$(addprefix ../../Devices/, $(filter-out $(VBOX_WITH_NAT_SERVICE), $(VBOX_SLIRP_SOURCES))),$(eval $(call def_vbox_slirp_cflags,../../Devices/Network)))
55
56$(foreach file,$(addprefix ../../Devices/, $(VBOX_SLIRP_ALIAS_SOURCES)),$(eval $(call def_vbox_slirp_cflags, ../../Devices/Network)))
57
58
59$(foreach file,$(addprefix ../../Devices/, $(VBOX_SLIRP_ALIAS_SOURCES)),$(eval $(call def_vbox_slirp_alias_cflags, ../../Devices/Network)))
60
61VBoxNetNAT_SOURCES += ../NetLib/VBoxNetBaseService.cpp
62
63VBoxNetNAT_LIBS = \
64 $(LIB_RUNTIME)
65VBoxNetNAT_LDFLAGS.win = /SUBSYSTEM:windows
66
67ifdef VBOX_WITH_LWIP_NAT
68
69ifdef VBOX_WITH_HARDENING
70 PROGRAMS += VBoxNetLwipNATHardened
71 DLLS += VBoxNetLwipNAT
72else
73 PROGRAMS += VBoxNetLwipNAT
74endif
75
76ifdef VBOX_WITH_HARDENING
77 VBoxNetLwipNATHardened_SOURCES += VBoxNetNATHardened.cpp
78 VBoxNetLwipNATHardened_DEFS += SERVICE_NAME=\"VBoxNetNAT\"
79 VBoxNetLwipNATHardened_TEMPLATE=VBOXR3HARDENEDEXE
80 VBoxNetLwipNATHardened_NAME = VBoxNetNAT
81endif
82
83VBoxNetLwipNAT_TEMPLATE =
84VBoxNetLwipNAT_TEMPLATE := VBOXMAIN$(if-expr defined(VBOX_WITH_HARDENING),DLL,CLIENTEXE)
85VBoxNetLwipNAT_INCS += ../../Devices/Network \
86 ../../Devices/Network/lwip-new/vbox # testproxy.h
87VBoxNetLwipNAT_DEFS += ${LWIP_DEFS}
88VBoxNetLwipNAT_DEFS.win += _WIN32_WINNT=0x501 # Windows XP
89VBoxNetLwipNAT_SOURCES += VBoxNetLwipNAT.cpp \
90 ../NetLib/VBoxNetBaseService.cpp \
91 ../NetLib/VBoxNetPortForwardString.cpp
92VBoxNetLwipNAT_LIBS = \
93 $(LIB_RUNTIME)
94VBoxNetLwipNAT_LIBS.solaris += socket nsl
95VBoxNetLwipNAT_LDFLAGS.win = /SUBSYSTEM:windows
96
97#
98# Note: not spaces please in "Devices,$("
99#
100$(foreach file,$(LWIP_SOURCES) $(LWIP_NAT_SOURCES),$(eval $(call def_vbox_nat_network_service_sources, VBoxNetLwipNAT, ../../Devices,$(file))))
101
102$(foreach incs,$(LWIP_INCS),$(eval $(call def_vbox_nat_network_service_incs, VBoxNetLwipNAT, ../../Devices,$(incs))))
103
104endif
105
106ifdef VBOX_WITH_TESTCASES
107PROGRAMS += tstNetPfAddressPortPairParse
108
109tstNetPfAddressPortPairParse_TEMPLATE = VBOXR3TSTEXE
110#tstNetPfAddressPortPairParse_INSTTYPE = none
111tstNetPfAddressPortPairParse_SOURCES = ../NetLib/testcase/tstNetPfAddressPortPairParse.cpp \
112 ../NetLib/VBoxNetPortForwardString.cpp
113endif
114
115include $(FILE_KBUILD_SUB_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