Compare commits

...

59 Commits

Author SHA1 Message Date
Nigel Stewart
3da315c23a Update copyright to 2024 2024-12-15 22:08:45 +10:00
Nigel Stewart
1236a81d70 Update config.guess from https://git.savannah.gnu.org/cgit/config.git 2024-12-15 22:08:32 +10:00
Ryan Schmidt
b323ebf9ad Remove everything after digits in SYSTEM
Instead of just removing periods and digits from SYSTEM, remove periods
and digits and everything after any digits. This handles unusual system
identifiers like powerpc-apple-darwin10.0.0d2.

I wasn't sure if periods can appear anywhere other than in the release
number so I retained the previous behavior of removing all periods
regardless where they are.
2024-04-25 08:34:21 +10:00
Anuraag Agrawal
c050e33aa0 Define APIENTRY in osmesa build if not defined. 2024-04-25 08:31:48 +10:00
Nigel Stewart
e1a80a9f12 AWS Codebuild badge added 2023-11-10 12:53:13 +10:00
Nigel Stewart
4c6cb2f56d AWS Codebuild badge added 2023-11-10 12:53:13 +10:00
Nigel Stewart
7fb9693bd8 Build support for SYSTEM=darwin-arm64 2023-11-10 08:35:40 +10:00
Nigel Stewart
c1985bb954 blacklist MESA_sampler_objects for now, collides with GL_ARB_sampler_objects 2023-11-10 08:32:46 +10:00
SpaceIm
f064fbfcb6 more cleanup 2023-10-15 21:08:17 +10:00
SpaceIm
f8023b362d fix initialization of CMakeLists and cleanup after bump of min cmake version 2023-10-15 21:08:17 +10:00
Kerby Geffrard
c43940a927 Shallow clone of registry repositories 2023-10-07 06:44:25 +10:00
grahamreeds
c2f7ab7f09 Bumped CMake version in README to 3.16. 2023-09-22 07:03:54 +10:00
grahamreeds
a4d8b2a2a3 Bump minimum cmake version to 3.16 matching the LTS release of Ubuntu 20.04 2023-09-22 07:03:54 +10:00
Kekschen
a98195b83d Updated comment in cmake-testbuild.sh 2023-07-16 09:29:54 +10:00
Jean-Christophe Fillion-Robin
281c2936f3 cmake: Update install rules to support component-based installation 2023-06-22 07:47:53 +10:00
NoamDev
ef7d12ecb7 Added to .gitignore auto-checkout out repos 2023-04-24 20:20:17 +10:00
NoamDev
6a53a2a200 Added to .gitignore auto-checkout out repos 2023-03-15 22:28:40 +10:00
Ned Loynd
52ce1cc575 Check the macOS deployment target before using dlfcn 2023-03-15 22:28:10 +10:00
Nigel Stewart
5a2307fae3 Fix issue #355 - GL_NVX_progress_fence missing glCreateProgressFenceNVX 2022-06-13 12:22:45 +10:00
Marvin Schmidt
c8a2ddfbe1 cmake: Link libGLX when X11 support is requested
Using cmake (version 3.23.0) the build fails to link the utils
```
[...]
[ 87%] Linking C executable bin/visualinfo                                                                                                                      [113/5249]
/usr/x86_64-pc-linux-gnu/bin/cmake -E cmake_link_script CMakeFiles/visualinfo.dir/link.txt --verbose=1
/usr/host/bin/x86_64-pc-linux-gnu-cc -Wall -g -ggdb3 -O0 -rdynamic CMakeFiles/visualinfo.dir/home/marv/scm/github/glew/src/visualinfo.c.o -o bin/visualinfo  -Wl,-rpath,/h
ome/marv/scm/github/glew/build-obj/lib: lib/libGLEW.so.2.2.0 -lSM -lICE -lX11 -lXext -lOpenGL -lSM -lICE -lX11 -lXext
/usr/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu-ld: CMakeFiles/visualinfo.dir/home/marv/scm/github/glew/src/visualinfo.c.o: in function `main':
/home/marv/scm/github/glew/src/visualinfo.c:198: undefined reference to `glXQueryExtensionsString'
/usr/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu-ld: CMakeFiles/visualinfo.dir/home/marv/scm/github/glew/src/visualinfo.c.o: in function `CreateContext':
/home/marv/scm/github/glew/src/visualinfo.c:1204: undefined reference to `glXQueryExtension'
/usr/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu-ld: /home/marv/scm/github/glew/src/visualinfo.c:1206: undefined reference to `glXChooseVisual'
/usr/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu-ld: /home/marv/scm/github/glew/src/visualinfo.c:1209: undefined reference to `glXCreateContext'
/usr/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu-ld: /home/marv/scm/github/glew/src/visualinfo.c:1221: undefined reference to `glXMakeCurrent'
/usr/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu-ld: CMakeFiles/visualinfo.dir/home/marv/scm/github/glew/src/visualinfo.c.o: in function `DestroyContext':
/home/marv/scm/github/glew/src/visualinfo.c:1227: undefined reference to `glXDestroyContext'
/usr/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu-ld: lib/libGLEW.so.2.2.0: undefined reference to `glXGetProcAddressARB'
/usr/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu-ld: lib/libGLEW.so.2.2.0: undefined reference to `glXQueryVersion'
/usr/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu-ld: lib/libGLEW.so.2.2.0: undefined reference to `glXGetClientString'
collect2: error: ld returned 1 exit status
```

Commit 2b50f4a ("CMake: Prefer GLVND if available") changed the cmake
policy CMP0072 to `NEW` in order to make the FindOpenGL module prefer the
GLVND libraries (libOpenGL and libGLX) over the legacy GL library (libGL).

The help of the CMP0072 policy states:

> CMP0072
> -------
>
> .. versionadded:: 3.11
>
> ``FindOpenGL`` prefers GLVND by default when available.
>
> The ``FindOpenGL`` module provides an ``OpenGL::GL`` target and an
> ``OPENGL_LIBRARIES`` variable for projects to use for legacy GL interfaces.
> When both a legacy GL library (e.g. ``libGL.so``) and GLVND libraries
> for OpenGL and GLX (e.g. ``libOpenGL.so`` and ``libGLX.so``) are available,
> the module must choose between them.  It documents an ``OpenGL_GL_PREFERENCE``
> variable that can be used to specify an explicit preference.  When no such
> preference is set, the module must choose a default preference.
>
> CMake 3.11 and above prefer to choose GLVND libraries.  This policy provides
> compatibility with projects that expect the legacy GL library to be used.
>
> The ``OLD`` behavior for this policy is to set ``OpenGL_GL_PREFERENCE`` to
> ``LEGACY``.  The ``NEW`` behavior for this policy is to set
> ``OpenGL_GL_PREFERENCE`` to ``GLVND``.
>
> This policy was introduced in CMake version 3.11.  CMake version
> 3.23.0 warns when the policy is not set and uses ``OLD`` behavior.
> Use the ``cmake_policy()`` command to set it to ``OLD`` or ``NEW``
> explicitly.
>
> .. note::
>   The ``OLD`` behavior of a policy is
>   ``deprecated by definition``
>   and may be removed in a future version of CMake.

The changes from the mentioned commit combined with the new behaviour of
the FindOpenGL module resulted in the glew library being linked against
`libOpenGL` instead of `libGL`, but not `libGLX`. Since `libOpenGL`
doesn't link against GLX compared to `libGL` the linker errors above
surfaced. Fix this by explicitly linking against libGLX if GLEW_X11 is
enabled
2022-06-13 12:22:14 +10:00
ibbem
37e6144802 Remove broken end of string checks in _glewStrSame
I think this code tried to check for a zero terminated null byte, but it
actually just checked if the address of the corresponding character is
non-zero, which is always true. These broken checks are simply dropped
because the following code assumes that the string `b` doesn't include a
null byte and all call sites already pass the length of the string
without counting the null byte.

This bug was found by gcc 12.1 which emits a warning on this kind of
code. Now glew builds without any warnings using gcc 12.1. See
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102103 for the
corresponding issue.
2022-06-13 12:21:23 +10:00
Nigel Stewart
2c4c183c34 README: travis-ci is no longer relevant 2022-04-02 12:39:09 +10:00
Bertie Wheen
c6673b15bf Remove unnecessary code
Resolves #349 (I think)
2022-04-02 12:30:19 +10:00
Nigel Stewart
55c8b94608 Add link for snapshot glew-20220402.tgz 2022-04-02 12:25:25 +10:00
G'lek Tarssza
35d928bc77 Fixed failing build on Windows when using LLVM.
Failure caused by `llvm-rc` failing on non-ASCII code point for
copyright symbol.
2022-02-20 18:52:10 +10:00
René Schwaiger
5dbae5a837 Make: Remove 32 bit support from universal build
Installing the library fails on macOS 12, if we use the compiler flags
for the i386 architecture.

See also:

- https://github.com/nigels-com/glew/pull/348#issuecomment-1032874467
2022-02-09 19:58:09 +10:00
René Schwaiger
5239c3ae21 Make: Support Apple Silicon in universal build 2022-02-09 19:58:09 +10:00
Marvin Schmidt
5f57b09c04 cmake: Install eglew.h
The eglew.h header was never installed using the CMake build. Fix this
by adding it to the list of public headers
2022-02-09 08:15:29 +10:00
Dmitry Kalinkin
966e53fa15 CMake: don't hardcode "<prefix>/include" in target_include_directories 2022-01-07 12:54:49 +10:00
Nigel Stewart
3f922b3dc6 Updated config.guess from https://github.com/gcc-mirror/gcc/blob/master/config.guess 2021-12-23 10:58:37 +10:00
luz paz
4a757ac7c0 Fix various typos
Found via `codespell -q 3 -L ake,extrem,lod,parms`
2021-12-20 07:31:49 +10:00
Vanfanel
062067f2ba Specify that EGL/GLVND doesn't use GLU. 2021-10-29 09:13:42 +10:00
Vanfanel
8e2e31e69b Add support for building against vendor-neutral GLVND instead of GLX on Linux/EGL 2021-10-29 07:14:15 +10:00
Nigel Stewart
037635a192 Disable stripping in debug-mode builds 2021-10-05 08:29:14 +10:00
Nigel Stewart
9e6361b357 visualinfo: EGL not supported yet, error out more clearly
Also, remove GLEW_MX support from visualinfo
2021-10-05 08:28:49 +10:00
Nigel Stewart
247baa9e20 For SYSTEM linux-mingw32 and linux-mingw64 default GLEW_DEST more appropriately 2021-10-05 08:28:12 +10:00
Nigel Stewart
d7693eea09 Makefile: don't strip in install step
As discussed in Issue #310 stripping the binaries is
done by the link targets, not needed for the install step.
Along the lines of a Yocto batch by Ross Burton <ross.burton@intel.com>
2021-10-05 08:27:27 +10:00
Nigel Stewart
715afa0ff5 Extend GLEW API to support glewContextInit - GL without implied GLX, WGL, EGL initialisation 2021-08-29 09:11:11 +10:00
Nigel Stewart
ea2076658a glewGetErrorString for GLEW_ERROR_NO_GLX_DISPLAY (added in 2016) 2021-08-29 09:10:04 +10:00
Ross Burton
767e031645 Fix build race in Makefile
The current rule for the binaries is:

glew.bin: glew.lib bin bin/$(GLEWINFO.BIN) bin/$(VISUALINFO.BIN)

In parallel builds, all of those targets happen at the same time. This
means that 'bin' can happen *after* 'bin/$(GLEWINFO.BIN)', which is a
problem as the 'bin' target's responsibility is to create the directory
that the other target writes into.

Solve this by not having a separate 'create directory' target which is
fundamentally racy, and simply mkdir in each target which writes into it.
2021-07-23 18:21:23 +10:00
Ross Burton
679a3b17fa Install to /usr/local by default when using Makefiles
Software should install to /usr/local by default, as /usr is for the
operating system managed libraries.

