16 Commits

Author SHA256 Message Date
85c182a9e6 Accepting request 1327646 from multimedia:libs
OBS-URL: https://build.opensuse.org/request/show/1327646
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/glew?expand=0&rev=53
2026-01-17 20:41:43 +00:00
5c673937b6 Update to version 2.3.0
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/glew?expand=0&rev=74
2026-01-16 12:29:23 +00:00
d9d96c2d86 Accepting request 1272106 from multimedia:libs
OBS-URL: https://build.opensuse.org/request/show/1272106
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/glew?expand=0&rev=52
2025-04-24 15:24:59 +00:00
4455e920e7 - Use static baselibs.conf.
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/glew?expand=0&rev=72
2025-04-23 09:17:06 +00:00
bfe02a039b * Split build into multiple flavours for GLX and EGL builds.
* Drop baselibs.conf file and generate it in specfile based on build flavor.
* Add glew-rename-EGL-library.patch: Append suffix to shared library built with EGL support to allow parallel installation with the GLX compatible flavor
* Pass linker flag -Wl,--version-script to handle scenario where both EGL and GLX symbols may be required.
* Use bcond_with(out) to enable/disable egl instead of 'bcond egl 1 (0)' for compatibility with Leap.
* Revise BuildRequires and Requires appropriate to each flavor.
* devel pkg: Promote pkgconfig(glu) from Recommends to Requires; it is anyway auto-required because it is listed as a dependency in glew's pkgconfig file.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/glew?expand=0&rev=71
2025-04-15 09:28:14 +00:00
afc588badb Accepting request 1256240 from multimedia:libs
OBS-URL: https://build.opensuse.org/request/show/1256240
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/glew?expand=0&rev=51
2025-03-28 08:36:32 +00:00
be65f50454 - Add dependency on pkgconfig(xext) to the devel package
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/glew?expand=0&rev=69
2025-03-26 13:52:59 +00:00
a5f8fc80ff Accepting request 1249655 from multimedia:libs
OBS-URL: https://build.opensuse.org/request/show/1249655
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/glew?expand=0&rev=50
2025-03-05 12:38:35 +00:00
d23f9f068e - Build GLEW with EGL support (boo#1235150)
Note: It is likely that some applications wont work unless wxWidgets also is compiled with EGL support too. See boo#1235150.

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/glew?expand=0&rev=67
2025-03-03 09:35:10 +00:00
e26e818724 Accepting request 1246604 from multimedia:libs
OBS-URL: https://build.opensuse.org/request/show/1246604
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/glew?expand=0&rev=49
2025-02-18 18:09:08 +00:00
864eef3bb2 - Add missing Require for libSM-devel (boo#1237276)
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/glew?expand=0&rev=65
2025-02-18 09:39:08 +00:00
1b630feacd Accepting request 1245351 from multimedia:libs
- Allow to build GLEW with EGL support for Wayland
- Build GLEW with cmake
- Added glew-2.2.0-fix-cmake.patch

OBS-URL: https://build.opensuse.org/request/show/1245351
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/glew?expand=0&rev=48
2025-02-12 20:30:41 +00:00
b819c74653 drop empty check section
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/glew?expand=0&rev=63
2025-02-12 10:36:02 +00:00
565c3cf129 - Allow to build GLEW with EGL support for Wayland
- Build GLEW with cmake
- Added glew-2.2.0-fix-cmake.patch

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/glew?expand=0&rev=62
2025-01-13 08:34:43 +00:00
2365ca5723 Accepting request 1160039 from multimedia:libs
OBS-URL: https://build.opensuse.org/request/show/1160039
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/glew?expand=0&rev=47
2024-03-22 14:17:19 +00:00
Otto Hollmann
6857d3a9a2 Accepting request 1159858 from home:sndirsch:branches:multimedia:libs
- Add patch glew-2.2.0-mesa-24.patch
  * Do not undefine APIENTRY macro if GLAPIENTRY is still defined 
    (boo#1221744)

- Install missing header file (from david.lanzendoerfer@o2s.ch)

OBS-URL: https://build.opensuse.org/request/show/1159858
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/glew?expand=0&rev=60
2024-03-21 08:58:56 +00:00
9 changed files with 197 additions and 32 deletions

3
_multibuild Normal file
View File

@@ -0,0 +1,3 @@
<multibuild>
<package>egl</package>
</multibuild>

View File

@@ -1 +1,2 @@
libGLEW2_2
libGLEW2_3
libGLEW_EGL2_3

19
glew-2.2.0-mesa-24.patch Normal file
View File

@@ -0,0 +1,19 @@
---
glew-2.2.0/include/GL/glew.h | 2 ++
1 file changed, 2 insertions(+)
Index: glew-2.3.0/include/GL/glew.h
===================================================================
--- glew-2.3.0.orig/include/GL/glew.h
+++ glew-2.3.0/include/GL/glew.h
@@ -27029,8 +27029,10 @@ GLEWAPI const GLubyte * GLEWAPIENTRY gle
#ifdef GLEW_APIENTRY_DEFINED
#undef GLEW_APIENTRY_DEFINED
+#ifndef GLAPIENTRY
#undef APIENTRY
#endif
+#endif
#ifdef GLEW_CALLBACK_DEFINED
#undef GLEW_CALLBACK_DEFINED

BIN
glew-2.2.0.tgz LFS

Binary file not shown.

3
glew-2.3.0.tgz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b261a06dfc8b970e0a1974488530e58dd2390acf68acb05b45235cd6fb17a086
size 865493

View File

@@ -0,0 +1,23 @@
From 15f80c05b7aa3e62067c6424df805bb43881e05d Mon Sep 17 00:00:00 2001
From: Atri Bhattacharya <badshah400@gmail.org>
Date: Sat, 12 Apr 2025 16:40:31 +0530
Subject: [PATCH] Rename library when building with EGL.
---
build/cmake/CMakeLists.txt | 3 +++
1 file changed, 3 insertions(+)
Index: glew-2.3.0/build/cmake/CMakeLists.txt
===================================================================
--- glew-2.3.0.orig/build/cmake/CMakeLists.txt
+++ glew-2.3.0/build/cmake/CMakeLists.txt
@@ -57,6 +57,9 @@ else ()
set (GLEW_LIB_NAME GLEW)
set (DLL_PREFIX lib)
endif ()
+if (GLEW_EGL)
+ set (GLEW_LIB_NAME ${GLEW_LIB_NAME}_EGL)
+endif()
add_definitions (-DGLEW_NO_GLU)

View File

@@ -1,3 +1,92 @@
-------------------------------------------------------------------
Fri Jan 16 03:54:12 UTC 2026 - Atri Bhattacharya <badshah400@gmail.com>
- Update to version 2.3.0:
* New extensions: GL_ARM_shader_core_properties,
GL_EXT_EGL_image_storage_compression,
GL_EXT_framebuffer_blit_layers, GL_EXT_separate_depth_stencil,
GL_EXT_shader_clock, GL_EXT_shader_samples_identical,
GL_EXT_texture_storage_compression,
GL_IMG_pvric_end_to_end_signature,
GL_IMG_tile_region_protection, GL_MESA_bgra,
GL_MESA_framebuffer_flip_x, GL_MESA_framebuffer_swap_xy,
GL_MESA_texture_const_bandwidth, GL_NV_memory_object_sparse,
GL_NV_primitive_shading_rate, GL_NV_timeline_semaphore,
GL_NV_uniform_buffer_std430_layout,
GL_QCOM_frame_extrapolation, GL_QCOM_motion_estimation,
GL_QCOM_render_sRGB_R8_RG8, GL_QCOM_render_shared_exponent,
GL_QCOM_shading_rate, GL_QCOM_texture_lod_bias,
GL_QCOM_ycbcr_degamma, EGL_ANDROID_telemetry_hint,
EGL_ANGLE_sync_control_rate, EGL_EXT_config_select_group,
EGL_EXT_device_drm_render_node, EGL_EXT_device_persistent_id,
EGL_EXT_device_query_name, EGL_EXT_display_alloc,
EGL_EXT_explicit_device, EGL_EXT_gl_colorspace_bt2020_hlg,
EGL_EXT_platform_xcb, EGL_EXT_present_opaque,
EGL_EXT_query_reset_notification_strategy,
EGL_EXT_surface_compression, EGL_NV_stream_consumer_eglimage,
EGL_NV_stream_consumer_eglimage_use_scanout_attrib,
EGL_QNX_image_native_buffer, EGL_QNX_platform_screen,
GLX_EXT_get_drawable_type.
- Drop glew-2.2.0-fix-cmake.patch: fixed upstream.
-------------------------------------------------------------------
Tue Apr 22 14:30:48 UTC 2025 - Dominique Leuenberger <dimstar@opensuse.org>
- Use static baselibs.conf.
-------------------------------------------------------------------
Sat Apr 12 12:07:26 UTC 2025 - Atri Bhattacharya <badshah400@gmail.com>
- Split build into multiple flavours for GLX and EGL builds.
- Drop baselibs.conf file and generate it in specfile based on
build flavor.
- Add glew-rename-EGL-library.patch: Append suffix to shared
library built with EGL support to allow parallel installation
with the GLX compatible flavor
- Pass linker flag -Wl,--version-script to handle scenario where
both EGL and GLX symbols may be required.
- Use bcond_with(out) to enable/disable egl instead of 'bcond egl
1 (0)' for compatibility with Leap.
- Revise BuildRequires and Requires appropriate to each flavor.
- devel pkg: Promote pkgconfig(glu) from Recommends to Requires;
it is anyway auto-required because it is listed as a dependency
in glew's pkgconfig file.
- Drop unneeded glew.rpmlintrc file.
-------------------------------------------------------------------
Tue Mar 25 22:21:52 UTC 2025 - Jaime Marquínez Ferrándiz <jaime.marquinez.ferrandiz@fastmail.net>
- Add dependency on pkgconfig(xext) to the devel package
-------------------------------------------------------------------
Sat Mar 1 09:52:11 UTC 2025 - Andreas Schneider <asn@cryptomilk.org>
- Build GLEW with EGL support (boo#1235150)
-------------------------------------------------------------------
Tue Feb 18 09:21:49 UTC 2025 - Andreas Schneider <asn@cryptomilk.org>
- Add missing Require for libSM-devel (boo#1237276)
-------------------------------------------------------------------
Tue Jan 7 10:29:38 UTC 2025 - Andreas Schneider <asn@cryptomilk.org>
- Allow to build GLEW with EGL support for Wayland
- Build GLEW with cmake
- Added glew-2.2.0-fix-cmake.patch
-------------------------------------------------------------------
Wed Mar 20 12:43:24 UTC 2024 - Dr. Werner Fink <werner@suse.de>
- Add patch glew-2.2.0-mesa-24.patch
* Do not undefine APIENTRY macro if GLAPIENTRY is still defined
(boo#1221744)
-------------------------------------------------------------------
Wed Mar 20 12:38:25 UTC 2024 - Dr. Werner Fink <werner@suse.de>
- Install missing header file (from david.lanzendoerfer@o2s.ch)
-------------------------------------------------------------------
Sat Aug 21 16:26:33 UTC 2021 - Atri Bhattacharya <badshah400@gmail.com>

View File

@@ -1,2 +0,0 @@
# because it's called libGLEW*
addFilter("no-dependency-on glew.*/glew-libs/libglew.*")

View File

@@ -1,7 +1,7 @@
#
# spec file for package glew
#
# Copyright (c) 2021 SUSE LLC
# Copyright (c) 2026 SUSE LLC and contributors
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -16,26 +16,46 @@
#
%global flavor @BUILD_FLAVOR@%{nil}
%global pname glew
# If you change so_ver, then you have to update baselibs.conf as well.
%define so_ver 2_2
Name: glew
Version: 2.2.0
%define so_ver 2_3
%if "%{flavor}" == ""
%bcond_with egl
%endif
%if "%{flavor}" == "egl"
%bcond_without egl
%define pkg_suffix _EGL
%endif
%define shlib libGLEW%{?pkg_suffix}%{so_ver}
Name: %{pname}%{?pkg_suffix}
Version: 2.3.0
Release: 0
Summary: OpenGL Extension Wrangler Library
# was http://glew.sourceforge.net/
License: BSD-3-Clause AND GPL-2.0-or-later AND MIT
Group: Development/Libraries/C and C++
URL: https://github.com/nigels-com/glew
Source0: https://downloads.sourceforge.net/%{name}/%{name}-%{version}.tgz
Source0: https://downloads.sourceforge.net/%{pname}/%{pname}-%{version}.tgz
Source1: baselibs.conf
Source2: %{name}.rpmlintrc
Patch0: glew-2.2.0-mesa-24.patch
# PATCH-FEATURE-OPENSUSE glew-rename-EGL-library.patch badshah400@gmail.com -- Append suffix to shared library built with EGL support to allow parallel installation with the GLX compatible flavor
Patch2: glew-rename-EGL-library.patch
BuildRequires: cmake
BuildRequires: pkgconfig
BuildRequires: pkgconfig(egl)
BuildRequires: pkgconfig(gl)
%if %{with egl}
BuildRequires: pkgconfig(egl)
Conflicts: %{pname}
%else
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xext)
BuildRequires: pkgconfig(xi)
BuildRequires: pkgconfig(xmu)
BuildRequires: pkgconfig(xau)
BuildRequires: pkgconfig(xcb)
%endif
%description
The OpenGL Extension Wrangler Library (GLEW) is a cross-platform
@@ -44,11 +64,11 @@ run-time mechanisms for determining which OpenGL extensions are
supported on the target platform. OpenGL core and extension
functionality is exposed in a single header file.
%package -n libGLEW%{so_ver}
%package -n %{shlib}
Summary: OpenGL Extension Wrangler Library
Group: System/Libraries
%description -n libGLEW%{so_ver}
%description -n %{shlib}
The OpenGL Extension Wrangler Library (GLEW) is a cross-platform
open-source C/C++ extension loading library. GLEW provides efficient
run-time mechanisms for determining which OpenGL extensions are
@@ -58,12 +78,16 @@ functionality is exposed in a single header file.
%package devel
Summary: Development files for glew
Group: Development/Libraries/C and C++
Requires: libGLEW%{so_ver} = %{version}
Requires: %{shlib} = %{version}
Requires: pkgconfig(glu)
%if %{with egl}
Requires: pkgconfig(egl)
Conflicts: %{pname}-devel
%else
Requires: pkgconfig(x11)
Requires: pkgconfig(xproto)
# Don't require GLU, because there is GLEW_NO_GLU option
Recommends: pkgconfig(glu)
Requires: pkgconfig(xau)
Requires: pkgconfig(xcb)
%endif
%description devel
The OpenGL Extension Wrangler Library (GLEW) is a cross-platform
@@ -73,18 +97,25 @@ supported on the target platform. OpenGL core and extension
functionality is exposed in a single header file.
%prep
%autosetup
%autosetup -p1 -n %{pname}-%{version}
%build
%make_build POPT="%{optflags} -fPIE -pie" GLEW_DEST=%{_prefix} LIBDIR=%{_libdir} LDFLAGS.EXTRA= STRIP=
# Allow apps requesting both GLX and EGL symbols to get both shlibs
echo 'G_%flavor { global: *; };' > x.sym
%define build_ldflags -Wl,--version-script=`readlink -f ../x.sym`
%define __sourcedir build/cmake
%cmake \
-DGLEW_EGL=%{?with_egl:ON}%{!?with_egl:OFF} \
-DBUILD_UTILS=ON \
%{nil}
%cmake_build
%install
make DESTDIR=%{buildroot} GLEW_DEST=%{_prefix} LIBDIR=%{_libdir} PKGDIR=%{_libdir}/pkgconfig install.all
chmod +x %{buildroot}%{_libdir}/*.so.*
rm %{buildroot}%{_libdir}/*.a
%cmake_install
%post -n libGLEW%{so_ver} -p /sbin/ldconfig
%postun -n libGLEW%{so_ver} -p /sbin/ldconfig
%ldconfig_scriptlets -n %{shlib}
%files
%license LICENSE.txt
@@ -92,12 +123,13 @@ rm %{buildroot}%{_libdir}/*.a
%{_bindir}/glewinfo
%{_bindir}/visualinfo
%files -n libGLEW%{so_ver}
%{_libdir}/libGLEW.so.*
%files -n %{shlib}
%{_libdir}/libGLEW*.so.*
%files devel
%{_includedir}/GL/
%{_libdir}/libGLEW.so
%{_libdir}/libGLEW*.so
%{_libdir}/pkgconfig/glew.pc
%{_libdir}/cmake/glew/
%changelog