From a2a46009f5a8c94696e13ab12678812032610380 Mon Sep 17 00:00:00 2001 From: Travis Wrightsman Date: Fri, 13 Dec 2024 20:44:06 -0800 Subject: [PATCH 1/2] Enable builds with miniupnpc API 18 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Backports https://github.com/godotengine/godot/pull/97139 without bumping the embedded miniupnpc library. Co-authored-by: RĂ©mi Verschelde --- modules/upnp/upnp.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/modules/upnp/upnp.cpp b/modules/upnp/upnp.cpp index a6e0c95fff20..149e0667f0e4 100644 --- a/modules/upnp/upnp.cpp +++ b/modules/upnp/upnp.cpp @@ -145,7 +145,11 @@ void UPNP::parse_igd(Ref dev, UPNPDev *devlist) { } char addr[16]; +#if MINIUPNPC_API_VERSION >= 18 + int i = UPNP_GetValidIGD(devlist, urls, &data, (char *)&addr, 16, nullptr, 0); +#else int i = UPNP_GetValidIGD(devlist, urls, &data, (char *)&addr, 16); +#endif if (i != 1) { FreeUPNPUrls(urls); From 209579a2a6a8c48af3fec560f95e5f3dda85c314 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Verschelde?= Date: Sat, 25 Jan 2025 15:25:37 +0100 Subject: [PATCH 2/2] embree: Fix invalid output operators raising errors with GCC 15 --- thirdparty/embree/kernels/geometry/pointi.h | 4 +- .../embree/kernels/subdiv/bezier_curve.h | 2 +- .../patches/embree-fix-output-operator.patch | 39 +++++++++++++++++++ 3 files changed, 42 insertions(+), 3 deletions(-) create mode 100644 thirdparty/embree/patches/embree-fix-output-operator.patch diff --git a/thirdparty/embree/kernels/geometry/pointi.h b/thirdparty/embree/kernels/geometry/pointi.h index bed04116b0e1..f33169223e41 100644 --- a/thirdparty/embree/kernels/geometry/pointi.h +++ b/thirdparty/embree/kernels/geometry/pointi.h @@ -210,9 +210,9 @@ namespace embree }; /*! output operator */ - friend __forceinline embree_ostream operator<<(embree_ostream cout, const PointMi& line) + friend __forceinline embree_ostream operator<<(embree_ostream cout, const PointMi& point) { - return cout << "Line" << M << "i {" << line.v0 << ", " << line.geomID() << ", " << line.primID() << "}"; + return cout << "Point" << M << "i {" << point.geomID() << ", " << point.primID() << "}"; } public: diff --git a/thirdparty/embree/kernels/subdiv/bezier_curve.h b/thirdparty/embree/kernels/subdiv/bezier_curve.h index a5adad5cc903..4f20a5abbbcd 100644 --- a/thirdparty/embree/kernels/subdiv/bezier_curve.h +++ b/thirdparty/embree/kernels/subdiv/bezier_curve.h @@ -135,7 +135,7 @@ namespace embree } friend embree_ostream operator<<(embree_ostream cout, const QuadraticBezierCurve& a) { - return cout << "QuadraticBezierCurve ( (" << a.u.lower << ", " << a.u.upper << "), " << a.v0 << ", " << a.v1 << ", " << a.v2 << ")"; + return cout << "QuadraticBezierCurve (" << a.v0 << ", " << a.v1 << ", " << a.v2 << ")"; } }; diff --git a/thirdparty/embree/patches/embree-fix-output-operator.patch b/thirdparty/embree/patches/embree-fix-output-operator.patch new file mode 100644 index 000000000000..7ddfcd6c989b --- /dev/null +++ b/thirdparty/embree/patches/embree-fix-output-operator.patch @@ -0,0 +1,39 @@ +From cda4cf1919bb2a748e78915fbd6e421a1056638d Mon Sep 17 00:00:00 2001 +From: Daniel Opitz +Date: Mon, 13 May 2024 10:17:51 +0200 +Subject: [PATCH] fix output operator, issue #486 + +--- + kernels/geometry/pointi.h | 4 ++-- + kernels/subdiv/bezier_curve.h | 2 +- + 2 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/kernels/geometry/pointi.h b/kernels/geometry/pointi.h +index f81edb9035..aba8ec4ab3 100644 +--- a/kernels/geometry/pointi.h ++++ b/kernels/geometry/pointi.h +@@ -210,9 +210,9 @@ namespace embree + }; + + /*! output operator */ +- friend __forceinline embree_ostream operator<<(embree_ostream cout, const PointMi& line) ++ friend __forceinline embree_ostream operator<<(embree_ostream cout, const PointMi& point) + { +- return cout << "Line" << M << "i {" << line.v0 << ", " << line.geomID() << ", " << line.primID() << "}"; ++ return cout << "Point" << M << "i {" << point.geomID() << ", " << point.primID() << "}"; + } + + public: +diff --git a/kernels/subdiv/bezier_curve.h b/kernels/subdiv/bezier_curve.h +index 257e0afd40..5e3b5c83b3 100644 +--- a/kernels/subdiv/bezier_curve.h ++++ b/kernels/subdiv/bezier_curve.h +@@ -135,7 +135,7 @@ namespace embree + } + + friend embree_ostream operator<<(embree_ostream cout, const QuadraticBezierCurve& a) { +- return cout << "QuadraticBezierCurve ( (" << a.u.lower << ", " << a.u.upper << "), " << a.v0 << ", " << a.v1 << ", " << a.v2 << ")"; ++ return cout << "QuadraticBezierCurve (" << a.v0 << ", " << a.v1 << ", " << a.v2 << ")"; + } + }; +