Closes #52.
2021-07-23 18:21:23 +10:00
Daniel Bernar
80e061f85d Add ability to change output dirs
https://github.com/nigels-com/glew/issues/264
2021-03-21 12:41:32 +10:00
Julien Schueller
2b50f4acd2 CMake: Prefer GLVND if available 2021-03-21 12:41:04 +10:00
Julien Schueller
2b16160853 CMake: Add BUILD_SHARED_LIBS option 2021-03-21 12:41:04 +10:00
Julien Schueller
e34bb212f6 CMake: Add X11/EGL options 2021-03-21 12:41:04 +10:00
Xavier Bonaventura
fb0f210598 Use os.path.join to create paths
Paths should be created using os.path.join with this way is platform
independent.
2021-01-10 21:40:05 +10:00
Nigel Stewart
749aec8b9b Documentation refresh for GLEW 2.2.0, downloads from github 2021-01-10 12:23:57 +10:00
Danilo Spinella
95329dc4a6 GLEW_EGL: Fix EGL library check 2021-01-10 12:07:23 +10:00
Nigel Stewart
8c88a0858f EGLEW: Wayland wl_buffer declaration for WL_bind_wayland_display 2021-01-10 11:52:31 +10:00
Nigel Stewart
d68cb03149 EGLEW: Wayland wl_display and wl_resource declarations for WL_bind_wayland_display 2021-01-10 11:50:29 +10:00
Nigel Stewart
5b5685e39a README.md: Updates for GLEW 2.2.0 release, downloads via github 2021-01-10 11:42:18 +10:00
Nigel Stewart
0fa5d11024 Fixup: Install eglew.h too 2021-01-10 11:13:09 +10:00
Xavier Bonaventura
107ab7f6e9 Use list comprehension instead of extending the collection 2021-01-10 11:09:37 +10:00
Xavier Bonaventura
4e5fe20519 Use context manager instead of raw open
Raw open should be avoided to prevent that in case of an exception
the file is not closed.
This also has the advantage that if the user forgets to call close
the file is still closed.
2021-01-10 11:08:48 +10:00
Christian Rauch
3cdab58d4e fix typo 2020-12-13 23:24:55 +10:00
Nicolas Caramelli
75e3154422 The file include/GL/gl.h generated from OpenGL-Registry uses __gl_gl_h_ 2020-12-04 16:45:04 +10:00
Tim Gates
bfc724c6cc docs: fix simple typo, direcly -> directly
There is a small typo in auto/src/glew_head.c.

Should read `directly` rather than `direcly`.
2020-11-28 10:28:05 +10:00
Alexey Tereshenkov
0b97f2568d Rename lgtm.yml to hide the file 2020-11-26 20:31:22 +10:00
Alexey Tereshenkov
7764128044 Add lgtm.yml configuration file
Allow LGTM.com use the custom configuration to analyze C++ code of the project
2020-11-26 20:31:22 +10:00
63 changed files with 1911 additions and 1547 deletions

3
.gitignore vendored
View File

@ -20,3 +20,6 @@
/tmp
/out
.DS_Store*
auto/EGL-Registry
auto/OpenGL-Registry
auto/glfixes

12
.lgtm.yml Normal file
View File

@ -0,0 +1,12 @@
extraction:
cpp:
prepare:
packages:
- "build-essential"
- "libxmu-dev"
- "libxi-dev"
- "libgl-dev"
index:
build_command:
- "cd auto; make all -j8; cd .."
- "make all -j8"

View File

@ -1,6 +1,5 @@
language: cpp
dist: trusty
sudo: false
install:
script:
- make -C auto clobber
@ -11,9 +10,9 @@ script:
- make clean && SYSTEM=linux-egl make
- make clean && SYSTEM=linux-clang make
- make clean && SYSTEM=linux-clang-egl make
- pushd build/cmake && git clean -xdf . && cmake -G 'Unix Makefiles' . && make && popd
- pushd build/cmake && git clean -xdf . && cmake -G 'Unix Makefiles' -DGLEW_OSMESA=1 . && make && popd
#- pushd build/cmake && git clean -xdf . && cmake -G 'Unix Makefiles' -DGLEW_EGL=1 . && make && popd
- pushd build/cmake && git clean -xdf . && cmake -G 'Unix Makefiles' . && make && popd
- pushd build/cmake && git clean -xdf . && cmake -G 'Unix Makefiles' -DGLEW_OSMESA=ON . && make && popd
- pushd build/cmake && git clean -xdf . && cmake -G 'Unix Makefiles' -DGLEW_EGL=ON -DGLEW_X11=OFF . && make && popd
addons:
apt:
packages:

View File

@ -31,7 +31,7 @@
include config/version
SHELL = /bin/sh
SYSTEM ?= $(shell config/config.guess | cut -d - -f 3 | sed -e 's/[0-9\.]//g;')
SYSTEM ?= $(shell config/config.guess | cut -d - -f 3 | sed -e 's/\.//g' -e 's/[0-9]\{1,\}.*//')
SYSTEM.SUPPORTED = $(shell test -f config/Makefile.$(SYSTEM) && echo 1)
ifeq ($(SYSTEM.SUPPORTED), 1)
@ -40,8 +40,8 @@ else
$(error "Platform '$(SYSTEM)' not supported")
endif
GLEW_PREFIX ?= /usr
GLEW_DEST ?= /usr
GLEW_PREFIX ?= /usr/local
GLEW_DEST ?= /usr/local
BINDIR ?= $(GLEW_DEST)/bin
LIBDIR ?= $(GLEW_DEST)/lib
INCDIR ?= $(GLEW_DEST)/include/GL
@ -61,7 +61,6 @@ DIST_DIR := $(shell mktemp -d /tmp/glew.XXXXXX)/$(DIST_NAME)
# To disable stripping of linked binaries either:
# - use STRIP= on gmake command-line
# - edit this makefile to set STRIP to the empty string
# (Note: STRIP does not affect the strip in the install step)
#
# To disable symlinks:
# - use LN= on gmake command-line
@ -77,6 +76,7 @@ DOS2UNIX ?= dos2unix -q
ifneq (,$(filter debug,$(MAKECMDGOALS)))
OPT = -g
STRIP :=
else
OPT = $(POPT)
endif
@ -171,21 +171,20 @@ VISUALINFO.BIN.OBJ := $(VISUALINFO.BIN.OBJ:.c=.o)
# Don't build glewinfo or visualinfo for NaCL, yet.
ifneq ($(filter nacl%,$(SYSTEM)),)
glew.bin: glew.lib bin
glew.bin: glew.lib
else
glew.bin: glew.lib bin bin/$(GLEWINFO.BIN) bin/$(VISUALINFO.BIN)
glew.bin: glew.lib bin/$(GLEWINFO.BIN) bin/$(VISUALINFO.BIN)
endif
bin:
mkdir bin
bin/$(GLEWINFO.BIN): $(GLEWINFO.BIN.OBJ) $(LIB.SHARED.DIR)/$(LIB.SHARED)
@mkdir -p $(dir $@)
$(CC) $(CFLAGS) -o $@ $(GLEWINFO.BIN.OBJ) $(BIN.LIBS)
ifneq ($(STRIP),)
$(STRIP) -x $@
endif
bin/$(VISUALINFO.BIN): $(VISUALINFO.BIN.OBJ) $(LIB.SHARED.DIR)/$(LIB.SHARED)
@mkdir -p $(dir $@)
$(CC) $(CFLAGS) -o $@ $(VISUALINFO.BIN.OBJ) $(BIN.LIBS)
ifneq ($(STRIP),)
$(STRIP) -x $@
@ -229,13 +228,14 @@ endif
install.bin: glew.bin
$(INSTALL) -d -m 0755 "$(DESTDIR)$(BINDIR)"
$(INSTALL) -s -m 0755 bin/$(GLEWINFO.BIN) bin/$(VISUALINFO.BIN) "$(DESTDIR)$(BINDIR)/"
$(INSTALL) -m 0755 bin/$(GLEWINFO.BIN) bin/$(VISUALINFO.BIN) "$(DESTDIR)$(BINDIR)/"
install.include:
$(INSTALL) -d -m 0755 "$(DESTDIR)$(INCDIR)"
$(INSTALL) -m 0644 include/GL/wglew.h "$(DESTDIR)$(INCDIR)/"
$(INSTALL) -m 0644 include/GL/glew.h "$(DESTDIR)$(INCDIR)/"
$(INSTALL) -m 0644 include/GL/glxew.h "$(DESTDIR)$(INCDIR)/"
$(INSTALL) -m 0644 include/GL/eglew.h "$(DESTDIR)$(INCDIR)/"
install.pkgconfig: glew.pc
$(INSTALL) -d -m 0755 "$(DESTDIR)$(PKGDIR)"

View File

