summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* | Merge pull request #158 from rossburton/masterEmmanuele Bassi2018-03-126-17/+24
|\ \ | | | | | | Improvements to the test suite
| * | autotools: check for dlvsymRoss Burton2018-03-123-10/+10
| | | | | | | | | | | | | | | | | | As per the previous commit, instead of assuming that Apple doesn't have dlvsym but everywhere else does, actually check for dlvsym() existing as that function is glibc-specific.
| * | meson: generalise build_apple to has_dlvsymRoss Burton2018-03-122-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | build_apple was introduced in 756dca as a proxy for the fact that Apple's libc doesn't have dlvsym(), which is glibc-specific so also isn't present in other libc implementations such as musl. Instead of detecting whether we are building for Apple or not, just probe the to see if we have dlvsym.
| * | meson: add option to enable/disable the test suiteRoss Burton2018-03-122-1/+8
|/ /
* | test: Avoid egl_without_glx crash on NVIDIAJan Alexander Steffens (heftig)2018-03-081-6/+8
|/ | | | | The NVIDIA driver calls dlopen with NULL as filename; strcmp is not NULL-safe.
* Post-release version bump to 1.5.1Emmanuele Bassi2018-02-282-2/+2
|
* tests: Add EGL test for Epoxy API1.5.0Emmanuele Bassi2018-02-243-0/+147
| | | | | | | We have a few public entry points that we ought to test properly. Using the EGL API is easier to set up a test case, so let's just do that.
* Support encoding minor versions bigger than 10Emmanuele Bassi2018-02-241-3/+9
| | | | | | | | | | | The GL version minor numbers haven't hit 10, yet, but if they do we're going to get non-sensical encoded versions when calling epoxy_gl_version(), like we're getting right now, with the GLSL version numbers. If the minor number is larger than the multiplication factor used for the major number, we should bump up the factor to the next order of magnitude.
* meson: Use get_supported_arguments()Emmanuele Bassi2018-02-241-6/+1
| | | | | | | Instead of iterating over the list of compiler flags, we should use the get_supported_arguments() method of the compiler object, which does it for us — and maybe, in the future, will be optimised to do the checks in parallel.
* Fix epoxy_internal_gl_version()Emmanuele Bassi2018-02-241-1/+1
| | | | The glGetString() function takes a GLenum, so we should too.
* ci: Update the version of Meson for AppveyorEmmanuele Bassi2018-02-231-6/+6
| | | | We require a newer version than 0.39.1.
* Do not use OPENGL_LIB on AndroidEmmanuele Bassi2018-02-231-0/+2
| | | | | | | | When building on Android we end up in the Linux branch of the symbol loading logic, but the __ANDROID__ conditional does not have the OPENGL_LIB symbol defined, and that breaks the build. Closes: #152
* Document epoxy_set_resolver_failure_handler()Emmanuele Bassi2018-02-231-0/+7
|
* Add epoxy_glsl_version()Emmanuele Bassi2018-02-232-4/+30
| | | | | | | | Epoxy should provide a function that returns the version of the GL shading language in use, in the same vein as it allows to get the version of GL. Closes: #145
* meson: Rename the configuration optionsEmmanuele Bassi2018-02-233-8/+9
| | | | | | | The `enable-` prefix is an Autotool-ism; idiomatic naming for Meson projects should just use the name of the option, and rely on the type to convey meaning, especially because Meson does not have `disable` aliases that avoid the explicit `enable-foo=no` cases.
* docs: Update the supported GL version to 4.6Emmanuele Bassi2018-02-232-2/+2
|
* Allow building Epoxy without X11Emmanuele Bassi2018-02-235-8/+48
| | | | | | | | | Epoxy can be compiled with GLX and X11 native resources on EGL. We can disable the former, but the latter is always built in when enabling EGL support. Some platforms do not support X11 at all, so we need a way to disable X11 when configuring Epoxy.
* Add gl and egl private dependenciesEmmanuele Bassi2018-02-233-0/+19
| | | | | | | | | | | | | | | If the system we're building Epoxy on has GL and EGL pkg-config modules, then we should add them to the Requires.private field of the pkg-config file. The Requires.private field does not contribute to the linker flags generated by pkg-config, unless we're doing a static build; it does, however, contribute to the compiler flags generated by pkg-config, which means that platforms that specify ad hoc compiler flags for their GL and EGL implementations via pkg-config will be able to propagate them through Epoxy. Closes: #139
* meson: Remove unnecessary configuration_data objectEmmanuele Bassi2018-02-231-14/+0
| | | | | | We generate the pkg-config file using Meson's pkgconfig module as of commit b1119d8fcfe646f3ff108a3bf3685dfce6f049e4, but we're still setting up a configuration_data object.
* ci: Add Docker image filesEmmanuele Bassi2018-02-234-3/+66
| | | | | There's no real benefit in hosting the Dockerfile in an external repository.
* Update registryEmmanuele Bassi2018-02-234-1601/+4182
| | | | | - OpenGL: dc62ac39930726183c0f0ad007e4ce6499597664 - EGL: 0fa0d37da846998aa838ed2b784a340c28dadff3
* meson: Generate the pkg-config fileEmmanuele Bassi2018-02-232-34/+35
| | | | | | | | Instead of using a template file, and filling in the blanks, we can use the Meson pkgconfig module to generate the pkg-config file mostly from the library object itself — including dependencies and flags. The template file remains in tree for the Autotools build.
* Bump up the Meson dependencyEmmanuele Bassi2018-02-231-1/+1
| | | | | | Use the latest stable release; we're going to use its features to generate the pkg-config file for Epoxy, instead of using a template file.
* Include Xlib.h when using Xlib APIEmmanuele Bassi2018-02-231-0/+1
| | | | | | The common EGL testing code uses XOpenDisplay(), which means we need to explicitly include the Xlib.h header file, instead of relying on something else stringing it along.
* travis: Drop conditional on LinuxEmmanuele Bassi2018-02-231-7/+7
| | | | | | | We currently run CI on Linux only, given that the macOS builders in Travis are always fairly overwhelmed; thus, there's no need to complicate the Travis script with a conditional that is always going to be true.
* Merge pull request #143 from ikeydoherty/comp-warningsEmmanuele Bassi2018-02-2314-51/+54
|\ | | | | Fix printf family usage
| * Only use printf family when passing argumentsIkey Doherty2017-10-1914-50/+49
| | | | | | | | | | | | | | This avoids any unnecessary allocations when simply passing static strings to be printed onto stderr, and uses the simpler fputs mechanism. Signed-off-by: Ikey Doherty <ikey@solus-project.com>
| * test: Fix trivial compiler warning in dlwrapIkey Doherty2017-10-191-1/+5
| | | | | | | | | | | | | | | | This mutes compiler warnings for `dlwrap.c` by ensuring we actually check the return status of the `asprintf` call. At this point in the test suite our possible failure here is only memory, so we'll abort. Signed-off-by: Ikey Doherty <ikey@solus-project.com>
* | Merge pull request #155 from mgorny/dlEmmanuele Bassi2018-02-231-2/+2
|\ \ | | | | | | test: Fix respecting $(DLOPEN_LIBS)
| * | test: Fix respecting $(DLOPEN_LIBS)Michał Górny2018-02-221-2/+2
|/ / | | | | | | | | Fix two tests that are linking to -ldl directly to use DLOPEN_LIBS. This fixes failing test build on Gentoo/FreeBSD.
* | Merge pull request #154 from nwnk/fix-dlwrap-for-glvndEmmanuele Bassi2018-02-071-0/+1
|\ \ | | | | | | test: Fix dlwrap for glvnd
| * | test: Fix dlwrap for glvndAdam Jackson2018-02-071-0/+1
|/ / | | | | | | | | | | | | | | | | Add libOpenGL to the list of libraries we'll intercept. This is harmless if glvnd is not available as the dlopen(libOpenGL.so) will fail, but without this we can't intercept glGetString, which the egl_and_glx_different_pointers_glx test needs to be able to do. Signed-off-by: Adam Jackson <ajax@redhat.com>
* | Merge pull request #151 from rib/wip/rib/androidEmmanuele Bassi2018-01-191-3/+3
|\ \ | |/ |/| Check __ANDROID__ define when guarding Android code
| * Check __ANDROID__ define when guarding Android codeRobert Bragg2018-01-181-3/+3
|/ | | | | | Both gcc and clang define __ANDROID__ but not ANDROID when targeting Android so at least with the Meson build, and an NDK r16 toolchain, testing on Android failed without this change.
* Merge pull request #136 from Lyude/pull/epoxy_ext_in_strEmmanuele Bassi2017-10-193-2/+25
|\ | | | | Expose epoxy_extension_in_string() in public headers
| * Expose epoxy_extension_in_string() in public headersLyude Paul2017-08-243-2/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The EGL_EXT_device_query extension introduces the eglQueryDeviceStringEXT() function, which can be used with an EGLDeviceEXT enumeration to receive an OpenGL extension string containing all of the device extensions supported by it. From the EGL_EXT_device_query spec's amendments to section "3.2 Devices" after "3.1 Errors": const char *eglQueryDeviceStringEXT(EGLDeviceEXT device, EGLint name); returns a pointer to a static, zero-terminated string describing some aspect of the specified EGLDeviceEXT. <name> must be EGL_EXTENSIONS. Since OpenGL extension parsing is rather simple, and we could always run into additional cases similar to this one in the future, we expose the shared epoxy_extension_in_string() function in libepoxy's public headers so that users can save themselves the hassle of having to write their own extension parser. Signed-off-by: Lyude Paul <thatslyude@gmail.com>
* | Merge pull request #141 from dcbaker/submit/fix-static-buildEmmanuele Bassi2017-10-181-1/+1
|\ \ | | | | | | meson: Define visibility flags for static builds
| * | meson: Define visibility flags for static buildsDylan Baker2017-10-131-1/+1
| | | | | | | | | | | | | | | It's used unconditionally, but defined only for shared builds. For static builds define it but don't populate it.
* | | Merge pull request #140 from danem/patch-1Emmanuele Bassi2017-10-181-1/+1
|\ \ \ | |/ / |/| | Fix pointer mismatch bug on Windows 10.
| * | Fix pointer mismatch bug on Windows 10. danem2017-10-131-1/+1
|/ / | | | | We must explicitly cast to void**
* | Bump up the libepoxy versionEmmanuele Bassi2017-09-112-2/+2
| | | | | | | | We added new API, so we need a new version.
* | Merge pull request #131 from nwnk/nonfatal-resolve-handlerEmmanuele Bassi2017-09-114-0/+38
|\ \ | | | | | | RFC: Add epoxy_set_resolver_failure_handler()
| * | Add epoxy_set_resolver_failure_handler()Adam Jackson2017-07-144-0/+38
| | | | | | | | | | | | Signed-off-by: Adam Jackson <ajax@redhat.com>
* | | Merge pull request #137 from nigels-com/masterEmmanuele Bassi2017-09-111-1/+0
|\ \ \ | | | | | | | | GLEW supports EGL as of version 2.0.0 onwards
| * | | GLEW supports EGL as of version 2.0.0 onwardsNigel Stewart2017-08-261-1/+0
| | |/ | |/|
* | | Merge pull request #138 from nwnk/fix-libopengl-sonameEmmanuele Bassi2017-09-111-1/+1
|\ \ \ | |/ / |/| | dispatch: Fix the libOpenGL soname
| * | dispatch: Fix the libOpenGL sonameAdam Jackson2017-09-071-1/+1
|/ / | | | | | | Brown-paper-bag-for: Adam Jackson <ajax@redhat.com>
* | Merge pull request #134 from fooishbar/add-eglcast-defEmmanuele Bassi2017-07-211-0/+9
|\ \ | |/ |/| Add fallback definition for EGL_CAST
| * Add fallback definition for EGL_CASTDaniel Stone2017-07-071-0/+9
| | | | | | | | | | | | | | | | | | The EGL API update from d11104f2b5 introduced a dependency on the EGL_CAST() macro, provided by an updated eglplatform.h. Given that we don't provide eglplatform.h, add a fallback definition for if we're building against Mesa 17.0.x or similar. https://bugs.gentoo.org/show_bug.cgi?id=623926
* | Merge pull request #133 from nwnk/glx-detection-paranoiaEmmanuele Bassi2017-07-131-12/+23
|\ \ | |/ |/| Try even harder to not load GLX