VirtualBox

source: vbox/trunk/src/VBox/NetworkServices/IntNetSwitch/Makefile.kmk@ 103795

Last change on this file since 103795 was 99692, checked in by vboxsync, 17 months ago

NetworkServices,VirtualBox: Omit -rpath on macOS when running parfait, as parfait produces an ../MacOS can't be accessed error and we don't want to run the output from the parfait builds anyway, bugref:3409

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 2.8 KB
Line 
1# $Id: Makefile.kmk 99692 2023-05-09 09:31:21Z vboxsync $
2## @file
3# Sub-makefile for the Ring-3 based network switch process.
4#
5
6#
7# Copyright (C) 2022-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
31#
32# The internal network switch module.
33#
34PROGRAMS += VBoxIntNetSwitch
35VBoxIntNetSwitch_TEMPLATE := VBoxR3Exe
36
37ifdef VBOX_WITH_AUTOMATIC_DEFS_QUOTING
38 VBoxIntNetSwitch_DEFS = KBUILD_TYPE="$(KBUILD_TYPE)"
39else
40 VBoxIntNetSwitch_DEFS = KBUILD_TYPE=\"$(KBUILD_TYPE)\"
41endif
42VBoxIntNetSwitch_DEFS += VBOX_WITH_INTNET_SERVICE_IN_R3
43VBoxIntNetSwitch_INST.darwin = $(VBoxIntNetSwitch.xpc_INST)/MacOS/
44VBoxIntNetSwitch_SOURCES = \
45 VBoxIntNetSwitch.cpp \
46 SrvIntNetWrapper.cpp
47VBoxIntNetSwitch_LIBS = $(LIB_RUNTIME)
48
49#
50# Parfait fails with an error that ../../../../MacOS can't be accessed while standard clang has no problem with it.
51# As we don't want to run the output just omit the -rpath arguments to make it build
52#
53ifndef VBOX_WITH_PARFAIT
54 VBoxIntNetSwitch_LDFLAGS.darwin = \
55 -rpath @executable_path/../../../../MacOS
56endif
57
58ifeq ($(KBUILD_TARGET),darwin)
59 INSTALLS += VBoxIntNetSwitch.xpc
60
61 VBoxIntNetSwitch.xpc_MODE = 644
62 VBoxIntNetSwitch.xpc_INST = $(INST_VIRTUALBOX)Contents/XPCServices/org.virtualbox.intnet.xpc/Contents/
63 VBoxIntNetSwitch.xpc_SOURCES = \
64 $(VBoxIntNetSwitch.xpc_0_OUTDIR)/Info.plist
65
66 $$(VBoxIntNetSwitch.xpc_0_OUTDIR)/Info.plist: $(PATH_SUB_CURRENT)/darwin/Info.plist $(VBOX_VERSION_MK) | $$(@D)/
67 $(call MSG_GENERATE,VBoxIntNetSwitch.xpc,$<,$@)
68 $(QUIET)$(RM) -f $@
69 $(QUIET)$(SED) \
70 -e 's+@VBOX_VERSION_STRING@+$(VBOX_VERSION_STRING)+g' \
71 -e 's+@VBOX_VERSION_MAJOR@+$(VBOX_VERSION_MAJOR)+g' \
72 -e 's+@VBOX_VERSION_MINOR@+$(VBOX_VERSION_MINOR)+g' \
73 -e 's+@VBOX_VERSION_BUILD@+$(VBOX_VERSION_BUILD)+g' \
74 -e 's+@VBOX_VENDOR@+$(VBOX_VENDOR)+g' \
75 -e 's+@VBOX_PRODUCT@+$(VBOX_PRODUCT)+g' \
76 -e 's+@VBOX_C_YEAR@+$(VBOX_C_YEAR)+g' \
77 $< > $@
78endif
79
80$(call VBOX_SET_VER_INFO_EXE,VBoxIntNetSwitch,VirtualBox Internal Network Switch,$(VBOX_WINDOWS_ICON_FILE)) # Version info / description.
81
82include $(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