11# GLEW - The OpenGL Extension Wrangler Library
22
3+ The OpenGL Extension Wrangler Library (GLEW) is a cross-platform open-source C/C++ extension loading library. GLEW provides efficient run-time mechanisms for determining which OpenGL extensions are supported on the target platform. OpenGL core and extension functionality is exposed in a single header file. GLEW has been tested on a variety of operating systems, including Windows, Linux, Mac OS X, FreeBSD, Irix, and Solaris.
4+
35![ ] ( http://glew.sourceforge.net/glew.png )
46
57http://glew.sourceforge.net/
@@ -10,12 +12,37 @@ https://github.com/nigels-com/glew
1012[ ![ 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 )
1113[ ![ Download] ( https://img.shields.io/sourceforge/dm/glew.svg )] ( https://sourceforge.net/projects/glew/files/latest/download )
1214
15+ ## Table of Contents
16+
17+ * [ Downloads] ( #downloads )
18+ * [Recent snapshots](#recent-snapshots)
19+ * [ Build] ( #build )
20+ * [Linux and Mac](#linux-and-mac)
21+ * [Using GNU Make](#using-gnu-make)
22+ * [Install build tools](#install-build-tools)
23+ * [Build](#build-1)
24+ * [Linux EGL](#linux-egl)
25+ * [Linux OSMesa](#linux-osmesa)
26+ * [Linux mingw-w64](#linux-mingw-w64)
27+ * [Using cmake](#using-cmake)
28+ * [Install build tools](#install-build-tools-1)
29+ * [Build](#build-2)
30+ * [Windows](#windows)
31+ * [Visual Studio](#visual-studio)
32+ * [MSYS/Mingw](#msysmingw)
33+ * [MSYS2/Mingw-w64](#msys2mingw-w64)
34+ * [ glewinfo] ( #glewinfo )
35+ * [ Code Generation] ( #code-generation )
36+ * [ Authors] ( #authors )
37+ * [ Contributions] ( #contributions )
38+ * [ Copyright and Licensing] ( #copyright-and-licensing )
39+
1340## Downloads
1441
1542Current release is [ 2.1.0] ( https://sourceforge.net/projects/glew/files/glew/2.1.0/ ) .
1643[ (Change Log)] ( http://glew.sourceforge.net/log.html )
1744
18- Sources available as
45+ Sources available as
1946[ ZIP] ( https://sourceforge.net/projects/glew/files/glew/2.1.0/glew-2.1.0.zip/download ) or
2047[ TGZ] ( https://sourceforge.net/projects/glew/files/glew/2.1.0/glew-2.1.0.tgz/download ) .
2148
@@ -25,22 +52,32 @@ Windows binaries for [32-bit and 64-bit](https://sourceforge.net/projects/glew/f
2552
2653Snapshots may contain new features, bug-fixes or new OpenGL extensions ahead of tested, official releases.
2754
55+ [ glew-20200115.tgz] ( https://sourceforge.net/projects/glew/files/glew/snapshots/glew-20200115.tgz/download ) * GLEW 2.2.0 RC3: fixes*
56+
57+ [ glew-20190928.tgz] ( https://sourceforge.net/projects/glew/files/glew/snapshots/glew-20190928.tgz/download ) * GLEW 2.2.0 RC2: New extensions, bug fixes*
58+
2859## Build
2960
3061It is highly recommended to build from a tgz or zip release snapshot.
3162The code generation workflow is a complex brew of gnu make, perl and python, that works best on Linux or Mac.
63+ The code generation is known to work on Windows using [ MSYS2] ( https://www.msys2.org/ ) .
3264For most end-users of GLEW the official releases are the best choice, with first class support.
3365
3466### Linux and Mac
3567
3668#### Using GNU Make
3769
70+ GNU make is the primary build system for GLEW, historically.
71+ It includes targets for building the sources and headers, for maintenance purposes.
72+
3873##### Install build tools
3974
40- Debian/Ubuntu/Mint: ` $ sudo apt-get install build-essential libxmu-dev libxi-dev libgl-dev libosmesa-dev `
75+ Debian/Ubuntu/Mint: ` $ sudo apt-get install build-essential libxmu-dev libxi-dev libgl-dev `
4176
4277RedHat/CentOS/Fedora: ` $ sudo yum install libXmu-devel libXi-devel libGL-devel `
4378
79+ FreeBSD: ` # pkg install xorg lang/gcc git cmake gmake bash python perl5 `
80+
4481##### Build
4582
4683 $ make
@@ -51,22 +88,42 @@ Targets: `all, glew.lib (sub-targets: glew.lib.shared, glew.lib.static), glew
5188
5289Variables: ` SYSTEM=linux-clang, GLEW_DEST=/usr/local, STRIP= `
5390
54- _ Note: may need to make ** auto** folder_
91+ _ Note: you may need to call ` make ` in the ** auto** folder first_
92+
93+ ##### Linux EGL
94+
95+ $ sudo apt install libegl1-mesa-dev
96+ $ make SYSTEM=linux-egl
97+
98+ ##### Linux OSMesa
99+
100+ $ sudo apt install libosmesa-dev
101+ $ make SYSTEM=linux-osmesa
102+
103+ ##### Linux mingw-w64
104+
105+ $ sudo apt install mingw-w64
106+ $ make SYSTEM=linux-mingw32
107+ $ make SYSTEM=linux-mingw64
55108
56109#### Using cmake
57110
111+ The cmake build is mostly contributer maintained.
112+ Due to the multitude of use cases this is maintained on a _ best effort_ basis.
113+ Pull requests are welcome.
114+
58115* CMake 2.8.12 or higher is required.*
59116
60117##### Install build tools
61118
62- Debian/Ubuntu/Mint: ` $ sudo apt-get install build-essential libXmu -dev libXi -dev libgl-dev cmake `
119+ Debian/Ubuntu/Mint: ` $ sudo apt-get install build-essential libxmu -dev libxi -dev libgl-dev cmake git `
63120
64- RedHat/CentOS/Fedora: ` $ sudo yum install libXmu-devel libXi-devel libGL-devel cmake `
121+ RedHat/CentOS/Fedora: ` $ sudo yum install libXmu-devel libXi-devel libGL-devel cmake git `
65122
66123##### Build
67124
68125 $ cd build
69- $ cmake ./cmake
126+ $ cmake ./cmake
70127 $ make -j4
71128
72129| Target | Description |
@@ -90,9 +147,9 @@ RedHat/CentOS/Fedora: `$ sudo yum install libXmu-devel libXi-devel libGL-devel c
90147
91148#### Visual Studio
92149
93- Use the provided Visual Studio project file in build/vc12 /
150+ Use the provided Visual Studio project file in build/vc15 /
94151
95- Projects for vc6 and vc10 are also provided
152+ Projects for vc6, vc10, vc12 and vc14 are also provided
96153
97154#### MSYS/Mingw
98155
@@ -112,7 +169,7 @@ Available from [Msys2](http://msys2.github.io/) and/or [Mingw-w64](http://mingw-
112169
113170Requirements: bash, make, gcc
114171
115- $ pacman -S gcc make mingw-w64-i686-gcc mingw-w64-x86_64-gcc
172+ $ pacman -S gcc make mingw-w64-i686-gcc mingw-w64-x86_64-gcc
116173 $ make
117174 $ make install
118175 $ make install.all
@@ -123,7 +180,7 @@ Alternative toolchain: `SYSTEM=msys, SYSTEM=msys-win32, SYSTEM=msys-win64`
123180
124181` glewinfo ` is a command-line tool useful for inspecting the capabilities of an
125182OpenGL implementation and GLEW support for that. Please include ` glewinfo.txt `
126- with bug reports, as appropriate.
183+ with bug reports, as appropriate.
127184
128185 ---------------------------
129186 GLEW Extension Info
@@ -143,7 +200,7 @@ with bug reports, as appropriate.
143200 glDrawRangeElements: OK
144201 glTexImage3D: OK
145202 glTexSubImage3D: OK
146-
203+
147204 ...
148205
149206## Code Generation
@@ -159,10 +216,6 @@ download a pre-generated (unsupported) snapshot:
159216
160217https://sourceforge.net/projects/glew/files/glew/snapshots/
161218
162- Travis-built snapshots are also available:
163-
164- https://glew.s3.amazonaws.com/index.html
165-
166219## Authors
167220
168221GLEW is currently maintained by [ Nigel Stewart] ( https://github.com/nigels-com )
@@ -171,20 +224,35 @@ with bug fixes, new OpenGL extension support and new releases.
171224GLEW was developed by [ Milan Ikits] ( http://www.cs.utah.edu/~ikits/ )
172225and [ Marcelo Magallon] ( http://wwwvis.informatik.uni-stuttgart.de/~magallon/ ) .
173226Aaron Lefohn, Joe Kniss, and Chris Wyman were the first users and also
174- assisted with the design and debugging process.
227+ assisted with the design and debugging process.
175228
176229The acronym GLEW originates from Aaron Lefohn.
177230Pasi Kä ; rkkä ; inen identified and fixed several problems with
178231GLX and SDL. Nate Robins created the ` wglinfo ` utility, to
179- which modifications were made by Michael Wimmer.
232+ which modifications were made by Michael Wimmer.
233+
234+ ## Contributions
235+
236+ GLEW welcomes community contributions. Typically these are co-ordinated
237+ via [ Issues] ( https://github.com/nigels-com/glew/issues ) or
238+ [ Pull Requests] ( https://github.com/nigels-com/glew/pulls ) in the
239+ GitHub web interface.
240+
241+ Be sure to mention platform and compiler toolchain details when filing
242+ a bug report. The output of ` glewinfo ` can be quite useful for discussion
243+ also.
244+
245+ Generally GLEW is usually released once a year, around the time of the Siggraph
246+ computer graphics conference. If you're not using the current release
247+ version of GLEW, be sure to check if the issue or bug is fixed there.
180248
181249## Copyright and Licensing
182250
183251GLEW is originally derived from the EXTGL project by Lev Povalahev.
184- The source code is licensed under the
185- [ Modified BSD License] ( http://glew.sourceforge.net/glew.txt ) , the
252+ The source code is licensed under the
253+ [ Modified BSD License] ( http://glew.sourceforge.net/glew.txt ) , the
186254[ Mesa 3-D License] ( http://glew.sourceforge.net/mesa.txt ) (MIT) and the
187255[ Khronos License] ( http://glew.sourceforge.net/khronos.txt ) (MIT).
188256
189- The automatic code generation scripts are released under the
257+ The automatic code generation scripts are released under the
190258[ GNU GPL] ( http://glew.sourceforge.net/gpl.txt ) .
0 commit comments