summaryrefslogtreecommitdiff
path: root/src/mapi/es2api
AgeCommit message (Collapse)AuthorFilesLines
2024-06-29build: pass licensing information in SPDX formDavid Heidelberg1-18/+1
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> Acked-by: Dylan Baker <dylan.c.baker@intel.com> Acked-by: Eric Engestrom <eric@igalia.com> Acked-by: Daniel Stone <daniels@collabora.com> Signed-off-by: David Heidelberg <david@ixit.cz> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29972>
2023-01-19meson: use the same workaround for setting 'lib' on windowsDylan Baker1-1/+1
Reviewed-by: Eric Engestrom <eric@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20752>
2022-11-11meson: Refactoring shared gen_vs_module_defs_normal_command outYonggang Luo1-3/+1
Cc: mesa-stable Signed-off-by: Yonggang Luo <luoyonggang@gmail.com> Reviewed-by: Jesse Natalie <jenatali@microsoft.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19610>
2022-06-16meson: Using get_argument_syntax as the `--compiler_id` option for ↵Yonggang Luo1-1/+1
gen_vs_module_defs.py Signed-off-by: Yonggang Luo <luoyonggang@gmail.com> Reviewed-by: Dylan Baker <dylan@pnwbakers.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17065>
2022-06-09c11: Implement c11/time.h with c11/impl/time.cYonggang Luo1-1/+1
Create c11/time.h instead of put timespec_get in `c11/threads.h` Creating impl folder is used to avoid `#include <time.h>` point the c11/time.h file Detecting if `struct timespec` present with meson Define TIME_UTC in `c11/time.h` instead `c11/threads.h` Define `struct timespec` in `c11/time.h` when not present. Implement timespec_get in c11/impl/time.c instead threads.h Signed-off-by: Yonggang Luo <luoyonggang@gmail.com> Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15497>
2022-04-19win32: Do not use BUILD_GL32, we use def file to export win32 dll symbols.Yonggang Luo1-1/+1
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com> Reviewed-by: Jesse Natalie <jenatali@microsoft.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14041>
2022-04-19win32: Fixes 32 bits visual studio module definition files by add script ↵Yonggang Luo2-0/+369
gen_vs_module_defs.py Getting opengl32*.def consistence with Windows SDK. Getting osmesa.mingw.def's gl* functions consistence with Windows SDK. stw_* functions are cdecl, not stdcall, so there is no need mangling the symbol. Fixes egl.def for x86 d3d10sw: Move the place of d3d10_sw.def to d3d10_sw.def.in Fixes vulkan_lvp.def for x86 Fixes #5552 Remove stdcall-fixup Signed-off-by: Yonggang Luo <luoyonggang@gmail.com> Reviewed-by: Jesse Natalie <jenatali@microsoft.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14041>
2021-02-22Adjust dylib compatibility versions to match what was set by mesa-18.3's ↵Jeremy Huddleston Sequoia1-0/+1
autotools-based builds Cc: 20.3 21.0 <mesa-stable@lists.freedesktop.org> Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4113 Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com> Reviewed-by: Dylan Baker <dylan.c.baker@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8796>
2020-06-01meson: use gnu_symbol_visibility argumentDylan Baker1-1/+1
This uses a meson builtin to handle -fvisibility=hidden. This is nice because we don't need to track which languages are used, if C++ is suddenly added meson just does the right thing. Acked-by: Matt Turner <mattst88@gmail.com> Reviewed-by: Eric Engestrom <eric@engestrom.ch> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4740>
2019-11-05meson: move the generic symbols check arguments to a common variableEric Engestrom1-1/+1
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com> Reviwed-by: Dylan Baker <dylan@pnwbakers>
2019-11-05meson: add variable to control the symbols checksEric Engestrom1-1/+1
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com> Reviwed-by: Dylan Baker <dylan@pnwbakers>
2019-10-10meson: maintain names of shared API librariesDylan Baker1-0/+2
Mesa uses the lib prefix, and doesn't use a version for it's dynamic libraries, which meson defaults to. v2: - this patch Acked-by: Eric Engestrom <eric.engestrom@intel.com> Acked-by: Kristian H. Kristensen <hoegsberg@google.com>
2019-10-10meson: Add windows defines to glapiDylan Baker1-1/+9
These are needed to control the export or symbols due to differences between the way windows and *nix handle symbol exports. Reviewed-by: Eric Anholt <eric@anholt.net> (v2) Acked-by: Kristian H. Kristensen <hoegsberg@google.com> v5: - key NO_EXPORT off of shared-glapi instead of gles
2019-07-10gles: use new symbols check scriptEric Engestrom2-31/+7
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com> Reviewed-by Dylan Baker <dylan@pnwbakers.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2019-05-03meson: make nm binary optionalDylan Baker1-1/+1
This makes nm not required, but used if found. In general I imagine that this means that on windows nm wont be found, and on other platforms it will. v2: - fix gbm and egl symbols check tests to only be run if nm is found - reword commit message to reflect the code change Reviewed-by: Eric Anholt <eric@anholt.net>
2019-04-29delete autotools input filesEric Engestrom1-12/+0
Leftovers from when autotools was deleted. Signed-off-by: Eric Engestrom <eric.engestrom@intel.com> Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
2019-04-29delete autotools .gitignore filesEric Engestrom1-1/+0
One special case, `src/util/xmlpool/.gitignore` is not entirely deleted, as `xmlpool.pot` still gets generated (eg. by `ninja xmlpool-pot`). Signed-off-by: Eric Engestrom <eric.engestrom@intel.com> Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
2019-03-21configure.ac/meson.build: Add options for library suffixesBenjamin Gordon1-1/+1
When building the Chrome OS Android container, we need to build copies of mesa that don't conflict with the Android system-supplied libraries. This adds options to create suffixed versions of EGL and GLES libraries: libEGL.so -> libEGL${egl-lib-suffix}.so libGLESv1_CM.so -> libGLESv1_CM${gles-lib-suffix}.so libGLESv2.so -> libGLES${gles-lib-suffix}.so This is similar to what happens when --enable-libglvnd is specified, but without the side effects of linking against libglvnd. To avoid unexpected clashes with the suffixed appended by libglvnd, make it an error to specify both --enable-libglvnd and --with-egl-lib-suffix. Reviewed-by: Eric Engestrom <eric.engestrom@intel.com>
2019-02-13mapi: work around GCC LTO dropping assembly-defined functionsKonstantin Kharlamov1-0/+1
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109391 Signed-off-by: Konstantin Kharlamov <Hi-Angel@yandex.ru> Acked-by: Eric Engestrom <eric.engestrom@intel.com> Reviewed-by: Dylan Baker <dylan@pnwbakers.com> Reviewed-by: Eric Engestrom <eric.engestrom@intel.com>
2019-01-24mapi/es2api: remove no longer present entrypointsEmil Velikov1-5/+0
With the previous scripts API from the following was incorrectly exported. Drop them from the list, since they're no longer around. GL_EXT_blend_func_extended GL_EXT_texture_integer Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
2019-01-24mapi/es*api: remove GL_EXT_multi_draw_arrays entrypointsEmil Velikov1-5/+1
Now we use the upstream XML file and a cleaner generator. Thus the symbols are no longer exported and we can drop them from this list. Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
2019-01-24mapi/es*api: remove GL_OES_EGL_image entrypointsEmil Velikov1-3/+0
As some point in the past we fixed the scripts so, these are no longer exported. Drop them from the list. Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
2019-01-24meson: wire the new generator for es1 and es2Emil Velikov1-3/+3
v2: use ${foo})_py naming (Dylan) v3: use symbolic name for genCommon.py Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com> (v2)
2018-11-20meson: Add tests to suitesDylan Baker1-1/+2
Meson test has a concepts of suites, which allow tests to be grouped together. This allows for a subtest of tests to be run only (say only the tests for nir). A test can be added to more than one suite, but for the most part I've only added a test to a single suite, though I've added a compiler group that includes nir, glsl, and glcpp tests. To use this you'll need to invoke meson test directly, instead of ninja test (which always runs all targets). it can be invoked as: `meson test -C builddir --suite $suitename` (meson test has addition options that are pretty useful). Tested-By: Gert Wollny <gert.wollny@collabora.com> Acked-by: Eric Engestrom <eric.engestrom@intel.com>
2018-11-09Revert "mesa/main: fixup make check after NV_conditional_render for gles"Erik Faye-Lund1-2/+0
This reverts commit cccd7a253f9ed14ea748a222f58b0e5c895eb939.
2018-11-09mesa/main: fixup make check after NV_conditional_render for glesErik Faye-Lund1-0/+2
It seems I missed some details when exposing NV_conditional_render on GLES; this fixes up "make check". Fixes: 5213be9fab7 ("mesa: expose NV_conditional_render on GLES") Signed-off-by: Erik Faye-Lund <erik.faye-lund@collabora.com> Reviewed-and-Tested-by: Eric Engestrom <eric.engestrom@intel.com>
2018-08-10meson: Build with Python 3Mathieu Bridon1-1/+1
Now that all the build scripts are compatible with both Python 2 and 3, we can flip the switch and tell Meson to use the latter. Since Meson already depends on Python 3 anyway, this means we don't need two different Python stacks to build Mesa. Signed-off-by: Mathieu Bridon <bochecha@daitauha.fr> Reviewed-by: Eric Engestrom <eric.engestrom@intel.com> Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
2018-02-26*-symbol-check: use correct `nm` path when cross-compilingEric Engestrom2-1/+2
Inspired-by: a similar patch for libdrm by Heiko Becker Signed-off-by: Eric Engestrom <eric.engestrom@imgtec.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2018-02-16meson: Add Haiku platform support v4Alexander von Gluck IV1-1/+1
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
2018-01-11meson: Use consistent style for testsDylan Baker1-1/+2
Don't use intermediate variables, use consistent whitespace. Acked-by: Eric Engestrom <eric.engestrom@imgtec.com> Signed-off-by: Dylan Baker <dylan.c.baker@intel.com>
2018-01-11meson: Use consistent styleDylan Baker1-2/+4
Currently the meosn build has a mix of two styles: arg : [foo, ... bar], and arg : [ foo, ..., bar, ] For consistency let's pick one. I've picked the later style, which I think is more readable, and is more common in the mesa code base. v2: - fix commit message Acked-by: Eric Engestrom <eric.engestrom@imgtec.com> Signed-off-by: Dylan Baker <dylan.c.baker@intel.com>
2017-11-24mapi: Teach es{1,2}api/ABI-check shared library names on CygwinJon Turney1-4/+9
Ideally we'd be able to get the library filename from libtool, but that doesn't seem to be a feature... Use of ${uname} is presumably ok here as we won't be running 'make check' if we are cross-compiling Signed-off-by: Jon Turney <jon.turney@dronecode.org.uk> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com>
2017-11-23meson: add variable for mapi_abi.py instead of going back up the treeEric Engestrom1-1/+1
Signed-off-by: Eric Engestrom <eric.engestrom@imgtec.com> Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
2017-11-15mapi: Use correct shared libraries suffix on macOS.Vinson Lee1-1/+6
Signed-off-by: Vinson Lee <vlee@freedesktop.org> Reviewed-by: Dylan Baker <dylan@pnwbakers.com> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com>
2017-11-07meson: standardize .so version to major.minor.patchEric Engestrom1-1/+1
This `version` field defines the filename for the .so. The plan .so as well as .so.$major are always symlinks to this. Unless I'm mistaken, only the major is ever used, so this shouldn't matter, but for consistency with autotools (and in case it does matter), let's always have all 3 major.minor.patch components. (The soname isn't affected, and is always .so.$major) Signed-off-by: Eric Engestrom <eric@engestrom.ch> Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
2017-11-02es2api/ABI-check: Add es3.x symbolsDylan Baker1-8/+125
Currently this ABI check only checks for es2 symbols, but es3.x symbols are also exposed. Exposing these symbols is recommended by Khronos, and as such the test should accept that as ABI. see: https://lists.freedesktop.org/archives/mesa-stable/2016-June/004545.html for the discussion about exposing these symbols cc: Ian Romanick <idr@freedesktop.org> Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com> Tested-by: Eric Engestrom <eric.engestrom@imgtec.com> Tested-by: Michel Dänzer <michel.daenzer@amd.com>
2017-11-01mapi: fix .so path in ABI-checkEric Engestrom1-1/+1
Signed-off-by: Eric Engestrom <eric.engestrom@imgtec.com> Reviewed-and-Tested-by: Michel Dänzer <michel.daenzer@amd.com>
2017-10-31meson: pass correct args to gles2 ABI testEric Engestrom1-1/+4
Signed-off-by: Eric Engestrom <eric.engestrom@imgtec.com> Reviewed-by: Dylan Baker <dylan@pnwbakers.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2017-10-31gles2: fail symbol check if lib is missingEric Engestrom1-1/+9
Signed-off-by: Eric Engestrom <eric.engestrom@imgtec.com> Reviewed-by: Dylan Baker <dylan@pnwbakers.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2017-10-09meson: Build i965 and dri stackDylan Baker1-0/+54
This gets pretty much the entire classic tree building, as well as i965, including the various glapis. There are some workarounds for bugs that are fixed in meson 0.43.0, which is due out on October 8th. I have tested this with piglit using glx. v2: - fix typo "vaule" -> "value" - use gtest dep instead of linking to libgtest (rebase error) - use gtest dep instead of linking against libgtest (rebase error) - copy the megadriver, then create hard links from that, then delete the megadriver. This matches the behavior of the autotools build. (Eric A) - Use host_machine instead of target_machine (Eric A) - Put a comment in the right place (Eric A) - Don't have two variables for the same information (Eric A) - Put pre_args at top of file in this patch (Eric A) - Fix glx generators in this patch instead of next (Eric A) - Remove -DMESON hack (Eric A) - add sha1_h to mesa in this patch (Eric A) - Put generators in loops when possible to reduce code in mapi/glapi/gen (Eric A) v3: - put HAVE_X11_PLATFORM in this patch Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com> Reviewed-by: Eric Anholt <eric@anholt.net>
2017-03-10mapi: do not mandate bash for es*api/ABI-checkEmil Velikov1-1/+1
Seemingly there is nothing bash specific in these. The Debian checkbashisms does not spot neither run in zsh. Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com>
2015-08-27ABI-check: Use more portable bash invocation.Vinson Lee1-1/+1
Fixes 'make check' on FreeBSD. Signed-off-by: Vinson Lee <vlee@freedesktop.org> Reviewed-by: Matt Turner <mattst88@gmail.com>
2014-08-18mapi: Inline es2api/Makefile.Matt Turner1-69/+0
Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
2014-04-05automake: don't enable -Wl,--no-undefined on OpenBSDJonathan Gray1-1/+1
OpenBSD does not have DT_NEEDED entries for libc by design, over concerns how the symbols would be referenced after changing the major version of the library. So avoid -no-undefined checks on OpenBSD as they will fail. v2: don't include the -no-undefined libtool option in the variable and change -Wl,--no-undefined references in Automake.inc as well. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=76856 Signed-off-by: Jonathan Gray <jsg@jsg.id.au> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Matt Turner <mattst88@gmail.com>
2014-04-01include/GLES3: add OpenGL ES 3.1 HeadersJordan Justen1-0/+1
From: http://www.khronos.org/registry/gles/api/GLES3/gl31.h http://www.khronos.org/registry/gles/api/GLES2/gl2ext.h http://www.khronos.org/registry/gles/api/GLES3/gl3platform.h Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Brian Paul <brianp@vmware.com>
2014-03-31mapi_abi: Remove ABI-check work arounds for functions that are no longer ↵Ian Romanick1-28/+0
exported The previous commit stopped exporting 21 libGLESv2 and 88 libGLESv1_CM functions. This removes the work-arounds for those functions from ABI-check. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Matt Turner <mattst88@gmail.com> Acked-by: Chad Versace <chad.versace@linux.intel.com>
2014-03-31automake: ask the linker to do garbage collectionEmil Velikov1-0/+1
By doing GC the linker removes all the symbols that are not referenced and/or used by the final library. This results in a saving of ~100K up-to ~600K per (stripped) binary (classic vs gallium drivers). If interested one can ask the compiler to print the sections that are removed using -Wl,--print-gc-sections. v2: Check if ld supports the flag before using it. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Acked-by: Matt Turner <mattst88@gmail.com> (v1)
2014-03-31automake: add -Wl,--no-undefined to all librariesEmil Velikov1-1/+4
... apart from the dri drivers. With this final change we can build mesa without fear that the resulting libraries will have unresolved symbols. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Matt Turner <mattst88@gmail.com>
2014-01-29build: Share the all-local rule for linking libraries into the build dirKristian Høgsberg1-7/+1
This consolidates how we link the libraries into the build directory. It works for lib_LTLIBRARIES but not custom shared libraries like DRI drivers or gallium state trackers which needs special casing (cf dri mega drivers, for example) Signed-off-by: Kristian Høgsberg <krh@bitplanet.net> Reviewed-by: Matt Turner <mattst88@gmail.com>
2013-04-15build: Move src/mapi/mapi/* to src/mapi/Matt Turner1-1/+1
Tested-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-and-Tested-by: Andreas Boll <andreas.boll.dev@gmail.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>