@ -8,9 +8,9 @@ http://glew.sourceforge.net/
https://github.com/nigels-com/glew
[![Build Status](https://travis-ci.org/nigels-com/glew.svg?branch=master)](https://travis-ci.org/nigels-com/glew)
[![Gitter](https://badges.gitter.im/nigels-com/glew.svg)](https://gitter.im/nigels-com/glew?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
[![Download](https://img.shields.io/sourceforge/dm/glew.svg)](https://sourceforge.net/projects/glew/files/latest/download)
[![Health](https://codebuild.ap-southeast-2.amazonaws.com/badges?uuid=eyJlbmNyeXB0ZWREYXRhIjoiZ0cxMFNORFBPTGQ5Z1MyRUsxRnU5V1ZyOUNUWmZZRFJwNWdBNng5MnNtdFFObGNsTEJkQkxZa0lHYmtMNEZRREZaZmdvMUh2bDMxVjhFc3c2L29odFQ4PSIsIml2UGFyYW1ldGVyU3BlYyI6InhLVlFqWXVaMEZRVFh6c1QiLCJtYXRlcmlhbFNldFNlcmlhbCI6MX0%3D&branch=master)](https://ap-southeast-2.codebuild.aws.amazon.com/project/eyJlbmNyeXB0ZWREYXRhIjoiK3RLWndGOVVkMWthbXRQZCtVTTNOQ0w2dEpxakZ1cVBTNDZ1UldGODdqUERSdkx0U21Nd0RFaGhQL1kycVlmNzh2OXpEYnRKV3hXTVJJdjUvVStCbTl0dkliZm5jRTFsc0VBPSIsIml2UGFyYW1ldGVyU3BlYyI6ImZ0ekRoMkNjaU0rRUt5K2UiLCJtYXRlcmlhbFNldFNlcmlhbCI6MX0%3D)
## Table of Contents
@ -39,22 +39,20 @@ https://github.com/nigels-com/glew
## Downloads
Current release is [2.1.0](https://sourceforge.net/projects/glew/files/glew/2.1.0/).
Current release is [2.2.0](https://github.com/nigels-com/glew/releases/tag/glew-2.2.0).
[(Change Log)](http://glew.sourceforge.net/log.html)
Sources available as
[ZIP](https://sourceforge.net/projects/glew/files/glew/2.1.0/glew-2.1.0.zip/download) or
[TGZ](https://sourceforge.net/projects/glew/files/glew/2.1.0/glew-2.1.0.tgz/download).
[ZIP](https://github.com/nigels-com/glew/releases/download/glew-2.2.0/glew-2.2.0.zip) or
[TGZ](https://github.com/nigels-com/glew/releases/download/glew-2.2.0/glew-2.2.0.tgz).
Windows binaries for [32-bit and 64-bit](https://sourceforge.net/projects/glew/files/glew/2.1.0/glew-2.1.0-win32.zip/download).
Windows binaries for [32-bit and 64-bit](https://github.com/nigels-com/glew/releases/download/glew-2.2.0/glew-2.2.0-win32.zip).
### Recent snapshots
Snapshots may contain new features, bug-fixes or new OpenGL extensions ahead of tested, official releases.
[glew-20200115.tgz](https://sourceforge.net/projects/glew/files/glew/snapshots/glew-20200115.tgz/download) *GLEW 2.2.0 RC3: fixes*
[glew-20190928.tgz](https://sourceforge.net/projects/glew/files/glew/snapshots/glew-20190928.tgz/download) *GLEW 2.2.0 RC2: New extensions, bug fixes*
[glew-20220402.tgz](https://sourceforge.net/projects/glew/files/glew/snapshots/glew-20220402.tgz/download) *GLEW 2.2.0 - with fix for glCreateProgressFenceNVX*
## Build
@ -108,11 +106,11 @@ _Note: you may need to call `make` in the **auto** folder first_
#### Using cmake
The cmake build is mostly contributer maintained.
The cmake build is mostly contributor maintained.
Due to the multitude of use cases this is maintained on a _best effort_ basis.
Pull requests are welcome.
*CMake 2.8.12 or higher is required.*
*CMake 3.16 or higher is required.*
##### Install build tools

View File

@ -92,15 +92,15 @@ OpenGL-Registry/.dummy:
@echo "--------------------------------------------------------------------"
@echo "Downloading OpenGL-Registry"
@echo "--------------------------------------------------------------------"
git clone $(REPO_OPENGL) OpenGL-Registry
git clone --branch glew $(REPO_GLFIXES) glfixes
git clone --depth=1 $(REPO_OPENGL) OpenGL-Registry
git clone --depth=1 --branch glew $(REPO_GLFIXES) glfixes
touch $@
EGL-Registry/.dummy:
@echo "--------------------------------------------------------------------"
@echo "Downloading EGL-Registry"
@echo "--------------------------------------------------------------------"
git clone $(REPO_EGL) EGL-Registry
git clone --depth=1 $(REPO_EGL) EGL-Registry
touch $@
$(EXT)/.dummy: OpenGL-Registry/.dummy EGL-Registry/.dummy

View File

@ -1,6 +1,6 @@
#!/usr/bin/env bash
##
## Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
## Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
##
@ -481,8 +481,9 @@ EOT
head -n4 $1/GL_AMD_gpu_shader_int64 > tmp
mv tmp $1/GL_AMD_gpu_shader_int64
# Filter out GL_NO_ERROR enum from GL_KHR_robustness
grep -v 'GL_NO_ERROR' $1/GL_KHR_robustness > tmp
# Filter out GL_NO_ERROR enum and glGetGraphicsResetStatus from GL_KHR_robustness
grep -v 'GL_NO_ERROR' $1/GL_KHR_robustness |
grep -v 'glGetGraphicsResetStatus' > tmp
mv tmp $1/GL_KHR_robustness
# Filter out all enums from GL_KHR_blend_equation_advanced_coherent

View File

@ -1,6 +1,6 @@
#!/usr/bin/env bash
##
## Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
## Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
##

View File

@ -1,5 +1,5 @@
##
## Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
## Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
##
@ -10,7 +10,7 @@
my %regex = (
extname => qr/^[A-Z][A-Za-z0-9_]+$/,
exturl => qr/^http.+$/,
function => qr/^(.+) ([a-z][a-z0-9_]*) \((.+)\)$/i,
function => qr/^(.+) ([a-z][a-z0-9_]*) \((.*)\)$/i,
token => qr/^([A-Z][A-Z0-9_x]*)\s+((?:0x)?[0-9A-Fa-f]+(u(ll)?)?|[A-Z][A-Z0-9_]*)$/,
type => qr/^typedef\s+(.+)$/,
exact => qr/.*;$/,

View File

@ -1,6 +1,6 @@
#!/usr/bin/env perl
##
## Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
## Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
##

View File

@ -1,6 +1,6 @@
#!/usr/bin/env perl
##
## Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
## Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
##

View File

@ -1,6 +1,6 @@
#!/usr/bin/env perl
##
## Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
## Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
##

View File

@ -1,6 +1,6 @@
#!/usr/bin/env perl
##
## Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
## Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
##

View File

@ -1,6 +1,6 @@
#!/usr/bin/env perl
##
## Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
## Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
##

View File

@ -1,6 +1,6 @@
#!/usr/bin/env perl
##
## Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
## Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
##

View File

@ -1,6 +1,6 @@
#!/usr/bin/env perl
##
## Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
## Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
##

View File

@ -1,6 +1,6 @@
#!/usr/bin/env perl
##
## Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
## Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
##

View File

@ -1,6 +1,6 @@
#!/usr/bin/env perl
##
## Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
## Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
##

View File

@ -1,6 +1,6 @@
#!/usr/bin/env perl
##
## Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
## Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
##

View File

@ -1,6 +1,6 @@
#!/usr/bin/env perl
##
## Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
## Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
##

View File

@ -1,6 +1,6 @@
#!/usr/bin/env perl
##
## Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
## Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
##

View File

@ -1,6 +1,6 @@
#!/usr/bin/env perl
##
## Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
## Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
##

View File

@ -1,6 +1,6 @@
#!/usr/bin/env perl
##
## Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
## Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
##

View File

@ -1,6 +1,6 @@
#!/usr/bin/env perl
##
## Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
## Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
##

View File

@ -1,6 +1,6 @@
#!/usr/bin/env perl
##
## Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
## Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
##
@ -114,7 +114,7 @@ my %taboo_tokens = (
);
# list of function definitions to be ignored, unless they are being defined in
# the given spec. This is an ugly hack arround the fact that people writing
# the given spec. This is an ugly hack around the fact that people writing
# spec files seem to shut down all brain activity while they are at this task.
#
# This will be moved to its own file eventually.
@ -158,7 +158,7 @@ my %regex = (
eofnc => qr/(?:\);?$|^$)/, # )$ | );$ | ^$
extname => qr/^[A-Z][A-Za-z0-9_]+$/,
none => qr/^\(none\)$/,
function => qr/^(.+) ([a-z][a-z0-9_]*) \((.+)\)$/i,
function => qr/^(.+) ([a-z][a-z0-9_]*) \((.*)\)$/i,
prefix => qr/^(?:[aw]?gl|glX|egl)/, # gl | agl | wgl | glX
tprefix => qr/^(?:[AW]?GL|GLX|EGL)_/, # GL_ | AGL_ | WGL_ | GLX_
section => compile_regex('^(', join('|', @sections), ')$'), # sections in spec
@ -185,7 +185,7 @@ sub normalize_prototype
return $_;
}
# Ugly hack to work arround the fact that functions are declared in more
# Ugly hack to work around the fact that functions are declared in more
# than one spec file.
sub ignore_function($$)
{
@ -258,6 +258,10 @@ sub parse_spec($)
$parms =~ s/$regex{voidtype}/$voidtypemap{$1}/og;
$parms =~ s/GLvoid/void/og;
$parms =~ s/ void\* / void */og;
if ($parms eq "")
{
$parms = "void"; # NVX_progress_fence and others
}
}
# add to functions hash
$functions{$name} = {

View File

@ -43,12 +43,7 @@ def findParams(node):
return ( t, n.strip())
def findEnums(dom):
ret = {}
for i in findChildren(dom, [ 'registry', 'enums', 'enum' ]):
n = i.getAttribute('name')
v = i.getAttribute('value')
ret[n] = v
return ret
return {i.getAttribute('name'): i.getAttribute('value') for i in findChildren(dom, [ 'registry', 'enums', 'enum' ])}
def findCommands(dom):
ret = {}
@ -62,12 +57,8 @@ def findFeatures(dom):
ret = {}
for i in findChildren(dom, [ 'registry', 'feature' ]):
n = i.getAttribute('name')
e = []
c = []
for j in findChildren(i, [ 'require', 'enum' ]):
e.append(j.getAttribute("name"))
for j in findChildren(i, [ 'require', 'command' ]):
c.append(j.getAttribute("name"))
e = [j.getAttribute("name") for j in findChildren(i, [ 'require', 'enum' ])]
c = [j.getAttribute("name") for j in findChildren(i, [ 'require', 'command' ])]
ret[n] = (e,c)
return ret
@ -75,12 +66,8 @@ def findExtensions(dom):
ret = {}
for i in findChildren(dom, [ 'registry', 'extensions', 'extension' ]):
n = i.getAttribute('name')
e = []
c = []
for j in findChildren(i, [ 'require', 'enum' ]):
e.append(j.getAttribute("name"))
for j in findChildren(i, [ 'require', 'command' ]):
c.append(j.getAttribute("name"))
e = [j.getAttribute("name") for j in findChildren(i, [ 'require', 'enum' ])]
c = [j.getAttribute("name") for j in findChildren(i, [ 'require', 'command' ])]
ret[n] = (e,c)
return ret
@ -148,13 +135,11 @@ if __name__ == '__main__':
if len(options['core']):
for i in api[2].keys():
f = open('%s/%s'%(options['core'], i), 'wb')
writeExtension(f, i, api[2][i], api[0], api[1])
f.close()
with open(os.path.join(options['core'], i), 'wb') as f:
writeExtension(f, i, api[2][i], api[0], api[1])
if len(options['extensions']):
for i in api[3].keys():
f = open('%s/%s'%(options['extensions'], i), 'wb')
writeExtension(f, i, api[3][i], api[0], api[1])
f.close()
with open(os.path.join(options['extensions'], i), 'wb') as f:
writeExtension(f, i, api[3][i], api[0], api[1])

View File

@ -1,6 +1,6 @@
#!/usr/bin/env bash
##
## Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
## Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
##

View File

@ -4,6 +4,7 @@ EXT/vertex_array_set.alt.txt
EXT/vertex_array_set.txt
EXT/nurbs_tessellator.txt
EXT/object_space_tess.txt
MESA/MESA_sampler_objects.txt
SGI/filter4_parameters.txt
SGIS/SGIS_texture_color_mask.txt
SGIX/SGIX_dmbuffer.txt

View File

@ -88,7 +88,7 @@ terminated with a semicolon.
<h3>Custom Code Generation</h3>
<p>
Starting from GLEW 1.3.0, it is possible to control which extensions
to include in the libarary by specifying a list in
to include in the library by specifying a list in
<tt>auto/custom.txt</tt>. This is useful when you do not need all the
extensions and would like to reduce the size of the source files.
Type <tt>make clean; make custom</tt> in the <tt>auto</tt> directory

View File

@ -13,7 +13,7 @@ Mac OS X, FreeBSD, Irix, and Solaris.
<a href="http://sourceforge.net/projects/glew/">GLEW</a> is distributed
as source and precompiled binaries.<br/>
The latest release is
<a href="https://sourceforge.net/projects/glew/files/glew/2.2.0/">2.2.0</a>[03-15-20]:
<a href="https://github.com/nigels-com/glew/releases/tag/glew-2.2.0">2.2.0</a>[03-15-20]:
</p>
<p>
</p>
@ -27,8 +27,8 @@ The latest release is
<td align="right"><b>Source</b></td>
<td></td>
<td align="left">
<a href="https://sourceforge.net/projects/glew/files/glew/2.2.0/glew-2.2.0.zip/download">ZIP</a>&nbsp;|&nbsp;
<a href="https://sourceforge.net/projects/glew/files/glew/2.2.0/glew-2.2.0.tgz/download">TGZ</a></td>
<a href="https://github.com/nigels-com/glew/releases/download/glew-2.2.0/glew-2.2.0.zip">ZIP</a>&nbsp;|&nbsp;
<a href="https://github.com/nigels-com/glew/releases/download/glew-2.2.0/glew-2.2.0.tgz">TGZ</a></td>
<td></td>
</tr>
<tr>
@ -36,7 +36,7 @@ The latest release is
<td align="right"><b>Binaries</b></td>
<td></td>
<td align="left">
<a href="https://sourceforge.net/projects/glew/files/glew/2.2.0/glew-2.2.0-win32.zip/download">Windows 32-bit and 64-bit</a>
<a href="https://github.com/nigels-com/glew/releases/download/glew-2.2.0/glew-2.2.0-win32.zip">Windows 32-bit and 64-bit</a>
</td>
<td></td>
</tr>
@ -65,9 +65,9 @@ The latest release contains support for OpenGL 4.6, compatibility and forward-co
<h2>News</h2>
<ul>
<li>[03-15-20] <a href="https://sourceforge.net/projects/glew/files/glew/2.2.0/">GLEW 2.2.0</a> new extensions and minor bug fixes</li>
<li>[07-31-17] <a href="https://sourceforge.net/projects/glew/files/glew/2.1.0/">GLEW 2.1.0</a> adds support for OpenGL 4.6, new extensions and minor bug fixes</li>
<li>[07-24-16] <a href="https://sourceforge.net/projects/glew/files/glew/2.0.0/">GLEW 2.0.0</a> adds support for forward-compatible contexts, adds new extensions, OSMesa and EGL support, MX discontinued and minor bug fixes</li>
<li>[03-15-20] <a href="https://github.com/nigels-com/glew/releases/tag/glew-2.2.0">GLEW 2.2.0</a> new extensions and minor bug fixes</li>
<li>[07-31-17] <a href="https://github.com/nigels-com/glew/releases/tag/glew-2.1.0">GLEW 2.1.0</a> adds support for OpenGL 4.6, new extensions and minor bug fixes</li>
<li>[07-24-16] <a href="https://github.com/nigels-com/glew/releases/tag/glew-2.0.0">GLEW 2.0.0</a> adds support for forward-compatible contexts, adds new extensions, OSMesa and EGL support, MX discontinued and minor bug fixes</li>
<li>[08-10-15] <a href="https://sourceforge.net/projects/glew/files/glew/1.13.0/">GLEW 1.13.0</a> adds support for new extensions, fixes minor bugs</li>
<li>[26-01-15] <a href="https://sourceforge.net/projects/glew/files/glew/1.12.0/">GLEW 1.12.0</a> fixes minor bugs and adds new extensions</li>
<li>[08-11-14] <a href="https://sourceforge.net/projects/glew/files/glew/1.11.0/">GLEW 1.11.0</a> adds support for OpenGL 4.5, new extensions</li>

View File

@ -198,7 +198,7 @@
<ul>
<li> Bug fixes:
<ul>
<li> Resovled crash when glXGetCurrentDisplay() is NULL
<li> Resolved crash when glXGetCurrentDisplay() is NULL
<li> CMake: only install PDB files with MSVC
<li> wglGetProcAddress crash with NOGDI defined
<li> Mac: using -Os rather than -O2
@ -927,7 +927,7 @@
</ul>
<li> Bug fixes:
<ul>
<li> Incorrent 64-bit type definitions
<li> Incorrect 64-bit type definitions
<li> Do not strip static library on install
<li> Missing tokens in GL_ATI_fragment_shader and WGL_{ARB,EXT}_make_current_read
<li> Missing tokens in GL_VERSION_2_1
@ -975,7 +975,7 @@ corruption of their values
<li> Missing include guards in glxew.h
<li> Makefile and install problems for Cygwin builds
<li> Install problem for Linux AMD64 builds
<li> Incorrent token in GL_ATI_texture_compression_3dc
<li> Incorrect token in GL_ATI_texture_compression_3dc
<li> Missing tokens from GL_ATIX_point_sprites
</ul>
</ul>

View File

@ -78,6 +78,11 @@ typedef khronos_stime_nanoseconds_t EGLnsecsANDROID;
struct EGLClientPixmapHI;
struct AHardwareBuffer;
/* Wayland types for WL_bind_wayland_display purposes */
struct wl_buffer;
struct wl_display;
struct wl_resource;
#define EGL_DONT_CARE ((EGLint)-1)
#define EGL_NO_CONTEXT ((EGLContext)0)

View File

@ -19,7 +19,7 @@
//
// Version
//
VS_VERSION_INFO VERSIONINFO
VS_VERSION_INFO VERSIONINFO
FILEVERSION GLEW_MAJOR, GLEW_MINOR, GLEW_MICRO, 0
PRODUCTVERSION GLEW_MAJOR, GLEW_MINOR, GLEW_MICRO, 0
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
@ -40,9 +40,9 @@ BEGIN
BEGIN
BLOCK "040904b0"
BEGIN
VALUE "Comments",
VALUE "Comments",
"The OpenGL Extension Wrangler Library\r\n"
"Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>\r\n"
"Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>\r\n"
"Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>\r\n"
"Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>\r\n"
"Copyright (C) 2002, Lev Povalahev\r\n"
@ -120,7 +120,7 @@ BEGIN
VALUE "FileDescription", "The OpenGL Extension Wrangler Library\0"
VALUE "FileVersion", "GLEW_MAJOR,GLEW_MINOR,GLEW_MICRO,0\0"
VALUE "InternalName", "GLEW\0"
VALUE "LegalCopyright", "© 2002-2019 Nigel Stewart & Milan Ikits & Marcelo Magallon\0"
VALUE "LegalCopyright", "(C) 2002-2019 Nigel Stewart & Milan Ikits & Marcelo Magallon\0"
VALUE "LegalTrademarks", "\0"
VALUE "OriginalFilename", FILENAME "\0"
VALUE "PrivateBuild", "\0"

View File

@ -6,7 +6,15 @@
#if defined(GLEW_OSMESA)
# define GLAPI extern
# ifndef APIENTRY
# define APIENTRY
# define GLEW_APIENTRY_DEFINED
# endif
# include <GL/osmesa.h>
# ifdef GLEW_APIENTRY_DEFINED
# undef APIENTRY
# undef GLEW_APIENTRY_DEFINED
# endif
#elif defined(GLEW_EGL)
# include <GL/eglew.h>
#elif defined(_WIN32)
@ -28,7 +36,7 @@
#if defined(GLEW_EGL)
#elif defined(GLEW_REGAL)
/* In GLEW_REGAL mode we call direcly into the linked
/* In GLEW_REGAL mode we call directly into the linked
libRegal.so glGetProcAddressREGAL for looking up
the GL function pointers. */
@ -70,7 +78,7 @@ void* dlGetProcAddress (const GLubyte* name)
#include <string.h>
#include <AvailabilityMacros.h>
#ifdef MAC_OS_X_VERSION_10_3
#if defined(MAC_OS_X_VERSION_10_3) && MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_3
#include <dlfcn.h>
@ -120,7 +128,7 @@ void* NSGLGetProcAddress (const GLubyte *name)
return NULL;
#endif
}
#endif /* MAC_OS_X_VERSION_10_3 */
#endif /* defined(MAC_OS_X_VERSION_10_3) && MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_3 */
#endif /* __APPLE__ */
/*
@ -221,7 +229,7 @@ static GLboolean _glewStrSame1 (const GLubyte** a, GLuint* na, const GLubyte* b,
if(*na >= nb)
{
GLuint i=0;
while (i < nb && (*a)+i != NULL && b+i != NULL && (*a)[i] == b[i]) i++;
while (i < nb && (*a)[i] == b[i]) i++;
if(i == nb)
{
*a = *a + nb;
@ -237,7 +245,7 @@ static GLboolean _glewStrSame2 (const GLubyte** a, GLuint* na, const GLubyte* b,
if(*na >= nb)
{
GLuint i=0;
while (i < nb && (*a)+i != NULL && b+i != NULL && (*a)[i] == b[i]) i++;
while (i < nb && (*a)[i] == b[i]) i++;
if(i == nb)
{
*a = *a + nb;
@ -253,7 +261,7 @@ static GLboolean _glewStrSame3 (const GLubyte** a, GLuint* na, const GLubyte* b,
if(*na >= nb)
{
GLuint i=0;
while (i < nb && (*a)+i != NULL && b+i != NULL && (*a)[i] == b[i]) i++;
while (i < nb && (*a)[i] == b[i]) i++;
if (i == nb && (*na == nb || (*a)[i] == ' ' || (*a)[i] == '\n' || (*a)[i] == '\r' || (*a)[i] == '\t'))
{
*a = *a + nb;

View File

@ -2,7 +2,7 @@
#define __glew_h__
#define __GLEW_H__
#if defined(__gl_h_) || defined(__GL_H__) || defined(_GL_H) || defined(__X_GL_H)
#if defined(__gl_h_) || defined(__GL_H__) || defined(_GL_H) || defined(__gl_gl_h_) || defined(__X_GL_H)
#error gl.h included before glew.h
#endif
#if defined(__gl2_h_)
@ -25,6 +25,7 @@
#define __gl2_h_
#define __GL_H__
#define _GL_H
#define __gl_gl_h_
#define __gltypes_h_
#define __REGAL_H__
#define __X_GL_H
@ -62,11 +63,6 @@
# define APIENTRY
# endif
#endif
#ifndef GLAPI
# if defined(__MINGW32__) || defined(__CYGWIN__)
# define GLAPI extern
# endif
#endif
/* <winnt.h> */
#ifndef CALLBACK
#define GLEW_CALLBACK_DEFINED

View File

@ -25,7 +25,7 @@ GLenum eglewInit (EGLDisplay display)
if (!initialize || !queryString)
return 1;
/* query EGK version */
/* query EGL version */
if (initialize(display, &major, &minor) != EGL_TRUE)
return 1;

View File

@ -73,7 +73,7 @@ GLboolean GLEWAPIENTRY glewGetExtension (const char* name)
typedef const GLubyte* (GLAPIENTRY * PFNGLGETSTRINGPROC) (GLenum name);
typedef void (GLAPIENTRY * PFNGLGETINTEGERVPROC) (GLenum pname, GLint *params);
static GLenum GLEWAPIENTRY glewContextInit ()
GLenum GLEWAPIENTRY glewContextInit (void)
{
PFNGLGETSTRINGPROC getString;
const GLubyte* s;

View File

@ -8,6 +8,7 @@ const GLubyte * GLEWAPIENTRY glewGetErrorString (GLenum error)
(const GLubyte*)"Missing GL version",
(const GLubyte*)"GL 1.1 and up are not supported",
(const GLubyte*)"GLX 1.2 and up are not supported",
(const GLubyte*)"No GLX display",
(const GLubyte*)"Unknown error"
};
const size_t max_error = sizeof(_glewErrorString)/sizeof(*_glewErrorString) - 1;

View File

@ -1,6 +1,6 @@
/*
** The OpenGL Extension Wrangler Library
** Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
** Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
** Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
** Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
** Copyright (C) 2002, Lev Povalahev

View File

@ -27,6 +27,7 @@ VERSION_MICRO GLEW_VERSION_MICRO_STRING
/* API */
GLEWAPI GLenum GLEWAPIENTRY glewInit (void);
GLEWAPI GLenum GLEWAPIENTRY glewContextInit (void);
GLEWAPI GLboolean GLEWAPIENTRY glewIsSupported (const char *name);
#define glewIsExtensionSupported(x) glewIsSupported(x)

View File

@ -11,7 +11,7 @@
//
// Version
//
VS_VERSION_INFO VERSIONINFO
VS_VERSION_INFO VERSIONINFO
FILEVERSION GLEW_MAJOR, GLEW_MINOR, GLEW_MICRO, 0
PRODUCTVERSION GLEW_MAJOR, GLEW_MINOR, GLEW_MICRO, 0
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
@ -28,9 +28,9 @@ BEGIN
BEGIN
BLOCK "040904b0"
BEGIN
VALUE "Comments",
VALUE "Comments",
"The OpenGL Extension Wrangler Library\r\n"
"Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>\r\n"
"Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>\r\n"
"Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>\r\n"
"Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>\r\n"
"Copyright (C) 2002, Lev Povalahev\r\n"
@ -108,7 +108,7 @@ BEGIN
VALUE "FileDescription", "Utility for verifying extension entry points\0"
VALUE "FileVersion", "GLEW_MAJOR,GLEW_MINOR,GLEW_MICRO,0\0"
VALUE "InternalName", "glewinfo\0"
VALUE "LegalCopyright", "© 2002-2019 Nigel Stewart & Milan Ikits & Marcelo Magallon\0"
VALUE "LegalCopyright", "(C) 2002-2019 Nigel Stewart & Milan Ikits & Marcelo Magallon\0"
VALUE "LegalTrademarks", "\0"
VALUE "OriginalFilename", FILENAME "\0"
VALUE "PrivateBuild", "\0"

View File

@ -1,7 +1,7 @@
<!-- begin header.html -->
<!--
The OpenGL Extension Wrangler Library
Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
Copyright (C) 2002, Lev Povalahev
@ -46,7 +46,7 @@ THE POSSIBILITY OF SUCH DAMAGE.
<td valign="top">
<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
<tr><td align="center"><i>Latest Release: <a href="https://sourceforge.net/projects/glew/files/glew/2.1.0/">2.1.0</a></i></td></tr>
<tr><td align="center"><i>Latest Release: <a href="https://github.com/nigels-com/glew/releases/tag/glew-2.2.0">2.2.0</a></i></td></tr>
<tr><td align="center"><br></td></tr>
<tr><td align="center"><img src="./glew.png" alt="GLEW Logo" width="97" height="75"></td></tr>
<tr><td align="center"><br></td></tr>
@ -62,8 +62,6 @@ THE POSSIBILITY OF SUCH DAMAGE.
<tr><td align="center"><a href="https://github.com/nigels-com/glew">GitHub</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew/issues">Issues</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew/pulls">Pull Requests</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew#authors">Authors</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew#copyright-and-licensing">Licensing</a></td></tr>
<tr><td align="center"><br></tr>
<tr><td align="center"><a href="https://sourceforge.net/projects/glew">SourceForge Page</a></td></tr>
</table>

View File

@ -11,7 +11,7 @@
//
// Version
//
VS_VERSION_INFO VERSIONINFO
VS_VERSION_INFO VERSIONINFO
FILEVERSION GLEW_MAJOR, GLEW_MINOR, GLEW_MICRO, 0
PRODUCTVERSION GLEW_MAJOR, GLEW_MINOR, GLEW_MICRO, 0
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
@ -28,9 +28,9 @@ BEGIN
BEGIN
BLOCK "040904b0"
BEGIN
VALUE "Comments",
VALUE "Comments",
"The OpenGL Extension Wrangler Library\r\n"
"Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>\r\n"
"Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>\r\n"
"Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>\r\n"
"Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>\r\n"
"Copyright (C) 2002, Lev Povalahev\r\n"
@ -108,7 +108,7 @@ BEGIN
VALUE "FileDescription", "Utility for listing pixelformat capabilities\0"
VALUE "FileVersion", "GLEW_MAJOR,GLEW_MINOR,GLEW_MICRO,0\0"
VALUE "InternalName", "visualinfo\0"
VALUE "LegalCopyright", "© 2002-2019 Nigel Stewart & Milan Ikits & Marcelo Magallon\0"
VALUE "LegalCopyright", "(C) 2002-2019 Nigel Stewart & Milan Ikits & Marcelo Magallon\0"
VALUE "LegalTrademarks", "\0"
VALUE "OriginalFilename", FILENAME "\0"
VALUE "PrivateBuild", "\0"

View File

@ -1,21 +1,12 @@
cmake_minimum_required(VERSION 3.16)
project(glew LANGUAGES C)
if ( NOT DEFINED CMAKE_BUILD_TYPE )
set( CMAKE_BUILD_TYPE Release CACHE STRING "Build type" )
endif ()
project (glew C)
cmake_minimum_required (VERSION 2.8.12)
include(GNUInstallDirs)
if(POLICY CMP0003)
cmake_policy (SET CMP0003 NEW)
endif()
if(POLICY CMP0042)
cmake_policy (SET CMP0042 NEW)
endif()
set(CMAKE_DEBUG_POSTFIX d)
option (BUILD_UTILS "utilities" ON)
@ -24,6 +15,9 @@ option (GLEW_OSMESA "OSMesa mode" OFF)
if (APPLE)
option (BUILD_FRAMEWORK "Build Framework bundle for OSX" OFF)
endif ()
option (GLEW_X11 "X11 mode" ON)
option (GLEW_EGL "EGL mode" OFF)
option (BUILD_SHARED_LIBS "install/link shared instead of static libs" ON)
set (GLEW_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../..)
@ -36,15 +30,25 @@ file (STRINGS ${GLEW_DIR}/config/version _VERSION_PATCH_STRING REGEX "GLEW_MICR
string (REGEX REPLACE "GLEW_MICRO[ ]*=[ ]*([0-9]+)" "\\1" CPACK_PACKAGE_VERSION_PATCH ${_VERSION_PATCH_STRING})
set (GLEW_VERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH})
set (CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
set (CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
set (CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
if (NOT GLEW_CUSTOM_OUTPUT_DIRS)
set (CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
set (CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
set (CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
endif()
find_package (OpenGL REQUIRED)
# prefer GLVND
if (OPENGL_opengl_LIBRARY)
set (GLEW_LIBRARIES ${OPENGL_opengl_LIBRARY})
else ()
set (GLEW_LIBRARIES ${OPENGL_gl_LIBRARY})
endif ()
# X11 required except for Windows and Apple OSX platforms
if (NOT WIN32 AND NOT APPLE)
if (GLEW_X11 AND NOT WIN32 AND NOT APPLE)
find_package (X11)
list (APPEND GLEW_LIBRARIES ${OPENGL_glx_LIBRARY} ${X11_LIBRARIES})
endif()
if (WIN32)
@ -54,8 +58,6 @@ else ()
set (DLL_PREFIX lib)
endif ()
set (GLEW_LIBRARIES ${OPENGL_LIBRARIES} ${X11_LIBRARIES})
add_definitions (-DGLEW_NO_GLU)
#### Regal mode ####
@ -79,7 +81,7 @@ if (GLEW_OSMESA)
set (OSMESA_LIB_NAME OSMesa)
endif ()
add_definitions (-DGLEW_OSMESA)
set (GLEW_LIBRARIES ${OSMESA_LIB_NAME} ${OPENGL_LIBRARIES})
list (APPEND GLEW_LIBRARIES ${OSMESA_LIB_NAME})
set (X11_LIBRARIES)
endif ()
@ -87,17 +89,22 @@ endif ()
if (GLEW_EGL AND UNIX)
add_definitions (-DGLEW_EGL)
if (OpenGL::EGL)
if (NOT OpenGL_EGL_FOUND)
message (FATAL_ERROR "EGL library set but not found.")
endif()
set (GLEW_LIBRARIES ${OPENGL_LIBRARIES} ${OPENGL_egl_LIBRARY})
endif ()
list (APPEND GLEW_LIBRARIES ${OPENGL_egl_LIBRARY})
endif ()
#### GLEW ####
include_directories (${GLEW_DIR}/include ${X11_INCLUDE_DIR})
set (GLEW_PUBLIC_HEADERS_FILES ${GLEW_DIR}/include/GL/wglew.h ${GLEW_DIR}/include/GL/glew.h ${GLEW_DIR}/include/GL/glxew.h)
set (GLEW_PUBLIC_HEADERS_FILES
${GLEW_DIR}/include/GL/wglew.h
${GLEW_DIR}/include/GL/glew.h
${GLEW_DIR}/include/GL/glxew.h
${GLEW_DIR}/include/GL/eglew.h
)
set (GLEW_SRC_FILES ${GLEW_DIR}/src/glew.c)
if (WIN32)
@ -115,7 +122,9 @@ if (MSVC)
# add options from visual studio project
target_compile_definitions (glew PRIVATE "GLEW_BUILD;VC_EXTRALEAN")
target_compile_definitions (glew_s PRIVATE "GLEW_STATIC;VC_EXTRALEAN")
target_link_libraries (glew LINK_PRIVATE -BASE:0x62AA0000)
if(CMAKE_SYSTEM_PROCESSOR MATCHES "^(i?86|x86|x86_32)$")
target_link_libraries (glew LINK_PRIVATE -BASE:0x62AA0000)
endif()
# kill security checks which are dependent on stdlib
target_compile_options (glew PRIVATE -GS-)
target_compile_options (glew_s PRIVATE -GS-)
@ -148,31 +157,24 @@ endif()
target_link_libraries (glew LINK_PUBLIC ${GLEW_LIBRARIES})
target_link_libraries (glew_s ${GLEW_LIBRARIES})
if(CMAKE_VERSION VERSION_LESS 2.8.12)
set(MAYBE_EXPORT "")
else()
target_compile_definitions(glew_s INTERFACE "GLEW_STATIC")
foreach(t glew glew_s)
target_include_directories(${t} PUBLIC $<INSTALL_INTERFACE:include>)
endforeach()
set(MAYBE_EXPORT EXPORT glew-targets)
endif()
target_compile_definitions(glew_s INTERFACE "GLEW_STATIC")
foreach(t glew glew_s)
target_include_directories(${t} PUBLIC $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
endforeach()
set(targets_to_install "")
if(NOT DEFINED BUILD_SHARED_LIBS OR BUILD_SHARED_LIBS)
if(BUILD_SHARED_LIBS)
list(APPEND targets_to_install glew)
endif()
if(NOT DEFINED BUILD_SHARED_LIBS OR NOT BUILD_SHARED_LIBS)
else ()
list(APPEND targets_to_install glew_s)
endif()
install ( TARGETS ${targets_to_install}
${MAYBE_EXPORT}
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX}
EXPORT glew-targets
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Runtime
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Runtime
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Development
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX} COMPONENT Runtime
)
if (BUILD_UTILS)
@ -181,7 +183,7 @@ if (BUILD_UTILS)
list (APPEND GLEWINFO_SRC_FILES ${GLEW_DIR}/build/glewinfo.rc)
endif ()
add_executable (glewinfo ${GLEWINFO_SRC_FILES})
if(NOT DEFINED BUILD_SHARED_LIBS OR BUILD_SHARED_LIBS)
if(BUILD_SHARED_LIBS)
target_link_libraries (glewinfo glew)
else()
target_link_libraries (glewinfo glew_s)
@ -195,7 +197,7 @@ if (BUILD_UTILS)
list (APPEND VISUALINFO_SRC_FILES ${GLEW_DIR}/build/visualinfo.rc)
endif ()
add_executable (visualinfo ${VISUALINFO_SRC_FILES})
if(NOT DEFINED BUILD_SHARED_LIBS OR BUILD_SHARED_LIBS)
if(BUILD_SHARED_LIBS)
target_link_libraries (visualinfo glew)
else()
target_link_libraries (visualinfo glew_s)
@ -205,7 +207,8 @@ if (BUILD_UTILS)
endif ()
install ( TARGETS glewinfo visualinfo
DESTINATION ${CMAKE_INSTALL_BINDIR})
DESTINATION ${CMAKE_INSTALL_BINDIR}
COMPONENT Runtime)
endif ()
set (prefix ${CMAKE_INSTALL_PREFIX})
@ -226,30 +229,31 @@ configure_file (${GLEW_DIR}/glew.pc.in ${CMAKE_CURRENT_BINARY_DIR}/glew.pc @ONLY
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/glew.pc
DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig
COMPONENT Development
)
if(WIN32 AND MSVC AND (NOT MSVC_VERSION LESS 1600) AND (NOT CMAKE_VERSION VERSION_LESS "3.1"))
if(WIN32 AND MSVC AND (NOT MSVC_VERSION LESS 1600))
install(
FILES $<TARGET_PDB_FILE:glew>
DESTINATION ${CMAKE_INSTALL_LIBDIR}
CONFIGURATIONS Debug RelWithDebInfo
COMPONENT Runtime
)
endif()
install (FILES
${GLEW_DIR}/include/GL/wglew.h
${GLEW_DIR}/include/GL/glew.h
${GLEW_DIR}/include/GL/glxew.h
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/GL)
install (
FILES ${GLEW_PUBLIC_HEADERS_FILES}
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/GL
COMPONENT Development)
if(MAYBE_EXPORT)
install(EXPORT glew-targets DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/glew
NAMESPACE GLEW::)
install(FILES
${CMAKE_CURRENT_SOURCE_DIR}/glew-config.cmake
${CMAKE_CURRENT_SOURCE_DIR}/CopyImportedTargetProperties.cmake
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/glew)
endif()
install(EXPORT glew-targets DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/glew
COMPONENT Development
NAMESPACE GLEW::)
install(FILES
${CMAKE_CURRENT_SOURCE_DIR}/glew-config.cmake
${CMAKE_CURRENT_SOURCE_DIR}/CopyImportedTargetProperties.cmake
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/glew
COMPONENT Development)
if(NOT TARGET uninstall)
configure_file(

View File

@ -1,5 +1,5 @@
cmake_minimum_required(VERSION 2.8.12)
project(glew-cmake-test)
cmake_minimum_required(VERSION 3.16)
project(glew-cmake-test LANGUAGES C)
find_package(GLEW REQUIRED CONFIG)
find_package(GLEW REQUIRED CONFIG) # call twice to test multiple call
@ -10,16 +10,10 @@ set_target_properties(cmake-test PROPERTIES DEBUG_POSTFIX _d)
target_link_libraries(cmake-test PRIVATE GLEW::GLEW ${OPENGL_LIBRARIES})
target_include_directories(cmake-test PRIVATE ${OPENGL_INCLUDE_DIR})
if(CMAKE_VERSION VERSION_LESS 3.0)
set(cgex $<CONFIGURATION>)
else()
set(cgex $<CONFIG>)
endif()
target_compile_definitions(cmake-test PRIVATE
-DGLEW_CMAKE_TEST_CONFIG=${cgex}
-DGLEW_CMAKE_TEST_CONFIG=$<CONFIG>
-DGLEW_CMAKE_TEST_TARGET_FILE_NAME=$<TARGET_FILE_NAME:GLEW::GLEW>
-DGLEW_CMAKE_TEST_TARGET_TYPE=$<TARGET_PROPERTY:GLEW::GLEW,TYPE>
)
install(TARGETS cmake-test DESTINATION bin)
install(TARGETS cmake-test DESTINATION bin COMPONENT Runtime)

View File

@ -24,7 +24,7 @@
#
# Build & install shared + static, find default (shared)
#
# ./cmake-testbuild.shh
# ./cmake-testbuild.sh
#
# Build & install shared + static, find static
#

View File

@ -0,0 +1,28 @@
GLEW_DEST = /usr/local
NAME = $(GLEW_NAME)
CC = cc
LD = cc
CFLAGS.EXTRA += -arch arm64
CFLAGS.EXTRA += -dynamic -fno-common
CFLAGS.EXTRA += -pedantic
CFLAGS.EXTRA += -fPIC
LDFLAGS.EXTRA = -arch arm64
ifneq (undefined, $(origin GLEW_APPLE_GLX))
CFLAGS.EXTRA += -std=c99
CFLAGS.EXTRA += -I/usr/X11R6/include -D'GLEW_APPLE_GLX'
LDFLAGS.GL = -L/usr/X11R6/lib -lGL -lX11
else
CFLAGS.EXTRA += -std=c89
GLEW_NO_GLU = -DGLEW_NO_GLU
LDFLAGS.GL = -framework OpenGL
endif
LDFLAGS.STATIC =
LDFLAGS.DYNAMIC =
WARN = -Wall -W
POPT = -Os
BIN.SUFFIX =
LIB.SONAME = lib$(NAME).$(SO_MAJOR).dylib
LIB.DEVLNK = lib$(NAME).dylib
LIB.SHARED = lib$(NAME).$(SO_VERSION).dylib
LIB.STATIC = lib$(NAME).a
LDFLAGS.SO = -dynamiclib -install_name $(GLEW_DEST)/lib/$(LIB.SHARED) -current_version $(SO_VERSION) -compatibility_version $(SO_MAJOR)

View File

@ -1,5 +1,5 @@
#
# Needs to be clang toolchain for universal: -arch i386 -arch x86_64
# Needs to be clang toolchain for universal: -arch x86_64 -arch arm64
#
GLEW_DEST = /usr/local
NAME = $(GLEW_NAME)
@ -11,8 +11,8 @@ STRIP =
CFLAGS.EXTRA = -dynamic -fno-common
CFLAGS.EXTRA += -pedantic
CFLAGS.EXTRA += -fPIC
CFLAGS.EXTRA += -arch i386 -arch x86_64
LDFLAGS.EXTRA = -arch i386 -arch x86_64
CFLAGS.EXTRA += -arch x86_64 -arch arm64
LDFLAGS.EXTRA = -arch x86_64 -arch arm64
ifneq (undefined, $(origin GLEW_APPLE_GLX))
CFLAGS.EXTRA += -std=c99
CFLAGS.EXTRA += -I/usr/X11R6/include -D'GLEW_APPLE_GLX'

View File

@ -0,0 +1,5 @@
include config/Makefile.linux
LDFLAGS.GL = -lEGL -lOpenGL
CFLAGS.EXTRA += -DGLEW_EGL
GLEW_NO_GLU = -DGLEW_NO_GLU

View File

@ -1,17 +1,19 @@
# For cross-compiling from Linux to Windows 32-bit using mingw32
# http://mingw-w64.org/
#
# Ubuntu/Debian:
# $ sudo apt install mingw-w64
# $ make SYSTEM=linux-mingw32
NAME := glew32
HOST := i686-w64-mingw32
NAME := glew32
HOST := i686-w64-mingw32
GLEW_DEST ?= /usr/local/$(HOST)
CC := $(HOST)-gcc
LD := $(HOST)-ld
LN :=
STRIP :=
LDFLAGS.GL = -L/usr/$(HOST)/lib -lopengl32 -lgdi32 -luser32 -lkernel32
CFLAGS.EXTRA += -fno-builtin -fno-stack-protector
CFLAGS.EXTRA += -fno-builtin -fno-stack-protector -Wno-cast-function-type
WARN = -Wall -W
POPT = -O2
BIN.SUFFIX = .exe

View File

@ -1,17 +1,19 @@
# For cross-compiling from Linux to Windows 64-bit using mingw64
# http://mingw-w64.org/
#
# Ubuntu/Debian:
# $ sudo apt install mingw-w64
# $ make SYSTEM=linux-mingw64
NAME := glew32
HOST := x86_64-w64-mingw32
NAME := glew32
HOST := x86_64-w64-mingw32
GLEW_DEST ?= /usr/local/$(HOST)
CC := $(HOST)-gcc
LD := $(HOST)-ld
LN :=
STRIP :=
LDFLAGS.GL = -L/usr/$(HOST)/lib -lopengl32 -lgdi32 -luser32 -lkernel32
CFLAGS.EXTRA += -fno-builtin -fno-stack-protector
CFLAGS.EXTRA += -fno-builtin -fno-stack-protector -Wno-cast-function-type
WARN = -Wall -W
POPT = -O2
BIN.SUFFIX = .exe

1533
config/config.guess vendored

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
<!-- begin header.html -->
<!--
The OpenGL Extension Wrangler Library
Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
Copyright (C) 2002, Lev Povalahev
@ -46,7 +46,7 @@ THE POSSIBILITY OF SUCH DAMAGE.
<td valign="top">
<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
<tr><td align="center"><i>Latest Release: <a href="https://sourceforge.net/projects/glew/files/glew/2.1.0/">2.1.0</a></i></td></tr>
<tr><td align="center"><i>Latest Release: <a href="https://github.com/nigels-com/glew/releases/tag/glew-2.2.0">2.2.0</a></i></td></tr>
<tr><td align="center"><br></td></tr>
<tr><td align="center"><img src="./glew.png" alt="GLEW Logo" width="97" height="75"></td></tr>
<tr><td align="center"><br></td></tr>
@ -62,8 +62,6 @@ THE POSSIBILITY OF SUCH DAMAGE.
<tr><td align="center"><a href="https://github.com/nigels-com/glew">GitHub</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew/issues">Issues</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew/pulls">Pull Requests</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew#authors">Authors</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew#copyright-and-licensing">Licensing</a></td></tr>
<tr><td align="center"><br></tr>
<tr><td align="center"><a href="https://sourceforge.net/projects/glew">SourceForge Page</a></td></tr>
</table>
@ -186,7 +184,7 @@ terminated with a semicolon.
<h3>Custom Code Generation</h3>
<p>
Starting from GLEW 1.3.0, it is possible to control which extensions
to include in the libarary by specifying a list in
to include in the library by specifying a list in
<tt>auto/custom.txt</tt>. This is useful when you do not need all the
extensions and would like to reduce the size of the source files.
Type <tt>make clean; make custom</tt> in the <tt>auto</tt> directory

View File

@ -1,7 +1,7 @@
<!-- begin header.html -->
<!--
The OpenGL Extension Wrangler Library
Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
Copyright (C) 2002, Lev Povalahev
@ -46,7 +46,7 @@ THE POSSIBILITY OF SUCH DAMAGE.
<td valign="top">
<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
<tr><td align="center"><i>Latest Release: <a href="https://sourceforge.net/projects/glew/files/glew/2.1.0/">2.1.0</a></i></td></tr>
<tr><td align="center"><i>Latest Release: <a href="https://github.com/nigels-com/glew/releases/tag/glew-2.2.0">2.2.0</a></i></td></tr>
<tr><td align="center"><br></td></tr>
<tr><td align="center"><img src="./glew.png" alt="GLEW Logo" width="97" height="75"></td></tr>
<tr><td align="center"><br></td></tr>
@ -62,8 +62,6 @@ THE POSSIBILITY OF SUCH DAMAGE.
<tr><td align="center"><a href="https://github.com/nigels-com/glew">GitHub</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew/issues">Issues</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew/pulls">Pull Requests</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew#authors">Authors</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew#copyright-and-licensing">Licensing</a></td></tr>
<tr><td align="center"><br></tr>
<tr><td align="center"><a href="https://sourceforge.net/projects/glew">SourceForge Page</a></td></tr>
</table>

View File

@ -1,7 +1,7 @@
<!-- begin header.html -->
<!--
The OpenGL Extension Wrangler Library
Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
Copyright (C) 2002, Lev Povalahev
@ -46,7 +46,7 @@ THE POSSIBILITY OF SUCH DAMAGE.
<td valign="top">
<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
<tr><td align="center"><i>Latest Release: <a href="https://sourceforge.net/projects/glew/files/glew/2.1.0/">2.1.0</a></i></td></tr>
<tr><td align="center"><i>Latest Release: <a href="https://github.com/nigels-com/glew/releases/tag/glew-2.2.0">2.2.0</a></i></td></tr>
<tr><td align="center"><br></td></tr>
<tr><td align="center"><img src="./glew.png" alt="GLEW Logo" width="97" height="75"></td></tr>
<tr><td align="center"><br></td></tr>
@ -62,8 +62,6 @@ THE POSSIBILITY OF SUCH DAMAGE.
<tr><td align="center"><a href="https://github.com/nigels-com/glew">GitHub</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew/issues">Issues</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew/pulls">Pull Requests</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew#authors">Authors</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew#copyright-and-licensing">Licensing</a></td></tr>
<tr><td align="center"><br></tr>
<tr><td align="center"><a href="https://sourceforge.net/projects/glew">SourceForge Page</a></td></tr>
</table>

View File

@ -1,7 +1,7 @@
<!-- begin header.html -->
<!--
The OpenGL Extension Wrangler Library
Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
Copyright (C) 2002, Lev Povalahev
@ -46,7 +46,7 @@ THE POSSIBILITY OF SUCH DAMAGE.
<td valign="top">
<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
<tr><td align="center"><i>Latest Release: <a href="https://sourceforge.net/projects/glew/files/glew/2.1.0/">2.1.0</a></i></td></tr>
<tr><td align="center"><i>Latest Release: <a href="https://github.com/nigels-com/glew/releases/tag/glew-2.2.0">2.2.0</a></i></td></tr>
<tr><td align="center"><br></td></tr>
<tr><td align="center"><img src="./glew.png" alt="GLEW Logo" width="97" height="75"></td></tr>
<tr><td align="center"><br></td></tr>
@ -62,8 +62,6 @@ THE POSSIBILITY OF SUCH DAMAGE.
<tr><td align="center"><a href="https://github.com/nigels-com/glew">GitHub</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew/issues">Issues</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew/pulls">Pull Requests</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew#authors">Authors</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew#copyright-and-licensing">Licensing</a></td></tr>
<tr><td align="center"><br></tr>
<tr><td align="center"><a href="https://sourceforge.net/projects/glew">SourceForge Page</a></td></tr>
</table>

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
<!-- begin header.html -->
<!--
The OpenGL Extension Wrangler Library
Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
Copyright (C) 2002, Lev Povalahev
@ -46,7 +46,7 @@ THE POSSIBILITY OF SUCH DAMAGE.
<td valign="top">
<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
<tr><td align="center"><i>Latest Release: <a href="https://sourceforge.net/projects/glew/files/glew/2.1.0/">2.1.0</a></i></td></tr>
<tr><td align="center"><i>Latest Release: <a href="https://github.com/nigels-com/glew/releases/tag/glew-2.2.0">2.2.0</a></i></td></tr>
<tr><td align="center"><br></td></tr>
<tr><td align="center"><img src="./glew.png" alt="GLEW Logo" width="97" height="75"></td></tr>
<tr><td align="center"><br></td></tr>
@ -62,8 +62,6 @@ THE POSSIBILITY OF SUCH DAMAGE.
<tr><td align="center"><a href="https://github.com/nigels-com/glew">GitHub</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew/issues">Issues</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew/pulls">Pull Requests</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew#authors">Authors</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew#copyright-and-licensing">Licensing</a></td></tr>
<tr><td align="center"><br></tr>
<tr><td align="center"><a href="https://sourceforge.net/projects/glew">SourceForge Page</a></td></tr>
</table>
@ -125,63 +123,64 @@ THE POSSIBILITY OF SUCH DAMAGE.
<tr><td class="num">20</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">EXT_create_context_es_profile</a></td></tr>
<tr><td class="num">21</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">EXT_fbconfig_packed_float</a></td></tr>
<tr><td class="num">22</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">EXT_framebuffer_sRGB</a></td></tr>
<tr><td class="num">23</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">EXT_import_context</a></td></tr>
<tr><td class="num">24</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">EXT_libglvnd</a></td></tr>
<tr><td class="num">25</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">EXT_no_config_context</a></td></tr>
<tr><td class="num">26</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/OpenGL/extensions/EXT/EXT_scene_marker.txt">EXT_scene_marker</a></td></tr>
<tr><td class="num">27</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">EXT_stereo_tree</a></td></tr>
<tr><td class="num">28</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">EXT_swap_control</a></td></tr>
<tr><td class="num">29</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">EXT_swap_control_tear</a></td></tr>
<tr><td class="num">30</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">EXT_texture_from_pixmap</a></td></tr>
<tr><td class="num">31</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">EXT_visual_info</a></td></tr>
<tr><td class="num">32</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">EXT_visual_rating</a></td></tr>
<tr><td class="num">23</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">EXT_get_drawable_type</a></td></tr>
<tr><td class="num">24</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">EXT_import_context</a></td></tr>
<tr><td class="num">25</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">EXT_libglvnd</a></td></tr>
<tr><td class="num">26</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">EXT_no_config_context</a></td></tr>
<tr><td class="num">27</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/OpenGL/extensions/EXT/EXT_scene_marker.txt">EXT_scene_marker</a></td></tr>
<tr><td class="num">28</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">EXT_stereo_tree</a></td></tr>
<tr><td class="num">29</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">EXT_swap_control</a></td></tr>
<tr><td class="num">30</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">EXT_swap_control_tear</a></td></tr>
<tr><td class="num">31</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">EXT_texture_from_pixmap</a></td></tr>
<tr><td class="num">32</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">EXT_visual_info</a></td></tr>
<tr><td class="num">33</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">EXT_visual_rating</a></td></tr>
<tr><td><br></td><td></td><td></td></tr>
<tr><td class="num">33</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">INTEL_swap_event</a></td></tr>
<tr><td class="num">34</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">INTEL_swap_event</a></td></tr>
<tr><td><br></td><td></td><td></td></tr>
<tr><td class="num">34</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">MESA_agp_offset</a></td></tr>
<tr><td class="num">35</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">MESA_copy_sub_buffer</a></td></tr>
<tr><td class="num">36</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">MESA_pixmap_colormap</a></td></tr>
<tr><td class="num">37</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">MESA_query_renderer</a></td></tr>
<tr><td class="num">38</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">MESA_release_buffers</a></td></tr>
<tr><td class="num">39</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">MESA_set_3dfx_mode</a></td></tr>
<tr><td class="num">40</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">MESA_swap_control</a></td></tr>
<tr><td class="num">35</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">MESA_agp_offset</a></td></tr>
<tr><td class="num">36</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">MESA_copy_sub_buffer</a></td></tr>
<tr><td class="num">37</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">MESA_pixmap_colormap</a></td></tr>
<tr><td class="num">38</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">MESA_query_renderer</a></td></tr>
<tr><td class="num">39</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">MESA_release_buffers</a></td></tr>
<tr><td class="num">40</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">MESA_set_3dfx_mode</a></td></tr>
<tr><td class="num">41</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">MESA_swap_control</a></td></tr>
<tr><td><br></td><td></td><td></td></tr>
<tr><td class="num">41</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">NV_copy_buffer</a></td></tr>
<tr><td class="num">42</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">NV_copy_image</a></td></tr>
<tr><td class="num">43</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">NV_delay_before_swap</a></td></tr>
<tr><td class="num">44</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">NV_float_buffer</a></td></tr>
<tr><td class="num">45</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">NV_multigpu_context</a></td></tr>
<tr><td class="num">46</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">NV_multisample_coverage</a></td></tr>
<tr><td class="num">47</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">NV_present_video</a></td></tr>
<tr><td class="num">48</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">NV_robustness_video_memory_purge</a></td></tr>
<tr><td class="num">49</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">NV_swap_group</a></td></tr>
<tr><td class="num">50</td><td>&nbsp;</td><td><a href="http://oss.sgi.com/projects/ogl-sample/registry/NV/vertex_array_range.txt">NV_vertex_array_range</a></td></tr>
<tr><td class="num">51</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">NV_video_capture</a></td></tr>
<tr><td class="num">52</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">NV_video_out</a></td></tr>
<tr><td class="num">42</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">NV_copy_buffer</a></td></tr>
<tr><td class="num">43</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">NV_copy_image</a></td></tr>
<tr><td class="num">44</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">NV_delay_before_swap</a></td></tr>
<tr><td class="num">45</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">NV_float_buffer</a></td></tr>
<tr><td class="num">46</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">NV_multigpu_context</a></td></tr>
<tr><td class="num">47</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">NV_multisample_coverage</a></td></tr>
<tr><td class="num">48</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">NV_present_video</a></td></tr>
<tr><td class="num">49</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">NV_robustness_video_memory_purge</a></td></tr>
<tr><td class="num">50</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">NV_swap_group</a></td></tr>
<tr><td class="num">51</td><td>&nbsp;</td><td><a href="http://oss.sgi.com/projects/ogl-sample/registry/NV/vertex_array_range.txt">NV_vertex_array_range</a></td></tr>
<tr><td class="num">52</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">NV_video_capture</a></td></tr>
<tr><td class="num">53</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">NV_video_out</a></td></tr>
<tr><td><br></td><td></td><td></td></tr>
<tr><td class="num">53</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">OML_swap_method</a></td></tr>
<tr><td class="num">54</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">OML_sync_control</a></td></tr>
<tr><td class="num">54</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">OML_swap_method</a></td></tr>
<tr><td class="num">55</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">OML_sync_control</a></td></tr>
<tr><td><br></td><td></td><td></td></tr>
<tr><td class="num">55</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGIS_blended_overlay</a></td></tr>
<tr><td class="num">56</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/OpenGL/extensions/SGIS/GLX_SGIS_color_range.txt">SGIS_color_range</a></td></tr>
<tr><td class="num">57</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGIS_multisample</a></td></tr>
<tr><td class="num">58</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGIS_shared_multisample</a></td></tr>
<tr><td class="num">56</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGIS_blended_overlay</a></td></tr>
<tr><td class="num">57</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/OpenGL/extensions/SGIS/GLX_SGIS_color_range.txt">SGIS_color_range</a></td></tr>
<tr><td class="num">58</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGIS_multisample</a></td></tr>
<tr><td class="num">59</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGIS_shared_multisample</a></td></tr>
<tr><td><br></td><td></td><td></td></tr>
<tr><td class="num">59</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGIX_fbconfig</a></td></tr>
<tr><td class="num">60</td><td>&nbsp;</td><td><a href="http://oss.sgi.com/projects/ogl-sample/registry/SGIX/hyperpipe_group.txt">SGIX_hyperpipe</a></td></tr>
<tr><td class="num">61</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGIX_pbuffer</a></td></tr>
<tr><td class="num">62</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGIX_swap_barrier</a></td></tr>
<tr><td class="num">63</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGIX_swap_group</a></td></tr>
<tr><td class="num">64</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGIX_video_resize</a></td></tr>
<tr><td class="num">65</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGIX_visual_select_group</a></td></tr>
<tr><td class="num">60</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGIX_fbconfig</a></td></tr>
<tr><td class="num">61</td><td>&nbsp;</td><td><a href="http://oss.sgi.com/projects/ogl-sample/registry/SGIX/hyperpipe_group.txt">SGIX_hyperpipe</a></td></tr>
<tr><td class="num">62</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGIX_pbuffer</a></td></tr>
<tr><td class="num">63</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGIX_swap_barrier</a></td></tr>
<tr><td class="num">64</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGIX_swap_group</a></td></tr>
<tr><td class="num">65</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGIX_video_resize</a></td></tr>
<tr><td class="num">66</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGIX_visual_select_group</a></td></tr>
<tr><td><br></td><td></td><td></td></tr>
<tr><td class="num">66</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGI_cushion</a></td></tr>
<tr><td class="num">67</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGI_make_current_read</a></td></tr>
<tr><td class="num">68</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGI_swap_control</a></td></tr>
<tr><td class="num">69</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGI_video_sync</a></td></tr>
<tr><td class="num">67</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGI_cushion</a></td></tr>
<tr><td class="num">68</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGI_make_current_read</a></td></tr>
<tr><td class="num">69</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGI_swap_control</a></td></tr>
<tr><td class="num">70</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SGI_video_sync</a></td></tr>
<tr><td><br></td><td></td><td></td></tr>
<tr><td class="num">70</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SUN_get_transparent_index</a></td></tr>
<tr><td class="num">71</td><td>&nbsp;</td><td><a href="http://wwws.sun.com/software/graphics/opengl/extensions/glx_sun_video_resize.txt">SUN_video_resize</a></td></tr>
<tr><td class="num">71</td><td>&nbsp;</td><td><a href="https://www.khronos.org/registry/egl/specs/eglspec.1.5.pdf">SUN_get_transparent_index</a></td></tr>
<tr><td class="num">72</td><td>&nbsp;</td><td><a href="http://wwws.sun.com/software/graphics/opengl/extensions/glx_sun_video_resize.txt">SUN_video_resize</a></td></tr>
</table>
<!-- begin footer.html -->
</td></tr></table></body>

View File

@ -1,7 +1,7 @@
<!-- begin header.html -->
<!--
The OpenGL Extension Wrangler Library
Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
Copyright (C) 2002, Lev Povalahev
@ -46,7 +46,7 @@ THE POSSIBILITY OF SUCH DAMAGE.
<td valign="top">
<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
<tr><td align="center"><i>Latest Release: <a href="https://sourceforge.net/projects/glew/files/glew/2.1.0/">2.1.0</a></i></td></tr>
<tr><td align="center"><i>Latest Release: <a href="https://github.com/nigels-com/glew/releases/tag/glew-2.2.0">2.2.0</a></i></td></tr>
<tr><td align="center"><br></td></tr>
<tr><td align="center"><img src="./glew.png" alt="GLEW Logo" width="97" height="75"></td></tr>
<tr><td align="center"><br></td></tr>
@ -62,8 +62,6 @@ THE POSSIBILITY OF SUCH DAMAGE.
<tr><td align="center"><a href="https://github.com/nigels-com/glew">GitHub</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew/issues">Issues</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew/pulls">Pull Requests</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew#authors">Authors</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew#copyright-and-licensing">Licensing</a></td></tr>
<tr><td align="center"><br></tr>
<tr><td align="center"><a href="https://sourceforge.net/projects/glew">SourceForge Page</a></td></tr>
</table>
@ -111,7 +109,7 @@ Mac OS X, FreeBSD, Irix, and Solaris.
<a href="http://sourceforge.net/projects/glew/">GLEW</a> is distributed
as source and precompiled binaries.<br/>
The latest release is
<a href="https://sourceforge.net/projects/glew/files/glew/2.2.0/">2.2.0</a>[03-15-20]:
<a href="https://github.com/nigels-com/glew/releases/tag/glew-2.2.0">2.2.0</a>[03-15-20]:
</p>
<p>
</p>
@ -125,8 +123,8 @@ The latest release is
<td align="right"><b>Source</b></td>
<td></td>
<td align="left">
<a href="https://sourceforge.net/projects/glew/files/glew/2.2.0/glew-2.2.0.zip/download">ZIP</a>&nbsp;|&nbsp;
<a href="https://sourceforge.net/projects/glew/files/glew/2.2.0/glew-2.2.0.tgz/download">TGZ</a></td>
<a href="https://github.com/nigels-com/glew/releases/download/glew-2.2.0/glew-2.2.0.zip">ZIP</a>&nbsp;|&nbsp;
<a href="https://github.com/nigels-com/glew/releases/download/glew-2.2.0/glew-2.2.0.tgz">TGZ</a></td>
<td></td>
</tr>
<tr>
@ -134,7 +132,7 @@ The latest release is
<td align="right"><b>Binaries</b></td>
<td></td>
<td align="left">
<a href="https://sourceforge.net/projects/glew/files/glew/2.2.0/glew-2.2.0-win32.zip/download">Windows 32-bit and 64-bit</a>
<a href="https://github.com/nigels-com/glew/releases/download/glew-2.2.0/glew-2.2.0-win32.zip">Windows 32-bit and 64-bit</a>
</td>
<td></td>
</tr>
@ -163,9 +161,9 @@ The latest release contains support for OpenGL 4.6, compatibility and forward-co
<h2>News</h2>
<ul>
<li>[03-15-20] <a href="https://sourceforge.net/projects/glew/files/glew/2.2.0/">GLEW 2.2.0</a> new extensions and minor bug fixes</li>
<li>[07-31-17] <a href="https://sourceforge.net/projects/glew/files/glew/2.1.0/">GLEW 2.1.0</a> adds support for OpenGL 4.6, new extensions and minor bug fixes</li>
<li>[07-24-16] <a href="https://sourceforge.net/projects/glew/files/glew/2.0.0/">GLEW 2.0.0</a> adds support for forward-compatible contexts, adds new extensions, OSMesa and EGL support, MX discontinued and minor bug fixes</li>
<li>[03-15-20] <a href="https://github.com/nigels-com/glew/releases/tag/glew-2.2.0">GLEW 2.2.0</a> new extensions and minor bug fixes</li>
<li>[07-31-17] <a href="https://github.com/nigels-com/glew/releases/tag/glew-2.1.0">GLEW 2.1.0</a> adds support for OpenGL 4.6, new extensions and minor bug fixes</li>
<li>[07-24-16] <a href="https://github.com/nigels-com/glew/releases/tag/glew-2.0.0">GLEW 2.0.0</a> adds support for forward-compatible contexts, adds new extensions, OSMesa and EGL support, MX discontinued and minor bug fixes</li>
<li>[08-10-15] <a href="https://sourceforge.net/projects/glew/files/glew/1.13.0/">GLEW 1.13.0</a> adds support for new extensions, fixes minor bugs</li>
<li>[26-01-15] <a href="https://sourceforge.net/projects/glew/files/glew/1.12.0/">GLEW 1.12.0</a> fixes minor bugs and adds new extensions</li>
<li>[08-11-14] <a href="https://sourceforge.net/projects/glew/files/glew/1.11.0/">GLEW 1.11.0</a> adds support for OpenGL 4.5, new extensions</li>

View File

@ -1,7 +1,7 @@
<!-- begin header.html -->
<!--
The OpenGL Extension Wrangler Library
Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
Copyright (C) 2002, Lev Povalahev
@ -46,7 +46,7 @@ THE POSSIBILITY OF SUCH DAMAGE.
<td valign="top">
<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
<tr><td align="center"><i>Latest Release: <a href="https://sourceforge.net/projects/glew/files/glew/2.1.0/">2.1.0</a></i></td></tr>
<tr><td align="center"><i>Latest Release: <a href="https://github.com/nigels-com/glew/releases/tag/glew-2.2.0">2.2.0</a></i></td></tr>
<tr><td align="center"><br></td></tr>
<tr><td align="center"><img src="./glew.png" alt="GLEW Logo" width="97" height="75"></td></tr>
<tr><td align="center"><br></td></tr>
@ -62,8 +62,6 @@ THE POSSIBILITY OF SUCH DAMAGE.
<tr><td align="center"><a href="https://github.com/nigels-com/glew">GitHub</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew/issues">Issues</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew/pulls">Pull Requests</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew#authors">Authors</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew#copyright-and-licensing">Licensing</a></td></tr>
<tr><td align="center"><br></tr>
<tr><td align="center"><a href="https://sourceforge.net/projects/glew">SourceForge Page</a></td></tr>
</table>

View File

@ -1,7 +1,7 @@
<!-- begin header.html -->
<!--
The OpenGL Extension Wrangler Library
Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
Copyright (C) 2002, Lev Povalahev
@ -46,7 +46,7 @@ THE POSSIBILITY OF SUCH DAMAGE.
<td valign="top">
<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
<tr><td align="center"><i>Latest Release: <a href="https://sourceforge.net/projects/glew/files/glew/2.1.0/">2.1.0</a></i></td></tr>
<tr><td align="center"><i>Latest Release: <a href="https://github.com/nigels-com/glew/releases/tag/glew-2.2.0">2.2.0</a></i></td></tr>
<tr><td align="center"><br></td></tr>
<tr><td align="center"><img src="./glew.png" alt="GLEW Logo" width="97" height="75"></td></tr>
<tr><td align="center"><br></td></tr>
@ -62,8 +62,6 @@ THE POSSIBILITY OF SUCH DAMAGE.
<tr><td align="center"><a href="https://github.com/nigels-com/glew">GitHub</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew/issues">Issues</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew/pulls">Pull Requests</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew#authors">Authors</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew#copyright-and-licensing">Licensing</a></td></tr>
<tr><td align="center"><br></tr>
<tr><td align="center"><a href="https://sourceforge.net/projects/glew">SourceForge Page</a></td></tr>
</table>
@ -296,7 +294,7 @@ THE POSSIBILITY OF SUCH DAMAGE.
<ul>
<li> Bug fixes:
<ul>
<li> Resovled crash when glXGetCurrentDisplay() is NULL
<li> Resolved crash when glXGetCurrentDisplay() is NULL
<li> CMake: only install PDB files with MSVC
<li> wglGetProcAddress crash with NOGDI defined
<li> Mac: using -Os rather than -O2
@ -1025,7 +1023,7 @@ THE POSSIBILITY OF SUCH DAMAGE.
</ul>
<li> Bug fixes:
<ul>
<li> Incorrent 64-bit type definitions
<li> Incorrect 64-bit type definitions
<li> Do not strip static library on install
<li> Missing tokens in GL_ATI_fragment_shader and WGL_{ARB,EXT}_make_current_read
<li> Missing tokens in GL_VERSION_2_1
@ -1073,7 +1071,7 @@ corruption of their values
<li> Missing include guards in glxew.h
<li> Makefile and install problems for Cygwin builds
<li> Install problem for Linux AMD64 builds
<li> Incorrent token in GL_ATI_texture_compression_3dc
<li> Incorrect token in GL_ATI_texture_compression_3dc
<li> Missing tokens from GL_ATIX_point_sprites
</ul>
</ul>

View File

@ -1,7 +1,7 @@
<!-- begin header.html -->
<!--
The OpenGL Extension Wrangler Library
Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net>
Copyright (C) 2008-2024, Nigel Stewart <nigels[]nigels com>
Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
Copyright (C) 2002, Lev Povalahev
@ -46,7 +46,7 @@ THE POSSIBILITY OF SUCH DAMAGE.
<td valign="top">
<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
<tr><td align="center"><i>Latest Release: <a href="https://sourceforge.net/projects/glew/files/glew/2.1.0/">2.1.0</a></i></td></tr>
<tr><td align="center"><i>Latest Release: <a href="https://github.com/nigels-com/glew/releases/tag/glew-2.2.0">2.2.0</a></i></td></tr>
<tr><td align="center"><br></td></tr>
<tr><td align="center"><img src="./glew.png" alt="GLEW Logo" width="97" height="75"></td></tr>
<tr><td align="center"><br></td></tr>
@ -62,8 +62,6 @@ THE POSSIBILITY OF SUCH DAMAGE.
<tr><td align="center"><a href="https://github.com/nigels-com/glew">GitHub</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew/issues">Issues</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew/pulls">Pull Requests</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew#authors">Authors</a></td></tr>
<tr><td align="center"><a href="https://github.com/nigels-com/glew#copyright-and-licensing">Licensing</a></td></tr>
<tr><td align="center"><br></tr>
<tr><td align="center"><a href="https://sourceforge.net/projects/glew">SourceForge Page</a></td></tr>
</table>

View File

@ -4,7 +4,7 @@
** Copyright (C) Nate Robins, 1997
** Michael Wimmer, 1999
** Milan Ikits, 2002-2008
** Nigel Stewart, 2008-2019
** Nigel Stewart, 2008-2021
**
** visualinfo is a small utility that displays all available visuals,
** aka. pixelformats, in an OpenGL system along with renderer version
@ -48,18 +48,6 @@
#include <GL/glxew.h>
#endif
#ifdef GLEW_MX
GLEWContext _glewctx;
# define glewGetContext() (&_glewctx)
# ifdef _WIN32
WGLEWContext _wglewctx;
# define wglewGetContext() (&_wglewctx)
# elif !defined(__APPLE__) && !defined(__HAIKU__) || defined(GLEW_APPLE_GLX)
GLXEWContext _glxewctx;
# define glxewGetContext() (&_glxewctx)
# endif
#endif /* GLEW_MX */
typedef struct GLContextStruct
{
#if defined(GLEW_OSMESA)
@ -123,6 +111,13 @@ main (int argc, char** argv)
return 1;
}
#if defined(GLEW_EGL)
{
fprintf(stderr, "Error [main]: EGL not supported by visualinfo.\n");
return 1;
}
#endif
/* ---------------------------------------------------------------------- */
/* create OpenGL rendering context */
InitContext(&ctx);
@ -136,16 +131,7 @@ main (int argc, char** argv)
/* ---------------------------------------------------------------------- */
/* initialize GLEW */
glewExperimental = GL_TRUE;
#ifdef GLEW_MX
err = glewContextInit(glewGetContext());
# ifdef _WIN32
err = err || wglewContextInit(wglewGetContext());
# elif !defined(__APPLE__) && !defined(__HAIKU__) || defined(GLEW_APPLE_GLX)
err = err || glxewContextInit(glxewGetContext());
# endif
#else
err = glewInit();
#endif
if (GLEW_OK != err)
{
fprintf(stderr, "Error [main]: glewInit failed: %s\n", glewGetErrorString(err));