mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-07-14 06:00:33 +03:00
Merge #280675: virtualbox: fix build with libxml 2.12 + gcc 13
This commit is contained in:
commit
570b5a67c4
3 changed files with 84 additions and 0 deletions
|
@ -101,6 +101,8 @@ in stdenv.mkDerivation {
|
||||||
./qt-dependency-paths.patch
|
./qt-dependency-paths.patch
|
||||||
# https://github.com/NixOS/nixpkgs/issues/123851
|
# https://github.com/NixOS/nixpkgs/issues/123851
|
||||||
./fix-audio-driver-loading.patch
|
./fix-audio-driver-loading.patch
|
||||||
|
./libxml-2.12.patch
|
||||||
|
./gcc-13.patch
|
||||||
];
|
];
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
|
35
pkgs/applications/virtualization/virtualbox/gcc-13.patch
Normal file
35
pkgs/applications/virtualization/virtualbox/gcc-13.patch
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
diff --git a/src/VBox/Additions/common/VBoxGuest/lib/VBoxGuestR3LibRuntimeXF86.cpp b/src/VBox/Additions/common/VBoxGuest/lib/VBoxGuestR3LibRuntimeXF86.cpp
|
||||||
|
index 8a9d15c0..260ebc5c 100644
|
||||||
|
--- a/src/VBox/Additions/common/VBoxGuest/lib/VBoxGuestR3LibRuntimeXF86.cpp
|
||||||
|
+++ b/src/VBox/Additions/common/VBoxGuest/lib/VBoxGuestR3LibRuntimeXF86.cpp
|
||||||
|
@@ -46,6 +46,9 @@
|
||||||
|
#if defined(VBOX_VBGLR3_XFREE86)
|
||||||
|
extern "C" {
|
||||||
|
# define XFree86LOADER
|
||||||
|
+# ifdef RT_GNUC_PREREQ(13,0) /* cmath gets dragged in and the c++/13/cmath header is allergic to -ffreestanding. */
|
||||||
|
+# define _GLIBCXX_INCLUDE_NEXT_C_HEADERS
|
||||||
|
+# endif
|
||||||
|
# include <xf86_ansic.h>
|
||||||
|
# undef size_t
|
||||||
|
}
|
||||||
|
diff --git a/src/libs/dxvk-native-1.9.2a/src/util/util_matrix.cpp b/src/libs/dxvk-native-1.9.2a/src/util/util_matrix.cpp
|
||||||
|
index 2c5e9314..64890169 100644
|
||||||
|
--- a/src/libs/dxvk-native-1.9.2a/src/util/util_matrix.cpp
|
||||||
|
+++ b/src/libs/dxvk-native-1.9.2a/src/util/util_matrix.cpp
|
||||||
|
@@ -1,3 +1,5 @@
|
||||||
|
+#include <cstdint>
|
||||||
|
+
|
||||||
|
#include "util_matrix.h"
|
||||||
|
|
||||||
|
namespace dxvk {
|
||||||
|
diff --git a/src/libs/dxvk-native-1.9.2a/src/util/util_vector.h b/src/libs/dxvk-native-1.9.2a/src/util/util_vector.h
|
||||||
|
index 77cdf294..9dcb4bf9 100644
|
||||||
|
--- a/src/libs/dxvk-native-1.9.2a/src/util/util_vector.h
|
||||||
|
+++ b/src/libs/dxvk-native-1.9.2a/src/util/util_vector.h
|
||||||
|
@@ -1,5 +1,6 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
+#include <cstdint>
|
||||||
|
#include <iostream>
|
||||||
|
|
||||||
|
#include "util_bit.h"
|
|
@ -0,0 +1,47 @@
|
||||||
|
diff --git a/include/iprt/cpp/xml.h b/include/iprt/cpp/xml.h
|
||||||
|
index 40975e86..7639c281 100644
|
||||||
|
--- a/include/iprt/cpp/xml.h
|
||||||
|
+++ b/include/iprt/cpp/xml.h
|
||||||
|
@@ -113,9 +113,9 @@ public:
|
||||||
|
class RT_DECL_CLASS XmlError : public RuntimeError
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
- XmlError(xmlErrorPtr aErr);
|
||||||
|
+ XmlError(const xmlError *aErr);
|
||||||
|
|
||||||
|
- static char* Format(xmlErrorPtr aErr);
|
||||||
|
+ static char* Format(const xmlError *aErr);
|
||||||
|
};
|
||||||
|
|
||||||
|
// Logical errors
|
||||||
|
diff --git a/src/VBox/Runtime/r3/xml.cpp b/src/VBox/Runtime/r3/xml.cpp
|
||||||
|
index a6661760..b301a6c6 100644
|
||||||
|
--- a/src/VBox/Runtime/r3/xml.cpp
|
||||||
|
+++ b/src/VBox/Runtime/r3/xml.cpp
|
||||||
|
@@ -131,7 +131,7 @@ LogicError::LogicError(RT_SRC_POS_DECL)
|
||||||
|
RTStrFree(msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
-XmlError::XmlError(xmlErrorPtr aErr)
|
||||||
|
+XmlError::XmlError(const xmlError *aErr)
|
||||||
|
{
|
||||||
|
if (!aErr)
|
||||||
|
throw EInvalidArg(RT_SRC_POS);
|
||||||
|
@@ -145,7 +145,7 @@ XmlError::XmlError(xmlErrorPtr aErr)
|
||||||
|
* Composes a single message for the given error. The caller must free the
|
||||||
|
* returned string using RTStrFree() when no more necessary.
|
||||||
|
*/
|
||||||
|
-/* static */ char *XmlError::Format(xmlErrorPtr aErr)
|
||||||
|
+/* static */ char *XmlError::Format(const xmlError *aErr)
|
||||||
|
{
|
||||||
|
const char *msg = aErr->message ? aErr->message : "<none>";
|
||||||
|
size_t msgLen = strlen(msg);
|
||||||
|
@@ -1856,7 +1856,7 @@ static void xmlParserBaseGenericError(void *pCtx, const char *pszMsg, ...) RT_NO
|
||||||
|
va_end(args);
|
||||||
|
}
|
||||||
|
|
||||||
|
-static void xmlParserBaseStructuredError(void *pCtx, xmlErrorPtr error) RT_NOTHROW_DEF
|
||||||
|
+static void xmlParserBaseStructuredError(void *pCtx, const xmlError *error) RT_NOTHROW_DEF
|
||||||
|
{
|
||||||
|
NOREF(pCtx);
|
||||||
|
/* we expect that there is always a trailing NL */
|
Loading…
Add table
Add a link
Reference in a new issue