File fixes_for_gcc10.patch of Package virtualbox.openSUSE_Leap_15.3_Update
Index: VirtualBox-6.1.16/Config.kmk
===================================================================
--- VirtualBox-6.1.16.orig/Config.kmk
+++ VirtualBox-6.1.16/Config.kmk
@@ -2630,11 +2630,17 @@ else
# The reason for this hack is that the windows kmk_ash cannot deal with $((1+1)).
# Some versions of gcc (e.g. openSUSE11) return only major.minor on `gcc -dumpversion`.
# gcc-5 of openSUSE42.1 only returns the major version on `gcc -dumpversion`!
- VBOX_GCC_VERSION = $(shell ($(1) -dumpfullversion 2>/dev/null || $(1) -dumpversion) | \
- $(SED_EXT) 's|\([0-9][0-9]*\)\.\{0,1\}\([0-9]\{0,\}\)\.\{0,1\}\([0-9]\{0,\}\).*|$$(int-add $$(int-mul 10000, \1), $$(int-mul 100, $$(firstword \2 0)), $$(firstword \3 0))|' )
+ #
+ # Check to make sure that the compiler has either -dumpfullversion or -dumpversion. gcc-10 has neither
+ RC = $(shell ($(1) -dumpfullversion 2>/dev/null || $(1) -dumpversion 2>/dev/null) ; echo $$?)
+ ifneq ($(RC),0)
+ # dump version commands not available - hardcode 10.2.1 for the moment
+ VBOX_GCC_VERSION = 100201
+ else
+ VBOX_GCC_VERSION = $(shell ($(1) -dumpfullversion 2>/dev/null || $(1) -dumpversion 2>/dev/null) | \
+ $(SED_EXT) 's|\([0-9][0-9]*\)\.\{0,1\}\([0-9]\{0,\}\)\.\{0,1\}\([0-9]\{0,\}\).*|$$(expr 10000 * \1 + 100 * $$(firstword \2 0) + $$(firstword \3 0))|' )
+ endif
endif
-
-# YASM macros
ifndef DONT_USE_YASM
include $(KBUILD_PATH)/tools/YASM.kmk
if1of ($(KBUILD_HOST), win os2)
Index: VirtualBox-6.1.16/src/VBox/Debugger/DBGCDumpImage.cpp
===================================================================
--- VirtualBox-6.1.16.orig/src/VBox/Debugger/DBGCDumpImage.cpp
+++ VirtualBox-6.1.16/src/VBox/Debugger/DBGCDumpImage.cpp
@@ -468,7 +468,7 @@ static const char *dbgcMachoCpuType(int3
{
switch (iType)
{
- case CPU_TYPE_ANY: return "CPU_TYPE_ANY";
+ default: return "CPU_TYPE_ANY";
case CPU_TYPE_VAX: return "VAX";
case CPU_TYPE_MC680x0: return "MC680x0";
case CPU_TYPE_X86: return "X86";