VirtualBox

Changeset 95764 in vbox


Ignore:
Timestamp:
Jul 20, 2022 7:34:45 PM (2 years ago)
Author:
vboxsync
Message:

/Config.kmk: Switched the VBOXGUESTR3EXE to derive from VBOXR3STATIC on windows. Introduced VBOX_WITH_NOCRT_STATIC for experimenting with bugref:10261.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Config.kmk

    r95750 r95764  
    62606260TEMPLATE_VBOXR3STATIC_EXTENDS          = VBOXR3EXE
    62616261TEMPLATE_VBOXR3STATIC_DEFS             = IN_RT_STATIC IN_RT_R3 IN_SUP_STATIC $(TEMPLATE_VBOXR3EXE_DEFS)
     6262ifdef VBOX_WITH_NOCRT_STATIC
     6263 TEMPLATE_VBOXR3STATIC_DEFS           += IPRT_NO_CRT
     6264 TEMPLATE_VBOXR3STATIC_INCS            = $(PATH_ROOT)/include/iprt/nocrt $(TEMPLATE_VBOXR3EXE_INCS)
     6265endif
    62626266ifeq ($(KBUILD_TARGET),win)
    62636267 if "$(VBOX_VCC_TOOL_STEM)" >= "VCC140"
    6264   TEMPLATE_VBOXR3STATIC_SDKS           = $(subst WINSDK10-UCRT, WINSDK10-UCRT-STATIC,$(TEMPLATE_VBOXR3EXE_SDKS))
    6265  endif
    6266  TEMPLATE_VBOXR3STATIC_CFLAGS          = $(filter-out -MD$(VBOX_VCC_CRT_TYPE), $(TEMPLATE_VBOXR3EXE_CFLAGS)) -MT$(VBOX_VCC_CRT_TYPE) -Gy
    6267  TEMPLATE_VBOXR3STATIC_CXXFLAGS        = $(filter-out -MD$(VBOX_VCC_CRT_TYPE), $(TEMPLATE_VBOXR3EXE_CXXFLAGS)) -MT$(VBOX_VCC_CRT_TYPE) -Gy
    6268  TEMPLATE_VBOXR3STATIC_PCHFLAGS        = $(filter-out -MD$(VBOX_VCC_CRT_TYPE), $(TEMPLATE_VBOXR3EXE_PCHFLAGS)) -MT$(VBOX_VCC_CRT_TYPE) -Gy
     6268  ifdef VBOX_WITH_NOCRT_STATIC
     6269   TEMPLATE_VBOXR3STATIC_SDKS          = $(subst WINSDK10-UCRT,,$(TEMPLATE_VBOXR3EXE_SDKS))
     6270  else
     6271   TEMPLATE_VBOXR3STATIC_SDKS          = $(subst WINSDK10-UCRT, WINSDK10-UCRT-STATIC,$(TEMPLATE_VBOXR3EXE_SDKS))
     6272  endif
     6273 endif
     6274 ifdef VBOX_WITH_NOCRT_STATIC
     6275  TEMPLATE_VBOXR3STATIC_DEFS           += RT_WITHOUT_NOCRT_WRAPPERS
     6276  TEMPLATE_VBOXR3STATIC_CFLAGS          = $(filter-out -MD$(VBOX_VCC_CRT_TYPE) -EHsc, $(TEMPLATE_VBOXR3EXE_CFLAGS))   -Zl -EHc-s- -Gy
     6277  TEMPLATE_VBOXR3STATIC_CXXFLAGS        = $(filter-out -MD$(VBOX_VCC_CRT_TYPE) -EHsc, $(TEMPLATE_VBOXR3EXE_CXXFLAGS)) -Zl -EHc-s- -Gy
     6278  TEMPLATE_VBOXR3STATIC_PCHFLAGS        = $(filter-out -MD$(VBOX_VCC_CRT_TYPE) -EHsc, $(TEMPLATE_VBOXR3EXE_PCHFLAGS)) -Zl -EHc-s- -Gy
     6279 else
     6280  TEMPLATE_VBOXR3STATIC_CFLAGS          = $(filter-out -MD$(VBOX_VCC_CRT_TYPE), $(TEMPLATE_VBOXR3EXE_CFLAGS))   -MT$(VBOX_VCC_CRT_TYPE) -Gy
     6281  TEMPLATE_VBOXR3STATIC_CXXFLAGS        = $(filter-out -MD$(VBOX_VCC_CRT_TYPE), $(TEMPLATE_VBOXR3EXE_CXXFLAGS)) -MT$(VBOX_VCC_CRT_TYPE) -Gy
     6282  TEMPLATE_VBOXR3STATIC_PCHFLAGS        = $(filter-out -MD$(VBOX_VCC_CRT_TYPE), $(TEMPLATE_VBOXR3EXE_PCHFLAGS)) -MT$(VBOX_VCC_CRT_TYPE) -Gy
     6283 endif
    62696284 if "$(VBOX_VCC_TOOL_STEM)" >= "VCC120" # Do not use SSE so valkit stuff can run on NT4 w/o needing a separate runtime library.
    62706285  TEMPLATE_VBOXR3STATIC_CFLAGS.win.x86     = $(TEMPLATE_VBOXR3EXE_CFLAGS.win.86) /arch:IA32
     
    62756290  TEMPLATE_VBOXR3STATIC_PCHFLAGS          += -Gw
    62766291 endif
    6277  TEMPLATE_VBOXR3STATIC_LDFLAGS             = $(filter-out /DISALLOWLIB:libcmt$(VBOX_VCC_CRT_TYPE).lib /DISALLOWLIB:libcpmt$(VBOX_VCC_CRT_TYPE).lib, $(TEMPLATE_VBOXR3EXE_LDFLAGS)) \
     6292
     6293 ifdef VBOX_WITH_NOCRT_STATIC
     6294  TEMPLATE_VBOXR3STATIC_LDFLAGS            = $(TEMPLATE_VBOXR3EXE_LDFLAGS) /NODEFAULTLIB
     6295 else
     6296  TEMPLATE_VBOXR3STATIC_LDFLAGS            = $(filter-out /DISALLOWLIB:libcmt$(VBOX_VCC_CRT_TYPE).lib /DISALLOWLIB:libcpmt$(VBOX_VCC_CRT_TYPE).lib, $(TEMPLATE_VBOXR3EXE_LDFLAGS))
     6297 endif
     6298 TEMPLATE_VBOXR3STATIC_LDFLAGS            += \
    62786299        /DISALLOWLIB:msvcrt.lib \
    62796300        /DISALLOWLIB:msvcrtd.lib \
     
    62856306        /DISALLOWLIB:ucrtd.lib
    62866307 if "$(VBOX_VCC_TOOL_STEM)" >= "VCC140"
    6287   TEMPLATE_VBOXR3STATIC_LIBS.x86           = \
    6288         $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.x86)_LIB)/libvcruntime$(VBOX_VCC_CRT_TYPE).lib \
    6289         $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.x86)_LIB)/libcmt$(VBOX_VCC_CRT_TYPE).lib \
    6290         $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.x86)_LIB)/libcpmt$(VBOX_VCC_CRT_TYPE).lib \
    6291         $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.x86)_LIB)/oldnames.lib
    6292   TEMPLATE_VBOXR3STATIC_LIBS.amd64         = \
    6293         $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.amd64)_LIB)/libvcruntime$(VBOX_VCC_CRT_TYPE).lib \
    6294         $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.amd64)_LIB)/libcmt$(VBOX_VCC_CRT_TYPE).lib \
    6295         $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.amd64)_LIB)/libcpmt$(VBOX_VCC_CRT_TYPE).lib \
    6296         $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.amd64)_LIB)/oldnames.lib
     6308  ifdef VBOX_WITH_NOCRT_STATIC
     6309   TEMPLATE_VBOXR3STATIC_LIBS.amd64        = $(NO_SUCH_VARIABLE)
     6310   TEMPLATE_VBOXR3STATIC_LIBS.x86          = $(NO_SUCH_VARIABLE)
     6311  else
     6312   TEMPLATE_VBOXR3STATIC_LIBS.x86          = \
     6313        $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.x86)_LIB)/libvcruntime$(VBOX_VCC_CRT_TYPE).lib \
     6314        $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.x86)_LIB)/libcmt$(VBOX_VCC_CRT_TYPE).lib \
     6315        $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.x86)_LIB)/libcpmt$(VBOX_VCC_CRT_TYPE).lib \
     6316        $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.x86)_LIB)/oldnames.lib
     6317   TEMPLATE_VBOXR3STATIC_LIBS.amd64        = \
     6318        $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.amd64)_LIB)/libvcruntime$(VBOX_VCC_CRT_TYPE).lib \
     6319        $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.amd64)_LIB)/libcmt$(VBOX_VCC_CRT_TYPE).lib \
     6320        $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.amd64)_LIB)/libcpmt$(VBOX_VCC_CRT_TYPE).lib \
     6321        $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.amd64)_LIB)/oldnames.lib
     6322  endif
    62976323  ifeq ($(KBUILD_TYPE),asan)
    62986324   TEMPLATE_VBOXR3STATIC_LIBS.x86         += \
     
    63046330  endif
    63056331 else
    6306   TEMPLATE_VBOXR3STATIC_LIBS.x86           = \
    6307         $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.x86)_LIB)/oldnames.lib \
    6308         $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.x86)_LIB)/libcmt$(VBOX_VCC_CRT_TYPE).lib \
    6309         $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.x86)_LIB)/libcpmt$(VBOX_VCC_CRT_TYPE).lib
    6310   TEMPLATE_VBOXR3STATIC_LIBS.amd64         = \
    6311         $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.amd64)_LIB)/libcmt$(VBOX_VCC_CRT_TYPE).lib \
    6312         $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.amd64)_LIB)/libcpmt$(VBOX_VCC_CRT_TYPE).lib \
    6313         $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.amd64)_LIB)/oldnames.lib
     6332  ifdef VBOX_WITH_NOCRT_STATIC
     6333   TEMPLATE_VBOXR3STATIC_LIBS.amd64        = $(NO_SUCH_VARIABLE)
     6334   TEMPLATE_VBOXR3STATIC_LIBS.x86          = $(NO_SUCH_VARIABLE)
     6335  else
     6336   TEMPLATE_VBOXR3STATIC_LIBS.x86          = \
     6337        $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.x86)_LIB)/oldnames.lib \
     6338        $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.x86)_LIB)/libcmt$(VBOX_VCC_CRT_TYPE).lib \
     6339        $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.x86)_LIB)/libcpmt$(VBOX_VCC_CRT_TYPE).lib
     6340   TEMPLATE_VBOXR3STATIC_LIBS.amd64        = \
     6341        $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.amd64)_LIB)/libcmt$(VBOX_VCC_CRT_TYPE).lib \
     6342        $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.amd64)_LIB)/libcpmt$(VBOX_VCC_CRT_TYPE).lib \
     6343        $(PATH_TOOL_$(TEMPLATE_VBOXR3STATIC_TOOL.win.amd64)_LIB)/oldnames.lib
     6344  endif
    63146345 endif
    63156346else
     6347 ifdef VBOX_WITH_NOCRT_STATIC
     6348  TEMPLATE_VBOXR3STATIC_DEFS           += RT_WITH_NOCRT_WRAPPERS
     6349 endif
    63166350 ifn1of ($(KBUILD_TARGET), darwin linux solaris)
    63176351  # The gcc guys sans darwin, linux and solaris (don't depend on statically compiled system libs there)
     
    82848318TEMPLATE_VBOXGUESTR3EXE           = VBox Guest Program
    82858319ifeq ($(KBUILD_TARGET),win)
    8286  TEMPLATE_VBOXGUESTR3EXE_EXTENDS  = VBOXR3EXE
     8320 TEMPLATE_VBOXGUESTR3EXE_EXTENDS  = VBOXR3STATIC
    82878321 if "$(VBOX_VCC_TOOL_STEM)" >= "VCC140"
    8288   TEMPLATE_VBOXGUESTR3EXE_SDKS     = ReorderCompilerIncs WINSDK10-UCRT-STATIC $(VBOX_WINPSDK_GST) VBOX_NTDLL
     8322  ifdef VBOX_WITH_NOCRT_STATIC
     8323   TEMPLATE_VBOXGUESTR3EXE_SDKS    = ReorderCompilerIncs $(VBOX_WINPSDK_GST) VBOX_NTDLL
     8324  else
     8325   TEMPLATE_VBOXGUESTR3EXE_SDKS    = ReorderCompilerIncs WINSDK10-UCRT-STATIC $(VBOX_WINPSDK_GST) VBOX_NTDLL
     8326  endif
    82898327 else
    82908328  TEMPLATE_VBOXGUESTR3EXE_SDKS     = ReorderCompilerIncs $(VBOX_WINPSDK_GST) VBOX_NTDLL
    8291  endif
    8292  TEMPLATE_VBOXGUESTR3EXE_CFLAGS   = $(filter-out -MD$(VBOX_VCC_CRT_TYPE), $(TEMPLATE_VBOXR3EXE_CFLAGS)) -MT$(VBOX_VCC_CRT_TYPE) -Gy
    8293  TEMPLATE_VBOXGUESTR3EXE_CXXFLAGS = $(filter-out -MD$(VBOX_VCC_CRT_TYPE), $(TEMPLATE_VBOXR3EXE_CFLAGS)) -MT$(VBOX_VCC_CRT_TYPE) -Gy
    8294  if "$(VBOX_VCC_TOOL_STEM)" >= "VCC120" # Do not use SSE so the binaries might works on NT4 and earlier.
    8295   TEMPLATE_VBOXGUESTR3EXE_CFLAGS.win.x86   = $(TEMPLATE_VBOXR3EXE_CFLAGS.win.86) /arch:IA32
    8296   TEMPLATE_VBOXGUESTR3EXE_CXXFLAGS.win.x86 = $(TEMPLATE_VBOXR3EXE_CXXFLAGS.win.86) /arch:IA32
    8297   TEMPLATE_VBOXGUESTR3EXE_PCHFLAGS.win.x86 = $(TEMPLATE_VBOXR3EXE_PCHFLAGS.win.86) /arch:IA32
    8298   TEMPLATE_VBOXGUESTR3EXE_CFLAGS          += -Gw
    8299   TEMPLATE_VBOXGUESTR3EXE_CXXFLAGS        += -Gw
    8300   TEMPLATE_VBOXGUESTR3EXE_PCHFLAGS        += -Gw
    8301  endif
    8302  TEMPLATE_VBOXGUESTR3EXE_LDFLAGS  = $(filter-out -IntegrityCheck /DISALLOWLIB:libcmt$(VBOX_VCC_CRT_TYPE).lib /DISALLOWLIB:libcpmt$(VBOX_VCC_CRT_TYPE).lib, $(TEMPLATE_VBOXR3EXE_LDFLAGS)) \
    8303         /DISALLOWLIB:msvcrt$(VBOX_VCC_CRT_TYPE).lib \
    8304         /DISALLOWLIB:msvcprt$(VBOX_VCC_CRT_TYPE).lib \
    8305         /DISALLOWLIB:vcruntime$(VBOX_VCC_CRT_TYPE).lib \
    8306         /DISALLOWLIB:ucrt$(VBOX_VCC_CRT_TYPE).lib
    8307  if "$(VBOX_VCC_TOOL_STEM)" >= "VCC140"
    8308   TEMPLATE_VBOXGUESTR3EXE_LIBS.x86           = \
    8309         $(PATH_TOOL_$(TEMPLATE_VBOXGUESTR3EXE_TOOL.win.x86)_LIB)/libvcruntime$(VBOX_VCC_CRT_TYPE).lib \
    8310         $(PATH_TOOL_$(TEMPLATE_VBOXGUESTR3EXE_TOOL.win.x86)_LIB)/libcmt$(VBOX_VCC_CRT_TYPE).lib \
    8311         $(PATH_TOOL_$(TEMPLATE_VBOXGUESTR3EXE_TOOL.win.x86)_LIB)/libcpmt$(VBOX_VCC_CRT_TYPE).lib \
    8312         $(PATH_TOOL_$(TEMPLATE_VBOXGUESTR3EXE_TOOL.win.x86)_LIB)/oldnames.lib
    8313   TEMPLATE_VBOXGUESTR3EXE_LIBS.amd64         = \
    8314         $(PATH_TOOL_$(TEMPLATE_VBOXGUESTR3EXE_TOOL.win.amd64)_LIB)/libvcruntime$(VBOX_VCC_CRT_TYPE).lib \
    8315         $(PATH_TOOL_$(TEMPLATE_VBOXGUESTR3EXE_TOOL.win.amd64)_LIB)/libcmt$(VBOX_VCC_CRT_TYPE).lib \
    8316         $(PATH_TOOL_$(TEMPLATE_VBOXGUESTR3EXE_TOOL.win.amd64)_LIB)/libcpmt$(VBOX_VCC_CRT_TYPE).lib \
    8317         $(PATH_TOOL_$(TEMPLATE_VBOXGUESTR3EXE_TOOL.win.amd64)_LIB)/oldnames.lib
    8318   ifeq ($(KBUILD_TYPE),asan)
    8319    TEMPLATE_VBOXGUESTR3EXE_LIBS.x86         += \
    8320         $(PATH_TOOL_$(TEMPLATE_VBOXGUESTR3EXE_TOOL.win.x86)_LIB)/clang_rt.asan-i386.lib \
    8321         $(PATH_TOOL_$(TEMPLATE_VBOXGUESTR3EXE_TOOL.win.x86)_LIB)/clang_rt.asan_cxx-i386.lib
    8322    TEMPLATE_VBOXGUESTR3EXE_LIBS.amd64       += \
    8323         $(PATH_TOOL_$(TEMPLATE_VBOXGUESTR3EXE_TOOL.win.amd64)_LIB)/clang_rt.asan-x86_64.lib \
    8324         $(PATH_TOOL_$(TEMPLATE_VBOXGUESTR3EXE_TOOL.win.amd64)_LIB)/clang_rt.asan_cxx-x86_64.lib
    8325   endif
    8326  else
    8327   TEMPLATE_VBOXGUESTR3EXE_LIBS.x86           = \
    8328         $(PATH_TOOL_$(TEMPLATE_VBOXGUESTR3EXE_TOOL.win.x86)_LIB)/oldnames.lib \
    8329         $(PATH_TOOL_$(TEMPLATE_VBOXGUESTR3EXE_TOOL.win.x86)_LIB)/libcmt$(VBOX_VCC_CRT_TYPE).lib \
    8330         $(PATH_TOOL_$(TEMPLATE_VBOXGUESTR3EXE_TOOL.win.x86)_LIB)/libcpmt$(VBOX_VCC_CRT_TYPE).lib
    8331   TEMPLATE_VBOXGUESTR3EXE_LIBS.amd64         = \
    8332         $(PATH_TOOL_$(TEMPLATE_VBOXGUESTR3EXE_TOOL.win.amd64)_LIB)/oldnames.lib \
    8333         $(PATH_TOOL_$(TEMPLATE_VBOXGUESTR3EXE_TOOL.win.amd64)_LIB)/libcmt$(VBOX_VCC_CRT_TYPE).lib \
    8334         $(PATH_TOOL_$(TEMPLATE_VBOXGUESTR3EXE_TOOL.win.amd64)_LIB)/libcpmt$(VBOX_VCC_CRT_TYPE).lib
    83358329 endif
    83368330 # Hack for running on NT3x, NT4, W2K and XP w/o SP: Change OS and subsystem version in the image.
     
    83388332 # section because it doesn't recognize Misc.VirtualSize.  VBOX_PE_SET_VERSION will unset the !K flag.
    83398333 # HACK ALERT! Double expansion of $$(NLTAB).
    8340  TEMPLATE_VBOXGUESTR3EXE_POST_CMDS.win.x86  = $(if $(eq $(tool_do),LINK_LIBRARY),,$(VBOX_PE_SET_VERSION) $(out)$$(NLTAB)$(TEMPLATE_VBOXR3EXE_POST_CMDS))
     8334 TEMPLATE_VBOXGUESTR3EXE_POST_CMDS.win.x86  = $(if $(eq $(tool_do),LINK_LIBRARY),,$(VBOX_PE_SET_VERSION) $(out)$$(NLTAB)$(TEMPLATE_$(TEMPLATE_VBOXGUESTR3EXE_EXTENDS)_POST_CMDS))
    83418335 TEMPLATE_VBOXGUESTR3EXE_LNK_DEPS.win.x86   = $(if $(eq $(tool_do),LINK_LIBRARY),,$(VBOX_PE_SET_VERSION))
    8342  TEMPLATE_VBOXGUESTR3EXE_LDFLAGS.win.x86    = -Section:.bss,RW!K $(TEMPLATE_VBOXR3EXE_LDFLAGS.win.x86)
     8336 TEMPLATE_VBOXGUESTR3EXE_LDFLAGS.win.x86    = -Section:.bss,RW!K $(TEMPLATE_$(TEMPLATE_VBOXGUESTR3EXE_EXTENDS)_LDFLAGS.win.x86)
    83438337
    83448338 if defined(VBOX_WITH_MORE_NT4_COMPAT_BINARIES) && "$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH)" == "win.x86"
    83458339  TEMPLATE_VBOXGUESTR3EXE_LIBS.win.x86 = $(NO_SUCH_VARIABLE)# Ditch RuntimeR3VccTricks2
    83468340 endif
     8341
    83478342else # the gcc guys
    83488343 TEMPLATE_VBOXGUESTR3EXE_EXTENDS  = VBOXR3EXE
    83498344 ifn1of ($(KBUILD_TARGET), darwin)
    8350   TEMPLATE_VBOXGUESTR3EXE_TOOL   := $(subst GXX,GCC,$(TEMPLATE_VBOXR3EXE_TOOL))
    8351  endif
    8352  TEMPLATE_VBOXGUESTR3EXE_CXXFLAGS = $(TEMPLATE_VBOXR3EXE_CXXFLAGS) -fno-exceptions -fno-rtti
     8345  TEMPLATE_VBOXGUESTR3EXE_TOOL   := $(subst GXX,GCC,$(TEMPLATE_$(TEMPLATE_VBOXGUESTR3EXE_EXTENDS)_TOOL))
     8346 endif
     8347 TEMPLATE_VBOXGUESTR3EXE_CXXFLAGS = $(TEMPLATE_$(TEMPLATE_VBOXGUESTR3EXE_EXTENDS)_CXXFLAGS) -fno-exceptions -fno-rtti
    83538348 # Do not inherit sanitizer flags from VBOXR3EXE in guest executables.  Deal with them separately.
    83548349 TEMPLATE_VBOXGUESTR3EXE_CXXFLAGS.debug = $(NO_SUCH_VARIABLE)
    83558350 TEMPLATE_VBOXGUESTR3EXE_CFLAGS.debug = $(NO_SUCH_VARIABLE)
    8356  TEMPLATE_VBOXGUESTR3EXE_LDFLAGS.linux = $(filter-out $(VBOX_GCC_ORIGIN_OPT),$(TEMPLATE_VBOXR3EXE_LDFLAGS.linux))
     8351 TEMPLATE_VBOXGUESTR3EXE_LDFLAGS.linux = $(filter-out $(VBOX_GCC_ORIGIN_OPT),$(TEMPLATE_$(TEMPLATE_VBOXGUESTR3EXE_EXTENDS)_LDFLAGS.linux))
    83578352 TEMPLATE_VBOXGUESTR3EXE_LDFLAGS.debug = $(NO_SUCH_VARIABLE)
    8358  TEMPLATE_VBOXGUESTR3EXE_LDFLAGS  = $(filter-out '$(VBOX_GCC_RPATH_OPT)%,$(TEMPLATE_VBOXR3EXE_LDFLAGS))
     8353 TEMPLATE_VBOXGUESTR3EXE_LDFLAGS  = $(filter-out '$(VBOX_GCC_RPATH_OPT)%,$(TEMPLATE_$(TEMPLATE_VBOXGUESTR3EXE_EXTENDS)_LDFLAGS))
    83598354 ifn1of ($(KBUILD_TARGET), darwin os2)  # ELF only. Present in gcc 3.2.3 & binutils 2.15, possibly earlier.
    83608355  ifdef VBOX_LD_gc_sections             # Older solaris linker versions doesn't grok --gc-sections (e.g. add build box).
     
    83678362TEMPLATE_VBOXGUESTR3EXE_INST      = $(INST_ADDITIONS)
    83688363TEMPLATE_VBOXGUESTR3EXE_DEFS     := \
    8369         $(filter-out $(ARCH_BITS_DEFS) VBOX_WITH_DTRACE VBOX_WITH_DTRACE_R3, $(TEMPLATE_VBOXR3EXE_DEFS)) \
     8364        $(filter-out $(ARCH_BITS_DEFS) VBOX_WITH_DTRACE VBOX_WITH_DTRACE_R3, $(TEMPLATE_$(TEMPLATE_VBOXGUESTR3EXE_EXTENDS)_DEFS)) \
    83708365        IN_GUEST \
    83718366        IN_GUEST_R3 \
     
    83748369        $(VBOX_GC_ARCH_BITS_DEFS) \
    83758370        RT_NEED_NEW_AND_DELETE
    8376 TEMPLATE_VBOXGUESTR3EXE_DEFS.linux := $(TEMPLATE_VBOXR3EXE_DEFS.linux) LOG_USE_C99 RT_WITHOUT_EXEC_ALLOC
     8371TEMPLATE_VBOXGUESTR3EXE_DEFS.linux := $(TEMPLATE_$(TEMPLATE_VBOXGUESTR3EXE_EXTENDS)_DEFS.linux) LOG_USE_C99 RT_WITHOUT_EXEC_ALLOC
    83778372ifeq ($(KBUILD_TARGET),linux) # As few libs as possible on linux.
    83788373 TEMPLATE_VBOXGUESTR3EXE_LIBS     = pthread rt m dl
    83798374else if1of ($(KBUILD_TARGET), darwin freebsd openbsd)
    8380  TEMPLATE_VBOXGUESTR3EXE_LIBS     = $(TEMPLATE_VBOXR3EXE_LIBS) iconv
     8375 TEMPLATE_VBOXGUESTR3EXE_LIBS     = $(TEMPLATE_$(TEMPLATE_VBOXGUESTR3EXE_EXTENDS)_LIBS) iconv
    83818376else ifeq ($(KBUILD_TARGET), solaris)
    8382  TEMPLATE_VBOXGUESTR3EXE_LIBS     = $(TEMPLATE_VBOXR3EXE_LIBS) nsl
     8377 TEMPLATE_VBOXGUESTR3EXE_LIBS     = $(TEMPLATE_$(TEMPLATE_VBOXGUESTR3EXE_EXTENDS)_LIBS) nsl
    83838378endif
    83848379
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette