uhdk/include/OPENGL-SOURCES.md

41 lines
1.8 KiB
Markdown

# Vendored OpenGL headers and loader
## GLAD 2.0.8
`uhdk.h` with `UHDK_ENABLE_OPENGL` includes the generated `glad/gl.h`:
OpenGL 3.3 core, no
extensions, header-only output, explicit per-context tables (`--mx`), and no
platform loader. `src/glad.c` compiles its implementation into libuhdk. Applications
load a `GladGLContext` through their adapter for `uhdk_gl_context_get_proc`.
Generated unmodified with the pinned generator and its bundled Khronos snapshot:
```sh
python3 -m venv /tmp/uhdk-glad
/tmp/uhdk-glad/bin/pip install glad2==2.0.8
/tmp/uhdk-glad/bin/python -m glad --api gl:core=3.3 --extensions '' \
--reproducible --out-path /tmp/uhdk-glad-output c --header-only --mx
```
Copy `/tmp/uhdk-glad-output/include/glad/gl.h` to `include/glad/gl.h`.
No generator or Python installation is required to build Uhdk.
- Generator: https://github.com/Dav1dde/glad/tree/v2.0.8
- License: `glad/LICENSE`, from https://raw.githubusercontent.com/Dav1dde/glad/v2.0.8/LICENSE
- Generated header SHA-256: `0dfcb12549b10a4c08372e99dd96c4a3b773ff8d89aec07ef878c8e1ca852456`
- Generated SPDX expression: `(WTFPL OR CC0-1.0) AND Apache-2.0`.
## Original Khronos headers
Retained unmodified for consumers choosing their own loader. Do not combine
`GL/glcorearb.h` with `glad/gl.h` or `UHDK_ENABLE_OPENGL` in a translation unit.
License notices are preserved in each file.
- `include/GL/glcorearb.h`
- Source: https://raw.githubusercontent.com/KhronosGroup/OpenGL-Registry/1cdd228e34966dd6b95bd203e9f84faba0f371a1/api/GL/glcorearb.h
- SHA-256: `65fae555a8b3b5709099837001e0c14228b3e45651e2d0fa2ad22649833921e1`
- `include/KHR/khrplatform.h`
- Source: https://raw.githubusercontent.com/KhronosGroup/EGL-Registry/5961a7fe64cf8a126890ced6f13d69e0a1e1b83e/api/KHR/khrplatform.h
- SHA-256: `7b1e01aaa7ad8f6fc34b5c7bdf79ebf5189bb09e2c4d2e79fc5d350623d11e83`