Changeset 82746 in vbox for trunk/src/VBox/NetworkServices
- Timestamp:
- Jan 14, 2020 8:46:09 PM (5 years ago)
- Location:
- trunk/src/VBox/NetworkServices/NAT
- Files:
-
- 1 deleted
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/NetworkServices/NAT/Makefile.kmk
r81673 r82746 18 18 SUB_DEPTH = ../../../.. 19 19 include $(KBUILD_PATH)/subheader.kmk 20 ifdef VBOX_WITH_LWIP_NAT 20 ifdef VBOX_WITH_LWIP_NAT # entire file 21 21 22 VBOX_PATH_NAT_SRC := $(PATH_SUB_CURRENT)23 24 # XXX: do not depend on order25 22 ifndef LWIP_SOURCES 26 23 include $(PATH_SUB_CURRENT)/../../Devices/Network/lwip-new/Config.kmk 27 24 endif 28 25 26 # 27 # Globals 28 # 29 VBOX_PATH_NAT_SRC := $(PATH_SUB_CURRENT) 29 30 31 32 # 33 # Hardened stub exe for VBoxNetNAT. 34 # 30 35 ifdef VBOX_WITH_HARDENING 31 # 32 # Hardened stub exe for VBoxNetLwipNAT. 33 # 34 PROGRAMS += VBoxNetLwipNATHardened 35 VBoxNetLwipNATHardened_TEMPLATE = VBOXR3HARDENEDEXE 36 VBoxNetLwipNATHardened_NAME = VBoxNetNAT 37 VBoxNetLwipNATHardened_DEFS = SERVICE_NAME=\"VBoxNetNAT\" 38 VBoxNetLwipNATHardened_SOURCES = VBoxNetNATHardened.cpp 39 VBoxNetLwipNATHardened_SOURCES.win = $(VBoxNetLwipNAT_0_OUTDIR)/VBoxNetLwipNAT-icon.rc 40 VBoxNetLwipNATHardened_LDFLAGS.win = /SUBSYSTEM:windows 36 PROGRAMS += VBoxNetNATHardened 37 VBoxNetNATHardened_TEMPLATE = VBOXR3HARDENEDEXE 38 VBoxNetNATHardened_NAME = VBoxNetNAT 39 VBoxNetNATHardened_DEFS = SERVICE_NAME=\"VBoxNetNAT\" 40 VBoxNetNATHardened_SOURCES = VBoxNetNATHardened.cpp 41 VBoxNetNATHardened_LDFLAGS.win = /SUBSYSTEM:windows 42 $(call VBOX_SET_VER_INFO_EXE,VBoxNetNATHardened,VirtualBox NAT Engine,$(VBOX_WINDOWS_ICON_FILE)) # Version info / description. 41 43 endif 42 44 43 45 44 45 # VBoxNetLwipNAT.46 46 # 47 # VBoxNetNAT. 48 # 47 49 ifdef VBOX_WITH_HARDENING 48 DLLS += VBoxNetLwipNAT50 DLLS += VBoxNetNAT 49 51 else 50 PROGRAMS += VBoxNetLwipNAT52 PROGRAMS += VBoxNetNAT 51 53 endif 52 VBoxNetLwipNAT_TEMPLATE := $(if-expr defined(VBOX_WITH_HARDENING),VBOXMAINDLL,VBOXMAINCLIENTEXE)53 VBoxNetLwipNAT_NAME := VBoxNetNAT54 VBoxNetLwipNAT_DEFS = IPv655 # VBoxNetLwipNAT_DEFS.linux = WITH_VALGRIND # instrument lwip memp.c56 VBoxNetLwipNAT_DEFS.win = VBOX_COM_OUTOFPROC_MODULE _WIN32_WINNT=0x501 # Windows XP57 58 59 60 61 62 63 64 65 66 67 68 69 70 54 VBoxNetNAT_TEMPLATE := $(if-expr defined(VBOX_WITH_HARDENING),VBOXMAINDLL,VBOXMAINCLIENTEXE) 55 VBoxNetNAT_NAME := VBoxNetNAT 56 VBoxNetNAT_DEFS = IPv6 57 # VBoxNetNAT_DEFS.linux = WITH_VALGRIND # instrument lwip memp.c 58 VBoxNetNAT_DEFS.win = VBOX_COM_OUTOFPROC_MODULE _WIN32_WINNT=0x501 # Windows XP 59 # Convince Solaris headers to expose socket stuff we need. 60 # 61 # Setting _XOPEN_SOURCE to either 500 or 600 would always work, but 62 # <sys/feature_tests.h> insists that 600 requires C99 and so it 63 # explodes for older g++. It also insists that 500 is NOT to be used 64 # with C99. 65 # 66 # Newer g++ in C++11 mode (formerly known as C++0x) needs 600, so it 67 # employs sleight of hand to pretend it's C99 to keep feature test 68 # happy. 69 # 70 # Compile the C code with settings that match g++. This probably 71 # should be centralized so that whole codebase uses consistent 72 # settings. 71 73 ifeq ($(KBUILD_TARGET),solaris) 72 74 ifneq ($(VBOX_GCC_VERSION_CXX),) 73 75 ifneq ($(int-ge $(VBOX_GCC_VERSION_CXX),40600),) 74 75 VBoxNetLwipNAT_CFLAGS.solaris += -std=c9976 VBoxNetLwipNAT_DEFS.solaris += _XOPEN_SOURCE=60076 # we compile C++ code with -std=c++0x / -std=c++11 77 VBoxNetNAT_CFLAGS.solaris += -std=c99 78 VBoxNetNAT_DEFS.solaris += _XOPEN_SOURCE=600 77 79 else 78 VBoxNetLwipNAT_DEFS.solaris += _XOPEN_SOURCE=50080 VBoxNetNAT_DEFS.solaris += _XOPEN_SOURCE=500 79 81 endif 80 82 endif 81 VBoxNetLwipNAT_DEFS.solaris += __EXTENSIONS__=183 VBoxNetNAT_DEFS.solaris += __EXTENSIONS__=1 82 84 endif 83 85 84 85 VBoxNetLwipNAT_INCS += . $(addprefix ../../Devices/Network/lwip-new/,$(LWIP_INCS))86 # (current dir is for for lwipopts.h) 87 VBoxNetNAT_INCS += . $(addprefix ../../Devices/Network/lwip-new/,$(LWIP_INCS)) 86 88 87 VBoxNetLwipNAT_SOURCES = \88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 89 VBoxNetNAT_SOURCES = \ 90 VBoxNetLwipNAT.cpp \ 91 ../NetLib/VBoxNetBaseService.cpp \ 92 ../NetLib/VBoxNetPortForwardString.cpp \ 93 ../NetLib/VBoxNetIntIf.cpp \ 94 ../NetLib/VBoxNetUDP.cpp \ 95 ../NetLib/VBoxNetARP.cpp \ 96 ../NetLib/ComHostUtils.cpp \ 97 $(addprefix ../../Devices/Network/lwip-new/,$(LWIP_SOURCES)) \ 98 proxy_pollmgr.c \ 99 proxy_rtadvd.c \ 100 proxy.c \ 101 pxremap.c \ 102 pxtcp.c \ 103 pxudp.c \ 104 pxdns.c \ 105 fwtcp.c \ 106 fwudp.c \ 107 portfwd.c \ 108 proxy_dhcp6ds.c \ 109 proxy_tftpd.c 108 110 109 111 ifeq ($(KBUILD_TARGET),win) 110 VBoxNetLwipNAT_SOURCES += pxping_win.c # unprivileged Icmp API112 VBoxNetNAT_SOURCES += pxping_win.c # unprivileged Icmp API 111 113 else 112 VBoxNetLwipNAT_SOURCES += pxping.c # raw sockets113 VBoxNetLwipNAT_CFLAGS.linux += -Wno-address-of-packed-member # Needed for GCC 9.114 VBoxNetNAT_SOURCES += pxping.c # raw sockets 115 VBoxNetNAT_CFLAGS.linux += -Wno-address-of-packed-member # Needed for GCC 9. 114 116 endif 115 117 116 VBoxNetLwipNAT_SOURCES.darwin += rtmon_bsd.c117 VBoxNetLwipNAT_SOURCES.freebsd += rtmon_bsd.c118 VBoxNetLwipNAT_SOURCES.linux += rtmon_linux.c119 VBoxNetLwipNAT_SOURCES.solaris += rtmon_bsd.c120 VBoxNetLwipNAT_SOURCES.win += \121 122 123 118 VBoxNetNAT_SOURCES.darwin += rtmon_bsd.c 119 VBoxNetNAT_SOURCES.freebsd += rtmon_bsd.c 120 VBoxNetNAT_SOURCES.linux += rtmon_linux.c 121 VBoxNetNAT_SOURCES.solaris += rtmon_bsd.c 122 VBoxNetNAT_SOURCES.win += \ 123 rtmon_win.c \ 124 RTWinPoll.cpp \ 125 RTWinSocketPair.cpp 124 126 125 VBoxNetLwipNAT_LIBS = \127 VBoxNetNAT_LIBS = \ 126 128 $(LIB_RUNTIME) 127 VBoxNetLwipNAT_LIBS.solaris += socket nsl129 VBoxNetNAT_LIBS.solaris += socket nsl 128 130 129 VBoxNetLwipNAT_LDFLAGS.win = /SUBSYSTEM:windows131 VBoxNetNAT_LDFLAGS.win = /SUBSYSTEM:windows 130 132 131 132 133 134 # VBoxNetLwipNAT_DEFS += VBOX_RAWSOCK_DEBUG_HELPER135 # VBoxNetLwipNAT_SOURCES += getrawsock.c136 137 133 # ifeq ($(VBOX_WITH_HARDENING),) 134 # ifn1of ($(KBUILD_TARGET), darwin win) 135 # # helper for debugging unprivileged 136 # VBoxNetNAT_DEFS += VBOX_RAWSOCK_DEBUG_HELPER 137 # VBoxNetNAT_SOURCES += getrawsock.c 138 # endif 139 # endif 138 140 139 ifeq ($(KBUILD_TARGET),win) 140 # Icon include file. 141 VBoxNetLwipNAT_SOURCES += VBoxNetNAT.rc 142 VBoxNetNAT.rc_INCS = $(VBoxNetLwipNAT_0_OUTDIR) 143 VBoxNetNAT.rc_DEPS = $(VBoxNetLwipNAT_0_OUTDIR)/VBoxNetLwipNAT-icon.rc 144 VBoxNetNAT.rc_CLEAN = $(VBoxNetLwipNAT_0_OUTDIR)/VBoxNetLwipNAT-icon.rc 145 $$(VBoxNetLwipNAT_0_OUTDIR)/VBoxNetLwipNAT-icon.rc: $(VBOX_WINDOWS_ICON_FILE) $$(VBoxNetLwipNAT_DEFPATH)/Makefile.kmk | $$(dir $$@) 146 $(RM) -f $@ 147 $(APPEND) $@ 'IDI_VIRTUALBOX ICON DISCARDABLE "$(subst /,\\,$(VBOX_WINDOWS_ICON_FILE))"' 148 endif # win 141 142 ifdef VBOX_WITH_HARDENING 143 $(call VBOX_SET_VER_INFO_DLL,VBoxNetNAT,VirtualBox NAT Engine (dll),$(VBOX_WINDOWS_ICON_FILE)) # Version info / description. 144 else 145 $(call VBOX_SET_VER_INFO_EXE,VBoxNetNAT,VirtualBox NAT Engine,$(VBOX_WINDOWS_ICON_FILE)) # Version info / description. 146 endif 149 147 150 148 endif # VBOX_WITH_LWIP_NAT
Note:
See TracChangeset
for help on using the changeset viewer.