History log of /external/mesa3d/include/GL/mesa_glinterop.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
c85b34ffd04f9a7a16fe30173474e857d0f42d5f 12-Oct-2016 Emil Velikov <emil.l.velikov@gmail.com> mesa_glinterop: allow building without X and related headers

This commit effectively reverts c10dcb2ce837922c6ee4e191e6d6202098a5ee10
and fixes the typedef redefinition which inspired it.

In order to prevent requiring X packages at build time earlier commit
forward declared the required X/GLX typedefs. Since that approach
introduced typedef redefinition (a C11 feature) it was reverted.

To avoid the redefinition while _not_ mandating X and related headers
forward declare the structs and use those through the header.

As anyone uses the mesa interop header they ensure that the X (or others
in terms of EGL) headers are included, which ensures that everything is
resolved within the compilation unit.

Cc: Vinson Lee <vlee@freedesktop.org>
Cc: "12.0" <mesa-stable@lists.freedesktop.org>
Cc: Tapani Pälli <tapani.palli@intel.com>
Cc: Chih-Wei Huang <cwhuang@android-x86.org>
Fixes: c10dcb2ce837 ("Revert "mesa_glinterop: remove inclusion of GLX
header"")
Fixes: 8472045b16b3 ("mesa_glinterop: remove inclusion of GLX header")
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=96770
Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
Tested-by: Vinson Lee <vlee@freedesktop.org>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
/external/mesa3d/include/GL/mesa_glinterop.h
c10dcb2ce837922c6ee4e191e6d6202098a5ee10 04-Oct-2016 Vinson Lee <vlee@freedesktop.org> Revert "mesa_glinterop: remove inclusion of GLX header"

This reverts commit 8472045b16b3e4621553fe451a20a9ba9f0d44b6.

Conflicts:

include/GL/mesa_glinterop.h

This patch fixes this build error with GCC 4.4.

Compiling src/glx/dri_common_interop.c ...
In file included from src/glx/dri_common_interop.c:33:
include/GL/mesa_glinterop.h:62: error: redefinition of typedef ‘GLXContext’
include/GL/glx.h:165: note: previous declaration of ‘GLXContext’ was here

Fixes: 8472045b16b3 ("mesa_glinterop: remove inclusion of GLX header")
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=96770
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
/external/mesa3d/include/GL/mesa_glinterop.h
60a27ad122128145d28be37e9c0b0bc86a8e5181 23-Jun-2016 Giuseppe Bilotta <giuseppe.bilotta@gmail.com> Remove wrongly repeated words in comments

Clean up misrepetitions ('if if', 'the the' etc) found throughout the
comments. This has been done manually, after grepping
case-insensitively for duplicate if, is, the, then, do, for, an,
plus a few other typos corrected in fly-by

v2:
* proper commit message and non-joke title;
* replace two 'as is' followed by 'is' to 'as-is'.
v3:
* 'a integer' => 'an integer' and similar (originally spotted by
Jason Ekstrand, I fixed a few other similar ones while at it)

Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com>
Reviewed-by: Chad Versace <chad.versace@intel.com>
/external/mesa3d/include/GL/mesa_glinterop.h
13faddb6b8e30ff0e81e62fb863304a57c712aae 30-May-2016 Emil Velikov <emil.velikov@collabora.com> mesa_glinterop: remove mesa_glinterop typedefs

As is there are two places that do the typedefs - dri_interface.h and
this header. As we cannot include the former in here, just drop the
typedefs and use the struct directly (as needed).

This is required because typedef redefinition is C11 feature which is
not supported on all the versions of GCC used to build mesa.

v2: Kill the typedef alltogether, as per Marek.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=96236
Cc: Vinson Lee <vlee@freedesktop.org>
Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/include/GL/mesa_glinterop.h
e384d75b120ce60954c545e8c6edbe98fd01bea7 21-Apr-2016 Emil Velikov <emil.velikov@collabora.com> mesa_glinterop: make GL interop version field bidirectional

This allows clear and easy communication between the two.

Caller: Requesting information (struct vN)
Callee: I know how to deal with older version (vN-1) only. Here is your
data and the version I support.
Caller: Older version ? Sure I'll cap all access to the fields provided
by the older version (vN-1)

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Tested-by: Tom Stellard <thomas.stellard@amd.com>
/external/mesa3d/include/GL/mesa_glinterop.h
0e983276b96eee5aa1dd091888bc81e36169a8f1 21-Apr-2016 Emil Velikov <emil.velikov@collabora.com> mesa_glinterop: drop mesa_glinterop_device_info::interop_version

One cannot use a single version to control both export_in and export_out
versions. Using this forces us to always extend/bump both structs at the
same time.

An alternative scheme is coming with next patch.

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Tested-by: Tom Stellard <thomas.stellard@amd.com>
/external/mesa3d/include/GL/mesa_glinterop.h
923bdbf48c4113326773e98c786e4405b2e1838b 03-May-2016 Emil Velikov <emil.velikov@collabora.com> mesa_glinterop: rename MESA_GLINTEROP_INVALID_{VALUE,VERSION}

Be more explicit what it actually does.

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Tested-by: Tom Stellard <thomas.stellard@amd.com>
/external/mesa3d/include/GL/mesa_glinterop.h
c196de23aece3cea7b30da6d7356b614ee254dae 21-Apr-2016 Emil Velikov <emil.velikov@collabora.com> mesa_glinterop: s/struct_version/version/

