VirtualBox

source: vbox/trunk/src/VBox/NetworkServices/Dhcpd/Makefile.kmk@ 98409

Last change on this file since 98409 was 98155, checked in by vboxsync, 2 years ago

*.kmk: s/VBOXR3HARDENEDEXE/VBoxR3HardenedExe/ bugref:10348

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 3.2 KB
Line 
1# $Id: Makefile.kmk 98155 2023-01-20 11:07:37Z vboxsync $
2## @file
3# Sub-makefile for the DHCP server.
4#
5
6#
7# Copyright (C) 2006-2023 Oracle and/or its affiliates.
8#
9# This file is part of VirtualBox base platform packages, as
10# available from https://www.virtualbox.org.
11#
12# This program is free software; you can redistribute it and/or
13# modify it under the terms of the GNU General Public License
14# as published by the Free Software Foundation, in version 3 of the
15# License.
16#
17# This program is distributed in the hope that it will be useful, but
18# WITHOUT ANY WARRANTY; without even the implied warranty of
19# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20# General Public License for more details.
21#
22# You should have received a copy of the GNU General Public License
23# along with this program; if not, see <https://www.gnu.org/licenses>.
24#
25# SPDX-License-Identifier: GPL-3.0-only
26#
27
28SUB_DEPTH := ../../../..
29include $(KBUILD_PATH)/subheader.kmk
30
31ifndef LWIP_SOURCES
32 include $(PATH_SUB_CURRENT)/../../Devices/Network/lwip-new/Config.kmk
33endif
34
35#
36# Hardended stub executable.
37#
38ifdef VBOX_WITH_HARDENING
39PROGRAMS += VBoxNetDHCPHardened
40VBoxNetDHCPHardened_TEMPLATE = VBoxR3HardenedExe
41VBoxNetDHCPHardened_NAME = VBoxNetDHCP
42VBoxNetDHCPHardened_SOURCES = VBoxNetDhcpdHardened.cpp
43VBoxNetDHCPHardened_LDFLAGS.win = /SUBSYSTEM:windows
44$(call VBOX_SET_VER_INFO_DLL,VBoxNetDHCPHardened,VirtualBox DHCP Server,$(VBOX_WINDOWS_ICON_FILE)) # Version info / description.
45endif
46
47
48#
49# The DHCP server module (dll if hardended)
50#
51ifdef VBOX_WITH_HARDENING
52DLLS += VBoxNetDHCP
53VBoxNetDHCP_TEMPLATE := VBoxR3Dll
54else
55PROGRAMS += VBoxNetDHCP
56VBoxNetDHCP_TEMPLATE := VBoxR3Exe
57endif
58
59# (current dir is for for lwipopts.h)
60VBoxNetDHCP_INCS += . $(addprefix ../../Devices/Network/lwip-new/,$(LWIP_INCS))
61
62ifdef VBOX_WITH_AUTOMATIC_DEFS_QUOTING
63VBoxNetDHCP_DEFS = KBUILD_TYPE="$(KBUILD_TYPE)"
64else
65VBoxNetDHCP_DEFS = KBUILD_TYPE=\"$(KBUILD_TYPE)\"
66endif
67VBoxNetDHCP_DEFS += \
68 $(if $(VBOX_WITH_INTNET_SERVICE_IN_R3),VBOX_WITH_INTNET_SERVICE_IN_R3,)
69
70#VBoxNetDHCP_DEFS += IPv6
71#VBoxNetDHCP_DEFS.linux = WITH_VALGRIND
72ifneq ($(KBUILD_TARGET),win)
73VBoxNetDHCP_DEFS += VBOX_WITH_XPCOM
74VBoxNetDHCP_INCS += $(VBOX_XPCOM_INCS)
75 ifneq ($(KBUILD_TARGET),darwin)
76 # We want -std=c++11 for 4.7 and newer compilers, and -std=c++0x for older ones.
77VBoxNetDHCP_CXXFLAGS += -std=$(if $(VBOX_GCC_VERSION_CXX),$(if $(VBOX_GCC_VERSION_CXX) < 40700,c++0x,c++11),c++0x)
78 endif
79endif
80VBoxNetDHCP_INCS += \
81 ../NetLib
82VBoxNetDHCP_SOURCES = \
83 ClientId.cpp \
84 Config.cpp \
85 DHCPD.cpp \
86 Db.cpp \
87 DhcpMessage.cpp \
88 DhcpOptions.cpp \
89 IPv4Pool.cpp \
90 Timestamp.cpp \
91 VBoxNetDhcpd.cpp \
92 ../NetLib/IntNetIf.cpp \
93 ../../Main/glue/VBoxLogRelCreate.cpp \
94 ../../Main/glue/GetVBoxUserHomeDirectory.cpp \
95 $(addprefix ../../Devices/Network/lwip-new/,$(LWIP_SOURCES))
96
97VBoxNetDHCP_LIBS = $(LIB_RUNTIME)
98VBoxNetDHCP_LIBS.solaris += socket nsl
99VBoxNetDHCP_LDFLAGS.win = /SUBSYSTEM:windows
100
101ifdef VBOX_WITH_HARDENING
102 $(call VBOX_SET_VER_INFO_DLL,VBoxNetDHCP,VirtualBox DHCP Server (dll),$(VBOX_WINDOWS_ICON_FILE)) # Version info / description.
103else
104 $(call VBOX_SET_VER_INFO_EXE,VBoxNetDHCP,VirtualBox DHCP Server,$(VBOX_WINDOWS_ICON_FILE)) # Version info / description.
105endif
106
107include $(FILE_KBUILD_SUB_FOOTER)
108
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