summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-graphics/freeglut
diff options
context:
space:
mode:
authorJan Vermaete <jan.vermaete@gmail.com>2025-12-24 13:10:55 +0100
committerKhem Raj <raj.khem@gmail.com>2025-12-24 13:18:30 -0800
commit0b0cbd4c3ce15bdaf7dc732f17fe20d9cfc26d85 (patch)
tree64c481cbcaf6f12b7c0640ab190f628d246dcdc0 /meta-oe/recipes-graphics/freeglut
parent5e84800e96cac945cba2e6ed4a1bd4f0affbbedd (diff)
downloadmeta-openembedded-0b0cbd4c3ce15bdaf7dc732f17fe20d9cfc26d85.tar.gz
freeglut: version 3.4.0 -> 3.8.0
patch to add support for legacy OpenGL (Thanks Rob Woolley) | -- Found OpenGL: /srv/pokybuild/yocto-worker/meta-oe/build/build/tmp/work/x86-64-v3-poky-linux/freeglut/3.8.0/recipe-sysroot/usr/lib/libGL.so found components: OpenGL | -- Found PkgConfig: /srv/pokybuild/yocto-worker/meta-oe/build/build/tmp/work/x86-64-v3-poky-linux/freeglut/3.8.0/recipe-sysroot-native/usr/bin/pkg-config (found version "0.29.2") | CMake Error at /srv/pokybuild/yocto-worker/meta-oe/build/build/tmp/work/x86-64-v3-poky-linux/freeglut/3.8.0/recipe-sysroot-native/usr/share/cmake-4.2/Modules/FindPackageHandleStandardArgs.cmake:290 (message): | Could NOT find OpenGL (missing: OPENGL_opengl_LIBRARY) Changlog: 2025-11-16 John Tsiombikas <nuclear@mutantstargoat.com> freeglut 3.8 changes: * New experimental Cocoa (native MacOS X) backend. * Add glutSwapInterval, to control vsync (currently X11 and win32 only). * glutExtensionSupported now also reports platform extensions (GLX/WGL). * Fix build issues with new cmake versions while maintaining compatibility with old cmake. * Fix handling of UTF8 window/icon titles. * Fix issue with some X11 window managers not properly restoring iconified windows (send _NET_ACTIVE_WINDOW EWMH client message). * Fix build issues with C23 compilers (empty argument list semantics). * Fix compatibility with older versions of windows which don't have RAWHID support (before XP), by loading the entry points dynamically. * Fix glutInitDisplayString parsing of "aux", and add =N parsing support to specify samples and auxbufs. * Various fixes and improvements in the GameCube/Wii backend. * Altbuild support for Solaris 2.6/SUN Workshop C. * Started conversion of documentation from the website to markdown in the source tree: doc/api.md * Added the original GLUT manpages, with permission from Mark Kilgard. * New demos: accum, vsync, and windows. * Cleanup of some old and no longer relevant, or redundant comments in the source code. * Removed some out of date README files, and updated others. 2024-06-08 John Tsiombikas <nuclear@member.fsf.org> freeglut 3.6 changes: * New platforms: Nintendo Gamecube and Nintendo Wii. * Minimum cmake version raised to 3.1. * Make XInput an optional dependency. * Fix incorrect modifier bit mapped to GLUT_ACTIVE_SUPER on X11. * Add support for ARM64 MSVC targets. * Fix for unicode builds on windows. * Fix build on some versions of MinGW carrying an incorrect winuser.h. * Fix menu-related memory leak when an error occurs. * Various build improvements & fixes. Signed-off-by: Jan Vermaete <jan.vermaete@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-oe/recipes-graphics/freeglut')
-rw-r--r--meta-oe/recipes-graphics/freeglut/freeglut/0001-Add-support-for-legacy-OpenGL.patch45
-rw-r--r--meta-oe/recipes-graphics/freeglut/freeglut_3.8.0.bb (renamed from meta-oe/recipes-graphics/freeglut/freeglut_3.4.0.bb)14
2 files changed, 54 insertions, 5 deletions
diff --git a/meta-oe/recipes-graphics/freeglut/freeglut/0001-Add-support-for-legacy-OpenGL.patch b/meta-oe/recipes-graphics/freeglut/freeglut/0001-Add-support-for-legacy-OpenGL.patch
new file mode 100644
index 0000000000..b7dc2a58aa
--- /dev/null
+++ b/meta-oe/recipes-graphics/freeglut/freeglut/0001-Add-support-for-legacy-OpenGL.patch
@@ -0,0 +1,45 @@
1From a4c51ae7897f1ad82d10e593344511b3d7b81dbc Mon Sep 17 00:00:00 2001
2From: Jan Vermaete <jan.vermaete@gmail.com>
3Date: Wed, 24 Dec 2025 12:58:36 +0100
4Subject: [PATCH 1/1] Add support for legacy OpenGL
5
6Upstream-Status: Pending
7
8Signed-off-by: Rob Woolley <rob.woolley@windriver.com>
9Commited-by: Jan Vermaete <jan.vermaete@gmail.com>
10---
11 CMakeLists.txt | 6 +++---
12 1 file changed, 3 insertions(+), 3 deletions(-)
13
14diff --git a/CMakeLists.txt b/CMakeLists.txt
15index 23741bf..31b3ac8 100644
16--- a/CMakeLists.txt
17+++ b/CMakeLists.txt
18@@ -378,13 +378,13 @@ IF(FREEGLUT_GLES)
19 FIND_PACKAGE(OpenGL REQUIRED COMPONENTS EGL GLES2 OpenGL)
20 CMAKE_PATH(GET OPENGL_gles2_LIBRARY PARENT_PATH _OPENGL_LIBDIR)
21 FIND_LIBRARY(GLES1_LIBRARY GLESv1_CM HINTS ${_OPENGL_LIBDIR} REQUIRED)
22- LIST(APPEND LIBS ${GLES1_LIBRARY} OpenGL::EGL OpenGL::GLES2 OpenGL::OpenGL)
23+ LIST(APPEND LIBS ${GLES1_LIBRARY} OpenGL::EGL OpenGL::GLES2 OpenGL::GL)
24 elseif(NOT CMAKE_VERSION VERSION_LESS "3.10")
25 FIND_PACKAGE(OpenGL REQUIRED COMPONENTS EGL OpenGL)
26 GET_FILENAME_COMPONENT(_OPENGL_LIBDIR ${OPENGL_egl_LIBRARY} DIRECTORY)
27 FIND_LIBRARY(GLES1_LIBRARY GLESv1_CM HINTS ${_OPENGL_LIBDIR})
28 FIND_LIBRARY(GLES2_LIBRARY GLESv2 HINTS ${_OPENGL_LIBDIR})
29- LIST(APPEND LIBS ${GLES1_LIBRARY} ${GLES2_LIBRARY} OpenGL::EGL OpenGL::OpenGL)
30+ LIST(APPEND LIBS ${GLES1_LIBRARY} ${GLES2_LIBRARY} OpenGL::EGL OpenGL::GL)
31 else()
32 FIND_PACKAGE(OpenGL REQUIRED)
33 LIST(GET ${OPENGL_LIBRARIES} 0 _OPENGL_LIB)
34@@ -433,7 +433,7 @@ IF(FREEGLUT_WAYLAND)
35 INCLUDE(FindPkgConfig)
36 if(NOT CMAKE_VERSION VERSION_LESS "3.10")
37 FIND_PACKAGE(OpenGL REQUIRED COMPONENTS EGL OpenGL)
38- LIST(APPEND LIBS OpenGL::EGL OpenGL::OpenGL)
39+ LIST(APPEND LIBS OpenGL::EGL OpenGL::GL)
40 else()
41 FIND_PACKAGE(OpenGL REQUIRED)
42 LIST(GET ${OPENGL_LIBRARIES} 0 _OPENGL_LIB)
43--
442.47.3
45
diff --git a/meta-oe/recipes-graphics/freeglut/freeglut_3.4.0.bb b/meta-oe/recipes-graphics/freeglut/freeglut_3.8.0.bb
index 13f3d111fe..5c6ab1a1d7 100644
--- a/meta-oe/recipes-graphics/freeglut/freeglut_3.4.0.bb
+++ b/meta-oe/recipes-graphics/freeglut/freeglut_3.8.0.bb
@@ -4,21 +4,25 @@ HOMEPAGE = "https://freeglut.sourceforge.net"
4LICENSE = "MIT" 4LICENSE = "MIT"
5LIC_FILES_CHKSUM = "file://COPYING;md5=89c0b58a3e01ce3d8254c9f59e78adfb" 5LIC_FILES_CHKSUM = "file://COPYING;md5=89c0b58a3e01ce3d8254c9f59e78adfb"
6 6
7SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/v${PV}/${BPN}-${PV}.tar.gz" 7SRC_URI = "\
8SRC_URI[sha256sum] = "3c0bcb915d9b180a97edaebd011b7a1de54583a838644dcd42bb0ea0c6f3eaec" 8 https://github.com/${BPN}/${BPN}/releases/download/v${PV}/${BPN}-${PV}.tar.gz \
9 file://0001-Add-support-for-legacy-OpenGL.patch \
10 "
11SRC_URI[sha256sum] = "674dcaff25010e09e450aec458b8870d9e98c46f99538db457ab659b321d9989"
9 12
10inherit cmake features_check pkgconfig 13inherit cmake features_check pkgconfig
11 14
12EXTRA_OECMAKE = "-DCMAKE_POLICY_VERSION_MINIMUM=3.5"
13
14# depends on virtual/libgl and libxi 15# depends on virtual/libgl and libxi
15REQUIRED_DISTRO_FEATURES = "opengl x11" 16REQUIRED_DISTRO_FEATURES = "opengl x11"
16 17
17PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}" 18PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11 glvnd', d)} \
19 ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles', '', d)}"
20PACKAGECONFIG[glvnd] = "-DOpenGL_GL_PREFERENCE=GLVND,-DOpenGL_GL_PREFERENCE=LEGACY, libglvnd"
18PACKAGECONFIG[gles] = "-DFREEGLUT_GLES=ON,-DFREEGLUT_GLES=OFF," 21PACKAGECONFIG[gles] = "-DFREEGLUT_GLES=ON,-DFREEGLUT_GLES=OFF,"
19PACKAGECONFIG[wayland] = "-DFREEGLUT_WAYLAND=ON,-DFREEGLUT_WAYLAND=OFF,libxkbcommon" 22PACKAGECONFIG[wayland] = "-DFREEGLUT_WAYLAND=ON,-DFREEGLUT_WAYLAND=OFF,libxkbcommon"
20PACKAGECONFIG[demos] = "-DFREEGLUT_BUILD_DEMOS=ON,-DFREEGLUT_BUILD_DEMOS=OFF," 23PACKAGECONFIG[demos] = "-DFREEGLUT_BUILD_DEMOS=ON,-DFREEGLUT_BUILD_DEMOS=OFF,"
21PACKAGECONFIG[x11] = ",,virtual/libx11 libice libxmu libglu libxrandr libxext" 24PACKAGECONFIG[x11] = ",,virtual/libx11 libice libxmu libglu libxrandr libxext"
25
22# Add -Wno-implicit-function-declaration since it might be otherwise treated at 26# Add -Wno-implicit-function-declaration since it might be otherwise treated at
23# error by clang16+ and this is not really a problem 27# error by clang16+ and this is not really a problem
24CFLAGS += "-Wno-implicit-function-declaration" 28CFLAGS += "-Wno-implicit-function-declaration"