OCD polish for consistency with other mesa interfaces.

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Tested-by: Tom Stellard <thomas.stellard@amd.com>
/external/mesa3d/include/GL/mesa_glinterop.h
cb0708c8438390509d0814cda45e7576b7c0555c 21-Apr-2016 Emil Velikov <emil.velikov@collabora.com> mesa_glinterop: fix GL interop *_VERSION comments

Using the macro to set the version is wrong and ill-advised. Please don't
do it.

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Tested-by: Tom Stellard <thomas.stellard@amd.com>
/external/mesa3d/include/GL/mesa_glinterop.h
a3eb8702fb4de03ca132a66e7e8df1a0b8f85e9a 03-May-2016 Emil Velikov <emil.velikov@collabora.com> mesa_glinterop: remove inclusion of EGL header

Analogous to previous commit, but for EGL.

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Tested-by: Tom Stellard <thomas.stellard@amd.com>
/external/mesa3d/include/GL/mesa_glinterop.h
8472045b16b3e4621553fe451a20a9ba9f0d44b6 03-May-2016 Emil Velikov <emil.velikov@collabora.com> mesa_glinterop: remove inclusion of GLX header

Since we only need partial information about the GLX symbols we can
forward declare them and drop the include. Obviously each user of the
said API will needs more than what's provides, so they'll include the
GLX header.

If they don't, the compiler will give us a nice warning ;-)

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Tested-by: Tom Stellard <thomas.stellard@amd.com>
/external/mesa3d/include/GL/mesa_glinterop.h
b5f9820d905a275bc01bbffa9b4927ec11286f8d 03-May-2016 Emil Velikov <emil.velikov@collabora.com> mesa_glinterop: remove unneeded GLAPI/GLAPIENTRY/APIENTRYP symbols

These come from windows.h, gl.h, glcorearb.h and/or glext.h.

The interop interface is aimed at non-Windows platforms while the macros
are used/derived due to Windows specifics. Thus we can safely remove
them.

Strictly speaking there should be GLXAPIENTRY/EGLAPIENTRY and alike
macros, although a) there is no GLX ones and b) this brings us even
further from decoupling the file from the GLX/EGL header dependency.

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Tested-by: Tom Stellard <thomas.stellard@amd.com>
/external/mesa3d/include/GL/mesa_glinterop.h
bcf9e476532f12544d1831300dbb2caa1e7c0bdf 03-May-2016 Emil Velikov <emil.velikov@collabora.com> mesa_glinterop: replace GL types with their native counterpart.

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Tested-by: Tom Stellard <thomas.stellard@amd.com>
/external/mesa3d/include/GL/mesa_glinterop.h
2e726144f9158b8acd4487d9a1beceaa1be85614 21-Apr-2016 Emil Velikov <emil.velikov@collabora.com> mesa_glinterop: use generic variable types for the GL interop

Thus we can preserve the ABI, while avoiding the inclusion of some/all
of the following:

EGL/egl.h
GL/gl.h
GL/glcorearb.h
GLES/gl.h
GLES2/gl2.h
GLES3/gl3.h
GLES3/gl31.h

This will allow us to build/use it alongside any combination of APIs.

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Tested-by: Tom Stellard <thomas.stellard@amd.com>
/external/mesa3d/include/GL/mesa_glinterop.h
cbf29d90bae9ba415b8158afc3a06a1360ec0bc4 21-Apr-2016 Emil Velikov <emil.velikov@collabora.com> mesa_glinterop: use consistent naming scheme for GL interop

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Tested-by: Tom Stellard <thomas.stellard@amd.com>
/external/mesa3d/include/GL/mesa_glinterop.h
0d31bfd71aa44aa34f3cfa8711c4070c3fb1e26a 24-May-2016 Emil Velikov <emil.velikov@collabora.com> Revert "mesa: Build EGL without X11 headers after interop patchset"

This reverts commit 4e2c9a04354b6b133845b8b93c0c5d34261a91d0.

The solution was incomplete and fragile. An alternative one is coming
shortly.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Tested-by: Tom Stellard <thomas.stellard@amd.com>
/external/mesa3d/include/GL/mesa_glinterop.h
4e2c9a04354b6b133845b8b93c0c5d34261a91d0 28-Apr-2016 Youry Metlitsky <winaes@narod.ru> mesa: Build EGL without X11 headers after interop patchset

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/include/GL/mesa_glinterop.h
6eeb729490a7880f8dc17de855d205a7cce5f28c 26-Feb-2016 Marek Olšák <marek.olsak@amd.com> include/GL: add mesa_glinterop.h for OpenGL-OpenCL interop (v4.2)

v2: - use "enum" to define stuff
v3: - more comments, define MESA_GLINTEROP_UNSUPPORTED
v4: - add mesa_glinterop_device_info::interop_version
- more comments
- remove #define MESA_GLINTEROP_VERSION
- use const for "in"
v4.1: - use version numbers for structures
- add "out_driver_data_written"
v4.2: - buf_offset & buf_size affect GL_ARRAY_BUFFER too, this is required
for sharing suballocations within a larger buffer
/external/mesa3d/include/GL/mesa_glinterop.h