virtualbox/vbox-visibility.diff

40 lines
1.4 KiB
Diff

Index: VirtualBox-4.1.8_OSE/src/VBox/Main/webservice/Makefile.kmk
===================================================================
--- VirtualBox-4.1.8_OSE.orig/src/VBox/Main/webservice/Makefile.kmk
+++ VirtualBox-4.1.8_OSE/src/VBox/Main/webservice/Makefile.kmk
@@ -194,7 +194,8 @@ ifdef VBOX_GSOAP_INSTALLED
# vboxsoap - Library used by both the programs (save build time).
#
LIBRARIES += vboxsoap
- vboxsoap_TEMPLATE = VBOXR3EXE
+ vboxsoap_TEMPLATE = VBOXVISIBILITY
+
ifdef VBOX_USE_VCC80
vboxsoap_CXXFLAGS.win += -bigobj
endif
@@ -410,7 +411,7 @@ $$(VBOX_JWSSRC_JAR): $$(VBOX_JWS_JAR) |
# webtest - webservice sample client in C++
#
PROGRAMS += webtest
- webtest_TEMPLATE = VBOXR3EXE
+ webtest_TEMPLATE = VBOXVISIBILITY
ifdef VBOX_USE_VCC80
webtest_CXXFLAGS.win += -bigobj
endif
Index: VirtualBox-4.1.8_OSE/Config.kmk
===================================================================
--- VirtualBox-4.1.8_OSE.orig/Config.kmk
+++ VirtualBox-4.1.8_OSE/Config.kmk
@@ -3211,6 +3211,11 @@ TEMPLATE_VBOXR3EXE_CXXFLAGS.kprofile =
endif
endif
+#enable visibility
+TEMPLATE_VBOXVISIBILITY = ommit -fvisibility=hidden flag
+TEMPLATE_VBOXVISIBILITY_EXTENDS = VBOXR3EXE
+TEMPLATE_VBOXVISIBILITY_CXXFLAGS = $(filter-out $(VBOX_GCC_fvisibility-hidden),$(TEMPLATE_VBOXR3EXE_CXXFLAGS))
+
#
# Template for building R3 shared objects / DLLs.
# This is mostly identical to the VBOXR3EXE template. (Avoid PIC if possible!)