rayfract

diff src/glew/README.md @ 10:1496aae2e7d4

- simplified build by including dependences in the source tree - added make dep tracking - added mingw cross-build rules - added readme & licence
author John Tsiombikas <nuclear@member.fsf.org>
date Mon, 31 Jul 2023 18:58:56 +0300
parents
children
line diff
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/src/glew/README.md	Mon Jul 31 18:58:56 2023 +0300
     1.3 @@ -0,0 +1,190 @@
     1.4 +# GLEW - The OpenGL Extension Wrangler Library
     1.5 +
     1.6 +![](http://glew.sourceforge.net/glew.png)
     1.7 +
     1.8 +http://glew.sourceforge.net/
     1.9 +
    1.10 +https://github.com/nigels-com/glew
    1.11 +
    1.12 +[![Build Status](https://travis-ci.org/nigels-com/glew.svg?branch=master)](https://travis-ci.org/nigels-com/glew)
    1.13 +[![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)
    1.14 +[![Download](https://img.shields.io/sourceforge/dm/glew.svg)](https://sourceforge.net/projects/glew/files/latest/download)
    1.15 +
    1.16 +## Downloads
    1.17 +
    1.18 +Current release is [2.1.0](https://sourceforge.net/projects/glew/files/glew/2.1.0/).
    1.19 +[(Change Log)](http://glew.sourceforge.net/log.html)
    1.20 +
    1.21 +Sources available as 
    1.22 +[ZIP](https://sourceforge.net/projects/glew/files/glew/2.1.0/glew-2.1.0.zip/download) or
    1.23 +[TGZ](https://sourceforge.net/projects/glew/files/glew/2.1.0/glew-2.1.0.tgz/download).
    1.24 +
    1.25 +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).
    1.26 +
    1.27 +### Recent snapshots
    1.28 +
    1.29 +Snapshots may contain new features, bug-fixes or new OpenGL extensions ahead of tested, official releases.
    1.30 +
    1.31 +## Build
    1.32 +
    1.33 +It is highly recommended to build from a tgz or zip release snapshot.
    1.34 +The code generation workflow is a complex brew of gnu make, perl and python, that works best on Linux or Mac.
    1.35 +For most end-users of GLEW the official releases are the best choice, with first class support.
    1.36 +
    1.37 +### Linux and Mac
    1.38 +
    1.39 +#### Using GNU Make
    1.40 +
    1.41 +##### Install build tools
    1.42 +
    1.43 +Debian/Ubuntu/Mint:    `$ sudo apt-get install build-essential libxmu-dev libxi-dev libgl-dev libosmesa-dev`
    1.44 +
    1.45 +RedHat/CentOS/Fedora:  `$ sudo yum install libXmu-devel libXi-devel libGL-devel`
    1.46 +
    1.47 +##### Build
    1.48 +
    1.49 +	$ make
    1.50 +	$ sudo make install
    1.51 +	$ make clean
    1.52 +
    1.53 +Targets:    `all, glew.lib (sub-targets: glew.lib.shared, glew.lib.static), glew.bin, clean, install, uninstall`
    1.54 +
    1.55 +Variables:  `SYSTEM=linux-clang, GLEW_DEST=/usr/local, STRIP=`
    1.56 +
    1.57 +_Note: may need to make **auto** folder_
    1.58 +
    1.59 +#### Using cmake
    1.60 +
    1.61 +*CMake 2.8.12 or higher is required.*
    1.62 +
    1.63 +##### Install build tools
    1.64 +
    1.65 +Debian/Ubuntu/Mint:   `$ sudo apt-get install build-essential libXmu-dev libXi-dev libgl-dev cmake`
    1.66 +
    1.67 +RedHat/CentOS/Fedora: `$ sudo yum install libXmu-devel libXi-devel libGL-devel cmake`
    1.68 +
    1.69 +##### Build
    1.70 +
    1.71 +	$ cd build
    1.72 +	$ cmake ./cmake 
    1.73 +	$ make -j4
    1.74 +
    1.75 +| Target     | Description |
    1.76 +| ---------- | ----------- |
    1.77 +| glew       | Build the glew shared library. |
    1.78 +| glew_s     | Build the glew static library. |
    1.79 +| glewinfo   | Build the `glewinfo` executable (requires `BUILD_UTILS` to be `ON`). |
    1.80 +| visualinfo | Build the `visualinfo` executable (requires `BUILD_UTILS` to be `ON`). |
    1.81 +| install    | Install all enabled targets into `CMAKE_INSTALL_PREFIX`. |
    1.82 +| clean      | Clean up build artifacts. |
    1.83 +| all        | Build all enabled targets (default target). |
    1.84 +
    1.85 +| Variables       | Description |
    1.86 +| --------------- | ----------- |
    1.87 +| BUILD_UTILS     | Build the `glewinfo` and `visualinfo` executables. |
    1.88 +| GLEW_REGAL      | Build in Regal mode. |
    1.89 +| GLEW_OSMESA     | Build in off-screen Mesa mode. |
    1.90 +| BUILD_FRAMEWORK | Build as MacOSX Framework.  Setting `CMAKE_INSTALL_PREFIX` to `/Library/Frameworks` is recommended. |
    1.91 +
    1.92 +### Windows
    1.93 +
    1.94 +#### Visual Studio
    1.95 +
    1.96 +Use the provided Visual Studio project file in build/vc12/
    1.97 +
    1.98 +Projects for vc6 and vc10 are also provided
    1.99 +
   1.100 +#### MSYS/Mingw
   1.101 +
   1.102 +Available from [Mingw](http://www.mingw.org/)
   1.103 +
   1.104 +Requirements: bash, make, gcc
   1.105 +
   1.106 +	$ mingw32-make
   1.107 +	$ mingw32-make install
   1.108 +	$ mingw32-make install.all
   1.109 +
   1.110 +Alternative toolchain:  `SYSTEM=mingw-win32`
   1.111 +
   1.112 +#### MSYS2/Mingw-w64
   1.113 +
   1.114 +Available from [Msys2](http://msys2.github.io/) and/or [Mingw-w64](http://mingw-w64.org/)
   1.115 +
   1.116 +Requirements: bash, make, gcc
   1.117 +
   1.118 +	$ pacman -S gcc make  mingw-w64-i686-gcc mingw-w64-x86_64-gcc 
   1.119 +	$ make
   1.120 +	$ make install
   1.121 +	$ make install.all
   1.122 +
   1.123 +Alternative toolchain:  `SYSTEM=msys, SYSTEM=msys-win32, SYSTEM=msys-win64`
   1.124 +
   1.125 +## glewinfo
   1.126 +
   1.127 +`glewinfo` is a command-line tool useful for inspecting the capabilities of an
   1.128 +OpenGL implementation and GLEW support for that.  Please include `glewinfo.txt`
   1.129 +with bug reports, as appropriate.	
   1.130 +
   1.131 +	---------------------------
   1.132 +	    GLEW Extension Info
   1.133 +	---------------------------
   1.134 +
   1.135 +	GLEW version 2.0.0
   1.136 +	Reporting capabilities of pixelformat 3
   1.137 +	Running on a Intel(R) HD Graphics 3000 from Intel
   1.138 +	OpenGL version 3.1.0 - Build 9.17.10.4229 is supported
   1.139 +
   1.140 +	GL_VERSION_1_1:                                                OK
   1.141 +	---------------
   1.142 +
   1.143 +	GL_VERSION_1_2:                                                OK
   1.144 +	---------------
   1.145 +	  glCopyTexSubImage3D:                                         OK
   1.146 +	  glDrawRangeElements:                                         OK
   1.147 +	  glTexImage3D:                                                OK
   1.148 +	  glTexSubImage3D:                                             OK
   1.149 +	
   1.150 +	...
   1.151 +
   1.152 +## Code Generation
   1.153 +
   1.154 +A Unix or Mac environment is needed for building GLEW from scratch to
   1.155 +include new extensions, or customize the code generation. The extension
   1.156 +data is regenerated from the top level source directory with:
   1.157 +
   1.158 +	make extensions
   1.159 +
   1.160 +An alternative to generating the GLEW sources from scratch is to
   1.161 +download a pre-generated (unsupported) snapshot:
   1.162 +
   1.163 +https://sourceforge.net/projects/glew/files/glew/snapshots/
   1.164 +
   1.165 +Travis-built snapshots are also available:
   1.166 +
   1.167 +https://glew.s3.amazonaws.com/index.html
   1.168 +
   1.169 +## Authors
   1.170 +
   1.171 +GLEW is currently maintained by [Nigel Stewart](https://github.com/nigels-com)
   1.172 +with bug fixes, new OpenGL extension support and new releases.
   1.173 +
   1.174 +GLEW was developed by [Milan Ikits](http://www.cs.utah.edu/~ikits/)
   1.175 +and [Marcelo Magallon](http://wwwvis.informatik.uni-stuttgart.de/~magallon/).
   1.176 +Aaron Lefohn, Joe Kniss, and Chris Wyman were the first users and also
   1.177 +assisted with the design and debugging process.  
   1.178 +
   1.179 +The acronym GLEW originates from Aaron Lefohn.
   1.180 +Pasi K&auml;rkk&auml;inen identified and fixed several problems with
   1.181 +GLX and SDL.  Nate Robins created the `wglinfo` utility, to
   1.182 +which modifications were made by Michael Wimmer.  
   1.183 +
   1.184 +## Copyright and Licensing
   1.185 +
   1.186 +GLEW is originally derived from the EXTGL project by Lev Povalahev.
   1.187 +The source code is licensed under the 
   1.188 +[Modified BSD License](http://glew.sourceforge.net/glew.txt), the 
   1.189 +[Mesa 3-D License](http://glew.sourceforge.net/mesa.txt) (MIT) and the
   1.190 +[Khronos License](http://glew.sourceforge.net/khronos.txt) (MIT).
   1.191 +
   1.192 +The automatic code generation scripts are released under the 
   1.193 +[GNU GPL](http://glew.sourceforge.net/gpl.txt).