Compare commits

..

354 Commits

Author SHA1 Message Date
Gyusun
9746f072bd Generate Sources of master updated at Wed Dec 24 14:01:13 GMT 2025 2025-12-24 14:01:13 +00:00
Gyusun
5bd03e6e2a Merge https://github.com/nigels-com/glew.git into master HEAD at Wed Dec 24 14:01:00 GMT 2025 2025-12-24 14:01:00 +00:00
Nigel Stewart
64c6abbf5d README: tidy-up for GLEW 2.3.0 2025-12-22 14:09:45 +10:00
Gyusun
7e8300fa13 Generate Sources of master updated at Sun Oct 26 15:28:00 GMT 2025 2025-10-26 15:28:00 +00:00
Gyusun
78212a3097 Merge https://github.com/nigels-com/glew.git into master HEAD at Sun Oct 26 15:27:49 GMT 2025 2025-10-26 15:27:49 +00:00
Gyusun
981f32baee Generate Sources of master updated at Fri Oct 24 00:01:12 GMT 2025 2025-10-24 00:01:12 +00:00
Gyusun
d06782b910 Generate Sources of master updated at Thu Oct 23 00:01:14 GMT 2025 2025-10-23 00:01:14 +00:00
Gyusun
b51c519309 Generate Sources of master updated at Fri Oct 10 00:01:11 GMT 2025 2025-10-10 00:01:11 +00:00
Gyusun
e399b150a1 Generate Sources of master updated at Thu Sep 18 00:02:30 GMT 2025 2025-09-18 00:02:30 +00:00
Gyusun
a9714943d5 Generate Sources of master updated at Mon Aug 25 11:42:24 GMT 2025 2025-08-25 11:42:24 +00:00
Gyusun
1eb85d9c2a Merge https://github.com/nigels-com/glew.git into master HEAD at Mon Aug 25 11:42:09 GMT 2025 2025-08-25 11:42:09 +00:00
Gyusun
918ece3da8 Generate Sources of master updated at Tue Apr 15 00:01:22 GMT 2025 2025-04-15 00:01:22 +00:00
Gyusun Yeom
ac12d4d22e
Merge pull request #70 from Perlmint/feature/cmake4
Update policy max version to supress warning
2025-04-13 23:14:00 +09:00
Gyusun Yeom
9e8e33ca17 Update policy max version to supress warning 2025-04-13 22:12:59 +09:00
Gyusun Yeom
5ee099a5b1
Merge pull request #71 from Perlmint/fix/gha
Fix GHA build test
2025-04-13 22:10:11 +09:00
Gyusun Yeom
852253523f Fix GHA build test 2025-04-13 21:24:44 +09:00
Gyusun
49490b10c4 Generate Sources of master updated at Fri Apr 11 11:59:33 GMT 2025 2025-04-11 11:59:33 +00:00
Gyusun
0d1debf37f Merge https://github.com/nigels-com/glew.git into master HEAD at Fri Apr 11 11:59:20 GMT 2025 2025-04-11 11:59:20 +00:00
Gyusun
72ff6b1a5e Generate Sources of master updated at Wed Sep 11 00:01:25 GMT 2024 2024-09-11 00:01:25 +00:00
Gyusun
9f4f3e67eb Generate Sources of master updated at Sat Aug 24 10:11:29 GMT 2024 2024-08-24 10:11:29 +00:00
Gyusun
8d3ac6aca3 Merge https://github.com/nigels-com/glew.git into master HEAD at Sat Aug 24 10:11:14 GMT 2024 2024-08-24 10:11:14 +00:00
Gyusun
a5494db414 Generate Sources of master updated at Sun Dec 17 00:01:29 GMT 2023 2023-12-17 00:01:29 +00:00
Gyusun
e13dcc58e6 Generate Sources of master updated at Thu Dec 7 00:01:26 GMT 2023 2023-12-07 00:01:27 +00:00
Gyusun
b9f61b43b2 Merge https://github.com/nigels-com/glew.git into master HEAD at Sat Nov 11 00:00:54 GMT 2023 2023-11-11 00:00:54 +00:00
Gyusun
786430a248 Merge https://github.com/nigels-com/glew.git into master HEAD at Fri Nov 10 00:01:27 GMT 2023 2023-11-10 00:01:27 +00:00
Gyusun
338306293e Merge https://github.com/nigels-com/glew.git into master HEAD at Mon Oct 16 00:01:34 GMT 2023 2023-10-16 00:01:34 +00:00
Gyusun
5aa27cf7d4 Merge https://github.com/nigels-com/glew.git into master HEAD at Sat Oct 7 00:01:15 GMT 2023 2023-10-07 00:01:15 +00:00
Gyusun
906f8f7a6e Generate Sources of master updated at Sat Sep 30 00:01:22 GMT 2023 2023-09-30 00:01:22 +00:00
Gyusun
3cf29c57e9 Merge https://github.com/nigels-com/glew.git into master HEAD at Fri Sep 22 00:01:45 GMT 2023 2023-09-22 00:01:45 +00:00
Gyusun
908ac2eb68 Generate Sources of master updated at Fri Sep 15 23:11:57 GMT 2023 2023-09-15 23:11:57 +00:00
Gyusun
0e6711a117 Merge https://github.com/nigels-com/glew.git into master HEAD at Fri Sep 15 23:11:36 GMT 2023 2023-09-15 23:11:36 +00:00
Gyusun Yeom
4abae5fd0c
Merge pull request #65 from Perlmint/latest_cmake
Run build test with latest cmake
2023-09-16 08:11:26 +09:00
Gyusun Yeom
7684bff43b Run build test with latest cmake 2023-09-16 08:09:34 +09:00
Gyusun Yeom
a13f8088ac Run build test with latest cmake 2023-09-15 22:25:42 +09:00
Gyusun Yeom
bae9d1a33d
Merge pull request #63 from Wohlstand/master
CMake: Fixed minimal version warning on recent CMake
2023-09-15 22:22:42 +09:00
Wohlstand
bfe27f1ed1 CMake: Fixed minimal version warning on recent CMake
```
CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):
  Compatibility with CMake < 3.5 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.
```
2023-08-23 01:03:03 +03:00
Gyusun Yeom
9758219375
Merge pull request #62 from Wohlstand/master
CMake: Fixed symbolic link for builds with a debug postfix
2023-06-26 23:28:33 +09:00
Gyusun
61ff0a2a04 Generate Sources of master updated at Fri Jun 23 00:01:47 GMT 2023 2023-06-23 00:01:47 +00:00
Gyusun
4ed6aac84b Merge https://github.com/nigels-com/glew.git into master HEAD at Thu Jun 22 00:01:40 GMT 2023 2023-06-22 00:01:40 +00:00
Gyusun
1eb8c92877 Generate Sources of master updated at Wed Jun 21 00:17:08 GMT 2023 2023-06-21 00:17:08 +00:00
Wohlstand
91cfa6a5c9
CMake: Fixed symbolic link for builds with a debug postfix 2023-06-21 03:10:16 +03:00
Gyusun
7f7e844cfc Merge https://github.com/nigels-com/glew.git into master HEAD at Tue Apr 25 00:01:44 GMT 2023 2023-04-25 00:01:44 +00:00
Gyusun
8f9a60f6aa Generate Sources of master updated at Sat Apr 1 00:01:52 GMT 2023 2023-04-01 00:01:52 +00:00
Gyusun
062db23216 Generate Sources of master updated at Thu Mar 16 00:01:57 GMT 2023 2023-03-16 00:01:57 +00:00
Gyusun
675b56a057 Merge https://github.com/nigels-com/glew.git into master HEAD at Thu Mar 16 00:01:33 GMT 2023 2023-03-16 00:01:33 +00:00
Or Dagmi
f266584c9a
Fixing test fs case sensitivity garbage files in the source dir (#61)
* Fixing test fs case sensitivity minor issue where files where not created in the CMAKE_BINARY_DIR

---------

Co-authored-by: DiGMi <digmi@convexum.com>
2023-02-27 21:00:25 +09:00
Gyusun Yeom
020831e5ad
Merge pull request #58 from JamesPerlman/patch-1
Use CMP0077
2023-02-23 15:22:47 +09:00
James Perlman
d9504ce13b Use CMP0077
Thanks so much for making this project!  I'm using CMake 3.24+, and I was getting some errors like in [this issue (zephyr/26142)](https://github.com/zephyrproject-rtos/zephyr/issues/26142), and fixed them using CMP0077 - Did I do this correctly?
2023-02-22 16:23:54 -08:00
Gyusun
94b823ee04 Generate Sources of master updated at Tue Feb 21 00:02:21 GMT 2023 2023-02-21 00:02:22 +00:00
Gyusun Yeom
ccc2ac3e40
Merge pull request #59 from Perlmint/fix/opengl_build
Fix build test
2023-02-19 13:23:06 +09:00
Gyusun Yeom
19ecc02312 Fix error on case insensitive fs 2023-02-19 13:09:58 +09:00
Gyusun Yeom
1a5db5d19b Fix configure error on non-GLVND linux environment 2023-02-19 13:09:58 +09:00
Gyusun
8260c05ee0 Generate Sources of master updated at Sun Aug 21 07:03:15 GMT 2022 2022-08-21 07:03:15 +00:00
Gyusun
9dc72dbd02 Merge https://github.com/nigels-com/glew.git into master HEAD at Sun Aug 21 07:02:53 GMT 2022 2022-08-21 07:02:53 +00:00
Gyusun Yeom
e392a7c26f Fix failure in maintain script 2022-08-21 16:01:58 +09:00
Gyusun Yeom
7c2b7514f6
Merge pull request #52 from Perlmint/feature/readme
Add readme of GLEW-cmake
2021-12-12 21:23:34 +09:00
Gyusun Yeom
fe9f5c25c6 Fix github actions build error 2021-12-12 17:24:02 +09:00
Gyusun Yeom
ec2cb231a4 Add glew-cmake README 2021-12-05 21:48:50 +09:00
Gyusun Yeom
570e4534e6 Add example 2021-12-04 15:59:21 +09:00
Gyusun
466859eeea Generate Sources of master updated at Wed Nov 24 00:02:05 GMT 2021 2021-11-24 00:02:05 +00:00
Gyusun
ca63fc313e Generate Sources of master updated at Thu Nov 18 00:01:44 GMT 2021 2021-11-18 00:01:44 +00:00
Gyusun Yeom
098c409d4d Move original README.md 2021-11-14 18:41:04 +09:00
Gyusun Yeom
31c1901c82
Merge pull request #50 from Perlmint/fix/glx
Support off-screen mode
2021-11-14 18:38:11 +09:00
Gyusun Yeom
442d56d47d Fix build for non-glvnd 2021-11-14 17:09:45 +09:00
Gyusun Yeom
6940c54fc1 Support off-screen mode 2021-11-14 17:09:44 +09:00
Gyusun Yeom
23b9557df8
Merge pull request #51 from Perlmint/fix/azure-build
Use ubuntu-latest on azure-pipeline
2021-11-14 16:13:39 +09:00
Gyusun
c44ef5c33d Generate Sources of master updated at Sun Nov 14 06:52:50 GMT 2021 2021-11-14 06:52:50 +00:00
Gyusun
e15487351e Merge https://github.com/nigels-com/glew.git into master HEAD at Sun Nov 14 06:52:33 GMT 2021 2021-11-14 06:52:33 +00:00
Gyusun Yeom
673391490c Use ubuntu-latest on azure-pipeline 2021-11-14 15:51:36 +09:00
Gyusun
ce3818d22f Generate Sources of master updated at Sun Aug 29 00:01:57 GMT 2021 2021-08-29 00:01:57 +00:00
Gyusun
b7931abd0c Merge https://github.com/nigels-com/glew.git into master HEAD at Sun Aug 29 00:01:37 GMT 2021 2021-08-29 00:01:37 +00:00
Gyusun
7c5c9d5f6b Generate Sources of master updated at Tue Aug 24 00:01:50 GMT 2021 2021-08-24 00:01:50 +00:00
Gyusun
b832da25bc Generate Sources of master updated at Sun Aug 22 12:29:55 GMT 2021 2021-08-22 12:29:55 +00:00
Gyusun
538b2e8d3f Merge https://github.com/nigels-com/glew.git into master HEAD at Sun Aug 22 12:29:34 GMT 2021 2021-08-22 12:29:34 +00:00
Gyusun
883e35a3d4 Generate Sources of master updated at Thu May 13 00:02:02 GMT 2021 2021-05-13 00:02:02 +00:00
Gyusun
4d6020be39 Generate Sources of master updated at Tue Apr 27 00:01:56 GMT 2021 2021-04-27 00:01:56 +00:00
Gyusun
d452fb8c39 Generate Sources of master updated at Wed Apr 21 00:01:55 GMT 2021 2021-04-21 00:01:55 +00:00
Gyusun
01420c19a9 Generate Sources of master updated at Sat Apr 3 00:01:48 GMT 2021 2021-04-03 00:01:48 +00:00
Gyusun Yeom
a8ef112236
Merge pull request #45 from Perlmint/fix/mingw 2021-03-24 23:00:34 +09:00
Gyusun
8824bc1146 Merge https://github.com/nigels-com/glew.git into master HEAD at Mon Mar 22 00:01:25 GMT 2021 2021-03-22 00:01:25 +00:00
Gyusun Yeom
c7dc7efe4e
Merge pull request #43 from tobybell/master
Silence warning for policy CMP0042
2021-03-10 14:41:28 +09:00
Toby Bell
e2b4a36751 Silence warning for policy CMP0042
CMake policy CMP0042 affects whether @rpath is used in the install path for
dynamic libraries on macOS. It was introduced in CMake 3.0. If the policy is
not explicitly set, CMake uses OLD behavior and emits a warning.

This commit explicitly sets NEW behavior in order to silence the warning and
adopt the preferred behavior by CMake. This uses @rpath instead of @loader_path
in install names.

Documentation for policy CMP0042:

https://cmake.org/cmake/help/latest/policy/CMP0042.html
2021-03-05 18:49:38 -08:00
Gyusun Yeom
547fc11b29
Run github actions on PR (#46) 2021-03-06 10:36:34 +09:00
Gyusun Yeom
f61e323584 Build test with mingw 2021-03-05 22:37:01 +09:00
Gyusun Yeom
78f10dd0e0 Fix shared library build for mingw 2021-03-05 22:37:01 +09:00
Gyusun Yeom
f1c0b06b1b
Merge pull request #42 from Perlmint/fix-for-old-cmake
Fix errors in cmake
2021-02-10 09:52:53 +09:00
Gyusun Yeom
af5eac1089 Test with old cmake, Windows & macOS 2021-02-09 21:35:31 +09:00
Gyusun Yeom
e983f5e0ee [Fix #38] [Fix #41] Fix install symbolic link 2021-02-09 21:31:26 +09:00
Gyusun Yeom
5cc3b4b8a8 [Fix #39] Fix CMP0048 issue 2021-02-09 21:31:25 +09:00
Gyusun Yeom
67ff18e2ee [Fix #40] Fix non-GLVND, non-namespaced package 2021-02-09 21:31:25 +09:00
Gyusun Yeom
0be1dc6b89
Merge pull request #37 from Perlmint/feature/install_symbolic_link 2021-02-06 22:11:39 +09:00
Gyusun Yeom
81b97ab31e Use POST_BUILD script 2021-02-06 16:04:38 +09:00
Gyusun Yeom
c4936e08b7 Install libGLEW symbolic links 2021-02-04 22:10:43 +09:00
Gyusun
7d525405e6 Generate Sources of master updated at Thu Jan 28 00:01:46 GMT 2021 2021-01-28 00:01:46 +00:00
Gyusun Yeom
10f2e41b97 Fix release - add config/version 2021-01-17 15:43:02 +09:00
Gyusun Yeom
b78f12e465 Add GeneratePkgConfig.cmake for tags 2021-01-16 22:22:16 +09:00
Gyusun
a1e2e3deab Generate Sources of master updated at Mon Jan 11 00:02:39 GMT 2021 2021-01-11 00:02:39 +00:00
Gyusun
f4165c28eb Merge https://github.com/nigels-com/glew.git into master HEAD at Mon Jan 11 00:02:16 GMT 2021 2021-01-11 00:02:16 +00:00
Gyusun
a3d0ca0c7f Generate Sources of master updated at Fri Jan 8 00:02:10 GMT 2021 2021-01-08 00:02:11 +00:00
Gyusun Yeom
e009b0fdce Build test with github actions 2021-01-03 15:12:00 +09:00
Gyusun Yeom
a79115599b Modernize cmake 2021-01-03 15:11:28 +09:00
Gyusun Yeom
b7aa06157b Fix generate pkg config 2020-12-29 22:55:52 +09:00
Gyusun Yeom
397f383c53 Fix include directory properly for install 2020-12-29 21:05:28 +09:00
Gyusun Yeom
430a36d2b8 Export cmake config & use proper include directory for install
Close #30

Thanks Lanza<nathan@lanza.io>
2020-12-29 20:56:03 +09:00
Gyusun Yeom
9f3df6c128 Prevent output name collision 2020-12-29 20:56:03 +09:00
Gyusun
a553506b46 Generate Sources of master updated at Tue Dec 29 11:02:40 GMT 2020 2020-12-29 11:02:40 +00:00
Gyusun
04007493ce Merge https://github.com/nigels-com/glew.git into master HEAD at Tue Dec 29 11:02:17 GMT 2020 2020-12-29 11:02:17 +00:00
Gyusun Yeom
980ccfe56d Fix #29 Use proper output directory 2020-12-29 19:56:22 +09:00
Gyusun Yeom
3900ff84b4 Fix #32 Drop support too old cmake version 2020-12-29 19:52:36 +09:00
Gyusun Yeom
669ca8dda9 Fix #31 Handle cmake warning about CMP0072 2020-12-29 19:51:23 +09:00
Gyusun Yeom
e34677f42b
Merge pull request #28 from hgs3/master
Define GLEW_BUILD only for libglew_shared and not consumer targets.
2020-08-23 14:54:55 +09:00
Gyusun
2785d66dde Generate Sources of master updated at Sun Aug 16 00:01:27 GMT 2020 2020-08-16 00:01:27 +00:00
Gyusun
97419eafab Generate Sources of master updated at Sat Aug 15 00:01:32 GMT 2020 2020-08-15 00:01:32 +00:00
Gyusun
9f109bec6c Generate Sources of master updated at Fri Aug 14 00:01:24 GMT 2020 2020-08-14 00:01:24 +00:00
Gyusun
c87ee50fb5 Generate Sources of master updated at Thu Aug 13 00:04:21 GMT 2020 2020-08-13 00:04:21 +00:00
hgs3
a8b341554f
Mark GLEW_BUILD PRIVATE to not affect consumers using add_subdirectory. 2020-08-11 17:46:31 -05:00
Gyusun
a96e6f1c45 Generate Sources of master updated at Sat May 30 00:01:22 GMT 2020 2020-05-30 00:01:22 +00:00
Gyusun Yeom
c4c1fd4fec
Remove single/multi context option - deprecated
details in #27
2020-05-12 14:39:19 +09:00
Gyusun
5ab6ba3039 Generate Sources of master updated at Sat Apr 11 00:01:06 GMT 2020 2020-04-11 00:01:06 +00:00
Gyusun
68ac8e80a9 Generate Sources of master updated at Wed Apr 8 00:01:16 GMT 2020 2020-04-08 00:01:16 +00:00
Gyusun
55a499e65a Generate Sources of master updated at Thu Mar 26 00:01:14 GMT 2020 2020-03-26 00:01:14 +00:00
Gyusun
60eafc8a9b Generate Sources of master updated at Mon Mar 16 00:01:21 GMT 2020 2020-03-16 00:01:21 +00:00
Gyusun
b8b7ff3511 Merge https://github.com/nigels-com/glew.git into master HEAD at Mon Mar 16 00:01:01 GMT 2020 2020-03-16 00:01:01 +00:00
Gyusun
7d44f3c67c Merge https://github.com/nigels-com/glew.git into master HEAD at Fri Mar 6 00:00:50 GMT 2020 2020-03-06 00:00:50 +00:00
Gyusun
ec3049cfc1 Generate Sources of master updated at Tue Feb 25 00:01:08 GMT 2020 2020-02-25 00:01:08 +00:00
Gyusun
1b83eb287d Generate Sources of master updated at Fri Feb 21 00:01:05 GMT 2020 2020-02-21 00:01:05 +00:00
Gyusun
02629da9ca Generate Sources of master updated at Wed Feb 12 00:01:18 GMT 2020 2020-02-12 00:01:18 +00:00
Gyusun Yeom
d1d8b889b8
Fix #25 make scheduled jobs always run. Even though nothing changed 2020-01-30 22:20:03 +09:00
Gyusun
3871202dfd Merge https://github.com/nigels-com/glew.git into master HEAD at Tue Jan 28 13:32:34 GMT 2020 2020-01-28 13:32:34 +00:00
Gyusun
c32bb089c1 Generate Sources of master updated at Tue Jan 21 22:56:03 GMT 2020 2020-01-21 22:56:03 +00:00
Gyusun
83907238d9 Merge https://github.com/nigels-com/glew.git into master HEAD at Tue Jan 21 22:55:43 GMT 2020 2020-01-21 22:55:43 +00:00
Gyusun
59a52e570f Generate Sources of master updated at Mon Nov 11 00:03:55 GMT 2019 2019-11-11 00:03:55 +00:00
Gyusun
f9b0c4225f Merge https://github.com/nigels-com/glew.git into master HEAD at Mon Nov 11 00:03:32 GMT 2019 2019-11-11 00:03:32 +00:00
Gyusun Yeom
6f770a5b5b Merge branch 'feature/pkgconfig' 2019-10-09 20:42:36 +09:00
Gyusun Yeom
4f2237a265 Generate pkg-config file 2019-10-09 20:40:50 +09:00
Gyusun Yeom
cc5cfff738 Cleanup CMakeLists 2019-10-09 20:40:25 +09:00
Gyusun
5a59fc7d94 Generate Sources of master updated at Sat Oct 5 09:11:53 GMT 2019 2019-10-05 09:11:53 +00:00
Gyusun
59c63684ee Merge https://github.com/nigels-com/glew.git into master HEAD at Sat Oct 5 09:11:32 GMT 2019 2019-10-05 09:11:32 +00:00
Gyusun Yeom
20ea2d0d07 Move to azure pipeline 2019-09-23 00:12:27 +09:00
Gyusun Yeom
ceb7145f3e Generate Sources of master updated at Wed Sep 18 13:43:07 GMT 2019 2019-09-18 22:43:07 +09:00
Bluenaxela
371895de42
Add proper support for static builds on WIN32 2019-09-18 22:40:54 +09:00
Gyusun Yeom
acd5fc7f64 fix windows build error - add rc files 2019-09-18 21:57:34 +09:00
Gyusun Yeom
708bbfd807 Generate Sources of master updated at 2019. 09. 15. (일) 15:14:15 GMT 2019-09-16 00:14:15 +09:00
Gyusun Yeom
df23003353 Fix importing tags - use proper registry 2019-09-16 00:13:34 +09:00
Gyusun Yeom
41c88953cd Merge https://github.com/nigels-com/glew.git into master HEAD at Mon Aug 19 14:31:27 GMT 2019 2019-08-19 14:31:27 +00:00
Gyusun Yeom
77fa1efe71 Generate Sources of master updated at Thu Aug 8 14:37:32 GMT 2019 2019-08-08 14:37:32 +00:00
Gyusun Yeom
1f730ccb3d Generate Sources of master updated at Mon Jul 29 14:35:28 GMT 2019 2019-07-29 14:35:28 +00:00
Gyusun Yeom
2545ef4e02 Fix error and typo in maintain script 2019-07-01 00:51:33 +09:00
Gyusun Yeom
5bc4c9d380 Generate Sources of master updated at Sun Jun 30 14:34:29 GMT 2019 2019-06-30 14:34:29 +00:00
Gyusun Yeom
ff01f1db86 Merge https://github.com/nigels-com/glew.git into master HEAD at Sun Jun 30 14:31:55 GMT 2019 2019-06-30 14:31:55 +00:00
Gyusun Yeom
0329c64675 Fix CI error 2019-06-30 11:04:15 +09:00
Gyusun Yeom
e3f3079a53 Add CI pipeline data 2019-06-29 18:51:17 +09:00
Gyusun Yeom
c52a9eb978 Move maintain script into own directory 2019-06-29 18:28:31 +09:00
ArthurSonzogni
8c42082242 Fix cmake error on Linux "no LIBRARY DESTINATION"
On Linux, cmake gives the error:
~~~bash
CMake Error at CMakeLists.txt:79 (INSTALL):
INSTALL TARGETS given no LIBRARY DESTINATION for shared library target
"libglew_shared".

CMake Error at CMakeLists.txt:94 (INSTALL):
INSTALL TARGETS given no LIBRARY DESTINATION for shared library target
"libglewmx_shared".

-- Configuring incomplete, errors occurred!
~~~

This bug was caused by the merge:
e4de8a77a1

Containing:
* Update library install directories in Cmake
  commit 5a7232fc53

* Install directories set in single statement
  commit def19e7de4

The cause is that RUNTIME DESTINATION is now defined (for Windows), but
not LIBRARY DESTINATION (for Linux).

See issue: https://github.com/Perlmint/glew-cmake/issues/17
2019-06-11 21:37:30 +09:00
Gyusun Yeom
662a645508 Merge https://github.com/nigels-com/glew.git into master HEAD at Wed Apr 24 02:44:14 GMT 2019 2019-04-24 02:44:14 +00:00
Gyusun Yeom
e4de8a77a1
Merge pull request #16 from GekkieHenkie/patch-1
Update library install directories in Cmake
2019-04-20 15:45:09 +09:00
GekkieHenkie
5a7232fc53
Install directories set in single statement 2019-04-09 23:59:48 +02:00
GekkieHenkie
def19e7de4
Update library install directories in Cmake
Currently (well, at least on Windows), the created DLL files aren't installed to the correct directory after a build. The DLL files are installed to the 'lib' directory. Which actually is the place for the static library or the shared library's symbols file (.lib).
The shared library runtimes should be installed to the 'bin' output directory, as proposed in this PR.

See the ```CONFIGURATIONS``` option in [Install command introduction in the CMake manual](https://cmake.org/cmake/help/v3.14/command/install.html#introduction) for an example.

It's considered best practice and follows convention as used in other notable libraries as libpng, libogg/vorbis, freetype, zlib, tinyxml, etc, to install the runtime output in the 'bin' directory.
2019-04-09 23:22:16 +02:00
Gyusun Yeom
f92c14bcc1 Merge https://github.com/nigels-com/glew.git into master HEAD at Mon Apr 8 02:44:15 GMT 2019 2019-04-08 02:44:15 +00:00
Gyusun Yeom
9cc72c5dc2 Merge https://github.com/nigels-com/glew.git into master HEAD at Wed Mar 20 02:44:18 GMT 2019 2019-03-20 02:44:18 +00:00
Gyusun Yeom
e6d676975f Merge https://github.com/nigels-com/glew.git into master HEAD at Mon Mar 18 02:44:18 GMT 2019 2019-03-18 02:44:18 +00:00
Gyusun Yeom
89b83938a2 Merge https://github.com/nigels-com/glew.git into master HEAD at Sun Mar 17 02:44:17 GMT 2019 2019-03-17 02:44:17 +00:00
Gyusun Yeom
f8de1d2860 Generate Sources of origin/master updated at Tue Feb 5 17:45:53 GMT 2019 2019-02-06 02:45:53 +09:00
Gyusun Yeom
f2e1f3bac5 Merge https://github.com/nigels-com/glew.git into master HEAD at Tue Feb 5 17:44:15 GMT 2019 2019-02-06 02:44:15 +09:00
Gyusun Yeom
f93eddb4a4 Generate Sources of origin/master updated at Mon Feb 4 17:45:53 GMT 2019 2019-02-05 02:45:53 +09:00
Gyusun Yeom
edf558f8f6 Merge https://github.com/nigels-com/glew.git into master HEAD at Mon Feb 4 17:44:16 GMT 2019 2019-02-05 02:44:16 +09:00
Gyusun Yeom
abb57c9b54 Merge https://github.com/nigels-com/glew.git into master HEAD at Sun Feb 3 17:44:16 GMT 2019 2019-02-04 02:44:16 +09:00
Gyusun Yeom
f1a95440ea Generate Sources of origin/master updated at Sat Feb 2 17:45:50 GMT 2019 2019-02-03 02:45:50 +09:00
Gyusun Yeom
b2ea0143bd Merge https://github.com/nigels-com/glew.git into master HEAD at Sat Feb 2 17:44:17 GMT 2019 2019-02-03 02:44:17 +09:00
Gyusun Yeom
4932bbba1d Merge https://github.com/nigels-com/glew.git into master HEAD at Thu Jan 31 17:44:16 GMT 2019 2019-02-01 02:44:16 +09:00
Gyusun Yeom
d650219631 Merge https://github.com/nigels-com/glew.git into master HEAD at Wed Jan 30 17:44:16 GMT 2019 2019-01-31 02:44:16 +09:00
Gyusun Yeom
d36641c3e5 Generate Sources of origin/master updated at Mon Jan 28 17:45:47 GMT 2019 2019-01-29 02:45:47 +09:00
Gyusun Yeom
923d1cadf3 Merge https://github.com/nigels-com/glew.git into master HEAD at Mon Jan 28 17:44:16 GMT 2019 2019-01-29 02:44:16 +09:00
Gyusun Yeom
317f39e669 Generate Sources of origin/master updated at Sat Jan 26 17:45:45 GMT 2019 2019-01-27 02:45:45 +09:00
Gyusun Yeom
831a868c60 Generate Sources of origin/master updated at Fri Jan 11 17:45:48 GMT 2019 2019-01-12 02:45:48 +09:00
Gyusun Yeom
28c160367b Generate Sources of origin/master updated at Thu Jan 10 17:45:44 GMT 2019 2019-01-11 02:45:44 +09:00
Gyusun Yeom
302eae8ebb Generate Sources of origin/master updated at Sun Dec 30 17:45:45 GMT 2018 2018-12-31 02:45:45 +09:00
Gyusun Yeom
99a9408cf0 Generate Sources of origin/master updated at Sat Dec 29 17:45:43 GMT 2018 2018-12-30 02:45:43 +09:00
Gyusun Yeom
82e4802538 Merge https://github.com/nigels-com/glew.git into master HEAD at Sat Dec 29 17:44:16 GMT 2018 2018-12-30 02:44:16 +09:00
Gyusun Yeom
8e190fe8fc Generate Sources of origin/master updated at Thu Dec 20 17:45:56 GMT 2018 2018-12-21 02:45:56 +09:00
Gyusun Yeom
a2ab3e7ca7 Generate Sources of origin/master updated at Wed Dec 19 17:45:42 GMT 2018 2018-12-20 02:45:42 +09:00
Gyusun Yeom
6dbc940772 Generate Sources of origin/master updated at Wed Oct 31 17:45:43 GMT 2018 2018-11-01 02:45:43 +09:00
Gyusun Yeom
06ec3affe2 Generate Sources of origin/master updated at Wed Oct 17 17:45:45 GMT 2018 2018-10-18 02:45:45 +09:00
Gyusun Yeom
679246fadb Merge https://github.com/nigels-com/glew.git into master HEAD at Sat Oct 13 17:44:15 GMT 2018 2018-10-14 02:44:15 +09:00
Gyusun Yeom
5bb183155b Generate Sources of origin/master updated at Wed Oct 10 17:45:43 GMT 2018 2018-10-11 02:45:43 +09:00
Gyusun Yeom
6755e0fcac Merge https://github.com/nigels-com/glew.git into master HEAD at Wed Oct 10 17:44:15 GMT 2018 2018-10-11 02:44:15 +09:00
Gyusun Yeom
4fbb8fe14a Generate Sources of origin/master updated at Thu Jun 21 12:01:56 GMT 2018 2018-06-21 21:01:56 +09:00
Gyusun Yeom
f43a19ea26 Merge https://github.com/nigels-com/glew.git into master HEAD at Thu Jun 21 12:01:11 GMT 2018 2018-06-21 21:01:11 +09:00
Gyusun Yeom
ea68a21093 Merge pull request #12 from wang37921/master
public include directory
2017-03-03 01:33:33 +09:00
Cong Wang
ae2050b432 public include directory 2017-03-02 23:48:35 +08:00
omniavinco
db1e93ef4c Generate Sources of origin/master updated at Sun Jan 8 17:55:36 GMT 2017 2017-01-09 02:55:36 +09:00
omniavinco
319c412f65 Merge https://github.com/nigels-com/glew.git into master HEAD at Sun Jan 8 17:46:55 GMT 2017 2017-01-09 02:46:55 +09:00
omniavinco
7be092340b Generate Sources of origin/master updated at Sat Dec 24 17:55:25 GMT 2016 2016-12-25 02:55:25 +09:00
omniavinco
43eefb57d0 Merge https://github.com/nigels-com/glew.git into master HEAD at Sat Dec 24 17:46:36 GMT 2016 2016-12-25 02:46:36 +09:00
omniavinco
f0d8d60cce Merge https://github.com/nigels-com/glew.git into master HEAD at Fri Dec 23 17:46:58 GMT 2016 2016-12-24 02:46:58 +09:00
omniavinco
4af9476eda Generate Sources of origin/master updated at Mon Dec 12 17:50:50 GMT 2016 2016-12-13 02:50:50 +09:00
omniavinco
34d1b6bc31 Generate Sources of origin/master updated at Sun Nov 13 17:51:09 GMT 2016 2016-11-14 02:51:09 +09:00
omniavinco
74c6c8f89a Merge https://github.com/nigels-com/glew.git into master HEAD at Sun Nov 13 17:45:14 GMT 2016 2016-11-14 02:45:14 +09:00
omniavinco
59b243190a Generate Sources of origin/master updated at Sat Nov 12 17:53:06 GMT 2016 2016-11-13 02:53:06 +09:00
omniavinco
5120a35abf Generate Sources of origin/master updated at Sat Oct 15 17:55:42 GMT 2016 2016-10-16 02:55:42 +09:00
omniavinco
e6e5c08ff8 Merge https://github.com/nigels-com/glew.git into master HEAD at Sat Oct 15 17:45:44 GMT 2016 2016-10-16 02:45:44 +09:00
omniavinco
560041a19b Generate Sources of origin/master updated at Sat Oct 1 17:54:30 GMT 2016 2016-10-02 02:54:30 +09:00
omniavinco
998f57e090 Merge https://github.com/nigels-com/glew.git into master HEAD at Sat Oct 1 17:46:06 GMT 2016 2016-10-02 02:46:06 +09:00
omniavinco
81af57f72e Generate Sources of origin/master updated at Thu Sep 1 17:46:17 GMT 2016 2016-09-02 02:46:17 +09:00
omniavinco
2f22768eb3 Merge https://github.com/nigels-com/glew.git into master HEAD at Thu Sep 1 17:44:22 GMT 2016 2016-09-02 02:44:22 +09:00
omniavinco
834284b7ee Generate Sources of origin/master updated at Sun Jul 24 17:46:13 GMT 2016 2016-07-25 02:46:13 +09:00
omniavinco
e3fe70d1dc Merge https://github.com/nigels-com/glew.git into master HEAD at Sun Jul 24 17:44:27 GMT 2016 2016-07-25 02:44:27 +09:00
omniavinco
9aec204e2e Generate Sources of origin/master updated at Sat Jul 16 17:46:52 GMT 2016 2016-07-17 02:46:52 +09:00
omniavinco
eda0eed11c Merge https://github.com/nigels-com/glew.git into master HEAD at Mon Jul 11 17:44:22 GMT 2016 2016-07-12 02:44:22 +09:00
omniavinco
93ef744f23 Generate Sources of origin/master updated at Sat Jul 9 17:46:52 GMT 2016 2016-07-10 02:46:52 +09:00
omniavinco
a56fb7777e Merge https://github.com/nigels-com/glew.git into master HEAD at Sat Jul 9 17:44:22 GMT 2016 2016-07-10 02:44:22 +09:00
omniavinco
c24552fa19 Generate Sources of origin/master updated at Fri Jul 8 17:45:27 GMT 2016 2016-07-09 02:45:27 +09:00
omniavinco
19cdf6ac57 Merge https://github.com/nigels-com/glew.git into master HEAD at Fri Jul 8 17:44:41 GMT 2016 2016-07-09 02:44:41 +09:00
omniavinco
3be4d079d7 Generate Sources of origin/master updated at Fri Jun 17 17:47:53 GMT 2016 2016-06-18 02:47:53 +09:00
omniavinco
69271d06c2 Merge https://github.com/nigels-com/glew.git into master HEAD at Fri Jun 17 17:44:49 GMT 2016 2016-06-18 02:44:49 +09:00
omniavinco
0ba2fb54c6 Generate Sources of origin/master updated at Wed Jun 8 17:45:49 GMT 2016 2016-06-09 02:45:49 +09:00
omniavinco
faf403280c Merge https://github.com/nigels-com/glew.git into master HEAD at Sat May 21 17:44:35 GMT 2016 2016-05-22 02:44:35 +09:00
omniavinco
6f3f61c68e Generate Sources of origin/master updated at Wed May 11 17:45:53 GMT 2016 2016-05-12 02:45:53 +09:00
omniavinco
bc1a01e903 Merge https://github.com/nigels-com/glew.git into master HEAD at Sat May 7 17:44:20 GMT 2016 2016-05-08 02:44:20 +09:00
omniavinco
280d754ac3 Generate Sources of origin/master updated at Sat Apr 16 17:46:37 GMT 2016 2016-04-17 02:46:37 +09:00
omniavinco
3bb390a566 Generate Sources of origin/master updated at Sat Apr 9 17:46:37 GMT 2016 2016-04-10 02:46:37 +09:00
omniavinco
c9db554e1f Merge https://github.com/nigels-com/glew.git into master HEAD at Sat Apr 9 17:44:37 GMT 2016 2016-04-10 02:44:37 +09:00
omniavinco
c63ddd98f4 Merge https://github.com/nigels-com/glew.git into master HEAD at Sun Apr 3 17:44:19 GMT 2016 2016-04-04 02:44:19 +09:00
omniavinco
530355e698 Generate Sources of origin/master updated at Sat Apr 2 17:45:55 GMT 2016 2016-04-03 02:45:55 +09:00
omniavinco
ebeeabace8 Merge https://github.com/nigels-com/glew.git into master HEAD at Sat Apr 2 17:44:22 GMT 2016 2016-04-03 02:44:22 +09:00
omniavinco
91666953f0 Generate Sources of origin/master updated at Wed Mar 23 17:45:13 GMT 2016 2016-03-24 02:45:13 +09:00
omniavinco
f2d45b6f53 Generate Sources of origin/master updated at Wed Mar 23 07:38:50 GMT 2016 2016-03-23 16:38:50 +09:00
omniavinco
868558e265 Generate Sources of origin/master updated at Fri Feb 19 17:44:34 GMT 2016 2016-02-20 02:44:34 +09:00
omniavinco
ae08241886 Merge https://github.com/nigels-com/glew.git into master HEAD at Fri Feb 19 17:44:14 GMT 2016 2016-02-20 02:44:14 +09:00
omniavinco
61948d59d7 Generate Sources of origin/master updated at Sat Feb 6 17:44:35 GMT 2016 2016-02-07 02:44:35 +09:00
omniavinco
64d8e37d50 Merge https://github.com/nigels-com/glew.git into master HEAD at Sat Feb 6 17:44:15 GMT 2016 2016-02-07 02:44:15 +09:00
omniavinco
f8afe700d5 Merge https://github.com/nigels-com/glew.git into master HEAD at Thu Feb 4 17:55:11 GMT 2016 2016-02-05 02:55:11 +09:00
omniavinco
74c8a959b2 Generate Sources of origin/master updated at Sun Jan 31 17:44:33 GMT 2016 2016-02-01 02:44:33 +09:00
omniavinco
e4ed595e2c Merge https://github.com/nigels-com/glew.git into master HEAD at Sun Jan 31 17:44:14 GMT 2016 2016-02-01 02:44:14 +09:00
omniavinco
b04e9803ef Merge https://github.com/nigels-com/glew.git into master HEAD at Sun Jan 10 17:44:14 GMT 2016 2016-01-11 02:44:14 +09:00
omniavinco
51e6b73dda Generate Sources of origin/master updated at Fri Jan 8 17:44:39 GMT 2016 2016-01-09 02:44:39 +09:00
omniavinco
0af1837330 Merge https://github.com/nigels-com/glew.git into master HEAD at Fri Jan 8 17:44:20 GMT 2016 2016-01-09 02:44:20 +09:00
omniavinco
9b1e3b3dca Generate Sources of origin/master updated at Thu Jan 7 17:44:33 GMT 2016 2016-01-08 02:44:33 +09:00
omniavinco
573806ef49 Merge https://github.com/nigels-com/glew.git into master HEAD at Thu Jan 7 17:44:14 GMT 2016 2016-01-08 02:44:14 +09:00
omniavinco
8732077f11 Generate Sources of origin/master updated at Sun Dec 6 17:44:38 GMT 2015 2015-12-07 02:44:38 +09:00
omniavinco
9ec6e6c1cd Merge https://github.com/nigels-com/glew.git into master HEAD at Sun Dec 6 17:44:18 GMT 2015 2015-12-07 02:44:18 +09:00
omniavinco
80726c2df7 Merge https://github.com/nigels-com/glew.git into master HEAD at Tue Nov 17 17:44:14 GMT 2015 2015-11-18 02:44:14 +09:00
omniavinco
0c3450e8db Generate Sources of origin/master updated at Mon Oct 12 17:44:45 GMT 2015 2015-10-13 02:44:45 +09:00
omniavinco
fc0036b9b7 Merge https://github.com/nigels-com/glew.git into master HEAD at Mon Oct 12 17:44:18 GMT 2015 2015-10-13 02:44:18 +09:00
omniavinco
9d73125320 Generate Sources of origin/master updated at Sat Oct 10 17:44:46 GMT 2015 2015-10-11 02:44:46 +09:00
omniavinco
bd5d498437 Merge https://github.com/nigels-com/glew.git into master HEAD at Sat Oct 10 17:44:18 GMT 2015 2015-10-11 02:44:18 +09:00
Gyusun Yeom
12670f2b4a Add space before close-parenthesis 2015-10-07 14:23:34 +09:00
Gyusun Yeom
19bd2de9e3 Add sigle-context/multi-context version build option 2015-10-07 14:21:05 +09:00
omniavinco
18197fd0ec Merge https://github.com/nigels-com/glew.git into master HEAD at Mon Oct 5 17:44:17 GMT 2015 2015-10-06 02:44:17 +09:00
omniavinco
d8f945586c Generate Sources of origin/master updated at Mon Aug 10 17:44:57 GMT 2015 2015-08-11 02:44:57 +09:00
omniavinco
c7de9d54bf Merge https://github.com/nigels-com/glew.git into master HEAD at Mon Aug 10 17:44:38 GMT 2015 2015-08-11 02:44:38 +09:00
omniavinco
c1e87433e5 Generate Sources of origin/master updated at Fri Aug 7 17:44:38 GMT 2015 2015-08-08 02:44:38 +09:00
omniavinco
902171e1f3 Merge https://github.com/nigels-com/glew.git into master HEAD at Fri Aug 7 17:44:16 GMT 2015 2015-08-08 02:44:16 +09:00
omniavinco
ce75a3eb2d Generate Sources of origin/master updated at Thu Aug 6 17:44:43 GMT 2015 2015-08-07 02:44:43 +09:00
omniavinco
3a53edea04 Merge https://github.com/nigels-com/glew.git into master HEAD at Thu Aug 6 17:44:21 GMT 2015 2015-08-07 02:44:21 +09:00
omniavinco
1a6229a0bb Generate Sources of origin/master updated at Wed Aug 5 17:44:40 GMT 2015 2015-08-06 02:44:40 +09:00
omniavinco
32051fc50c Merge https://github.com/nigels-com/glew.git into master HEAD at Wed Aug 5 17:44:18 GMT 2015 2015-08-06 02:44:18 +09:00
omniavinco
7574ab4d00 Generate Sources of origin/master updated at Fri Jul 24 17:44:40 GMT 2015 2015-07-25 02:44:40 +09:00
omniavinco
bdb7d8bdfc Merge https://github.com/nigels-com/glew.git into master HEAD at Fri Jul 24 17:44:18 GMT 2015 2015-07-25 02:44:18 +09:00
omniavinco
0af757be46 Generate Sources of origin/master updated at Sat Jul 18 03:26:46 GMT 2015 2015-07-18 12:26:46 +09:00
omniavinco
271dbb8687 Merge https://github.com/nigels-com/glew.git into master HEAD at Sat Jul 18 03:26:28 GMT 2015 2015-07-18 12:26:28 +09:00
Gyusun Yeom
0d77a03a16 Add daily maintain script 2015-07-18 12:22:19 +09:00
Gyusun Yeom
5b895ae670 Merge pull request #10 from mchiasson/master
Updated generated source and headers with latest OpenGL registry.
2015-07-18 12:15:35 +09:00
Mathieu-Andre Chiasson
26f3c9889d Updated generated source and headers with latest OpenGL registry. 2015-07-11 17:21:37 -04:00
omniavinco
62f1f24c73 Merge https://github.com/nigels-com/glew.git into master HEAD at Wed Jun 24 17:44:11 GMT 2015 2015-06-25 02:44:11 +09:00
omniavinco
97cb936058 Generate Sources of origin/master updated at Thu Jun 18 17:44:24 GMT 2015 2015-06-19 02:44:24 +09:00
omniavinco
4832dfd170 Merge https://github.com/nigels-com/glew.git into master HEAD at Thu Jun 18 17:44:11 GMT 2015 2015-06-19 02:44:11 +09:00
omniavinco
3a183ac231 Generate Sources of origin/master updated at Sat Jun 13 17:44:26 GMT 2015 2015-06-14 02:44:26 +09:00
omniavinco
f5be4658cb Merge https://github.com/nigels-com/glew.git into master HEAD at Sat Jun 13 17:44:11 GMT 2015 2015-06-14 02:44:12 +09:00
omniavinco
88132fdb08 Merge https://github.com/nigels-com/glew.git into master HEAD at Wed Jun 10 17:44:11 GMT 2015 2015-06-11 02:44:11 +09:00
omniavinco
2afabc5e36 Generate Sources of origin/master updated at Sun May 10 17:44:25 GMT 2015 2015-05-11 02:44:25 +09:00
Gyusun Yeom
cfcfbb5e6b Merge pull request #9 from andystanton/feature/add-travis-ci
Add Travis CI support
2015-04-27 17:00:03 +09:00
Andy Stanton
dc27f8e2fe Add travis.yml.
Add gcc and clang. Override script to prevent "make test" running
2015-04-27 08:33:15 +01:00
omniavinco
8019ddef45 Merge https://github.com/nigels-com/glew.git into master HEAD at Mon Mar 30 17:44:15 GMT 2015 2015-03-31 02:44:16 +09:00
omniavinco
77a8c11b80 Merge https://github.com/nigels-com/glew.git into master HEAD at Thu Mar 26 17:44:12 GMT 2015 2015-03-27 02:44:12 +09:00
omniavinco
69e31e274f Merge https://github.com/nigels-com/glew.git into master HEAD at Fri Mar 20 17:44:12 GMT 2015 2015-03-21 02:44:12 +09:00
omniavinco
1c7e8c529b Generate Sources of origin/master updated at Sat Feb 28 00:32:40 GMT 2015 2015-02-28 09:32:40 +09:00
omniavinco
0beff1381f Merge https://github.com/nigels-com/glew.git into master HEAD at Sat Feb 28 00:32:24 GMT 2015 2015-02-28 09:32:24 +09:00
omniavinco
6ee5896cdc Merge https://github.com/nigels-com/glew.git into master HEAD at Fri Oct 24 17:44:11 GMT 2014 2014-10-25 02:44:11 +09:00
omniavinco
51cb63b12a Sort the enums in a stable manner 2014-10-21 20:42:12 +09:00
omniavinco
45ebeddf0f Generate Sources of origin/master updated at Mon Oct 20 17:44:24 GMT 2014 2014-10-21 02:44:24 +09:00
omniavinco
a3825dcb85 Generate Sources of origin/master updated at Sun Oct 19 17:44:22 GMT 2014 2014-10-20 02:44:22 +09:00
omniavinco
2c6f79c148 Generate Sources of origin/master updated at Wed Oct 15 17:44:24 GMT 2014 2014-10-16 02:44:24 +09:00
omniavinco
6ca897879f Generate Sources of origin/master updated at Tue Oct 14 17:44:24 GMT 2014 2014-10-15 02:44:24 +09:00
omniavinco
819f806107 Merge https://github.com/nigels-com/glew.git into master HEAD at Tue Oct 14 17:44:11 GMT 2014 2014-10-15 02:44:11 +09:00
omniavinco
15ad18bc1a Generate Sources of origin/master updated at Mon Oct 13 17:44:19 GMT 2014 2014-10-14 02:44:19 +09:00
omniavinco
7cea676806 Generate Sources of origin/master updated at Sun Oct 12 17:44:23 GMT 2014 2014-10-13 02:44:23 +09:00
omniavinco
2227a08d22 Generate Sources of origin/master updated at Fri Oct 10 17:44:19 GMT 2014 2014-10-11 02:44:19 +09:00
omniavinco
8fe0cc10db Generate Sources of origin/master updated at Mon Oct 6 17:44:28 GMT 2014 2014-10-07 02:44:28 +09:00
omniavinco
657889e2a0 Merge https://github.com/nigels-com/glew.git into master HEAD at Mon Oct 6 17:44:14 GMT 2014 2014-10-07 02:44:14 +09:00
omniavinco
e7010eea07 Generate Sources of origin/master updated at Sun Oct 5 17:44:21 GMT 2014 2014-10-06 02:44:21 +09:00
omniavinco
ffcdf98d6c Generate Sources of origin/master updated at Sat Oct 4 17:44:22 GMT 2014 2014-10-05 02:44:22 +09:00
omniavinco
7d4191c138 Generate Sources of origin/master updated at Fri Oct 3 17:44:19 GMT 2014 2014-10-04 02:44:19 +09:00
omniavinco
c50a0582bd Generate Sources of origin/master updated at Thu Oct 2 17:44:19 GMT 2014 2014-10-03 02:44:19 +09:00
omniavinco
8bd32fb681 Generate Sources of origin/master updated at Tue Sep 30 17:44:19 GMT 2014 2014-10-01 02:44:19 +09:00
omniavinco
6db724a060 Generate Sources of origin/master updated at Sun Sep 28 17:44:19 GMT 2014 2014-09-29 02:44:19 +09:00
omniavinco
4b50556664 Merge https://github.com/nigels-com/glew.git into master HEAD at Sat Sep 27 17:52:51 GMT 2014 2014-09-28 02:52:51 +09:00
omniavinco
90277d022a Generate Sources of origin/master updated at Wed Sep 24 17:44:19 GMT 2014 2014-09-25 02:44:19 +09:00
omniavinco
b23fc454db Generate Sources of origin/master updated at Tue Sep 23 17:44:19 GMT 2014 2014-09-24 02:44:19 +09:00
omniavinco
61e43be6fb Generate Sources of origin/master updated at Mon Sep 22 17:44:19 GMT 2014 2014-09-23 02:44:19 +09:00
omniavinco
c1c69104dd Generate Sources of origin/master updated at Sun Sep 21 17:44:19 GMT 2014 2014-09-22 02:44:19 +09:00
omniavinco
117a22ea96 Generate Sources of origin/master updated at Fri Sep 19 17:44:19 GMT 2014 2014-09-20 02:44:19 +09:00
omniavinco
c26257cdff Generate Sources of origin/master updated at Thu Sep 18 17:44:25 GMT 2014 2014-09-19 02:44:25 +09:00
omniavinco
fc9d19ab37 Merge https://github.com/nigels-com/glew.git into master HEAD at Thu Sep 18 17:44:12 GMT 2014 2014-09-19 02:44:12 +09:00
omniavinco
2a34faa730 Generate Sources of origin/master updated at Wed Sep 17 17:44:19 GMT 2014 2014-09-18 02:44:19 +09:00
omniavinco
998722981f Generate Sources of origin/master updated at Mon Sep 15 17:44:25 GMT 2014 2014-09-16 02:44:25 +09:00
omniavinco
57e1b1d0e9 Generate Sources of origin/master updated at Sun Sep 14 17:44:19 GMT 2014 2014-09-15 02:44:19 +09:00
omniavinco
d80b4f1a88 Generate Sources of origin/master updated at Sat Sep 13 17:44:19 GMT 2014 2014-09-14 02:44:19 +09:00
omniavinco
5b0b52c70d Generate Sources of origin/master updated at Sat Sep 13 02:33:23 GMT 2014 2014-09-13 11:33:23 +09:00
omniavinco
f22182f664 Generate Sources of origin/master updated at Fri Sep 12 17:44:19 GMT 2014 2014-09-13 02:44:19 +09:00
omniavinco
5f3a0e31dd Generate Sources of origin/master updated at Tue Sep 9 17:44:21 GMT 2014 2014-09-10 02:44:21 +09:00
omniavinco
d45e5d3b34 Generate Sources of origin/master updated at Mon Sep 8 17:44:18 GMT 2014 2014-09-09 02:44:18 +09:00
omniavinco
574f6f0407 Generate Sources of origin/master updated at Sun Sep 7 17:44:21 GMT 2014 2014-09-08 02:44:21 +09:00
omniavinco
66e8e09e20 Generate Sources of origin/master updated at Fri Sep 5 17:44:18 GMT 2014 2014-09-06 02:44:18 +09:00
omniavinco
ceb841390b Generate Sources of origin/master updated at Thu Sep 4 17:44:18 GMT 2014 2014-09-05 02:44:18 +09:00
omniavinco
43312b09e8 Generate Sources of origin/master updated at Wed Sep 3 17:44:19 GMT 2014 2014-09-04 02:44:19 +09:00
omniavinco
e5f61ba213 Generate Sources of origin/master updated at Tue Sep 2 17:44:18 GMT 2014 2014-09-03 02:44:18 +09:00
omniavinco
dfe114f0ba Generate Sources of origin/master updated at Fri Aug 29 17:44:18 GMT 2014 2014-08-30 02:44:18 +09:00
omniavinco
963b49b005 Generate Sources of origin/master updated at Fri Aug 29 15:28:30 GMT 2014 2014-08-30 00:28:30 +09:00
omniavinco
9d11302877 Merge https://github.com/nigels-com/glew.git into master HEAD at Fri Aug 29 15:27:55 GMT 2014 2014-08-30 00:27:55 +09:00
omniavinco
ab43be0f06 Tidy CMakeLists.txt
merge duplicated condition check
2014-08-29 22:52:36 +09:00
omniavinco
3a73d80be4 Add PLATFORM_SPECIFIC_LIBRARIES to link platform specific libraries 2014-08-29 22:45:52 +09:00
omniavinco
1672429f22 Use Cmake dependency chain 2014-08-29 22:43:24 +09:00
Gyu-sun Youm
c23a995349 Merge pull request #6 from fungos/master
Add missing libraries on linux
2014-08-29 22:37:30 +09:00
Danny Angelo Carminati Grein
62c39ba638 Add missing libraries on linux 2014-08-25 22:49:21 -04:00
Gyusun
b4f7c06310 Add rc files for any msvc(remove msvc version check) 2014-08-17 02:05:12 +09:00
Gyusun
1dbf20b5b4 Add Generated .rc files 2014-08-17 01:47:15 +09:00
omniavinco
81d119c7fc Generate Sources of origin/master updated at Fri Aug 15 22:55:55 GMT 2014 2014-08-16 07:55:55 +09:00
omniavinco
b2d8206b36 Merge https://github.com/nigels-com/glew into origin/master HEAD at Fri Aug 15 22:55:42 GMT 2014 2014-08-16 07:55:42 +09:00
Gyu-sun Youm
ede8f3b946 Merge pull request #4 from karlssonper/master
Added install target
2014-08-16 06:59:37 +09:00
per
a9ceeeedeb style mismatch 2014-08-13 09:50:43 +02:00
per
9ac6bc4ebb style mismatch 2014-08-13 09:49:51 +02:00
Gyu-sun Youm
64d0afa487 Merge pull request #3 from ebraminio/binary
Use CMAKE_BINARY_DIR instead CMAKE_SOURCE_DIR for setting build output directory
2014-08-12 22:33:08 +09:00
per
17fa396828 Added install target 2014-08-11 23:56:04 +02:00
Ebrahim Byagowi
5dcb9332da Use CMAKE_BINARY_DIR instead CMAKE_SOURCE_DIR 2014-08-09 22:33:09 +04:30
Gyu-sun Youm
721efda22d Merge pull request #2 from andystanton/master
Make shared and static libraries optional
2014-04-25 07:52:07 +09:00
omniavinco
61c642b71b Generate Sources updated at Thu Apr 24 17:44:39 GMT 2014 2014-04-25 02:44:39 +09:00
omniavinco
864a7ea189 Generate Sources updated at Wed Apr 23 17:44:42 GMT 2014 2014-04-24 02:44:42 +09:00
Andy Stanton
0e35fbec4e add options 2014-04-22 20:55:22 +01:00
omniavinco
322624ffdd Generate Sources updated at Sat Apr 19 17:45:44 GMT 2014 2014-04-20 02:45:44 +09:00
omniavinco
0680e345f4 Generate Sources updated at Thu Feb 27 13:19:58 GMT 2014 2014-02-27 22:19:59 +09:00
omniavinco
c94b3de7d7 Merge https://github.com/nigels-com/glew into HEAD at Thu Feb 27 13:14:09 GMT 2014 2014-02-27 22:14:09 +09:00
Gyu-sun Youm
d629461fb0 Merge pull request #1 from McDamon/master
Support for VC 12 (VS2013) and GLEW 1.10.0
2014-02-27 22:12:04 +09:00
Andrew McMahon
f96a4f3ddf Upgraded to support VC 12 2014-02-26 23:05:11 +00:00
Andrew McMahon
e224767d3c Added to gitignore 2014-02-26 22:59:32 +00:00
Andrew McMahon
b23ed9846f Merge branch 'master' of https://github.com/McDamon/glew-cmake
Conflicts:
	doc/glew.html
	doc/index.html
	doc/wglew.html
2014-02-26 22:56:05 +00:00
Gyu-sun Youm
6b12687640 travis-ci 2013-08-31 23:58:49 +09:00
Gyu-sun Youm
49cae90154 update ignore 2013-08-31 23:42:33 +09:00
Gyu-sun Youm
f4f7759f3a link OpenGL to libglew_shared 2013-08-31 23:42:27 +09:00
Gyu-sun Youm
dcd588d402 Change library output name 2013-05-26 00:31:05 +09:00
Gyu-sun Youm
e080154dc4 Windows support
* some definitions
* rc file (except VS11)
2013-05-25 22:26:51 +09:00
omniavinco
0c0532c7c6 Latest docs 2013-05-25 14:34:47 +09:00
omniavinco
dac0614780 Add Cmake option - ONLY_LIBS 2013-05-25 14:34:35 +09:00
omniavinco
5408d71c61 CMakeLists.txt & glew source(2013.5.24) 2013-05-24 23:58:38 +09:00
24 changed files with 87914 additions and 253 deletions

227
.github/workflows/cmake.yml vendored Normal file
View File

@ -0,0 +1,227 @@
name: CMake
on:
pull_request:
branches:
- master
types:
- opened
- synchronize
- reopened
push:
branches:
- master
env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
BUILD_TYPE: Release
jobs:
build:
runs-on: ubuntu-latest
container: ubuntu:latest
steps:
- uses: actions/checkout@v2
- name: Install dependencies
run: apt update && DEBIAN_FRONTEND=noninteractive apt install -y cmake gcc g++ libglu1-mesa-dev pkg-config libx11-dev libxext-dev
- name: Create Build Environment
# Some projects don't allow in-source building, so create a separate build directory
# We'll use this as our working directory for all subsequent commands
run: |
mkdir build_test
mkdir from_installed
mkdir pkg-config
mkdir as_subdirectory
- name: Configure CMake
# Use a bash shell so we can use the same syntax for environment variable
# access regardless of the host operating system
shell: bash
working-directory: build_test
# Note the current convention is to use the -S and -B options here to specify source
# and build directories, but this is only available with CMake 3.13 and higher.
# The CMake binaries on the Github Actions machines are (as of this writing) 3.12
run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE
- name: Build test
working-directory: build_test
shell: bash
# Execute the build. You can specify a specific target with "--target <NAME>"
run: cmake --build . --config $BUILD_TYPE
- name: Install test
shell: bash
working-directory: from_installed
run: |
mkdir -p ext_project/build
cp $GITHUB_WORKSPACE/src/glewinfo.c ext_project/
cmake $GITHUB_WORKSPACE -DCMAKE_INSTALL_PREFIX=$GITHUB_WORKSPACE/glew-root-cmake
cmake --build . --target install
cd ext_project
cp $GITHUB_WORKSPACE/glew-cmake/cmake-install-test.cmake CMakeLists.txt
cmake -DCMAKE_PREFIX_PATH=$GITHUB_WORKSPACE/glew-root-cmake/ .
cmake --build .
- name: Package config test
shell: bash
working-directory: pkg-config
run: |
mkdir -p ext_project
cp $GITHUB_WORKSPACE/src/glewinfo.c ext_project/
cmake $GITHUB_WORKSPACE -DPKG_CONFIG_REPRESENTATIVE_TARGET=libglew_static -DCMAKE_INSTALL_PREFIX=$GITHUB_WORKSPACE/glew-root-pkg-config
cmake --build . --target install
cd ext_project
gcc $GITHUB_WORKSPACE/src/glewinfo.c $(PKG_CONFIG_PATH=$GITHUB_WORKSPACE/glew-root-pkg-config/lib/pkgconfig pkg-config --libs --cflags glew) -o glewinfo
- name: Subdirectory test
shell: bash
working-directory: as_subdirectory
run: |
cp $GITHUB_WORKSPACE/src/glewinfo.c ./
cp $GITHUB_WORKSPACE/glew-cmake/sub-directory-test.cmake CMakeLists.txt
cmake .
cmake --build .
build_linux:
strategy:
fail-fast: false
matrix:
cmake:
- 2.8.12.2
- 3.10.3
- latest
runs-on: ubuntu-latest
container: ubuntu:latest
steps:
- uses: actions/checkout@v2
- name: Restore cached cmake
uses: actions/cache/restore@v4
with:
path: /opt/cmake
key: cmake-${{ matrix.cmake }}
- name: Install dependencies
shell: bash
run: |
cmake=${{ matrix.cmake }}
apt update
apt install -y gcc make libgl1-mesa-dev libx11-dev libxext-dev
if [ "${cmake}" == "latest" ]; then
apt install -y git
cmake=$(git ls-remote --tags https://gitlab.kitware.com/cmake/cmake | cut -f 2 | sed -E "s/^refs\/tags\/v//" | tr -d "^{}" | sort -t '.' -k 1,1n -k 2,2n -k 3,3n | tail -n 1 | tr -d "\n")
echo "Latest version: ${cmake}"
fi
if [ -x /opt/cmake/bin/cmake ]; then
echo "Found cached cmake"
if [ -n "$(/opt/cmake/bin/cmake --version | grep ${cmake})" ]; then
exit 0
fi
/opt/cmake/bin/cmake --version
echo "CMake version is mismatched"
rm -rf /opt/cmake
fi
apt install -y g++ wget
short_version=$(echo "${cmake}" | sed -E "s/^([0-9]+\\.[0-9]+)\\..+$/\\1/" | tr -d "\n")
wget https://cmake.org/files/v${short_version}/cmake-${cmake}.tar.gz
tar -xf cmake-${cmake}.tar.gz
cd cmake-${cmake}
if [ "${cmake}" == "2.8.12.2" ]; then
apt -y install patch
patch -p1 << 'EOF'
--- cmake-2.8.12.2-org/CMakeLists.txt 2014-01-16 17:15:07.000000000 +0000
+++ cmake-2.8.12.2-patch/CMakeLists.txt 2025-04-13 10:37:28.359021847 +0000
@@ -616 +616 @@
-add_subdirectory(Tests)
+# add_subdirectory(Tests)
--- cmake-2.8.12.2-org/Source/CMakeLists.txt 2014-01-16 17:15:08.000000000 +0000
+++ cmake-2.8.12.2-patch/Source/CMakeLists.txt 2025-04-13 10:37:13.584956375 +0000
@@ -481,2 +481,2 @@
-add_library(CTestLib ${CTEST_SRCS})
-target_link_libraries(CTestLib CMakeLib ${CMAKE_CURL_LIBRARIES} ${CMAKE_XMLRPC_LIBRARIES})
+# add_library(CTestLib ${CTEST_SRCS})
+# target_link_libraries(CTestLib CMakeLib ${CMAKE_CURL_LIBRARIES} ${CMAKE_XMLRPC_LIBRARIES})
@@ -562,2 +562,2 @@
-add_executable(ctest ctest.cxx)
-target_link_libraries(ctest CTestLib)
+# add_executable(ctest ctest.cxx)
+# target_link_libraries(ctest CTestLib)
@@ -583 +583 @@
-install(TARGETS cmake ctest cpack DESTINATION bin)
+install(TARGETS cmake cpack DESTINATION bin)
EOF
fi
./configure --prefix=/opt/cmake -- -DCMAKE_USE_OPENSSL=OFF
make -j $(nproc) install
- name: Save cmake
uses: actions/cache/save@v4
with:
path: /opt/cmake
key: cmake-${{ matrix.cmake }}
- name: Configure CMake
shell: bash
run: /opt/cmake/bin/cmake . -DCMAKE_BUILD_TYPE=$BUILD_TYPE
- name: Build test
shell: bash
run: /opt/cmake/bin/cmake --build .
- name: Check alias
shell: bash
run: test -e lib/libGLEW.a
build_mingw:
runs-on: ubuntu-latest
container: ubuntu:latest
steps:
- uses: actions/checkout@v2
- name: Install dependencies
run: apt update && apt install -y cmake g++-mingw-w64-x86-64 make libgl1-mesa-dev libx11-dev libxext-dev
- name: Configure CMake
shell: bash
run: cmake . -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DCMAKE_TOOLCHAIN_FILE="$GITHUB_WORKSPACE/glew-cmake/mingw.cmake"
- name: Build test
shell: bash
run: cmake --build .
build_mac:
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
- name: Configure CMake
shell: bash
run: cmake . -DCMAKE_BUILD_TYPE=$BUILD_TYPE
- name: Build test
shell: bash
run: cmake --build .
build_windows:
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- name: Configure CMake
shell: bash
run: cmake . -DCMAKE_BUILD_TYPE=$BUILD_TYPE
- name: Build test
shell: bash
run: cmake --build .

287
CMakeLists.txt Normal file
View File

@ -0,0 +1,287 @@
cmake_minimum_required(VERSION 2.8.12...4.0)
file(STRINGS ${CMAKE_CURRENT_SOURCE_DIR}/config/version _VERSION_MAJOR_STRING REGEX "GLEW_MAJOR[ ]*=[ ]*[0-9]+.*")
string(REGEX REPLACE "GLEW_MAJOR[ ]*=[ ]*([0-9]+)" "\\1" MAJOR_VERSION ${_VERSION_MAJOR_STRING})
file(STRINGS ${CMAKE_CURRENT_SOURCE_DIR}/config/version _VERSION_MINOR_STRING REGEX "GLEW_MINOR[ ]*=[ ]*[0-9]+.*")
string(REGEX REPLACE "GLEW_MINOR[ ]*=[ ]*([0-9]+)" "\\1" MINOR_VERSION ${_VERSION_MINOR_STRING})
file(STRINGS ${CMAKE_CURRENT_SOURCE_DIR}/config/version _VERSION_PATCH_STRING REGEX "GLEW_MICRO[ ]*=[ ]*[0-9]+.*")
string(REGEX REPLACE "GLEW_MICRO[ ]*=[ ]*([0-9]+)" "\\1" PATCH_VERSION ${_VERSION_PATCH_STRING})
set(GLEW_VERSION ${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION})
if(NOT CMAKE_VERSION VERSION_LESS 3.0)
cmake_policy(SET CMP0048 NEW)
project("glew" VERSION ${GLEW_VERSION} LANGUAGES C)
else()
project("glew" C)
set(CPACK_PACKAGE_VERSION_MAJOR ${MAJOR_VERSION})
set(CPACK_PACKAGE_VERSION_MINOR ${MAJOR_VERSION})
set(CPACK_PACKAGE_VERSION_PATCH ${MAJOR_VERSION})
endif()
set(SRC_DIR ${CMAKE_CURRENT_SOURCE_DIR}/src)
set(INCLUDE_DIR "$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>$<INSTALL_INTERFACE:include>")
set(RC_DIR ${CMAKE_CURRENT_SOURCE_DIR}/build)
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/lib)
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/lib)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/bin)
include("GeneratePkgConfig.cmake")
if (POLICY CMP0077)
cmake_policy(SET CMP0077 NEW)
endif()
option(glew-cmake_BUILD_SHARED "Build the shared glew library" ON)
option(glew-cmake_BUILD_STATIC "Build the static glew library" ON)
option(USE_GLU "Use GLU" OFF)
option(GLEW_OSMESA "Off-screen Mesa mode" OFF)
option(PKG_CONFIG_REPRESENTATIVE_TARGET "Generate pc file for specified target as glew. libglew_static|libglew_shared" OFF)
option(ONLY_LIBS "Do not build executables" OFF)
set(LIBGLEW_SRCS ${SRC_DIR}/glew.c)
set(DEFINITIONS)
if(WIN32)
list(APPEND DEFINITIONS -DWIN32_MEAN_AND_LEAN -DVC_EXTRALEAN -D_CRT_SECURE_NO_WARNINGS)
endif()
if(MSVC)
list(APPEND LIBGLEW_SRCS ${RC_DIR}/glew.rc)
endif()
# Use namespaced libraries when supported
if(NOT CMAKE_VERSION VERSION_LESS 3.14)
set(USE_NAMESPACED_LIB YES)
else()
set(USE_NAMESPACED_LIB NO)
endif()
if(POLICY CMP0028)
cmake_policy(SET CMP0028 NEW)
endif()
if(POLICY CMP0042)
cmake_policy(SET CMP0042 NEW)
endif()
if(POLICY CMP0072)
set(OpenGL_GL_PREFERENCE GLVND)
endif()
if(NOT (WIN32 OR APPLE))
message("Try to find OpenGL with GLVND")
find_package(OpenGL REQUIRED
COMPONENTS OpenGL GLX)
endif()
if(OPENGL_FOUND AND OpenGL_GLX_FOUND AND TARGET OpenGL::OpenGL)
set(USE_GLVND YES)
else()
message("GLVND not supported. Try find OpenGL legacy")
find_package(OpenGL REQUIRED)
set(USE_GLVND NO)
endif()
set(pc_requires)
if(NOT USE_GLU)
list(APPEND DEFINITIONS -DGLEW_NO_GLU)
else()
if(NOT OPENGL_GLU_FOUND)
message(FATAL_ERROR "GLU is not found. but GLU option is enabled")
endif()
list(APPEND pc_requires glu)
if(USE_NAMESPACED_LIB)
list(APPEND LIBRARIES OpenGL::GLU)
else()
list(APPEND LIBRARIES ${OPENGL_glu_LIBRARY})
endif()
endif()
list(APPEND pc_requires gl)
if(USE_NAMESPACED_LIB)
if(USE_GLVND)
list(APPEND LIBRARIES OpenGL::OpenGL)
else()
list(APPEND LIBRARIES OpenGL::GL)
endif()
else()
if(USE_GLVND)
list(APPEND LIBRARIES ${OPENGL_opengl_LIBRARY})
else()
list(APPEND LIBRARIES ${OPENGL_gl_LIBRARY})
endif()
endif()
# OS Specific dependencies
if(APPLE)
find_library(AGL_LIBRARY AGL REQUIRED)
list(APPEND LIBRARIES ${AGL_LIBRARY})
elseif(NOT WIN32)
if(GLEW_OSMESA)
find_library(OSMESA_LIBRARY OSMesa REQUIRED)
list(APPEND LIBRARIES ${OSMESA_LIBRARY})
list(APPEND DEFINITIONS -DGLEW_OSMESA)
list(APPEND pc_requires osmesa)
else()
if(USE_GLVND)
if(NOT OpenGL_GLX_FOUND)
message(FATAL_ERROR "GLX is not found. Try with PREFER_GLVND=NO")
endif()
if(USE_NAMESPACED_LIB)
list(APPEND LIBRARIES OpenGL::GLX)
else()
list(APPEND LIBRARIES ${OPENGL_glx_LIBRARY})
endif()
endif()
find_package(X11 REQUIRED)
list(APPEND pc_requires x11 xext)
if(USE_NAMESPACED_LIB)
list(APPEND LIBRARIES X11::X11 X11::Xext)
else()
list(APPEND LIBRARIES ${X11_X11_LIB} ${X11_Xext_LIB})
endif()
endif()
endif()
set(GLEW_TARGETS)
if(NOT CMAKE_INSTALL_LIBDIR)
set(INSTALL_LIBDIR lib)
else()
set(INSTALL_LIBDIR ${CMAKE_INSTALL_LIBDIR})
endif()
execute_process(
COMMAND ${CMAKE_COMMAND} -E touch ${CMAKE_BINARY_DIR}/test_fs_support_case_sensitivity
COMMAND ${CMAKE_COMMAND} -E touch ${CMAKE_BINARY_DIR}/test_fs_support_CASE_sensitivity)
file(GLOB TEST_FILE_LIST ${CMAKE_BINARY_DIR}/test_fs_support_*_sensitivity)
list(LENGTH TEST_FILE_LIST TEST_FILE_COUNT)
if(TEST_FILE_COUNT EQUAL 2)
set(SUPPORT_CASE_SENSITIVE_FS YES)
else()
set(SUPPORT_CASE_SENSITIVE_FS NO)
endif()
function(set_representative_target TARGET)
set_target_properties(${TARGET} PROPERTIES
OUTPUT_NAME "glew"
DEBUG_POSTFIX d)
# Windows & macOS use case-insensetive FS. do not create symbolic link
if(SUPPORT_CASE_SENSITIVE_FS)
get_target_property(TARGET_TYPE ${TARGET} TYPE)
string(TOLOWER "${CMAKE_BUILD_TYPE}" CMAKE_BUILD_TYPE_LOWER)
if(CMAKE_BUILD_TYPE_LOWER STREQUAL "debug" AND NOT ANDROID)
set(GLEW_DEBUG_SUFFIX "d")
else()
set(GLEW_DEBUG_SUFFIX "")
endif()
if(TARGET_TYPE STREQUAL STATIC_LIBRARY)
set(EXT ".a")
get_target_property(OUT_DIR ${TARGET} ARCHIVE_OUTPUT_DIRECTORY)
else()
set(EXT ".so")
get_target_property(OUT_DIR ${TARGET} LIBRARY_OUTPUT_DIRECTORY)
endif()
if(NOT ${CMAKE_VERSION} VERSION_LESS 3.0)
add_custom_command(TARGET ${TARGET} POST_BUILD
COMMAND ${CMAKE_COMMAND} ARGS -E create_symlink libglew${GLEW_DEBUG_SUFFIX}${EXT} libGLEW${GLEW_DEBUG_SUFFIX}${EXT}
WORKING_DIRECTORY ${OUT_DIR}
BYPRODUCTS ${OUT_DIR}/libGLEW${GLEW_DEBUG_SUFFIX}${EXT}
COMMENT "create libGLEW${GLEW_DEBUG_SUFFIX} symbolic link")
else()
add_custom_command(TARGET ${TARGET} POST_BUILD
COMMAND bash ARGS -c "( test ! -e ${OUT_DIR}/libGLEW${GLEW_DEBUG_SUFFIX}${EXT} && cd ${OUT_DIR} && ${CMAKE_COMMAND} -E create_symlink libglew${GLEW_DEBUG_SUFFIX}${EXT} libGLEW${GLEW_DEBUG_SUFFIX}${EXT} ) || true"
COMMENT "create libGLEW${GLEW_DEBUG_SUFFIX} symbolic link"
VERBATIM)
endif()
if(NOT ${CMAKE_VERSION} VERSION_LESS 3.14)
install(FILES ${OUT_DIR}/libGLEW${GLEW_DEBUG_SUFFIX}${EXT} TYPE LIB)
else()
install(FILES ${OUT_DIR}/libGLEW${GLEW_DEBUG_SUFFIX}${EXT} DESTINATION ${INSTALL_LIBDIR})
endif()
endif()
endfunction()
if(glew-cmake_BUILD_STATIC)
add_library(libglew_static STATIC ${LIBGLEW_SRCS})
set_representative_target(libglew_static)
target_compile_definitions(libglew_static PUBLIC GLEW_STATIC)
list(APPEND GLEW_TARGETS libglew_static)
endif()
if(glew-cmake_BUILD_SHARED)
add_library(libglew_shared SHARED ${LIBGLEW_SRCS})
if(glew-cmake_BUILD_STATIC)
set_target_properties(libglew_shared PROPERTIES
OUTPUT_NAME "glew-shared"
DEBUG_POSTFIX d)
else()
set_representative_target(libglew_shared)
endif()
target_compile_definitions(libglew_shared PRIVATE GLEW_BUILD)
if(MINGW)
if(CMAKE_VERSION VERSION_GREATER_EQUAL 3.13)
target_link_options(libglew_shared PRIVATE -nostdlib)
else()
target_link_libraries(libglew_shared PRIVATE -nostdlib)
endif()
endif()
list(APPEND GLEW_TARGETS libglew_shared)
endif()
foreach(GLEW_TARGET ${GLEW_TARGETS})
target_compile_definitions(${GLEW_TARGET} PUBLIC ${DEFINITIONS})
target_include_directories(${GLEW_TARGET} PUBLIC ${INCLUDE_DIR})
target_link_libraries(${GLEW_TARGET} PUBLIC ${LIBRARIES})
set_target_properties(${GLEW_TARGET} PROPERTIES VERSION ${GLEW_VERSION})
endforeach()
if(PKG_CONFIG_REPRESENTATIVE_TARGET)
GeneratePkgConfigFile(${PKG_CONFIG_REPRESENTATIVE_TARGET} "The OpenGL Extension Wrangler library"
NAME "glew"
LIBRARY_DIR ${INSTALL_LIBDIR}
REQUIRES ${pc_requires})
endif()
install(TARGETS ${GLEW_TARGETS} EXPORT glew-cmake
ARCHIVE DESTINATION ${INSTALL_LIBDIR}
LIBRARY DESTINATION ${INSTALL_LIBDIR})
install(EXPORT glew-cmake DESTINATION ${INSTALL_LIBDIR}/cmake/glew FILE glewConfig.cmake)
file(GLOB PUBLIC_HEADERS "include/GL/*.h")
install(FILES ${PUBLIC_HEADERS} DESTINATION include/GL/)
if(${CMAKE_CURRENT_SOURCE_DIR} STREQUAL ${CMAKE_SOURCE_DIR} AND NOT ONLY_LIBS)
set(GLEWINFO_SRCS ${SRC_DIR}/glewinfo.c)
set(VISUALINFO_SRCS ${SRC_DIR}/visualinfo.c)
if(MSVS)
list(APPEND GLEWINFO_SRCS ${RC_DIR}/glewinfo.rc)
list(APPEND VISUALINFO_SRCS ${RC_DIR}/visualinfo.rc)
endif()
add_executable(glewinfo ${GLEWINFO_SRCS})
add_executable(visualinfo ${VISUALINFO_SRCS})
if(glew-cmake_BUILD_STATIC)
target_link_libraries(glewinfo libglew_static)
target_link_libraries(visualinfo libglew_static)
else()
target_link_libraries(glewinfo libglew_shared)
target_link_libraries(visualinfo libglew_shared)
endif()
install(TARGETS glewinfo visualinfo DESTINATION bin)
endif()

62
GeneratePkgConfig.cmake Normal file
View File

@ -0,0 +1,62 @@
function(GeneratePkgConfigFile target description)
cmake_parse_arguments(pc "" "NAME;LIBRARY_DIR" "REQUIRES" ${ARGV})
if(NOT pc_LIBRARY_DIR)
set(pc_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR})
endif()
if(WIN32)
set(PKGCONFIG_INSTALL_DIR)
else()
set(PKGCONFIG_INSTALL_DIR ${pc_LIBRARY_DIR}/pkgconfig)
endif()
if(NOT pc_NAME)
set(pc_NAME ${target})
endif()
get_property(raw_definitions TARGET ${target} PROPERTY INTERFACE_COMPILE_DEFINITIONS)
set(definitions "")
foreach(def IN LISTS raw_definitions)
if(def MATCHES "-D")
list(APPEND definitions ${def})
else()
list(APPEND definitions "-D${def}")
endif()
endforeach()
list(JOIN definitions " " definitions)
get_property(target_output TARGET ${target} PROPERTY OUTPUT_NAME)
get_filename_component(target_output ${target_output} NAME)
set(links "-l${target_output}")
get_property(raw_links TARGET ${target} PROPERTY INTERFACE_LINK_LIBRARIES)
foreach(link IN LISTS raw_links)
if(link MATCHES "-l")
list(APPEND links ${link})
elseif(TARGET ${link})
get_property(is_imported TARGET ${link} PROPERTY IMPORTED)
if(NOT is_imported)
get_property(link_target TARGET ${link} PROPERTY OUTPUT_NAME)
list(APPEND links ${link_target})
endif()
else()
list(APPEND links "-l${link}")
endif()
endforeach()
list(JOIN links " " links)
get_property(version TARGET ${target} PROPERTY VERSION)
set(out_file "${CMAKE_CURRENT_BINARY_DIR}/${pc_NAME}.pc")
file(WRITE ${out_file} "prefix=${CMAKE_INSTALL_PREFIX}\n")
file(APPEND ${out_file} "exec_prefix=\${prefix}\n")
file(APPEND ${out_file} "libdir=\${prefix}/${pc_LIBRARY_DIR}\n")
file(APPEND ${out_file} "includedir=\${prefix}/include\n")
file(APPEND ${out_file} "\n")
file(APPEND ${out_file} "Name: ${pc_NAME}\n")
file(APPEND ${out_file} "Description: ${description}\n")
file(APPEND ${out_file} "Version: ${version}\n")
file(APPEND ${out_file} "Cflags: -I\${includedir} ${definitions}\n")
file(APPEND ${out_file} "Libs: -L\${libdir} ${links}\n")
if(pc_REQUIRES)
string(REPLACE ";" " " REQUIRES "${pc_REQUIRES}")
file(APPEND ${out_file} "Requires: ${REQUIRES}")
endif()
install(FILES ${out_file} DESTINATION "${PKGCONFIG_INSTALL_DIR}")
endfunction()

262
README.md
View File

@ -1,255 +1,29 @@
# GLEW - The OpenGL Extension Wrangler Library
# GLEW-cmake - nightly pre-generated snapshot with old unofficial cmake support
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.
[GLEW](https://github.com/nigels-com/glew) is upstream of this project.
But *GLEW* repository does not contain generated sources. Only releases include generated sources.
![](http://glew.sourceforge.net/glew.png)
*GLEW-cmake* has generated sources based on the latest *GLEW*. Sources are generated nightly.
If you need only the latest snapshot of *GLEW*, try the build system of *GLEW*. It is placed under the `build` directory. Official `CMakeLists.txt` is placed in `build/cmake`.
Please check [README_glew.md](./README_glew.md) for using build system of *GLEW*.
http://glew.sourceforge.net/
Also, *GLEW-cmake* has unofficial cmake support - It is created when the official CMake support of *GLEW* does not exist.
You can see some CMake script examples in [`glew-cmake`](./glew-cmake/) directory. But, I **strongly** recommend using official CMakeLists of *GLEW*.
https://github.com/nigels-com/glew
## Usage
[![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)
This project provide `libglew_static` and `libglew_shared` library targets and `glewinfo` and `visualinfo` executable targets.
## Table of Contents
`libglew_static` provides a static library, and `libglew_shared` provides a shared library.
*glew-cmake* does not affected by [BUILD_SHARED_LIBS](https://cmake.org/cmake/help/latest/variable/BUILD_SHARED_LIBS.html).
* [Downloads](#downloads)
* [Recent snapshots](#recent-snapshots)
* [Build](#build)
* [Linux and Mac](#linux-and-mac)
* [Using GNU Make](#using-gnu-make)
* [Install build tools](#install-build-tools)
* [Build](#build-1)
* [Linux EGL](#linux-egl)
* [Linux OSMesa](#linux-osmesa)
* [Linux mingw-w64](#linux-mingw-w64)
* [Using cmake](#using-cmake)
* [Install build tools](#install-build-tools-1)
* [Build](#build-2)
* [Windows](#windows)
* [Visual Studio](#visual-studio)
* [MSYS/Mingw](#msysmingw)
* [MSYS2/Mingw-w64](#msys2mingw-w64)
* [glewinfo](#glewinfo)
* [Code Generation](#code-generation)
* [Authors](#authors)
* [Contributions](#contributions)
* [Copyright and Licensing](#copyright-and-licensing)
You can disable each library target by setting `glew-cmake_BUILD_SHARED` or `glew-cmake_BUILD_STATIC` falsy value (ex. `NO`, `FALSE`).
## Downloads
If you need only libraries, Please set `ONLY_LIBS` to `ON`. Otherwise, cmake generates executable targets also.
Current release is [2.3.0](https://github.com/nigels-com/glew/releases/tag/glew-2.3.0).
[(Change Log)](http://glew.sourceforge.net/log.html)
You can get pkg-config fils by setting `PKG_CONFIG_REPRESENTATIVE_TARGET` to `libglew_static` or `libglew_shared`.
Sources available as
[ZIP](https://github.com/nigels-com/glew/releases/download/glew-2.3.0/glew-2.3.0.zip) or
[TGZ](https://github.com/nigels-com/glew/releases/download/glew-2.3.0/glew-2.3.0.tgz).
Simply specify dependency of your target with `libglew_static` or `libglew_shared` by `target_link_libraries`.
It will set the additional include directory & the libraries to link to your target.
Windows binaries for [32-bit and 64-bit](https://github.com/nigels-com/glew/releases/download/glew-2.3.0/glew-2.3.0-win32.zip).
### Recent snapshots
Snapshots may contain new features, bug-fixes or new OpenGL extensions ahead of tested, official releases.
[glew-20220402.tgz](https://sourceforge.net/projects/glew/files/glew/snapshots/glew-20220402.tgz/download) *GLEW 2.2.0 - with fix for glCreateProgressFenceNVX*
## Build
It is highly recommended to build from a tgz or zip release snapshot.
The code generation workflow is a complex brew of gnu make, perl and python, that works best on Linux or Mac.
The code generation is known to work on Windows using [MSYS2](https://www.msys2.org/).
For most end-users of GLEW the official releases are the best choice, with first class support.
### Linux and Mac
#### Using GNU Make
GNU make is the primary build system for GLEW, historically.
It includes targets for building the sources and headers, for maintenance purposes.
##### Install build tools
Debian/Ubuntu/Mint: `$ sudo apt-get install build-essential libxmu-dev libxi-dev libgl-dev`
RedHat/CentOS/Fedora: `$ sudo yum install libXmu-devel libXi-devel libGL-devel`
FreeBSD: `# pkg install xorg lang/gcc git cmake gmake bash python perl5`
##### Build
$ make
$ sudo make install
$ make clean
Targets: `all, glew.lib (sub-targets: glew.lib.shared, glew.lib.static), glew.bin, clean, install, uninstall`
Variables: `SYSTEM=linux-clang, GLEW_DEST=/usr/local, STRIP=`
_Note: you may need to call `make` in the **auto** folder first_
##### Linux EGL
$ sudo apt install libegl1-mesa-dev
$ make SYSTEM=linux-egl
##### Linux OSMesa
$ sudo apt install libosmesa-dev
$ make SYSTEM=linux-osmesa
##### Linux mingw-w64
$ sudo apt install mingw-w64
$ make SYSTEM=linux-mingw32
$ make SYSTEM=linux-mingw64
#### Using cmake
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 3.16 or higher is required.*
##### Install build tools
Debian/Ubuntu/Mint: `$ sudo apt-get install build-essential libxmu-dev libxi-dev libgl-dev cmake git`
RedHat/CentOS/Fedora: `$ sudo yum install libXmu-devel libXi-devel libGL-devel cmake git`
##### Build
$ cd build
$ cmake ./cmake
$ make -j4
| Target | Description |
| ---------- | ----------- |
| glew | Build the glew shared library. |
| glew_s | Build the glew static library. |
| glewinfo | Build the `glewinfo` executable (requires `BUILD_UTILS` to be `ON`). |
| visualinfo | Build the `visualinfo` executable (requires `BUILD_UTILS` to be `ON`). |
| install | Install all enabled targets into `CMAKE_INSTALL_PREFIX`. |
| clean | Clean up build artifacts. |
| all | Build all enabled targets (default target). |
| Variables | Description |
| --------------- | ----------- |
| BUILD_UTILS | Build the `glewinfo` and `visualinfo` executables. |
| GLEW_REGAL | Build in Regal mode. |
| GLEW_OSMESA | Build in off-screen Mesa mode. |
| BUILD_FRAMEWORK | Build as MacOSX Framework. Setting `CMAKE_INSTALL_PREFIX` to `/Library/Frameworks` is recommended. |
### Windows
#### Visual Studio
Use the provided Visual Studio project file in build/vc15/
Projects for vc6, vc10, vc12 and vc14 are also provided
#### MSYS/Mingw
Available from [Mingw](http://www.mingw.org/)
Requirements: bash, make, gcc
$ mingw32-make
$ mingw32-make install
$ mingw32-make install.all
Alternative toolchain: `SYSTEM=mingw-win32`
#### MSYS2/Mingw-w64
Available from [Msys2](http://msys2.github.io/) and/or [Mingw-w64](http://mingw-w64.org/)
Requirements: bash, make, gcc
$ pacman -S gcc make mingw-w64-i686-gcc mingw-w64-x86_64-gcc
$ make
$ make install
$ make install.all
Alternative toolchain: `SYSTEM=msys, SYSTEM=msys-win32, SYSTEM=msys-win64`
## glewinfo
`glewinfo` is a command-line tool useful for inspecting the capabilities of an
OpenGL implementation and GLEW support for that. Please include `glewinfo.txt`
with bug reports, as appropriate.
---------------------------
GLEW Extension Info
---------------------------
GLEW version 2.0.0
Reporting capabilities of pixelformat 3
Running on a Intel(R) HD Graphics 3000 from Intel
OpenGL version 3.1.0 - Build 9.17.10.4229 is supported
GL_VERSION_1_1: OK
---------------
GL_VERSION_1_2: OK
---------------
glCopyTexSubImage3D: OK
glDrawRangeElements: OK
glTexImage3D: OK
glTexSubImage3D: OK
...
## Code Generation
A Unix or Mac environment is needed for building GLEW from scratch to
include new extensions, or customize the code generation. The extension
data is regenerated from the top level source directory with:
make extensions
An alternative to generating the GLEW sources from scratch is to
download a pre-generated (unsupported) snapshot:
https://sourceforge.net/projects/glew/files/glew/snapshots/
## Authors
GLEW is currently maintained by [Nigel Stewart](https://github.com/nigels-com)
with bug fixes, new OpenGL extension support and new releases.
GLEW was developed by [Milan Ikits](http://www.cs.utah.edu/~ikits/)
and [Marcelo Magallon](http://wwwvis.informatik.uni-stuttgart.de/~magallon/).
Aaron Lefohn, Joe Kniss, and Chris Wyman were the first users and also
assisted with the design and debugging process.
The acronym GLEW originates from Aaron Lefohn.
Pasi K&auml;rkk&auml;inen identified and fixed several problems with
GLX and SDL. Nate Robins created the `wglinfo` utility, to
which modifications were made by Michael Wimmer.
## Contributions
GLEW welcomes community contributions. Typically these are co-ordinated
via [Issues](https://github.com/nigels-com/glew/issues) or
[Pull Requests](https://github.com/nigels-com/glew/pulls) in the
GitHub web interface.
Be sure to mention platform and compiler toolchain details when filing
a bug report. The output of `glewinfo` can be quite useful for discussion
also.
Generally GLEW is usually released once a year, around the time of the Siggraph
computer graphics conference. If you're not using the current release
version of GLEW, be sure to check if the issue or bug is fixed there.
## Copyright and Licensing
GLEW is originally derived from the EXTGL project by Lev Povalahev.
The source code is licensed under the
[Modified BSD License](http://glew.sourceforge.net/glew.txt), the
[Mesa 3-D License](http://glew.sourceforge.net/mesa.txt) (MIT) and the
[Khronos License](http://glew.sourceforge.net/khronos.txt) (MIT).
The automatic code generation scripts are released under the
[GNU GPL](http://glew.sourceforge.net/gpl.txt).
If you are not familiar with cmake, Some `sub-directory-test.cmake`, `fetch-content.cmake` in [`glew-cmake`](./glew-cmake/) could be helpful.

249
README_glew.md Normal file
View File

@ -0,0 +1,249 @@
# GLEW - The OpenGL Extension Wrangler Library
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.
![](http://glew.sourceforge.net/glew.png)
http://glew.sourceforge.net/
https://github.com/nigels-com/glew
[![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
* [Downloads](#downloads)
* [Recent snapshots](#recent-snapshots)
* [Build](#build)
* [Linux and Mac](#linux-and-mac)
* [Using GNU Make](#using-gnu-make)
* [Install build tools](#install-build-tools)
* [Build](#build-1)
* [Linux EGL](#linux-egl)
* [Linux OSMesa](#linux-osmesa)
* [Linux mingw-w64](#linux-mingw-w64)
* [Using cmake](#using-cmake)
* [Install build tools](#install-build-tools-1)
* [Build](#build-2)
* [Windows](#windows)
* [Visual Studio](#visual-studio)
* [MSYS/Mingw](#msysmingw)
* [MSYS2/Mingw-w64](#msys2mingw-w64)
* [glewinfo](#glewinfo)
* [Code Generation](#code-generation)
* [Authors](#authors)
* [Contributions](#contributions)
* [Copyright and Licensing](#copyright-and-licensing)
## Downloads
Current release is [2.3.0](https://github.com/nigels-com/glew/releases/tag/glew-2.3.0).
[(Change Log)](http://glew.sourceforge.net/log.html)
Sources available as
[ZIP](https://github.com/nigels-com/glew/releases/download/glew-2.3.0/glew-2.3.0.zip) or
[TGZ](https://github.com/nigels-com/glew/releases/download/glew-2.3.0/glew-2.3.0.tgz).
Windows binaries for [32-bit and 64-bit](https://github.com/nigels-com/glew/releases/download/glew-2.3.0/glew-2.3.0-win32.zip).
## Build
It is highly recommended to build from a tgz or zip release snapshot.
The code generation workflow is a complex brew of gnu make, perl and python, that works best on Linux or Mac.
The code generation is known to work on Windows using [MSYS2](https://www.msys2.org/).
For most end-users of GLEW the official releases are the best choice, with first class support.
### Linux and Mac
#### Using GNU Make
GNU make is the primary build system for GLEW, historically.
It includes targets for building the sources and headers, for maintenance purposes.
##### Install build tools
Debian/Ubuntu/Mint: `$ sudo apt-get install build-essential libxmu-dev libxi-dev libgl-dev`
RedHat/CentOS/Fedora: `$ sudo yum install libXmu-devel libXi-devel libGL-devel`
FreeBSD: `# pkg install xorg lang/gcc git cmake gmake bash python perl5`
##### Build
$ make
$ sudo make install
$ make clean
Targets: `all, glew.lib (sub-targets: glew.lib.shared, glew.lib.static), glew.bin, clean, install, uninstall`
Variables: `SYSTEM=linux-clang, GLEW_DEST=/usr/local, STRIP=`
_Note: you may need to call `make` in the **auto** folder first_
##### Linux EGL
$ sudo apt install libegl1-mesa-dev
$ make SYSTEM=linux-egl
##### Linux OSMesa
$ sudo apt install libosmesa-dev
$ make SYSTEM=linux-osmesa
##### Linux mingw-w64
$ sudo apt install mingw-w64
$ make SYSTEM=linux-mingw32
$ make SYSTEM=linux-mingw64
#### Using cmake
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 3.16 or higher is required.*
##### Install build tools
Debian/Ubuntu/Mint: `$ sudo apt-get install build-essential libxmu-dev libxi-dev libgl-dev cmake git`
RedHat/CentOS/Fedora: `$ sudo yum install libXmu-devel libXi-devel libGL-devel cmake git`
##### Build
$ cd build
$ cmake ./cmake
$ make -j4
| Target | Description |
| ---------- | ----------- |
| glew | Build the glew shared library. |
| glew_s | Build the glew static library. |
| glewinfo | Build the `glewinfo` executable (requires `BUILD_UTILS` to be `ON`). |
| visualinfo | Build the `visualinfo` executable (requires `BUILD_UTILS` to be `ON`). |
| install | Install all enabled targets into `CMAKE_INSTALL_PREFIX`. |
| clean | Clean up build artifacts. |
| all | Build all enabled targets (default target). |
| Variables | Description |
| --------------- | ----------- |
| BUILD_UTILS | Build the `glewinfo` and `visualinfo` executables. |
| GLEW_REGAL | Build in Regal mode. |
| GLEW_OSMESA | Build in off-screen Mesa mode. |
| BUILD_FRAMEWORK | Build as MacOSX Framework. Setting `CMAKE_INSTALL_PREFIX` to `/Library/Frameworks` is recommended. |
### Windows
#### Visual Studio
Use the provided Visual Studio project file in build/vc15/
Projects for vc6, vc10, vc12 and vc14 are also provided
#### MSYS/Mingw
Available from [Mingw](http://www.mingw.org/)
Requirements: bash, make, gcc
$ mingw32-make
$ mingw32-make install
$ mingw32-make install.all
Alternative toolchain: `SYSTEM=mingw-win32`
#### MSYS2/Mingw-w64
Available from [Msys2](http://msys2.github.io/) and/or [Mingw-w64](http://mingw-w64.org/)
Requirements: bash, make, gcc
$ pacman -S gcc make mingw-w64-i686-gcc mingw-w64-x86_64-gcc
$ make
$ make install
$ make install.all
Alternative toolchain: `SYSTEM=msys, SYSTEM=msys-win32, SYSTEM=msys-win64`
## glewinfo
`glewinfo` is a command-line tool useful for inspecting the capabilities of an
OpenGL implementation and GLEW support for that. Please include `glewinfo.txt`
with bug reports, as appropriate.
---------------------------
GLEW Extension Info
---------------------------
GLEW version 2.0.0
Reporting capabilities of pixelformat 3
Running on a Intel(R) HD Graphics 3000 from Intel
OpenGL version 3.1.0 - Build 9.17.10.4229 is supported
GL_VERSION_1_1: OK
---------------
GL_VERSION_1_2: OK
---------------
glCopyTexSubImage3D: OK
glDrawRangeElements: OK
glTexImage3D: OK
glTexSubImage3D: OK
...
## Code Generation
A Unix or Mac environment is needed for building GLEW from scratch to
include new extensions, or customize the code generation. The extension
data is regenerated from the top level source directory with:
make extensions
An alternative to generating the GLEW sources from scratch is to
download a pre-generated (unsupported) snapshot:
https://sourceforge.net/projects/glew/files/glew/snapshots/
## Authors
GLEW is currently maintained by [Nigel Stewart](https://github.com/nigels-com)
with bug fixes, new OpenGL extension support and new releases.
GLEW was developed by [Milan Ikits](http://www.cs.utah.edu/~ikits/)
and [Marcelo Magallon](http://wwwvis.informatik.uni-stuttgart.de/~magallon/).
Aaron Lefohn, Joe Kniss, and Chris Wyman were the first users and also
assisted with the design and debugging process.
The acronym GLEW originates from Aaron Lefohn.
Pasi K&auml;rkk&auml;inen identified and fixed several problems with
GLX and SDL. Nate Robins created the `wglinfo` utility, to
which modifications were made by Michael Wimmer.
## Contributions
GLEW welcomes community contributions. Typically these are co-ordinated
via [Issues](https://github.com/nigels-com/glew/issues) or
[Pull Requests](https://github.com/nigels-com/glew/pulls) in the
GitHub web interface.
Be sure to mention platform and compiler toolchain details when filing
a bug report. The output of `glewinfo` can be quite useful for discussion
also.
Generally GLEW is usually released once a year, around the time of the Siggraph
computer graphics conference. If you're not using the current release
version of GLEW, be sure to check if the issue or bug is fixed there.
## Copyright and Licensing
GLEW is originally derived from the EXTGL project by Lev Povalahev.
The source code is licensed under the
[Modified BSD License](http://glew.sourceforge.net/glew.txt), the
[Mesa 3-D License](http://glew.sourceforge.net/mesa.txt) (MIT) and the
[Khronos License](http://glew.sourceforge.net/khronos.txt) (MIT).
The automatic code generation scripts are released under the
[GNU GPL](http://glew.sourceforge.net/gpl.txt).

View File

@ -66,7 +66,7 @@ The latest release contains support for OpenGL 4.6, compatibility and forward-co
<h2>News</h2>
<ul>
<li>[06-27-2025] <a href="https://github.com/nigels-com/glew/releases/tag/glew-2.3.0">GLEW 2.3.0</a> new extensions and minor bug fixes</li>
<li>[12-27-2025] <a href="https://github.com/nigels-com/glew/releases/tag/glew-2.3.0">GLEW 2.3.0</a> new extensions and minor bug fixes</li>
<li>[03-15-2020] <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-2017] <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-2016] <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>

22
azure-pipelines.yml Normal file
View File

@ -0,0 +1,22 @@
schedules:
- cron: "0 0 * * *"
displayName: Daily midnight build
branches:
include:
- master
always: true
jobs:
- job: NightlyUpdate
pool:
vmImage: 'ubuntu-latest'
container: perlmint/glew-cmake:20190922
steps:
- checkout: self
persistCredentials: true
- bash: |
export TEST_MODE=false
git config --global user.email $GIT_USEREMAIL &&
git config --global user.name $GIT_USERNAME &&
unset SYSTEM # remove SYSTEM variable set by azure pipeline
./glew-cmake/maintain.sh

136
build/glew.rc Normal file
View File

@ -0,0 +1,136 @@
#include <windows.h>
#ifdef GLEW_STATIC
# ifdef _DEBUG
# define FILENAME "glew32sd.dll"
# else
# define FILENAME "glew32s.dll"
# endif
#else
# ifdef _DEBUG
# define FILENAME "glew32d.dll"
# else
# define FILENAME "glew32.dll"
# endif
#endif
/////////////////////////////////////////////////////////////////////////////
//
// Version
//
VS_VERSION_INFO VERSIONINFO
FILEVERSION 2, 3, 0, 0
PRODUCTVERSION 2, 3, 0, 0
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
#ifdef _DEBUG
FILEFLAGS VS_FF_DEBUG
#else
FILEFLAGS 0x0L
#endif
FILEOS VOS__WINDOWS32
#ifdef GLEW_STATIC
FILETYPE VFT_STATIC_LIB
#else
FILETYPE VFT_DLL
#endif
FILESUBTYPE VFT2_UNKNOWN
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "040904b0"
BEGIN
VALUE "Comments",
"The OpenGL Extension Wrangler Library\r\n"
"Copyright (C) 2008-2025, 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"
"All rights reserved.\r\n"
"\r\n"
"Redistribution and use in source and binary forms, with or without \r\n"
"modification, are permitted provided that the following conditions are met:\r\n"
"\r\n"
"* Redistributions of source code must retain the above copyright notice, \r\n"
" this list of conditions and the following disclaimer.\r\n"
"* Redistributions in binary form must reproduce the above copyright notice, \r\n"
" this list of conditions and the following disclaimer in the documentation \r\n"
" and/or other materials provided with the distribution.\r\n"
"* The name of the author may be used to endorse or promote products \r\n"
" derived from this software without specific prior written permission.\r\n"
"\r\n"
"THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ''AS IS'' \r\n"
"AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE \r\n"
"IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\r\n"
"ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE \r\n"
"LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR \r\n"
"CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF \r\n"
"SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\r\n"
"INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\r\n"
"CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\r\n"
"ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\r\n"
"THE POSSIBILITY OF SUCH DAMAGE.\r\n"
"\r\n"
"\r\n"
"Mesa 3-D graphics library\r\n"
"\r\n"
"Version: 7.0\r\n"
"\r\n"
"Copyright (C) 1999-2007 Brian Paul All Rights Reserved.\r\n"
"\r\n"
"Permission is hereby granted, free of charge, to any person obtaining a\r\n"
"copy of this software and associated documentation files (the ''Software''),\r\n"
"to deal in the Software without restriction, including without limitation\r\n"
"the rights to use, copy, modify, merge, publish, distribute, sublicense,\r\n"
"and/or sell copies of the Software, and to permit persons to whom the\r\n"
"Software is furnished to do so, subject to the following conditions:\r\n"
"\r\n"
"The above copyright notice and this permission notice shall be included\r\n"
"in all copies or substantial portions of the Software.\r\n"
"\r\n"
"THE SOFTWARE IS PROVIDED ''AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS\r\n"
"OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\n"
"FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL\r\n"
"BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN\r\n"
"AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\r\n"
"CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r\n"
"\r\n"
"\r\n"
"Copyright (c) 2007 The Khronos Group Inc.\r\n"
"\r\n"
"Permission is hereby granted, free of charge, to any person obtaining a\r\n"
"copy of this software and/or associated documentation files (the\r\n"
"''Materials''), to deal in the Materials without restriction, including\r\n"
"without limitation the rights to use, copy, modify, merge, publish,\r\n"
"distribute, sublicense, and/or sell copies of the Materials, and to\r\n"
"permit persons to whom the Materials are furnished to do so, subject to\r\n"
"the following conditions:\r\n"
"\r\n"
"The above copyright notice and this permission notice shall be included\r\n"
"in all copies or substantial portions of the Materials.\r\n"
"\r\n"
"THE MATERIALS ARE PROVIDED ''AS IS'', WITHOUT WARRANTY OF ANY KIND,\r\n"
"EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r\n"
"MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\r\n"
"IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\r\n"
"CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\r\n"
"TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\r\n"
"MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.\0"
VALUE "CompanyName", "\0"
VALUE "FileDescription", "The OpenGL Extension Wrangler Library\0"
VALUE "FileVersion", "2,3,0,0\0"
VALUE "InternalName", "GLEW\0"
VALUE "LegalCopyright", "(C) 2002-2019 Nigel Stewart & Milan Ikits & Marcelo Magallon\0"
VALUE "LegalTrademarks", "\0"
VALUE "OriginalFilename", FILENAME "\0"
VALUE "PrivateBuild", "\0"
VALUE "ProductName", "The OpenGL Extension Wrangler Library\0"
VALUE "ProductVersion", "2,3,0,0\0"
VALUE "SpecialBuild", "\0"
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x409, 1200
END
END

124
build/glewinfo.rc Normal file
View File

@ -0,0 +1,124 @@
#include <windows.h>
#ifdef _DEBUG
# define FILENAME "glewinfod.exe"
#else
# define FILENAME "glewinfo.exe"
#endif
/////////////////////////////////////////////////////////////////////////////
//
// Version
//
VS_VERSION_INFO VERSIONINFO
FILEVERSION 2, 3, 0, 0
PRODUCTVERSION 2, 3, 0, 0
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
#ifdef _DEBUG
FILEFLAGS VS_FF_DEBUG
#else
FILEFLAGS 0x0L
#endif
FILEOS VOS__WINDOWS32
FILETYPE VFT_APP
FILESUBTYPE VFT2_UNKNOWN
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "040904b0"
BEGIN
VALUE "Comments",
"The OpenGL Extension Wrangler Library\r\n"
"Copyright (C) 2008-2025, 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"
"All rights reserved.\r\n"
"\r\n"
"Redistribution and use in source and binary forms, with or without \r\n"
"modification, are permitted provided that the following conditions are met:\r\n"
"\r\n"
"* Redistributions of source code must retain the above copyright notice, \r\n"
" this list of conditions and the following disclaimer.\r\n"
"* Redistributions in binary form must reproduce the above copyright notice, \r\n"
" this list of conditions and the following disclaimer in the documentation \r\n"
" and/or other materials provided with the distribution.\r\n"
"* The name of the author may be used to endorse or promote products \r\n"
" derived from this software without specific prior written permission.\r\n"
"\r\n"
"THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ''AS IS'' \r\n"
"AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE \r\n"
"IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\r\n"
"ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE \r\n"
"LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR \r\n"
"CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF \r\n"
"SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\r\n"
"INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\r\n"
"CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\r\n"
"ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\r\n"
"THE POSSIBILITY OF SUCH DAMAGE.\r\n"
"\r\n"
"\r\n"
"Mesa 3-D graphics library\r\n"
"\r\n"
"Version: 7.0\r\n"
"\r\n"
"Copyright (C) 1999-2007 Brian Paul All Rights Reserved.\r\n"
"\r\n"
"Permission is hereby granted, free of charge, to any person obtaining a\r\n"
"copy of this software and associated documentation files (the ''Software''),\r\n"
"to deal in the Software without restriction, including without limitation\r\n"
"the rights to use, copy, modify, merge, publish, distribute, sublicense,\r\n"
"and/or sell copies of the Software, and to permit persons to whom the\r\n"
"Software is furnished to do so, subject to the following conditions:\r\n"
"\r\n"
"The above copyright notice and this permission notice shall be included\r\n"
"in all copies or substantial portions of the Software.\r\n"
"\r\n"
"THE SOFTWARE IS PROVIDED ''AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS\r\n"
"OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\n"
"FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL\r\n"
"BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN\r\n"
"AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\r\n"
"CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r\n"
"\r\n"
"\r\n"
"Copyright (c) 2007 The Khronos Group Inc.\r\n"
"\r\n"
"Permission is hereby granted, free of charge, to any person obtaining a\r\n"
"copy of this software and/or associated documentation files (the\r\n"
"''Materials''), to deal in the Materials without restriction, including\r\n"
"without limitation the rights to use, copy, modify, merge, publish,\r\n"
"distribute, sublicense, and/or sell copies of the Materials, and to\r\n"
"permit persons to whom the Materials are furnished to do so, subject to\r\n"
"the following conditions:\r\n"
"\r\n"
"The above copyright notice and this permission notice shall be included\r\n"
"in all copies or substantial portions of the Materials.\r\n"
"\r\n"
"THE MATERIALS ARE PROVIDED ''AS IS'', WITHOUT WARRANTY OF ANY KIND,\r\n"
"EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r\n"
"MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\r\n"
"IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\r\n"
"CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\r\n"
"TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\r\n"
"MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.\0"
VALUE "CompanyName", "\0"
VALUE "FileDescription", "Utility for verifying extension entry points\0"
VALUE "FileVersion", "2,3,0,0\0"
VALUE "InternalName", "glewinfo\0"
VALUE "LegalCopyright", "(C) 2002-2019 Nigel Stewart & Milan Ikits & Marcelo Magallon\0"
VALUE "LegalTrademarks", "\0"
VALUE "OriginalFilename", FILENAME "\0"
VALUE "PrivateBuild", "\0"
VALUE "ProductName", "The OpenGL Extension Wrangler Library\0"
VALUE "ProductVersion", "2,3,0,0\0"
VALUE "SpecialBuild", "\0"
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x409, 1200
END
END

124
build/visualinfo.rc Normal file
View File

@ -0,0 +1,124 @@
#include <windows.h>
#ifdef _DEBUG
# define FILENAME "visualinfod.exe"
#else
# define FILENAME "visualinfo.exe"
#endif
/////////////////////////////////////////////////////////////////////////////
//
// Version
//
VS_VERSION_INFO VERSIONINFO
FILEVERSION 2, 3, 0, 0
PRODUCTVERSION 2, 3, 0, 0
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
#ifdef _DEBUG
FILEFLAGS VS_FF_DEBUG
#else
FILEFLAGS 0x0L
#endif
FILEOS VOS__WINDOWS32
FILETYPE VFT_APP
FILESUBTYPE VFT2_UNKNOWN
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "040904b0"
BEGIN
VALUE "Comments",
"The OpenGL Extension Wrangler Library\r\n"
"Copyright (C) 2008-2025, 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"
"All rights reserved.\r\n"
"\r\n"
"Redistribution and use in source and binary forms, with or without \r\n"
"modification, are permitted provided that the following conditions are met:\r\n"
"\r\n"
"* Redistributions of source code must retain the above copyright notice, \r\n"
" this list of conditions and the following disclaimer.\r\n"
"* Redistributions in binary form must reproduce the above copyright notice, \r\n"
" this list of conditions and the following disclaimer in the documentation \r\n"
" and/or other materials provided with the distribution.\r\n"
"* The name of the author may be used to endorse or promote products \r\n"
" derived from this software without specific prior written permission.\r\n"
"\r\n"
"THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ''AS IS'' \r\n"
"AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE \r\n"
"IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\r\n"
"ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE \r\n"
"LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR \r\n"
"CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF \r\n"
"SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\r\n"
"INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\r\n"
"CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\r\n"
"ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\r\n"
"THE POSSIBILITY OF SUCH DAMAGE.\r\n"
"\r\n"
"\r\n"
"Mesa 3-D graphics library\r\n"
"\r\n"
"Version: 7.0\r\n"
"\r\n"
"Copyright (C) 1999-2007 Brian Paul All Rights Reserved.\r\n"
"\r\n"
"Permission is hereby granted, free of charge, to any person obtaining a\r\n"
"copy of this software and associated documentation files (the ''Software''),\r\n"
"to deal in the Software without restriction, including without limitation\r\n"
"the rights to use, copy, modify, merge, publish, distribute, sublicense,\r\n"
"and/or sell copies of the Software, and to permit persons to whom the\r\n"
"Software is furnished to do so, subject to the following conditions:\r\n"
"\r\n"
"The above copyright notice and this permission notice shall be included\r\n"
"in all copies or substantial portions of the Software.\r\n"
"\r\n"
"THE SOFTWARE IS PROVIDED ''AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS\r\n"
"OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\n"
"FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL\r\n"
"BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN\r\n"
"AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\r\n"
"CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r\n"
"\r\n"
"\r\n"
"Copyright (c) 2007 The Khronos Group Inc.\r\n"
"\r\n"
"Permission is hereby granted, free of charge, to any person obtaining a\r\n"
"copy of this software and/or associated documentation files (the\r\n"
"''Materials''), to deal in the Materials without restriction, including\r\n"
"without limitation the rights to use, copy, modify, merge, publish,\r\n"
"distribute, sublicense, and/or sell copies of the Materials, and to\r\n"
"permit persons to whom the Materials are furnished to do so, subject to\r\n"
"the following conditions:\r\n"
"\r\n"
"The above copyright notice and this permission notice shall be included\r\n"
"in all copies or substantial portions of the Materials.\r\n"
"\r\n"
"THE MATERIALS ARE PROVIDED ''AS IS'', WITHOUT WARRANTY OF ANY KIND,\r\n"
"EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r\n"
"MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\r\n"
"IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\r\n"
"CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\r\n"
"TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\r\n"
"MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.\0"
VALUE "CompanyName", "\0"
VALUE "FileDescription", "Utility for listing pixelformat capabilities\0"
VALUE "FileVersion", "2,3,0,0\0"
VALUE "InternalName", "visualinfo\0"
VALUE "LegalCopyright", "(C) 2002-2019 Nigel Stewart & Milan Ikits & Marcelo Magallon\0"
VALUE "LegalTrademarks", "\0"
VALUE "OriginalFilename", FILENAME "\0"
VALUE "PrivateBuild", "\0"
VALUE "ProductName", "The OpenGL Extension Wrangler Library\0"
VALUE "ProductVersion", "2,3,0,0\0"
VALUE "SpecialBuild", "\0"
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x409, 1200
END
END

View File

@ -161,7 +161,7 @@ The latest release contains support for OpenGL 4.6, compatibility and forward-co
<h2>News</h2>
<ul>
<li>[06-27-2025] <a href="https://github.com/nigels-com/glew/releases/tag/glew-2.3.0">GLEW 2.3.0</a> new extensions and minor bug fixes</li>
<li>[12-27-2025] <a href="https://github.com/nigels-com/glew/releases/tag/glew-2.3.0">GLEW 2.3.0</a> new extensions and minor bug fixes</li>
<li>[03-15-2020] <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-2017] <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-2016] <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>

View File

@ -99,13 +99,6 @@ THE POSSIBILITY OF SUCH DAMAGE.
<ul class="none">
<li><b>2.3.0</b> [12-27-2025]
<ul>
<li> Bug fixes:
<ul>
<li> ...
</ul>
</ul>
<ul>
<li> New extensions:
<ul>

10
glew-cmake/Dockerfile Normal file
View File

@ -0,0 +1,10 @@
# Azure pipeline require glibc based image
FROM debian:buster-slim
RUN apt update && \
apt install -y git make gcc python && \
apt clean && \
rm -rf /var/lib/apt/lists/*
RUN mkdir -p ~/.ssh && \
ssh-keyscan github.com >> ~/.ssh/known_hosts

View File

@ -0,0 +1,11 @@
cmake_minimum_required(VERSION 2.8.12)
project(cmake_install_test)
# Dependencies of glew.
# These are referenced in glewConfig.cmake. but, not automatically found.
find_package(OpenGL REQUIRED)
find_package(X11 REQUIRED)
find_package(glew)
add_executable(glewinfo glewinfo.c)
target_link_libraries(glewinfo PRIVATE libglew_static)

View File

@ -0,0 +1,18 @@
cmake_minimum_required(VERSION 3.4)
project(fetch_content)
include(FetchContent)
FetchContent_Declare(
glew
GIT_REPOSITORY https://github.com/Perlmint/glew-cmake.git
GIT_TAG origin/master
)
FetchContent_GetProperties(glew)
if(NOT glew_POPULATED)
FetchContent_Populate(glew)
add_subdirectory(${glew_SOURCE_DIR} ${glew_BINARY_DIR} EXCLUDE_FROM_ALL)
endif()
add_executable(glewinfo glewinfo.c)
target_link_libraries(glewinfo PRIVATE libglew_static)

240
glew-cmake/maintain.sh Executable file
View File

@ -0,0 +1,240 @@
#!/bin/bash
#
# This script is used for auto maintaining
# - merging with original repo
# - regenerating sources and headers
# - push changes to repository
#
set -euxo pipefail
ORIGINAL_REPO_URL=https://github.com/nigels-com/glew.git
absolute_path () {
local TARGET_FILE=$1
shift
local OUT=$1
shift
pushd `dirname $TARGET_FILE`
TARGET_FILE=`basename $TARGET_FILE`
# Iterate down a (possible) chain of symlinks
while [ -L "$TARGET_FILE" ]
do
TARGET_FILE=`readlink $TARGET_FILE`
cd `dirname $TARGET_FILE`
TARGET_FILE=`basename $TARGET_FILE`
done
# Compute the canonicalized name by finding the physical path
# for the directory we're in and appending the target file.
PHYS_DIR=`pwd -P`
RESULT=$PHYS_DIR/$TARGET_FILE
eval "$OUT=\"${RESULT}\""
popd
}
if [ -z "${WORKSPACE:-}" ]; then
echo "Set WORKSPACE as default value"
absolute_path "$0" SCRIPT_PATH
WORKSPACE=$(dirname "$SCRIPT_PATH")
WORKSPACE=$(dirname "$WORKSPACE")
echo "WORKSPACE=$WORKSPACE"
fi
if [ -z "${TEST_MODE:-}" -o "${TEST_MODE:-}" != "false" ]; then
PUSH_ARG="--dry-run"
else
PUSH_ARG=""
fi
source_update () {
GIT_BRANCH_NAME=$1
# for recovery when test mode.
PUSH_COUNT=0
echo "Checkout branch ${GIT_BRANCH_NAME}"
git reset --hard
git clean -f .
if [ `git branch | grep ${GIT_BRANCH_NAME} | wc -l` = 0 ]; then
git checkout origin/${GIT_BRANCH_NAME} -b ${GIT_BRANCH_NAME}
else
git checkout -f $GIT_BRANCH_NAME
git pull -s recursive -X theirs --no-edit --progress origin
fi
echo "Pull from origin repository(${ORIGINAL_REPO_URL})"
BEFORE_COMMIT=`git rev-parse HEAD`
git pull -s recursive -X theirs --no-edit --commit --progress original_repo ${GIT_BRANCH_NAME}
AFTER_COMMIT=`git rev-parse HEAD`
if [ "$BEFORE_COMMIT" != "$AFTER_COMMIT" ]; then
echo "Source Updated"
git checkout "original_repo/${GIT_BRANCH_NAME}" -- README.md
git mv -f README.md README_glew.md
git checkout $BEFORE_COMMIT -- README.md
git add -f README.md README_glew.md
git commit --amend -m "Merge ${ORIGINAL_REPO_URL} into ${GIT_BRANCH_NAME} HEAD at $(TZ=GMT date)"
git push ${PUSH_ARG} origin $GIT_BRANCH_NAME:$GIT_BRANCH_NAME
PUSH_COUNT=$((PUSH_COUNT + 1))
fi
cd "$WORKSPACE/auto"
echo "CleanUp"
make clean
cd "$WORKSPACE/auto"
REGISTRIES=`find . -name .git -type d -exec dirname {} \;`
for REGISTRY in $REGISTRIES
do
rm -rf $REGISTRY
done
cd "$WORKSPACE"
echo "Generated Source Update"
make extensions
echo "Diff sources"
git add --force src/glew.c src/glewinfo.c include/GL/* doc/* build/*.rc
# Check is there any staged changes?
if [ `git diff --cached | wc -c` -ne 0 ]; then
# Commit and push it
echo "Sources updated"
git commit -m"Generate Sources of ${GIT_BRANCH_NAME} updated at $(TZ=GMT date)"
echo "Push to repository"
git push ${PUSH_ARG} origin ${GIT_BRANCH_NAME}:${GIT_BRANCH_NAME}
PUSH_COUNT=$((PUSH_COUNT + 1))
else
echo "Differences Not found"
fi
# when test mode, reset created commits
if [ -n "$PUSH_ARG" ]; then
echo "Reset commits"
git reset --hard HEAD~${PUSH_COUNT}
fi
}
import_tags () {
echo "Fetch tags from origin repository(${ORIGINAL_REPO_URL})"
BEFORE_TAG_COUNT=`git tag | wc -l | sed "s/^ \+//"`
git fetch --tags --progress original_repo
AFTER_TAG_COUNT=`git tag | wc -l | sed "s/^ \+//"`
NEW_VERSION_TAGS=`diff -u <(git tag | grep glew-cmake- | sed s/glew-cmake/glew/) <(git tag | grep "glew-[0-9]") | grep ^+ | sed 1d | sed s/^+// || true`
if [ ! $BEFORE_TAG_COUNT -eq $AFTER_TAG_COUNT -o ! -z "$NEW_VERSION_TAGS" ]; then
echo "Tags updated"
git push ${PUSH_ARG} --tags origin
git checkout glew-cmake-release
for TAG in $NEW_VERSION_TAGS
do
echo "Import $TAG"
git checkout $TAG -- .
git mv -f README.md README_glew.md
git checkout master -- CMakeLists.txt GeneratePkgConfig.cmake README.md
cd "$WORKSPACE/auto"
COMMIT_TIME=`git log -1 $TAG --format=%ct`
echo "Patch perl scripts for new version"
find bin -name '*.pl' -exec sed -i "s/do 'bin/use lib '.';\ndo 'bin/" {} \;
echo "Remove registries"
REGISTRIES=`find . -name .git -type d -exec dirname {} \;`
for REGISTRY in $REGISTRIES
do
rm -rf $REGISTRY
done
echo "Run code generation to download registries"
make clean
cd "$WORKSPACE"
make extensions
echo "Rewind registry repos"
cd "$WORKSPACE/auto"
make clean
REGISTRIES=`find . -name .git -type d -exec dirname {} \;`
for REGISTRY in $REGISTRIES
do
cd "$WORKSPACE/auto/$REGISTRY"
PROPER_COMMIT=`git log --until=$COMMIT_TIME -1 --format=%H`
git checkout --force $PROPER_COMMIT
find . -name .dummy -exec touch {} \;
done
echo "CleanUp for tag"
cd "$WORKSPACE/auto"
# remove previous data
rm -rf extensions
echo "Generate source code"
make
cd "$WORKSPACE"
git reset
git add --force src include doc CMakeLists.txt GeneratePkgConfig.cmake build/*.rc config/version
if [ `git diff --cached | wc -c` -ne 0 ]; then
git commit -m"glew-cmake release from $TAG"
NEW_TAG=`echo $TAG | sed s/glew-/glew-cmake-/`
git tag $NEW_TAG
else
echo "No difference! something wrong"
fi
done
git push ${PUSH_ARG} origin glew-cmake-release
if [ -z "$PUSH_ARG" ]; then
git push --tags ${PUSH_ARG} origin
fi
# when test mode, reset created commits
if [ -n "$PUSH_ARG" ]; then
echo "Reset commits for tags"
for TAG in $NEW_VERSION_TAGS
do
NEW_TAG=`echo $TAG | sed s/glew-/glew-cmake-/`
git tag -d $NEW_TAG
git reset --hard HEAD~1
done
fi
fi
}
# add remote when original repo is not found in local repo
if [ `git remote | grep original_repo | wc -l` = 0 ]; then
git remote add original_repo ${ORIGINAL_REPO_URL}
fi
git fetch -n original_repo
branch_list () {
eval "$2=\"`git branch -r | grep $1 | sed "s/\s\+$1\///g" | sed ':a;N;$!ba;s/\n/ /g'`\""
}
contains () {
local OUT=$1
shift
local seeking=$1
shift
local in=1
for element in $*; do
if [ $element = $seeking ]; then
in=0
break
fi
done
eval "$OUT=\"${in}\""
}
#branch_list original_repo ORIGINAL_REPO_BRANCH_LIST
#branch_list origin ORIGIN_REPO_BRANCH_LIST
join () {
local OUT=$1
shift
local value="`echo $* | sed "s/ /\n/g" | sort -u | sed ':a;N;$!ba;s/\n/ /g'`"
eval "$OUT=\"${value}\""
}
#join ALL_BRANCH_LIST $ORIGINAL_REPO_BRANCH_LIST $ORIGIN_REPO_BRANCH_LIST
#
#for branch in $ALL_BRANCH_LIST; do
# contains IN_ORIGINAL_REPO $branch $ORIGINAL_REPO_BRANCH_LIST
# if [ $IN_ORIGINAL_REPO = 1 ]; then
# if [ $branch != "glew-cmake-release" ]; then
# git push ${PUSH_ARG} origin :$branch
# fi
# else
# source_update $branch
# fi
#done
source_update master
import_tags

16
glew-cmake/mingw.cmake Normal file
View File

@ -0,0 +1,16 @@
set(CMAKE_SYSTEM_NAME Windows)
set(TOOLCHAIN_PREFIX x86_64-w64-mingw32)
# cross compilers to use for C, C++ and Fortran
set(CMAKE_C_COMPILER ${TOOLCHAIN_PREFIX}-gcc)
set(CMAKE_CXX_COMPILER ${TOOLCHAIN_PREFIX}-g++)
set(CMAKE_RC_COMPILER ${TOOLCHAIN_PREFIX}-windres)
# target environment on the build host system
set(CMAKE_FIND_ROOT_PATH /usr/${TOOLCHAIN_PREFIX})
# modify default behavior of FIND_XXX() commands
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)

View File

@ -0,0 +1,6 @@
cmake_minimum_required(VERSION 2.8.12)
project(sub_test)
add_subdirectory($ENV{GITHUB_WORKSPACE}/ glew_sub)
add_executable(glewinfo glewinfo.c)
target_link_libraries(glewinfo PRIVATE libglew_static)

3332
include/GL/eglew.h Normal file

File diff suppressed because it is too large Load Diff

27048
include/GL/glew.h Normal file

File diff suppressed because it is too large Load Diff

1843
include/GL/glxew.h Normal file

File diff suppressed because it is too large Load Diff

1468
include/GL/wglew.h Normal file

File diff suppressed because it is too large Load Diff

32966
src/glew.c Normal file

File diff suppressed because it is too large Load Diff

19705
src/glewinfo.c Normal file

File diff suppressed because it is too large Load Diff