1.5.4:
Don't build GLX tests if X11 support is disabled
Add unit tests for epoxy_gl_version()
Reduce the size of the binary by reusing static strings
Fix build on Solaris
Update the GL registries
Changes since 1.5.2:
Disable EGL on macOS
Fix build on macOS [#176, Emmanuele Bassi]
Add macOS tests
Fix build with uClibc [#181, Emmanuele Bassi]
Fix GLES3 symbol lookup [Adam Jackson]
Fix conditional compilation [#184, Zhao Zhili]
Require Meson 0.47
Fix Autotools build with EGL-X11 support [#188, Emmanuele Bassi]
Changes since 1.5.1:
Fix the detection of the -z,relro linker flag
Query the EGL context version when bootstrapping on GLES [Adam Jackson]
Avoid inadvertedly loading libraries when probing for them [Adam Jackson]
Issue #169: Fix build on FreeBSD [Ting-Wei Lan]
Consistently use abort() instead of exit() for internal state checks
Issue #171: Fix a performance regression in the global function pointer
trampolines introduced by using -Bsymbolic-functions
Improve performance when using GL function pointers like glAlphaFunc [Adam Jackson]
Changes since 1.5.0:
Do no add pkg-config dependencies on gl on systems that do not use
pkg-config, like macOS and Windows [Tom Schoonjans, #156]
Generalise checks for dlvsym [Ross Burton, #158]
Add an option for disabling building the test suite [Ross Burton]
Typo fixes in the comments and documentation [luz.paz, #159]
Simplify the Meson configuration logic for EGL and GLX [Eric
Engestrom, #162]
Use assert when no context is found [Adam Jackson, #166]
Remove a test superceded by GLVND [#165]
Avoid Meson warnings when testing for linker arguments
Changes from Epoxy 1.4.3
Bump the Meson dependency to 0.44.1
Include Xlib.h in the tests that use X11 API
Update the GL registry to OpenGL 4.6
Add gl and egl private dependencies in the pkg-config file
Allow building Epoxy without X11 support
Rename the Meson configuration options to be more idiomatic
New API:
epoxy_set_resolver_failure_handler()
epoxy_glsl_version()
epoxy_extension_in_string()
Issues fixed
#128 - Fix macOS linker flags [Tom Schoonjans]
#129 - Use GLVND if available [Adam Jackson]
#134 - Add fallback definition for EGL_CAST [Daniel Stone]
#133 - Try even harder to not load GLX [Adam Jackson]
#138 - Fix the libOpenGL soname [Adam Jackson]
#137 - Update differences with GLEW [Nigel Stewart]
#131 - Add epoxy_set_resolver_failure_handler() [Adam Jackson]
#140 - Fix pointer mismatch on Windows 10 [danem]
#141 - Define visibility flags for static builds [Dylan Baker]
#136 - Expose epoxy_extension_in_string() [Lyude Paul]
#151 - Use correct guard for Android builds [Robert Bragg]
#154 - Fix dlwrap for glvnd [Adam Jackson]
#155 - Respect DLOPEN_LIBS [Michał Górny]
#143 - Fix printf family usage [Ikey Doherty]
#152 - Do not use OPENGL_LIB on Android
#145 - Add epoxy_glsl_version()
Require Meson 0.39.1; the previous release already had an implicit requirement on this version
Allow disabling EGL support when building Epoxy
Add support for building on Haiku
Update EGL registry from Khronos
Add C++ guards around generated headers
Add z,relro and z,now to the GCC linker flags
Add explicit version flags for macOS builds
Add missing visibility compiler flags
Prefer using pkg-config files to find GLES
Fix build on MSVC 2013 when using the inline keyword
Fix dlwrap on aarch64
Require Meson ≥ 0.38.1
Allow building Epoxy as a Meson sub-project
Avoid crashes when running Epoxy on X servers without GLX
correct, and possibly not zero.
No revision bump required - this change fixes the build if the EGL = 0 guess
was incorrect, and no change if it was correct.
Find the appropriate version of the Python interpreter when building
Ensure that the dispatch generation script works with Python 2.x and 3.x
Ensure that Epoxy builds correctly under Windows
Fix location of the m4 macros in the autotools build
This is a new stable release.
Major changes for 1.4 are:
Epoxy can now build with MSVC versions prior to 2013; we still recommend using a recent, C99-compatible compiler, like MSVC 2015 [Chun-wei Fan]
When used under X11, Epoxy now attempts to handle the cases where the GLX extension is not built or not available [Yaron Cohen-Tal]
GLX can now be enabled and disabled at configuration time; this allows building Epoxy with GLX on macOS, and allows building Epoxy without GLX on embedded platforms
Epoxy now exposes API that lets dependent projects safely check if platform API like GLX and EGL is available at run time
EGL support has been improved on Windows, and made more resilient on other platforms [Yaron Cohen-Tal, Adam Jackson]
Epoxy supports building with the Meson build system, which has Ninja, Visual Studio, and XCode backends
Epoxy can generate its API reference using Doxygen (currently only available on Meson builds)
The GL registry has been updated with the latest version of the API references provided by Khronos; Epoxy now supports the API introduced by OpenGL 4.5
Problems found with existing digests:
Package fotoxx distfile fotoxx-14.03.1.tar.gz
ac2033f87de2c23941261f7c50160cddf872c110 [recorded]
118e98a8cc0414676b3c4d37b8df407c28a1407c [calculated]
Package ploticus-examples distfile ploticus-2.00/plnode200.tar.gz
34274a03d0c41fae5690633663e3d4114b9d7a6d [recorded]
da39a3ee5e6b4b0d3255bfef95601890afd80709 [calculated]
Problems found locating distfiles:
Package AfterShotPro: missing distfile AfterShotPro-1.1.0.30/AfterShotPro_i386.deb
Package pgraf: missing distfile pgraf-20010131.tar.gz
Package qvplay: missing distfile qvplay-0.95.tar.gz
Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden). All existing
SHA1 digests retained for now as an audit trail.
Upstream disabled glx on OS X (in an apparent attempt to make it build
on systems without X11). However, libepoxy without glx is defective,
and gtk3 fails with it. So it seems like the right thing is to ensure
X11 presence for libepoxy.
This patch reverts upstream's disabling of glx (setting configure
variables/defines), making it be like libepoxy 1.2. The resulting
libepoxy has glx, and gtk3+ builds fine against it on OS X 10.9.
(It remains TBD to sort out how we feel about X vs quartz, but that's
a separable issue.)
Reviewed by ttn@ and tron@.
Epoxy is a library for handling OpenGL function pointer management for you.
It hides the complexity of dlopen(), dlsym(), glXGetProcAddress(),
eglGetProcAddress(), etc. from the app developer, with very little knowledge
needed on their part.