From d0148950e5aa80edd95d1dfd28407f1491bafc5a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Andr=C3=A9=20Reuter?= Date: Mon, 1 Sep 2025 10:33:56 +0200 Subject: [PATCH 01/20] adding easyconfigs: glslang-15.3.0-GCCcore-14.3.0.eb, libclc-20.1.8-GCCcore-14.3.0.eb, OpenGL-2025b-GCCcore-14.3.0.eb --- .../glslang/glslang-15.3.0-GCCcore-14.3.0.eb | 85 +++++++++ .../l/libclc/libclc-20.1.8-GCCcore-14.3.0.eb | 31 +++ .../o/OpenGL/OpenGL-2025b-GCCcore-14.3.0.eb | 177 ++++++++++++++++++ 3 files changed, 293 insertions(+) create mode 100644 easybuild/easyconfigs/g/glslang/glslang-15.3.0-GCCcore-14.3.0.eb create mode 100644 easybuild/easyconfigs/l/libclc/libclc-20.1.8-GCCcore-14.3.0.eb create mode 100644 easybuild/easyconfigs/o/OpenGL/OpenGL-2025b-GCCcore-14.3.0.eb diff --git a/easybuild/easyconfigs/g/glslang/glslang-15.3.0-GCCcore-14.3.0.eb b/easybuild/easyconfigs/g/glslang/glslang-15.3.0-GCCcore-14.3.0.eb new file mode 100644 index 000000000000..b91aa9adca55 --- /dev/null +++ b/easybuild/easyconfigs/g/glslang/glslang-15.3.0-GCCcore-14.3.0.eb @@ -0,0 +1,85 @@ +easyblock = 'CMakeMake' + +name = 'glslang' +version = '15.3.0' + +homepage = 'https://www.khronos.org/opengles/sdk/tools/Reference-Compiler/' +description = """Glslang is the official reference compiler front end for the OpenGL ES and OpenGL shading languages. +It implements a strict interpretation of the specifications for these languages. It is open and free for anyone to use, +either from a command line or programmatically. The OpenGL and OpenGL ES working groups are committed to maintaining +consistency between the reference compiler and the corresponding shading language specifications.""" + +toolchain = {'name': 'GCCcore', 'version': '14.3.0'} +toolchainopts = {'pic': True} + +# From https://github.com/KhronosGroup/glslang/blob/15.3.0/known_good.json +local_spirv_tools_commit = 'a62abcb402009b9ca5975e6167c09f237f630e0e' +local_spirv_headers_commit = 'aa6cef192b8e693916eb713e7a9ccadf06062ceb' +local_googletest_commit = 'f8d7d77c06936315286eb55f8de22cd23c188571' # equivalent to tag v1.14.0 + +local_github_repos = [ + ("KhronosGroup", "SPIRV-Tools", local_spirv_tools_commit, 'spirv-tools'), + ("KhronosGroup", "SPIRV-Headers", local_spirv_headers_commit, 'spirv-tools/external/spirv-headers'), + ("google", "googletest", local_googletest_commit, 'googletest'), +] + +sources = [ + { + 'filename': SOURCE_TAR_XZ, + 'git_config': { + 'url': 'https://github.com/KhronosGroup', + 'repo_name': '%(name)s', + 'tag': version, + }, + }, +] + +checksums = [ + {'glslang-15.3.0.tar.xz': '629cddb4dc63e03b13d4acb15917adb5261eb13d0901b1e87bebf31eb93af38c'}, + {'SPIRV-Tools-a62abcb4.tar.xz': 'fd542f1e368f5ad35f75bed14ecc797279f0232dded22fe66098633505ed8d23'}, + {'SPIRV-Headers-aa6cef19.tar.xz': 'd033dddca7e6692e1b27cb05f6dbf8d4fca23b11dd9cbfc015a43e7a04c878fa'}, + {'googletest-f8d7d77c.tar.xz': '8dd1ff67f8abca903d3f03c78eaae7b2076a73f465cb1f369f3698bfbd6f4aad'}, +] + +local_ext_dir = "%(builddir)s/glslang/External" +local_ext_cmd = "tar xvf %s --strip-components=1 -C $_" +for local_owner, local_repo, local_commit, local_dir in local_github_repos: + sources.append({ + "filename": "%s-%s.tar.xz" % (local_repo, local_commit[:8]), + "extract_cmd": f"mkdir -p {local_ext_dir}/{local_dir} && {local_ext_cmd}", + "git_config": { + "url": f"https://github.com/{local_owner}", + "repo_name": local_repo, + "commit": local_commit, + }, + }) + +builddependencies = [ + ('binutils', '2.44'), + ('CMake', '4.0.3'), + ('Bison', '3.8.2'), +] + +dependencies = [ + ('Python', '3.13.5'), # Only needed with SPIRV +] + +configopts = ' '.join([ + '-DENABLE_OPT=ON', # Needed if SPIRV is used +]) + +runtest = True + +sanity_check_paths = { + 'files': [ + 'bin/glslang', + 'lib/libglslang.a', 'lib/libGenericCodeGen.a', 'lib/libSPIRV.a', + ], + 'dirs': ['include/glslang'], +} + +sanity_check_commands = [ + 'glslang --version', +] + +moduleclass = 'compiler' diff --git a/easybuild/easyconfigs/l/libclc/libclc-20.1.8-GCCcore-14.3.0.eb b/easybuild/easyconfigs/l/libclc/libclc-20.1.8-GCCcore-14.3.0.eb new file mode 100644 index 000000000000..b08a8df0945e --- /dev/null +++ b/easybuild/easyconfigs/l/libclc/libclc-20.1.8-GCCcore-14.3.0.eb @@ -0,0 +1,31 @@ +easyblock = 'CMakeMake' + +name = 'libclc' +version = '20.1.8' + +homepage = 'https://libclc.llvm.org/' +description = """ +libclc is an open source, BSD/MIT dual licensed implementation of the library requirements of the OpenCL +C programming language, as specified by the OpenCL 1.1 Specification. +""" + +toolchain = {'name': 'GCCcore', 'version': '14.3.0'} + +source_urls = ['https://github.com/llvm/llvm-project/releases/download/llvmorg-%(version)s/'] +sources = ['libclc-%(version)s.src.tar.xz'] +checksums = ['ecd83a52859742f71f4c332538f8bee54a6743374a233b5a85017de22d75c227'] + +builddependencies = [ + ('binutils', '2.44'), + ('CMake', '4.0.3'), +] + +sanity_check_paths = { + 'files': [ + 'share/pkgconfig/libclc.pc', + 'include/clc/clc.h', + ], + 'dirs': ['include/clc', 'share/clc'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025b-GCCcore-14.3.0.eb b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025b-GCCcore-14.3.0.eb new file mode 100644 index 000000000000..903e183114bf --- /dev/null +++ b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025b-GCCcore-14.3.0.eb @@ -0,0 +1,177 @@ +easyblock = 'Bundle' + +name = 'OpenGL' +version = '2025b' + +homepage = 'http://www.opengl.org/' +description = """ +Open Graphics Library (OpenGL) is a cross-language, cross-platform application programming interface (API) for rendering +2D and 3D vector graphics. Mesa is an open-source implementation of the OpenGL specification - a system for rendering +interactive 3D graphics. NVIDIA supports OpenGL and a complete set of OpenGL extensions, designed to give a maximum +performance on NVIDIA GPUs. + +This is a GL vendor neutral dispatch (GLVND) installation with Mesa and NVIDIA in the same lib-directory. Mesa or NVIDIA +OpenGL is set individually for each XScreen. +""" + +toolchain = {'name': 'GCCcore', 'version': '14.3.0'} + +builddependencies = [ + ('binutils', '2.44'), + ('Autotools', '20250527'), + ('Bison', '3.8.2'), + ('CMake', '4.0.3'), + ('Mako', '1.3.10'), + ('Meson', '1.8.2'), + ('Ninja', '1.13.0'), + ('Python', '3.13.5'), + ('PyYAML', '6.0.2'), + ('flex', '2.6.4'), + ('expat', '2.7.1'), + ('glslang', '15.3.0'), + ('libclc', '20.1.8'), + ('libxml2', '2.14.3'), + ('pkgconf', '2.4.3'), +] + +dependencies = [ + ('LLVM', '20.1.8'), + ('Wayland', '1.24.0'), + ('X11', '20250608'), + ('elfutils', '0.193'), + ('libdrm', '2.4.125'), + ('libunwind', '1.8.2'), + ('nettle', '3.10.2'), + ('zlib', '1.3.1'), +] + +default_easyblock = 'MesonNinja' + +local_pkg_config = 'export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:%(installdir)s/lib/pkgconfig && ' +local_pkg_config += 'export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:%(installdir)s/lib64/pkgconfig && ' + +local_glew_buildopts = 'GLEW_PREFIX=%(installdir)s GLEW_DEST=%(installdir)s ' +local_glew_buildopts += 'LDFLAGS.EXTRA="-L${EBROOTX11}/lib/ -lX11" LDFLAGS.GL="-L%(installdir)s/lib -lGL"' + +local_mesa_configopts = "-Dplatforms=x11,wayland -Dvulkan-drivers='swrast,amd' -Dvulkan-layers='device-select' " +local_mesa_configopts += "-Dllvm=enabled -Dshared-llvm=enabled -Dlibunwind=enabled -Degl=enabled -Dglvnd=enabled " +local_mesa_configopts += "-Dglx=auto -Dgbm=enabled -Dgles1=enabled -Dgles2=enabled -Dgallium-drivers=llvmpipe,radeonsi " +local_mesa_configopts += "-Dvideo-codecs=vc1dec,h264dec,h264enc,h265dec,h265enc,av1dec,av1enc,vp9dec " + +components = [ + # A vendor neutral dispatch layer + ('libglvnd', '1.7.0', { + 'source_urls': ['https://gitlab.freedesktop.org/glvnd/libglvnd/-/archive/v%(version)s/'], + 'sources': ['%(name)s-v%(version)s.tar.gz'], + 'checksums': ['2b6e15b06aafb4c0b6e2348124808cbd9b291c647299eaaba2e3202f51ff2f3d'], + 'start_dir': '%(namelower)s-v%(version)s', + }), + # Mesa for software rendering, not hardware rendering. + ('Mesa', '25.1.9', { + 'easyblock': 'EB_Mesa', + 'source_urls': [ + 'https://mesa.freedesktop.org/archive/', + 'https://mesa.freedesktop.org/archive/%(version)s', + 'ftp://ftp.freedesktop.org/pub/mesa/%(version)s', + 'ftp://ftp.freedesktop.org/pub/mesa/older-versions/%(version_major)s.x/%(version)s', + 'ftp://ftp.freedesktop.org/pub/mesa/older-versions/%(version_major)s.x', + ], + 'sources': [SOURCELOWER_TAR_XZ], + 'checksums': ['412df33a1bb3c785ed698555a3972118a37c458e7accf6ae53f4bb87b3db454a'], + 'start_dir': '%(namelower)s-%(version)s', + 'preconfigopts': local_pkg_config, + 'configopts': local_mesa_configopts, + }), + # OpenGL Utility Library - offers higher level GL-graphics functions + ('libGLU', '9.0.3', { + 'source_urls': ['https://archive.mesa3d.org/glu/'], + 'sources': ['glu-%(version)s.tar.xz'], + 'checksums': ['bd43fe12f374b1192eb15fe20e45ff456b9bc26ab57f0eee919f96ca0f8a330f'], + 'start_dir': 'glu-%(version)s', + 'preconfigopts': local_pkg_config, + }), + # OpenGL Extension Wrangler Library - determines which OpenGL extensions are supported at run-time + # This is just GLEW for GLX (which requires DISPLAY to be set) and not GLEW for EGL as GLEW selects GLX/EGL at + # compile-time and not run-time (https://github.com/nigels-com/glew/issues/172#issuecomment-357400019) + # Compile+Load GLEW-EGL on top to enable GLEW for EGL + ('glew', '2.2.0', { + 'easyblock': 'ConfigureMake', + 'source_urls': ['https://github.com/nigels-com/glew/releases/download/%(name)s-%(version)s/'], + 'sources': ['%(name)s-%(version)s.tgz'], + 'checksums': ['d4fc82893cfb00109578d0a1a2337fb8ca335b3ceccf97b97e5cc7f08e4353e1'], + 'start_dir': '%(namelower)s-%(version)s', + 'skipsteps': ['configure'], + 'buildopts': local_glew_buildopts, + 'installopts': 'GLEW_PREFIX=%(installdir)s GLEW_DEST=%(installdir)s ', + 'install_cmd': 'make install.all ', + }), + # MESA demos - offers the important command 'eglinfo' + ('Mesa-demos', '9.0.0', { + 'source_urls': ['https://archive.mesa3d.org/demos/'], + 'sources': [SOURCELOWER_TAR_XZ], + 'checksums': ['3046a3d26a7b051af7ebdd257a5f23bfeb160cad6ed952329cdff1e9f1ed496b'], + 'start_dir': '%(namelower)s-%(version)s', + 'preconfigopts': local_pkg_config, + 'configopts': ' -D osmesa=disabled -D wayland=disabled', + }), +] + +postinstallcmds = [ + 'cd %(installdir)s/lib && ln -sf libGL.so.1.7.0 libGL.so.1', + 'cd %(installdir)s/lib && ln -sf libGLX_mesa.so.0 libGLX_indirect.so.0', + # EGL vendor ICDs + ( + '{ cat > %(installdir)s/share/glvnd/egl_vendor.d/10_nvidia.json; } << \'EOF\'\n' + '{\n' + ' \"file_format_version\" : \"1.0.0\",\n' + ' \"ICD\" : {\n' + ' \"library_path\" : \"libEGL_nvidia.so.0\"\n' + ' }\n' + '}\n' + 'EOF' + ), + ( + '{ cat > %(installdir)s/share/glvnd/egl_vendor.d/50_mesa.json; } << \'EOF\'\n' + '{\n' + ' \"file_format_version\" : \"1.0.0\",\n' + ' \"ICD\" : {\n' + ' \"library_path\" : \"libEGL_mesa.so.0\"\n' + ' }\n' + '}\n' + 'EOF' + ), + # correct pkg-config of GLEW + r'sed -i "/^libdir=/c\libdir=\${exec_prefix}\/lib" %(installdir)s/lib/pkgconfig/glew.pc', + r'sed -i "/^prefix=/c\prefix=%(installdir)s" %(installdir)s/lib/pkgconfig/glew.pc', +] + +modextrapaths = { + '__EGL_VENDOR_LIBRARY_DIRS': [ + '%(installdir)s/share/glvnd/egl_vendor.d/', + '/etc/glvnd/egl_vendor.d', + '/usr/share/glvnd/egl_vendor.d', + ], +} + +modextravars = { + 'EGL_PLATFORM': 'surfaceless', + 'EGL_LOG_LEVEL': 'fatal', + 'KNOB_MAX_WORKER_THREADS': '65535', +} + +sanity_check_all_components = True +sanity_check_paths = { + 'files': [ + 'lib/libEGL_mesa.%s' % SHLIB_EXT, 'lib/libGLESv1_CM.%s' % SHLIB_EXT, + 'lib/libGLESv2.%s' % SHLIB_EXT, 'include/GL/glext.h', + 'include/GL/glx.h', 'include/GL/gl.h', 'include/GL/glxext.h', + 'include/GLES/gl.h', 'include/GLES2/gl2.h', 'include/GLES3/gl3.h', + 'lib/libOpenGL.%s' % SHLIB_EXT, + 'lib/libGLEW.a', 'lib/libGLEW.%s' % SHLIB_EXT, + 'bin/glewinfo', 'bin/visualinfo', + 'include/GL/glew.h', 'include/GL/glxew.h', 'include/GL/wglew.h', + ], + 'dirs': [] +} + +moduleclass = 'vis' From a9184c4c1637c3324b73865606cb9133597d0fff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Andr=C3=A9=20Reuter?= Date: Mon, 1 Sep 2025 10:49:58 +0200 Subject: [PATCH 02/20] Add LLVM builddependency to libclc --- easybuild/easyconfigs/l/libclc/libclc-20.1.8-GCCcore-14.3.0.eb | 1 + 1 file changed, 1 insertion(+) diff --git a/easybuild/easyconfigs/l/libclc/libclc-20.1.8-GCCcore-14.3.0.eb b/easybuild/easyconfigs/l/libclc/libclc-20.1.8-GCCcore-14.3.0.eb index b08a8df0945e..77d0090a1011 100644 --- a/easybuild/easyconfigs/l/libclc/libclc-20.1.8-GCCcore-14.3.0.eb +++ b/easybuild/easyconfigs/l/libclc/libclc-20.1.8-GCCcore-14.3.0.eb @@ -18,6 +18,7 @@ checksums = ['ecd83a52859742f71f4c332538f8bee54a6743374a233b5a85017de22d75c227'] builddependencies = [ ('binutils', '2.44'), ('CMake', '4.0.3'), + ('LLVM', '20.1.8'), ] sanity_check_paths = { From 2d58e9966e166b59e7260a6229be3ebba81a9b2c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Andr=C3=A9=20Reuter?= Date: Mon, 1 Sep 2025 11:08:17 +0200 Subject: [PATCH 03/20] Update Mesa URL & version --- .../o/OpenGL/OpenGL-2025b-GCCcore-14.3.0.eb | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025b-GCCcore-14.3.0.eb b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025b-GCCcore-14.3.0.eb index 903e183114bf..879e844d93e4 100644 --- a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025b-GCCcore-14.3.0.eb +++ b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025b-GCCcore-14.3.0.eb @@ -67,17 +67,14 @@ components = [ 'start_dir': '%(namelower)s-v%(version)s', }), # Mesa for software rendering, not hardware rendering. - ('Mesa', '25.1.9', { + ('Mesa', '25.2.1', { 'easyblock': 'EB_Mesa', 'source_urls': [ - 'https://mesa.freedesktop.org/archive/', - 'https://mesa.freedesktop.org/archive/%(version)s', - 'ftp://ftp.freedesktop.org/pub/mesa/%(version)s', - 'ftp://ftp.freedesktop.org/pub/mesa/older-versions/%(version_major)s.x/%(version)s', - 'ftp://ftp.freedesktop.org/pub/mesa/older-versions/%(version_major)s.x', + 'https://archive.mesa3d.org/', + 'https://archive.mesa3d.org/older-versions/%(version_major)s.x/', ], 'sources': [SOURCELOWER_TAR_XZ], - 'checksums': ['412df33a1bb3c785ed698555a3972118a37c458e7accf6ae53f4bb87b3db454a'], + 'checksums': ['c124372189d35f48e049ee503029171c68962c580971cb86d968a6771c965ba4'], 'start_dir': '%(namelower)s-%(version)s', 'preconfigopts': local_pkg_config, 'configopts': local_mesa_configopts, From 4a768e61bc719e24153743ebd55544980cd48069 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Andr=C3=A9=20Reuter?= Date: Mon, 1 Sep 2025 13:52:25 +0200 Subject: [PATCH 04/20] Rename OpenGL and add GLEW patch --- .../o/OpenGL/OpenGL-2025.08-GCCcore-14.3.0.eb | 179 ++++++++++++++++++ 1 file changed, 179 insertions(+) create mode 100644 easybuild/easyconfigs/o/OpenGL/OpenGL-2025.08-GCCcore-14.3.0.eb diff --git a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.08-GCCcore-14.3.0.eb b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.08-GCCcore-14.3.0.eb new file mode 100644 index 000000000000..afa27d3d42a5 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.08-GCCcore-14.3.0.eb @@ -0,0 +1,179 @@ +easyblock = 'Bundle' + +name = 'OpenGL' +version = '2025.08' + +homepage = 'http://www.opengl.org/' +description = """ +Open Graphics Library (OpenGL) is a cross-language, cross-platform application programming interface (API) for rendering +2D and 3D vector graphics. Mesa is an open-source implementation of the OpenGL specification - a system for rendering +interactive 3D graphics. NVIDIA supports OpenGL and a complete set of OpenGL extensions, designed to give a maximum +performance on NVIDIA GPUs. + +This is a GL vendor neutral dispatch (GLVND) installation with Mesa and NVIDIA in the same lib-directory. Mesa or NVIDIA +OpenGL is set individually for each XScreen. +""" + +toolchain = {'name': 'GCCcore', 'version': '14.3.0'} + +builddependencies = [ + ('binutils', '2.44'), + ('Bison', '3.8.2'), + ('CMake', '4.0.3'), + ('Mako', '1.3.10'), + ('Meson', '1.8.2'), + ('Ninja', '1.13.0'), + ('Python', '3.13.5'), + ('PyYAML', '6.0.2'), + ('flex', '2.6.4'), + ('expat', '2.7.1'), + ('glslang', '15.3.0'), + ('libclc', '20.1.8'), + ('libxml2', '2.14.3'), + ('pkgconf', '2.4.3'), +] + +dependencies = [ + ('LLVM', '20.1.8'), + ('Wayland', '1.24.0'), + ('X11', '20250608'), + ('elfutils', '0.193'), + ('libdrm', '2.4.125'), + ('libunwind', '1.8.2'), + ('nettle', '3.10.2'), + ('zlib', '1.3.1'), +] + +default_easyblock = 'MesonNinja' + +local_pkg_config = 'export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:%(installdir)s/lib/pkgconfig && ' +local_pkg_config += 'export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:%(installdir)s/lib64/pkgconfig && ' + +local_glew_buildopts = 'GLEW_PREFIX=%(installdir)s GLEW_DEST=%(installdir)s ' +local_glew_buildopts += 'LDFLAGS.EXTRA="-L${EBROOTX11}/lib/ -lX11" LDFLAGS.GL="-L%(installdir)s/lib -lGL"' + +local_mesa_configopts = "-Dplatforms=x11,wayland -Dvulkan-drivers='swrast,amd' -Dvulkan-layers='device-select' " +local_mesa_configopts += "-Dllvm=enabled -Dshared-llvm=enabled -Dlibunwind=enabled -Degl=enabled -Dglvnd=enabled " +local_mesa_configopts += "-Dglx=auto -Dgbm=enabled -Dgles1=enabled -Dgles2=enabled -Dgallium-drivers=llvmpipe,radeonsi " +local_mesa_configopts += "-Dvideo-codecs=vc1dec,h264dec,h264enc,h265dec,h265enc,av1dec,av1enc,vp9dec " + +components = [ + # A vendor neutral dispatch layer + ('libglvnd', '1.7.0', { + 'source_urls': ['https://gitlab.freedesktop.org/glvnd/libglvnd/-/archive/v%(version)s/'], + 'sources': ['%(name)s-v%(version)s.tar.gz'], + 'checksums': ['2b6e15b06aafb4c0b6e2348124808cbd9b291c647299eaaba2e3202f51ff2f3d'], + 'start_dir': '%(namelower)s-v%(version)s', + }), + # Mesa for software rendering, not hardware rendering. + ('Mesa', '25.2.1', { + 'easyblock': 'EB_Mesa', + 'source_urls': [ + 'https://archive.mesa3d.org/', + 'https://archive.mesa3d.org/older-versions/%(version_major)s.x/', + ], + 'sources': [SOURCELOWER_TAR_XZ], + 'checksums': ['c124372189d35f48e049ee503029171c68962c580971cb86d968a6771c965ba4'], + 'start_dir': '%(namelower)s-%(version)s', + 'preconfigopts': local_pkg_config, + 'configopts': local_mesa_configopts, + }), + # OpenGL Utility Library - offers higher level GL-graphics functions + ('libGLU', '9.0.3', { + 'source_urls': ['https://archive.mesa3d.org/glu/'], + 'sources': ['glu-%(version)s.tar.xz'], + 'checksums': ['bd43fe12f374b1192eb15fe20e45ff456b9bc26ab57f0eee919f96ca0f8a330f'], + 'start_dir': 'glu-%(version)s', + 'preconfigopts': local_pkg_config, + }), + # OpenGL Extension Wrangler Library - determines which OpenGL extensions are supported at run-time + # This is just GLEW for GLX (which requires DISPLAY to be set) and not GLEW for EGL as GLEW selects GLX/EGL at + # compile-time and not run-time (https://github.com/nigels-com/glew/issues/172#issuecomment-357400019) + # Compile+Load GLEW-EGL on top to enable GLEW for EGL + ('glew', '2.2.0', { + 'easyblock': 'ConfigureMake', + 'source_urls': ['https://github.com/nigels-com/glew/releases/download/%(name)s-%(version)s/'], + 'sources': ['%(name)s-%(version)s.tgz'], + 'patches': [ + {'name': 'glew-2.2.0-uintptr_t.patch', 'alt_location': 'glew'}, + ], + 'checksums': [ + {'glew-2.2.0.tgz': 'd4fc82893cfb00109578d0a1a2337fb8ca335b3ceccf97b97e5cc7f08e4353e1'}, + {'glew-2.2.0-uintptr_t.patch': '30fffe5b6606ae840fd5d10d353196c8faf3b88618ab8db03bd1b50dde98a280'}, + ], + 'start_dir': '%(namelower)s-%(version)s', + 'skipsteps': ['configure'], + 'buildopts': local_glew_buildopts, + 'installopts': 'GLEW_PREFIX=%(installdir)s GLEW_DEST=%(installdir)s ', + 'install_cmd': 'make install.all ', + }), + # MESA demos - offers the important command 'eglinfo' + ('Mesa-demos', '9.0.0', { + 'source_urls': ['https://archive.mesa3d.org/demos/'], + 'sources': [SOURCELOWER_TAR_XZ], + 'checksums': ['3046a3d26a7b051af7ebdd257a5f23bfeb160cad6ed952329cdff1e9f1ed496b'], + 'start_dir': '%(namelower)s-%(version)s', + 'preconfigopts': local_pkg_config, + 'configopts': ' -D osmesa=disabled -D wayland=disabled', + }), +] + +postinstallcmds = [ + 'cd %(installdir)s/lib && ln -sf libGL.so.1.7.0 libGL.so.1', + 'cd %(installdir)s/lib && ln -sf libGLX_mesa.so.0 libGLX_indirect.so.0', + # EGL vendor ICDs + ( + '{ cat > %(installdir)s/share/glvnd/egl_vendor.d/10_nvidia.json; } << \'EOF\'\n' + '{\n' + ' \"file_format_version\" : \"1.0.0\",\n' + ' \"ICD\" : {\n' + ' \"library_path\" : \"libEGL_nvidia.so.0\"\n' + ' }\n' + '}\n' + 'EOF' + ), + ( + '{ cat > %(installdir)s/share/glvnd/egl_vendor.d/50_mesa.json; } << \'EOF\'\n' + '{\n' + ' \"file_format_version\" : \"1.0.0\",\n' + ' \"ICD\" : {\n' + ' \"library_path\" : \"libEGL_mesa.so.0\"\n' + ' }\n' + '}\n' + 'EOF' + ), + # correct pkg-config of GLEW + r'sed -i "/^libdir=/c\libdir=\${exec_prefix}\/lib" %(installdir)s/lib/pkgconfig/glew.pc', + r'sed -i "/^prefix=/c\prefix=%(installdir)s" %(installdir)s/lib/pkgconfig/glew.pc', +] + +modextrapaths = { + '__EGL_VENDOR_LIBRARY_DIRS': [ + '%(installdir)s/share/glvnd/egl_vendor.d/', + '/etc/glvnd/egl_vendor.d', + '/usr/share/glvnd/egl_vendor.d', + ], +} + +modextravars = { + 'EGL_PLATFORM': 'surfaceless', + 'EGL_LOG_LEVEL': 'fatal', + 'KNOB_MAX_WORKER_THREADS': '65535', +} + +sanity_check_all_components = True +sanity_check_paths = { + 'files': [ + 'lib/libEGL_mesa.%s' % SHLIB_EXT, 'lib/libGLESv1_CM.%s' % SHLIB_EXT, + 'lib/libGLESv2.%s' % SHLIB_EXT, 'include/GL/glext.h', + 'include/GL/glx.h', 'include/GL/gl.h', 'include/GL/glxext.h', + 'include/GLES/gl.h', 'include/GLES2/gl2.h', 'include/GLES3/gl3.h', + 'lib/libOpenGL.%s' % SHLIB_EXT, + 'lib/libGLEW.a', 'lib/libGLEW.%s' % SHLIB_EXT, + 'bin/glewinfo', 'bin/visualinfo', + 'include/GL/glew.h', 'include/GL/glxew.h', 'include/GL/wglew.h', + ], + 'dirs': [] +} + +moduleclass = 'vis' From d728be414054a1095d5964d616101c300d6376dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Andr=C3=A9=20Reuter?= Date: Mon, 1 Sep 2025 13:52:53 +0200 Subject: [PATCH 05/20] Drop old OpenGL EC MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Jan André Reuter --- .../o/OpenGL/OpenGL-2025b-GCCcore-14.3.0.eb | 174 ------------------ 1 file changed, 174 deletions(-) delete mode 100644 easybuild/easyconfigs/o/OpenGL/OpenGL-2025b-GCCcore-14.3.0.eb diff --git a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025b-GCCcore-14.3.0.eb b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025b-GCCcore-14.3.0.eb deleted file mode 100644 index 879e844d93e4..000000000000 --- a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025b-GCCcore-14.3.0.eb +++ /dev/null @@ -1,174 +0,0 @@ -easyblock = 'Bundle' - -name = 'OpenGL' -version = '2025b' - -homepage = 'http://www.opengl.org/' -description = """ -Open Graphics Library (OpenGL) is a cross-language, cross-platform application programming interface (API) for rendering -2D and 3D vector graphics. Mesa is an open-source implementation of the OpenGL specification - a system for rendering -interactive 3D graphics. NVIDIA supports OpenGL and a complete set of OpenGL extensions, designed to give a maximum -performance on NVIDIA GPUs. - -This is a GL vendor neutral dispatch (GLVND) installation with Mesa and NVIDIA in the same lib-directory. Mesa or NVIDIA -OpenGL is set individually for each XScreen. -""" - -toolchain = {'name': 'GCCcore', 'version': '14.3.0'} - -builddependencies = [ - ('binutils', '2.44'), - ('Autotools', '20250527'), - ('Bison', '3.8.2'), - ('CMake', '4.0.3'), - ('Mako', '1.3.10'), - ('Meson', '1.8.2'), - ('Ninja', '1.13.0'), - ('Python', '3.13.5'), - ('PyYAML', '6.0.2'), - ('flex', '2.6.4'), - ('expat', '2.7.1'), - ('glslang', '15.3.0'), - ('libclc', '20.1.8'), - ('libxml2', '2.14.3'), - ('pkgconf', '2.4.3'), -] - -dependencies = [ - ('LLVM', '20.1.8'), - ('Wayland', '1.24.0'), - ('X11', '20250608'), - ('elfutils', '0.193'), - ('libdrm', '2.4.125'), - ('libunwind', '1.8.2'), - ('nettle', '3.10.2'), - ('zlib', '1.3.1'), -] - -default_easyblock = 'MesonNinja' - -local_pkg_config = 'export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:%(installdir)s/lib/pkgconfig && ' -local_pkg_config += 'export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:%(installdir)s/lib64/pkgconfig && ' - -local_glew_buildopts = 'GLEW_PREFIX=%(installdir)s GLEW_DEST=%(installdir)s ' -local_glew_buildopts += 'LDFLAGS.EXTRA="-L${EBROOTX11}/lib/ -lX11" LDFLAGS.GL="-L%(installdir)s/lib -lGL"' - -local_mesa_configopts = "-Dplatforms=x11,wayland -Dvulkan-drivers='swrast,amd' -Dvulkan-layers='device-select' " -local_mesa_configopts += "-Dllvm=enabled -Dshared-llvm=enabled -Dlibunwind=enabled -Degl=enabled -Dglvnd=enabled " -local_mesa_configopts += "-Dglx=auto -Dgbm=enabled -Dgles1=enabled -Dgles2=enabled -Dgallium-drivers=llvmpipe,radeonsi " -local_mesa_configopts += "-Dvideo-codecs=vc1dec,h264dec,h264enc,h265dec,h265enc,av1dec,av1enc,vp9dec " - -components = [ - # A vendor neutral dispatch layer - ('libglvnd', '1.7.0', { - 'source_urls': ['https://gitlab.freedesktop.org/glvnd/libglvnd/-/archive/v%(version)s/'], - 'sources': ['%(name)s-v%(version)s.tar.gz'], - 'checksums': ['2b6e15b06aafb4c0b6e2348124808cbd9b291c647299eaaba2e3202f51ff2f3d'], - 'start_dir': '%(namelower)s-v%(version)s', - }), - # Mesa for software rendering, not hardware rendering. - ('Mesa', '25.2.1', { - 'easyblock': 'EB_Mesa', - 'source_urls': [ - 'https://archive.mesa3d.org/', - 'https://archive.mesa3d.org/older-versions/%(version_major)s.x/', - ], - 'sources': [SOURCELOWER_TAR_XZ], - 'checksums': ['c124372189d35f48e049ee503029171c68962c580971cb86d968a6771c965ba4'], - 'start_dir': '%(namelower)s-%(version)s', - 'preconfigopts': local_pkg_config, - 'configopts': local_mesa_configopts, - }), - # OpenGL Utility Library - offers higher level GL-graphics functions - ('libGLU', '9.0.3', { - 'source_urls': ['https://archive.mesa3d.org/glu/'], - 'sources': ['glu-%(version)s.tar.xz'], - 'checksums': ['bd43fe12f374b1192eb15fe20e45ff456b9bc26ab57f0eee919f96ca0f8a330f'], - 'start_dir': 'glu-%(version)s', - 'preconfigopts': local_pkg_config, - }), - # OpenGL Extension Wrangler Library - determines which OpenGL extensions are supported at run-time - # This is just GLEW for GLX (which requires DISPLAY to be set) and not GLEW for EGL as GLEW selects GLX/EGL at - # compile-time and not run-time (https://github.com/nigels-com/glew/issues/172#issuecomment-357400019) - # Compile+Load GLEW-EGL on top to enable GLEW for EGL - ('glew', '2.2.0', { - 'easyblock': 'ConfigureMake', - 'source_urls': ['https://github.com/nigels-com/glew/releases/download/%(name)s-%(version)s/'], - 'sources': ['%(name)s-%(version)s.tgz'], - 'checksums': ['d4fc82893cfb00109578d0a1a2337fb8ca335b3ceccf97b97e5cc7f08e4353e1'], - 'start_dir': '%(namelower)s-%(version)s', - 'skipsteps': ['configure'], - 'buildopts': local_glew_buildopts, - 'installopts': 'GLEW_PREFIX=%(installdir)s GLEW_DEST=%(installdir)s ', - 'install_cmd': 'make install.all ', - }), - # MESA demos - offers the important command 'eglinfo' - ('Mesa-demos', '9.0.0', { - 'source_urls': ['https://archive.mesa3d.org/demos/'], - 'sources': [SOURCELOWER_TAR_XZ], - 'checksums': ['3046a3d26a7b051af7ebdd257a5f23bfeb160cad6ed952329cdff1e9f1ed496b'], - 'start_dir': '%(namelower)s-%(version)s', - 'preconfigopts': local_pkg_config, - 'configopts': ' -D osmesa=disabled -D wayland=disabled', - }), -] - -postinstallcmds = [ - 'cd %(installdir)s/lib && ln -sf libGL.so.1.7.0 libGL.so.1', - 'cd %(installdir)s/lib && ln -sf libGLX_mesa.so.0 libGLX_indirect.so.0', - # EGL vendor ICDs - ( - '{ cat > %(installdir)s/share/glvnd/egl_vendor.d/10_nvidia.json; } << \'EOF\'\n' - '{\n' - ' \"file_format_version\" : \"1.0.0\",\n' - ' \"ICD\" : {\n' - ' \"library_path\" : \"libEGL_nvidia.so.0\"\n' - ' }\n' - '}\n' - 'EOF' - ), - ( - '{ cat > %(installdir)s/share/glvnd/egl_vendor.d/50_mesa.json; } << \'EOF\'\n' - '{\n' - ' \"file_format_version\" : \"1.0.0\",\n' - ' \"ICD\" : {\n' - ' \"library_path\" : \"libEGL_mesa.so.0\"\n' - ' }\n' - '}\n' - 'EOF' - ), - # correct pkg-config of GLEW - r'sed -i "/^libdir=/c\libdir=\${exec_prefix}\/lib" %(installdir)s/lib/pkgconfig/glew.pc', - r'sed -i "/^prefix=/c\prefix=%(installdir)s" %(installdir)s/lib/pkgconfig/glew.pc', -] - -modextrapaths = { - '__EGL_VENDOR_LIBRARY_DIRS': [ - '%(installdir)s/share/glvnd/egl_vendor.d/', - '/etc/glvnd/egl_vendor.d', - '/usr/share/glvnd/egl_vendor.d', - ], -} - -modextravars = { - 'EGL_PLATFORM': 'surfaceless', - 'EGL_LOG_LEVEL': 'fatal', - 'KNOB_MAX_WORKER_THREADS': '65535', -} - -sanity_check_all_components = True -sanity_check_paths = { - 'files': [ - 'lib/libEGL_mesa.%s' % SHLIB_EXT, 'lib/libGLESv1_CM.%s' % SHLIB_EXT, - 'lib/libGLESv2.%s' % SHLIB_EXT, 'include/GL/glext.h', - 'include/GL/glx.h', 'include/GL/gl.h', 'include/GL/glxext.h', - 'include/GLES/gl.h', 'include/GLES2/gl2.h', 'include/GLES3/gl3.h', - 'lib/libOpenGL.%s' % SHLIB_EXT, - 'lib/libGLEW.a', 'lib/libGLEW.%s' % SHLIB_EXT, - 'bin/glewinfo', 'bin/visualinfo', - 'include/GL/glew.h', 'include/GL/glxew.h', 'include/GL/wglew.h', - ], - 'dirs': [] -} - -moduleclass = 'vis' From 03edbbc4652b6004b8564db4a5980137bb14e0f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Andr=C3=A9=20Reuter?= Date: Mon, 1 Sep 2025 13:58:02 +0200 Subject: [PATCH 06/20] Drop GLEW pkg-config fixes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Jan André Reuter --- .../easyconfigs/o/OpenGL/OpenGL-2025.08-GCCcore-14.3.0.eb | 3 --- 1 file changed, 3 deletions(-) diff --git a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.08-GCCcore-14.3.0.eb b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.08-GCCcore-14.3.0.eb index afa27d3d42a5..442506fe5a42 100644 --- a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.08-GCCcore-14.3.0.eb +++ b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.08-GCCcore-14.3.0.eb @@ -142,9 +142,6 @@ postinstallcmds = [ '}\n' 'EOF' ), - # correct pkg-config of GLEW - r'sed -i "/^libdir=/c\libdir=\${exec_prefix}\/lib" %(installdir)s/lib/pkgconfig/glew.pc', - r'sed -i "/^prefix=/c\prefix=%(installdir)s" %(installdir)s/lib/pkgconfig/glew.pc', ] modextrapaths = { From ac3f11edce0f9c46b4379852e3ac9a6e11328791 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Andr=C3=A9=20Reuter?= Date: Fri, 12 Sep 2025 13:29:34 +0200 Subject: [PATCH 07/20] Switch to glslang-SPIRV as done in 2025a MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Jan André Reuter --- .../glslang-SPIRV-15.4.0-GCCcore-14.3.0.eb} | 38 +++++++------------ 1 file changed, 14 insertions(+), 24 deletions(-) rename easybuild/easyconfigs/g/{glslang/glslang-15.3.0-GCCcore-14.3.0.eb => glslang-SPIRV/glslang-SPIRV-15.4.0-GCCcore-14.3.0.eb} (65%) diff --git a/easybuild/easyconfigs/g/glslang/glslang-15.3.0-GCCcore-14.3.0.eb b/easybuild/easyconfigs/g/glslang-SPIRV/glslang-SPIRV-15.4.0-GCCcore-14.3.0.eb similarity index 65% rename from easybuild/easyconfigs/g/glslang/glslang-15.3.0-GCCcore-14.3.0.eb rename to easybuild/easyconfigs/g/glslang-SPIRV/glslang-SPIRV-15.4.0-GCCcore-14.3.0.eb index b91aa9adca55..e15935be826a 100644 --- a/easybuild/easyconfigs/g/glslang/glslang-15.3.0-GCCcore-14.3.0.eb +++ b/easybuild/easyconfigs/g/glslang-SPIRV/glslang-SPIRV-15.4.0-GCCcore-14.3.0.eb @@ -1,7 +1,7 @@ easyblock = 'CMakeMake' -name = 'glslang' -version = '15.3.0' +name = 'glslang-SPIRV' +version = '15.4.0' homepage = 'https://www.khronos.org/opengles/sdk/tools/Reference-Compiler/' description = """Glslang is the official reference compiler front end for the OpenGL ES and OpenGL shading languages. @@ -12,9 +12,9 @@ consistency between the reference compiler and the corresponding shading languag toolchain = {'name': 'GCCcore', 'version': '14.3.0'} toolchainopts = {'pic': True} -# From https://github.com/KhronosGroup/glslang/blob/15.3.0/known_good.json -local_spirv_tools_commit = 'a62abcb402009b9ca5975e6167c09f237f630e0e' -local_spirv_headers_commit = 'aa6cef192b8e693916eb713e7a9ccadf06062ceb' +# From https://github.com/KhronosGroup/glslang/blob/15.4.0/known_good.json +local_spirv_tools_commit = '33e02568181e3312f49a3cf33df470bf96ef293a' # equivalent to v2025.3.0.rc1 +local_spirv_headers_commit = '2a611a970fdbc41ac2e3e328802aed9985352dca' # equivalent to v1.4.321.0 local_googletest_commit = 'f8d7d77c06936315286eb55f8de22cd23c188571' # equivalent to tag v1.14.0 local_github_repos = [ @@ -23,29 +23,20 @@ local_github_repos = [ ("google", "googletest", local_googletest_commit, 'googletest'), ] -sources = [ - { - 'filename': SOURCE_TAR_XZ, - 'git_config': { - 'url': 'https://github.com/KhronosGroup', - 'repo_name': '%(name)s', - 'tag': version, - }, - }, -] - +sources = ['https://github.com/KhronosGroup/glslang/archive/%(version)s.tar.gz'] checksums = [ - {'glslang-15.3.0.tar.xz': '629cddb4dc63e03b13d4acb15917adb5261eb13d0901b1e87bebf31eb93af38c'}, - {'SPIRV-Tools-a62abcb4.tar.xz': 'fd542f1e368f5ad35f75bed14ecc797279f0232dded22fe66098633505ed8d23'}, - {'SPIRV-Headers-aa6cef19.tar.xz': 'd033dddca7e6692e1b27cb05f6dbf8d4fca23b11dd9cbfc015a43e7a04c878fa'}, + {'15.4.0.tar.gz': 'b16c78e7604b9be9f546ee35ad8b6db6f39bbbbfb19e8d038b6fe2ea5bba4ff4'}, + {'SPIRV-Tools-33e02568.tar.xz': '57cc1a374b2d4829a3165b586f287d33e6beb4ee69d49e42c80a2cd2e8983c1d'}, + {'SPIRV-Headers-2a611a97.tar.xz': '0333b5d2c63b95be3771a3146b3692e7a6720889187275669119c14a48e3fd6e'}, {'googletest-f8d7d77c.tar.xz': '8dd1ff67f8abca903d3f03c78eaae7b2076a73f465cb1f369f3698bfbd6f4aad'}, ] -local_ext_dir = "%(builddir)s/glslang/External" +# Extend the sources by adding external components from their respective GitHub repos at the known good commits +local_ext_dir = "%(builddir)s/glslang-%(version)s/External" # Where the external components are expected to be local_ext_cmd = "tar xvf %s --strip-components=1 -C $_" for local_owner, local_repo, local_commit, local_dir in local_github_repos: sources.append({ - "filename": "%s-%s.tar.xz" % (local_repo, local_commit[:8]), + "filename": f"{local_repo}-{local_commit[:8]}.tar.xz", "extract_cmd": f"mkdir -p {local_ext_dir}/{local_dir} && {local_ext_cmd}", "git_config": { "url": f"https://github.com/{local_owner}", @@ -54,6 +45,7 @@ for local_owner, local_repo, local_commit, local_dir in local_github_repos: }, }) + builddependencies = [ ('binutils', '2.44'), ('CMake', '4.0.3'), @@ -64,9 +56,7 @@ dependencies = [ ('Python', '3.13.5'), # Only needed with SPIRV ] -configopts = ' '.join([ - '-DENABLE_OPT=ON', # Needed if SPIRV is used -]) +configopts = "-DENABLE_OPT=ON" # Needed if SPIRV is used runtest = True From 1732c820700a8b44e8ffca632a00926cbb18fd3c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Andr=C3=A9=20Reuter?= Date: Fri, 12 Sep 2025 13:30:08 +0200 Subject: [PATCH 08/20] Update OpenGL dependency for glslang-SPIRV MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Jan André Reuter --- easybuild/easyconfigs/o/OpenGL/OpenGL-2025.08-GCCcore-14.3.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.08-GCCcore-14.3.0.eb b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.08-GCCcore-14.3.0.eb index 442506fe5a42..31fce63fd1de 100644 --- a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.08-GCCcore-14.3.0.eb +++ b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.08-GCCcore-14.3.0.eb @@ -27,7 +27,7 @@ builddependencies = [ ('PyYAML', '6.0.2'), ('flex', '2.6.4'), ('expat', '2.7.1'), - ('glslang', '15.3.0'), + ('glslang-SPIRV', '15.4.0'), ('libclc', '20.1.8'), ('libxml2', '2.14.3'), ('pkgconf', '2.4.3'), From 8d27165a67a302990e2741d40d0d5666ca5ce151 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Andr=C3=A9=20Reuter?= Date: Fri, 12 Sep 2025 13:33:23 +0200 Subject: [PATCH 09/20] Update Mesa to 25.2.2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Jan André Reuter --- ....08-GCCcore-14.3.0.eb => OpenGL-2025.09-GCCcore-14.3.0.eb} | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) rename easybuild/easyconfigs/o/OpenGL/{OpenGL-2025.08-GCCcore-14.3.0.eb => OpenGL-2025.09-GCCcore-14.3.0.eb} (98%) diff --git a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.08-GCCcore-14.3.0.eb b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb similarity index 98% rename from easybuild/easyconfigs/o/OpenGL/OpenGL-2025.08-GCCcore-14.3.0.eb rename to easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb index 31fce63fd1de..104bfd23059f 100644 --- a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.08-GCCcore-14.3.0.eb +++ b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb @@ -66,14 +66,14 @@ components = [ 'start_dir': '%(namelower)s-v%(version)s', }), # Mesa for software rendering, not hardware rendering. - ('Mesa', '25.2.1', { + ('Mesa', '25.2.2', { 'easyblock': 'EB_Mesa', 'source_urls': [ 'https://archive.mesa3d.org/', 'https://archive.mesa3d.org/older-versions/%(version_major)s.x/', ], 'sources': [SOURCELOWER_TAR_XZ], - 'checksums': ['c124372189d35f48e049ee503029171c68962c580971cb86d968a6771c965ba4'], + 'checksums': ['43d7abcd4aa8049d8fd75538344a374104765e81e17b4a6314cee2c0160e4412'], 'start_dir': '%(namelower)s-%(version)s', 'preconfigopts': local_pkg_config, 'configopts': local_mesa_configopts, From 1e004c17261986629fa68332bd1cda91ef9a96f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Andr=C3=A9=20Reuter?= Date: Fri, 12 Sep 2025 13:53:18 +0200 Subject: [PATCH 10/20] Fix OpenGL version MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Jan André Reuter --- easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb index 104bfd23059f..012e5d5650e6 100644 --- a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb +++ b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb @@ -1,7 +1,7 @@ easyblock = 'Bundle' name = 'OpenGL' -version = '2025.08' +version = '2025.09' homepage = 'http://www.opengl.org/' description = """ From 1432361986be6108c29a2b657dd63013458674a9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Andr=C3=A9=20Reuter?= Date: Fri, 12 Sep 2025 14:04:04 +0200 Subject: [PATCH 11/20] Move checksums below for loop in glslang again MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Jan André Reuter --- .../glslang-SPIRV-15.4.0-GCCcore-14.3.0.eb | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/easybuild/easyconfigs/g/glslang-SPIRV/glslang-SPIRV-15.4.0-GCCcore-14.3.0.eb b/easybuild/easyconfigs/g/glslang-SPIRV/glslang-SPIRV-15.4.0-GCCcore-14.3.0.eb index e15935be826a..a421ca1c6617 100644 --- a/easybuild/easyconfigs/g/glslang-SPIRV/glslang-SPIRV-15.4.0-GCCcore-14.3.0.eb +++ b/easybuild/easyconfigs/g/glslang-SPIRV/glslang-SPIRV-15.4.0-GCCcore-14.3.0.eb @@ -24,12 +24,6 @@ local_github_repos = [ ] sources = ['https://github.com/KhronosGroup/glslang/archive/%(version)s.tar.gz'] -checksums = [ - {'15.4.0.tar.gz': 'b16c78e7604b9be9f546ee35ad8b6db6f39bbbbfb19e8d038b6fe2ea5bba4ff4'}, - {'SPIRV-Tools-33e02568.tar.xz': '57cc1a374b2d4829a3165b586f287d33e6beb4ee69d49e42c80a2cd2e8983c1d'}, - {'SPIRV-Headers-2a611a97.tar.xz': '0333b5d2c63b95be3771a3146b3692e7a6720889187275669119c14a48e3fd6e'}, - {'googletest-f8d7d77c.tar.xz': '8dd1ff67f8abca903d3f03c78eaae7b2076a73f465cb1f369f3698bfbd6f4aad'}, -] # Extend the sources by adding external components from their respective GitHub repos at the known good commits local_ext_dir = "%(builddir)s/glslang-%(version)s/External" # Where the external components are expected to be @@ -45,6 +39,12 @@ for local_owner, local_repo, local_commit, local_dir in local_github_repos: }, }) +checksums = [ + {'15.4.0.tar.gz': 'b16c78e7604b9be9f546ee35ad8b6db6f39bbbbfb19e8d038b6fe2ea5bba4ff4'}, + {'SPIRV-Tools-33e02568.tar.xz': '57cc1a374b2d4829a3165b586f287d33e6beb4ee69d49e42c80a2cd2e8983c1d'}, + {'SPIRV-Headers-2a611a97.tar.xz': '0333b5d2c63b95be3771a3146b3692e7a6720889187275669119c14a48e3fd6e'}, + {'googletest-f8d7d77c.tar.xz': '8dd1ff67f8abca903d3f03c78eaae7b2076a73f465cb1f369f3698bfbd6f4aad'}, +] builddependencies = [ ('binutils', '2.44'), From b3bb20e51932785be06549363748dffdf555846c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Andr=C3=A9=20Reuter?= Date: Tue, 23 Sep 2025 09:32:11 +0200 Subject: [PATCH 12/20] Drop EGL vendor ICD files, provided by Mesa & NVIDIA driver MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Jan André Reuter --- .../o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb | 21 ------------------- 1 file changed, 21 deletions(-) diff --git a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb index 012e5d5650e6..283f25e1a890 100644 --- a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb +++ b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb @@ -121,27 +121,6 @@ components = [ postinstallcmds = [ 'cd %(installdir)s/lib && ln -sf libGL.so.1.7.0 libGL.so.1', 'cd %(installdir)s/lib && ln -sf libGLX_mesa.so.0 libGLX_indirect.so.0', - # EGL vendor ICDs - ( - '{ cat > %(installdir)s/share/glvnd/egl_vendor.d/10_nvidia.json; } << \'EOF\'\n' - '{\n' - ' \"file_format_version\" : \"1.0.0\",\n' - ' \"ICD\" : {\n' - ' \"library_path\" : \"libEGL_nvidia.so.0\"\n' - ' }\n' - '}\n' - 'EOF' - ), - ( - '{ cat > %(installdir)s/share/glvnd/egl_vendor.d/50_mesa.json; } << \'EOF\'\n' - '{\n' - ' \"file_format_version\" : \"1.0.0\",\n' - ' \"ICD\" : {\n' - ' \"library_path\" : \"libEGL_mesa.so.0\"\n' - ' }\n' - '}\n' - 'EOF' - ), ] modextrapaths = { From 7c5cc48b587acaf7cbb78d29e874dae627798db0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Andr=C3=A9=20Reuter?= Date: Tue, 23 Sep 2025 09:32:37 +0200 Subject: [PATCH 13/20] Drop GLEW, should be separate EasyConfig if needed at all MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Jan André Reuter --- .../o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb | 21 ------------------- 1 file changed, 21 deletions(-) diff --git a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb index 283f25e1a890..20e22c612225 100644 --- a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb +++ b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb @@ -86,27 +86,6 @@ components = [ 'start_dir': 'glu-%(version)s', 'preconfigopts': local_pkg_config, }), - # OpenGL Extension Wrangler Library - determines which OpenGL extensions are supported at run-time - # This is just GLEW for GLX (which requires DISPLAY to be set) and not GLEW for EGL as GLEW selects GLX/EGL at - # compile-time and not run-time (https://github.com/nigels-com/glew/issues/172#issuecomment-357400019) - # Compile+Load GLEW-EGL on top to enable GLEW for EGL - ('glew', '2.2.0', { - 'easyblock': 'ConfigureMake', - 'source_urls': ['https://github.com/nigels-com/glew/releases/download/%(name)s-%(version)s/'], - 'sources': ['%(name)s-%(version)s.tgz'], - 'patches': [ - {'name': 'glew-2.2.0-uintptr_t.patch', 'alt_location': 'glew'}, - ], - 'checksums': [ - {'glew-2.2.0.tgz': 'd4fc82893cfb00109578d0a1a2337fb8ca335b3ceccf97b97e5cc7f08e4353e1'}, - {'glew-2.2.0-uintptr_t.patch': '30fffe5b6606ae840fd5d10d353196c8faf3b88618ab8db03bd1b50dde98a280'}, - ], - 'start_dir': '%(namelower)s-%(version)s', - 'skipsteps': ['configure'], - 'buildopts': local_glew_buildopts, - 'installopts': 'GLEW_PREFIX=%(installdir)s GLEW_DEST=%(installdir)s ', - 'install_cmd': 'make install.all ', - }), # MESA demos - offers the important command 'eglinfo' ('Mesa-demos', '9.0.0', { 'source_urls': ['https://archive.mesa3d.org/demos/'], From 2a3988735c9c01a6fb6271f8ccbf8fe096bf2f4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Andr=C3=A9=20Reuter?= Date: Tue, 23 Sep 2025 09:35:36 +0200 Subject: [PATCH 14/20] Move our Mesa ICD to the back of __EGL_VENDOR_LIBRARY_DIRS MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Jan André Reuter --- easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb index 20e22c612225..35caf92ba56b 100644 --- a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb +++ b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb @@ -104,9 +104,9 @@ postinstallcmds = [ modextrapaths = { '__EGL_VENDOR_LIBRARY_DIRS': [ - '%(installdir)s/share/glvnd/egl_vendor.d/', '/etc/glvnd/egl_vendor.d', '/usr/share/glvnd/egl_vendor.d', + '%(installdir)s/share/glvnd/egl_vendor.d/', ], } From 37939ebaf50cd64116600b3937fea7cc6a3dd4a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Andr=C3=A9=20Reuter?= Date: Tue, 23 Sep 2025 09:36:29 +0200 Subject: [PATCH 15/20] Add Vulkan modextrapaths to OpenGL MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Jan André Reuter --- .../easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb index 35caf92ba56b..4d2b2f2c6047 100644 --- a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb +++ b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb @@ -106,8 +106,11 @@ modextrapaths = { '__EGL_VENDOR_LIBRARY_DIRS': [ '/etc/glvnd/egl_vendor.d', '/usr/share/glvnd/egl_vendor.d', - '%(installdir)s/share/glvnd/egl_vendor.d/', + 'share/glvnd/egl_vendor.d/', ], + 'VK_ADD_DRIVER_FILES': 'share/vulkan/icd.d/', + 'VK_ADDITIONAL_IMPLICIT_LAYER_PATH_ENV_VAR': 'share/vulkan/implicit_layer.d/', + 'VK_ADDITIONAL_EXPLICIT_LAYER_PATH_ENV_VAR': 'share/vulkan/explicit_layer.d/', } modextravars = { From 18a9eaa1c7a0b88e00095e01bc3cf78510ee93d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Andr=C3=A9=20Reuter?= Date: Tue, 23 Sep 2025 09:44:12 +0200 Subject: [PATCH 16/20] Update description and remove comments from OpenGL MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Jan André Reuter --- .../o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb index 4d2b2f2c6047..8ef0d3f1f11e 100644 --- a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb +++ b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb @@ -6,12 +6,12 @@ version = '2025.09' homepage = 'http://www.opengl.org/' description = """ Open Graphics Library (OpenGL) is a cross-language, cross-platform application programming interface (API) for rendering -2D and 3D vector graphics. Mesa is an open-source implementation of the OpenGL specification - a system for rendering -interactive 3D graphics. NVIDIA supports OpenGL and a complete set of OpenGL extensions, designed to give a maximum -performance on NVIDIA GPUs. +2D and 3D vector graphics. -This is a GL vendor neutral dispatch (GLVND) installation with Mesa and NVIDIA in the same lib-directory. Mesa or NVIDIA -OpenGL is set individually for each XScreen. +This module is a bundle of software required for OpenGL rendering. +It provides Mesa as an open-source implementation of the OpenGL specification with software rendering and AMD/Intel GPU support, +libglvnd for a vendor neutral dispatch layer for rendering with both NVIDIA GPUs & Mesa, Mesa-demos for sample applications, +and GLU as an computer graphics library utilizing OpenGL. """ toolchain = {'name': 'GCCcore', 'version': '14.3.0'} @@ -58,14 +58,12 @@ local_mesa_configopts += "-Dglx=auto -Dgbm=enabled -Dgles1=enabled -Dgles2=enabl local_mesa_configopts += "-Dvideo-codecs=vc1dec,h264dec,h264enc,h265dec,h265enc,av1dec,av1enc,vp9dec " components = [ - # A vendor neutral dispatch layer ('libglvnd', '1.7.0', { 'source_urls': ['https://gitlab.freedesktop.org/glvnd/libglvnd/-/archive/v%(version)s/'], 'sources': ['%(name)s-v%(version)s.tar.gz'], 'checksums': ['2b6e15b06aafb4c0b6e2348124808cbd9b291c647299eaaba2e3202f51ff2f3d'], 'start_dir': '%(namelower)s-v%(version)s', }), - # Mesa for software rendering, not hardware rendering. ('Mesa', '25.2.2', { 'easyblock': 'EB_Mesa', 'source_urls': [ @@ -78,7 +76,6 @@ components = [ 'preconfigopts': local_pkg_config, 'configopts': local_mesa_configopts, }), - # OpenGL Utility Library - offers higher level GL-graphics functions ('libGLU', '9.0.3', { 'source_urls': ['https://archive.mesa3d.org/glu/'], 'sources': ['glu-%(version)s.tar.xz'], @@ -86,7 +83,6 @@ components = [ 'start_dir': 'glu-%(version)s', 'preconfigopts': local_pkg_config, }), - # MESA demos - offers the important command 'eglinfo' ('Mesa-demos', '9.0.0', { 'source_urls': ['https://archive.mesa3d.org/demos/'], 'sources': [SOURCELOWER_TAR_XZ], From 360087c5ffb835c0be416b4d52d5665ea94f8d91 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Andr=C3=A9=20Reuter?= Date: Tue, 23 Sep 2025 09:50:30 +0200 Subject: [PATCH 17/20] Don't add Intel GPU support in OpenGL right now MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We first need to figure out what we need to do specifically Signed-off-by: Jan André Reuter --- easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb index 8ef0d3f1f11e..458202cd7429 100644 --- a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb +++ b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb @@ -9,7 +9,7 @@ Open Graphics Library (OpenGL) is a cross-language, cross-platform application p 2D and 3D vector graphics. This module is a bundle of software required for OpenGL rendering. -It provides Mesa as an open-source implementation of the OpenGL specification with software rendering and AMD/Intel GPU support, +It provides Mesa as an open-source implementation of the OpenGL specification with software rendering and AMD GPU support, libglvnd for a vendor neutral dispatch layer for rendering with both NVIDIA GPUs & Mesa, Mesa-demos for sample applications, and GLU as an computer graphics library utilizing OpenGL. """ From 66d1faba4cb5497cf8196a0a4689b962a16f95fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Andr=C3=A9=20Reuter?= Date: Tue, 23 Sep 2025 10:01:31 +0200 Subject: [PATCH 18/20] Fix line length in OpenGL MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Jan André Reuter --- .../o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb index 458202cd7429..3d56c47eb3d8 100644 --- a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb +++ b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb @@ -5,13 +5,14 @@ version = '2025.09' homepage = 'http://www.opengl.org/' description = """ -Open Graphics Library (OpenGL) is a cross-language, cross-platform application programming interface (API) for rendering -2D and 3D vector graphics. +Open Graphics Library (OpenGL) is a cross-language, cross-platform application +programming interface (API) for rendering 2D and 3D vector graphics. This module is a bundle of software required for OpenGL rendering. -It provides Mesa as an open-source implementation of the OpenGL specification with software rendering and AMD GPU support, -libglvnd for a vendor neutral dispatch layer for rendering with both NVIDIA GPUs & Mesa, Mesa-demos for sample applications, -and GLU as an computer graphics library utilizing OpenGL. +It provides Mesa as an open-source implementation of the OpenGL specification +with software rendering and AMD GPU support, libglvnd for a vendor neutral +dispatch layer for rendering with both NVIDIA GPUs & Mesa, Mesa-demos for +sample applications, and GLU as an computer graphics library utilizing OpenGL. """ toolchain = {'name': 'GCCcore', 'version': '14.3.0'} From 631ecf463940d5e5087df017291b0c08c986408e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Andr=C3=A9=20Reuter?= Date: Tue, 23 Sep 2025 10:15:31 +0200 Subject: [PATCH 19/20] Remove GLEW files from sanity check MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Jan André Reuter --- .../easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb | 3 --- 1 file changed, 3 deletions(-) diff --git a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb index 3d56c47eb3d8..c60609c8b500 100644 --- a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb +++ b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb @@ -124,9 +124,6 @@ sanity_check_paths = { 'include/GL/glx.h', 'include/GL/gl.h', 'include/GL/glxext.h', 'include/GLES/gl.h', 'include/GLES2/gl2.h', 'include/GLES3/gl3.h', 'lib/libOpenGL.%s' % SHLIB_EXT, - 'lib/libGLEW.a', 'lib/libGLEW.%s' % SHLIB_EXT, - 'bin/glewinfo', 'bin/visualinfo', - 'include/GL/glew.h', 'include/GL/glxew.h', 'include/GL/wglew.h', ], 'dirs': [] } From 29471a27314477e5372c98a6870662ee32ff5f63 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Andr=C3=A9=20Reuter?= Date: Thu, 25 Sep 2025 12:49:51 +0200 Subject: [PATCH 20/20] Drop unused GLEW buildopts in OpenGL-2025.09-GCCcore-14.3.0 --- .../easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb | 3 --- 1 file changed, 3 deletions(-) diff --git a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb index c60609c8b500..f4499e232457 100644 --- a/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb +++ b/easybuild/easyconfigs/o/OpenGL/OpenGL-2025.09-GCCcore-14.3.0.eb @@ -50,9 +50,6 @@ default_easyblock = 'MesonNinja' local_pkg_config = 'export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:%(installdir)s/lib/pkgconfig && ' local_pkg_config += 'export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:%(installdir)s/lib64/pkgconfig && ' -local_glew_buildopts = 'GLEW_PREFIX=%(installdir)s GLEW_DEST=%(installdir)s ' -local_glew_buildopts += 'LDFLAGS.EXTRA="-L${EBROOTX11}/lib/ -lX11" LDFLAGS.GL="-L%(installdir)s/lib -lGL"' - local_mesa_configopts = "-Dplatforms=x11,wayland -Dvulkan-drivers='swrast,amd' -Dvulkan-layers='device-select' " local_mesa_configopts += "-Dllvm=enabled -Dshared-llvm=enabled -Dlibunwind=enabled -Degl=enabled -Dglvnd=enabled " local_mesa_configopts += "-Dglx=auto -Dgbm=enabled -Dgles1=enabled -Dgles2=enabled -Dgallium-drivers=llvmpipe,radeonsi "