pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Coin: Add a EGL detection patch that potentially fixes FreeCAD.



Module Name:	pkgsrc-wip
Committed By:	Paul Ripke <stix%stix.id.au@localhost>
Pushed By:	stix
Date:		Sat May 23 14:01:00 2026 +1000
Changeset:	1196e26c0df02906a83557ca9c768074b1ebc15e

Modified Files:
	Coin/distinfo
Added Files:
	Coin/patches/patch-src_glue_gl.cpp

Log Message:
Coin: Add a EGL detection patch that potentially fixes FreeCAD.

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=1196e26c0df02906a83557ca9c768074b1ebc15e

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 Coin/distinfo                      |  1 +
 Coin/patches/patch-src_glue_gl.cpp | 24 ++++++++++++++++++++++++
 2 files changed, 25 insertions(+)

diffs:
diff --git a/Coin/distinfo b/Coin/distinfo
index 043a482cbb..7e3b159121 100644
--- a/Coin/distinfo
+++ b/Coin/distinfo
@@ -3,6 +3,7 @@ $NetBSD: distinfo,v 1.10 2021/10/26 10:45:53 nia Exp $
 BLAKE2s (Coin-4.0.6.tar.gz) = 4e3caaf5060ca8e881724c5553cedc1bc6ffd75805df1d668e02b41a43e91624
 SHA512 (Coin-4.0.6.tar.gz) = 4594f1b23a32298b2fc3ce77287fba7c76c9912e17aa596f5f45aae300775fc2794e5c47720767a0116b981306a60c3ca70729fdab17d1476696834507d78c75
 Size (Coin-4.0.6.tar.gz) = 6954700 bytes
+SHA1 (patch-src_glue_gl.cpp) = c21290dd11e4c18d30d6a990313523566e02d1f1
 SHA1 (patch-src_tidbits.cpp) = 00370f155dd38fdde8098fe99869c4bd4357298f
 SHA1 (patch-testsuite_TestSuiteMisc.h) = 42f703b5eec0047d996519f721e00fd63cda873e
 SHA1 (patch-testsuite_TestSuiteUtils.cpp) = a81d2a5193cfbeabdff21369d6a72f9d6faa9da6
diff --git a/Coin/patches/patch-src_glue_gl.cpp b/Coin/patches/patch-src_glue_gl.cpp
new file mode 100644
index 0000000000..8beed1d95a
--- /dev/null
+++ b/Coin/patches/patch-src_glue_gl.cpp
@@ -0,0 +1,24 @@
+$NetBSD$
+
+Work around EGL detection failure needing COIN_EGL=1 set.
+https://github.com/FreeCAD/FreeCAD/issues/22695
+
+--- src/glue/gl.cpp.orig	2026-04-27 07:21:23.559091032 +0000
++++ src/glue/gl.cpp
+@@ -2215,10 +2215,12 @@ static void check_egl()
+     }
+ 
+     // Detect EGL
+-    EGLContext eglContext = eglGetCurrentContext();
+-    if (eglContext != EGL_NO_CONTEXT) {
+-      COIN_USE_EGL = 1;
+-      return;
++    EGLDisplay display = eglGetDisplay(EGL_DEFAULT_DISPLAY);
++    if (display != nullptr) {
++      if (eglInitialize(display, nullptr, nullptr)) {
++        COIN_USE_EGL = 1;
++        return;
++      }
+     }
+ 
+     // Detect GLX


Home | Main Index | Thread Index | Old Index