<html>
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
</head>
<body dir="ltr" text="#000000" bgcolor="#FFFFFF">
<div id="divtagdefaultwrapper"
style="font-size:12pt;color:#000000;font-family:Calibri,Helvetica,sans-serif;"
dir="ltr">
<p style="margin-top:0;margin-bottom:0">> <span
style="font-family: Calibri, Helvetica, sans-serif, EmojiFont,
"Apple Color Emoji", "Segoe UI Emoji",
NotoColorEmoji, "Segoe UI Symbol", "Android
Emoji", EmojiSymbols; font-size: 14.6667px;">Jose, does
it make more sense to just </span><span style="font-family:
Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color
Emoji", "Segoe UI Emoji", NotoColorEmoji,
"Segoe UI Symbol", "Android Emoji",
EmojiSymbols; font-size: 14.6667px;">make gles on windows an
error in meson?</span></p>
<p style="margin-top:0;margin-bottom:0"><span style="font-family:
Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color
Emoji", "Segoe UI Emoji", NotoColorEmoji,
"Segoe UI Symbol", "Android Emoji",
EmojiSymbols; font-size: 14.6667px;"><br>
</span></p>
<p style="margin-top:0;margin-bottom:0"><span style="font-family:
Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color
Emoji", "Segoe UI Emoji", NotoColorEmoji,
"Segoe UI Symbol", "Android Emoji",
EmojiSymbols; font-size: 14.6667px;">I don't mind if there are
options for other things, but the default for the unsuspicious
user should be to create a single self-contained opengl32.dll,
as that is what's generally most useful (it can be used with
unmodified windows applications by putting on the same dir.)<br>
</span></p>
<p style="margin-top:0;margin-bottom:0"><span style="font-family:
Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color
Emoji", "Segoe UI Emoji", NotoColorEmoji,
"Segoe UI Symbol", "Android Emoji",
EmojiSymbols; font-size: 14.6667px;"><br>
</span></p>
<p style="margin-top:0;margin-bottom:0"><span style="font-family:
Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color
Emoji", "Segoe UI Emoji", NotoColorEmoji,
"Segoe UI Symbol", "Android Emoji",
EmojiSymbols; font-size: 14.6667px;">Jose<br>
</span></p>
<br>
<div style="color: rgb(0, 0, 0);">
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font style="font-size:11pt"
color="#000000" face="Calibri, sans-serif"><b>From:</b>
Dylan Baker <a class="moz-txt-link-rfc2396E" href="mailto:dylan@pnwbakers.com"><dylan@pnwbakers.com></a><br>
<b>Sent:</b> Friday, October 19, 2018 18:04<br>
<b>To:</b> <a class="moz-txt-link-abbreviated" href="mailto:mesa-dev@lists.freedesktop.org">mesa-dev@lists.freedesktop.org</a>; Brian Paul; Jose
Fonseca; Liviu Prodea; Roland Scheidegger<br>
<b>Subject:</b> Re: [Mesa-dev] [PATCH] scons: Remove gles
option.</font>
<div> </div>
</div>
<div class="BodyFragment"><font size="2"><span
style="font-size:11pt;">
<div class="PlainText">That's not quite right. GLES needs
shared glapi, but shared glapi doesn't need<br>
gles. meson and autoconf have separate toggles for
shared-glapi and gles, they<br>
both happen to default to "on" currently.<br>
<br>
If you want to uses GLES with mesa on Windows your best
bet is probably to use<br>
ARB_ES<n>_compatibility (replace <n> with 1,
2, 3, 3_1, or 3_2 as needed) from a<br>
GL Core Context like you would using the Nvidia or Intel
driver on windows.<br>
Don't try to go down the EGL on windows madness that the
proprietary AMD driver<br>
requires.<br>
<br>
Meson will likely continue to support shared glapi on
windows because every<br>
other platform that mesa supports needs shared-glapi. I
have in my latest spin<br>
default gles off on windows with meson. Jose, does it
make more sense to just<br>
make gles on windows an error in meson?<br>
<br>
Dylan<br>
<br>
Quoting Liviu Prodea (2018-10-19 08:04:28)<br>
> <br>
> <br>
> <br>
> I think I found autotools build equivalent for
gles=y. It is --enable-shared-glapi. And the docs say it
is needed to support applications that mix OpenGL and
OpenGL ES:<br>
> <br>
> <a href="https://www.mesa3d.org/egl.html">https://www.mesa3d.org/egl.html</a><br>
> <br>
>
-------------------------------------------------------------------------------------------------------------------------------------<br>
> <br>
> <br>
> On Friday, October 19, 2018, 4:15:48 PM GMT+3,
Brian Paul <a class="moz-txt-link-rfc2396E" href="mailto:brianp@vmware.com"><brianp@vmware.com></a> wrote:
<br>
> <br>
> <br>
> <br>
> <br>
> <br>
> Reviewed-by: Brian Paul <a class="moz-txt-link-rfc2396E" href="mailto:brianp@vmware.com"><brianp@vmware.com></a><br>
> <br>
> On 10/19/2018 06:33 AM, Jose Fonseca wrote:<br>
> > It's broken, and WGL state tracker is always
built with GLES support<br>
> > noawadays.<br>
> > ---<br>
> > common.py
| 2 --<br>
> > src/SConscript |
7 -------<br>
> > src/gallium/state_trackers/osmesa/SConscript
| 4 +---<br>
> > src/gallium/state_trackers/wgl/SConscript
| 4 +---<br>
> > src/gallium/targets/libgl-gdi/SConscript |
6 ------<br>
> > src/gallium/targets/libgl-xlib/SConscript
| 6 ------<br>
> > src/mapi/glapi/SConscript
| 6 +-----<br>
> > src/mapi/shared-glapi/SConscript |
9 +--------<br>
> > src/mesa/SConscript
| 4 +---<br>
> > src/mesa/drivers/osmesa/SConscript |
4 +---<br>
> > 10 files changed, 6 insertions(+), 46
deletions(-)<br>
> > <br>
> > diff --git a/common.py b/common.py<br>
> > index 113fc7f5c12..f4f2bb44c1c 100644<br>
> > --- a/common.py<br>
> > +++ b/common.py<br>
> > @@ -99,8 +99,6 @@ def AddOptions(opts):<br>
> > 'enable static code
analysis where available', 'no'))<br>
> > opts.Add(BoolOption('asan', 'enable
Address Sanitizer', 'no'))<br>
> > opts.Add('toolchain', 'compiler
toolchain', default_toolchain)<br>
> > - opts.Add(BoolOption('gles',
'EXPERIMENTAL: enable OpenGL ES support',<br>
> > - 'no'))<br>
> > opts.Add(BoolOption('llvm', 'use LLVM',
default_llvm))<br>
> > opts.Add(BoolOption('openmp',
'EXPERIMENTAL: compile with openmp (swrast)',<br>
> > 'no'))<br>
> > diff --git a/src/SConscript b/src/SConscript<br>
> > index 95ea061c4bb..54350a9cdcc 100644<br>
> > --- a/src/SConscript<br>
> > +++ b/src/SConscript<br>
> > @@ -42,10 +42,6 @@ env.Append(CPPPATH = ["#" +
env['build_dir']])<br>
> > if env['platform'] != 'windows':<br>
> > SConscript('loader/SConscript')<br>
> > <br>
> > -# When env['gles'] is set, the targets
defined in mapi/glapi/SConscript are not<br>
> > -# used. libgl-xlib and libgl-gdi adapt
themselves to use the targets defined<br>
> > -# in mapi/glapi-shared/SConscript.
mesa/SConscript also adapts itself to<br>
> > -# enable OpenGL ES support.<br>
> > SConscript('mapi/glapi/gen/SConscript')<br>
> > SConscript('mapi/glapi/SConscript')<br>
> > <br>
> > @@ -61,8 +57,5 @@ if not env['embedded']:<br>
> > if env['platform'] == 'haiku':<br>
> > SConscript('egl/SConscript')<br>
> > <br>
> > - if env['gles']:<br>
> > -
SConscript('mapi/shared-glapi/SConscript')<br>
> > -<br>
> > SConscript('gallium/SConscript')<br>
> > <br>
> > diff --git
a/src/gallium/state_trackers/osmesa/SConscript
b/src/gallium/state_trackers/osmesa/SConscript<br>
> > index f5519f13762..be67d0fe739 100644<br>
> > ---
a/src/gallium/state_trackers/osmesa/SConscript<br>
> > +++
b/src/gallium/state_trackers/osmesa/SConscript<br>
> > @@ -14,10 +14,8 @@ if env['platform'] ==
'windows':<br>
> > env.AppendUnique(CPPDEFINES = [<br>
> > 'BUILD_GL32', # declare gl* as
__declspec(dllexport) in Mesa headers<br>
> > 'WIN32_LEAN_AND_MEAN', # <a
href="http://msdn2.microsoft.com/en-us/library/6dwk3a1z.aspx">
http://msdn2.microsoft.com/en-us/library/6dwk3a1z.aspx</a><br>
> > + '_GLAPI_NO_EXPORTS', # prevent
_glapi_* from being declared __declspec(dllimport)<br>
> > ])<br>
> > - if not env['gles']:<br>
> > - # prevent _glapi_* from being
declared __declspec(dllimport)<br>
> > - env.Append(CPPDEFINES =
['_GLAPI_NO_EXPORTS'])<br>
> > <br>
> > st_osmesa = env.ConvenienceLibrary(<br>
> > target ='st_osmesa',<br>
> > diff --git
a/src/gallium/state_trackers/wgl/SConscript
b/src/gallium/state_trackers/wgl/SConscript<br>
> > index a7fbb07a89a..bbf5ebd9764 100644<br>
> > ---
a/src/gallium/state_trackers/wgl/SConscript<br>
> > +++
b/src/gallium/state_trackers/wgl/SConscript<br>
> > @@ -14,10 +14,8 @@ env.AppendUnique(CPPDEFINES
= [<br>
> > '_GDI32_', # prevent wgl* being declared
__declspec(dllimport)<br>
> > 'BUILD_GL32', # declare gl* as
__declspec(dllexport) in Mesa headers<br>
> > 'WIN32_LEAN_AND_MEAN', # <a
href="http://msdn2.microsoft.com/en-us/library/6dwk3a1z.aspx">
http://msdn2.microsoft.com/en-us/library/6dwk3a1z.aspx</a><br>
> > + '_GLAPI_NO_EXPORTS', # prevent _glapi_*
from being declared __declspec(dllimport)<br>
> > ])<br>
> > -if not env['gles']:<br>
> > - # prevent _glapi_* from being declared
__declspec(dllimport)<br>
> > - env.Append(CPPDEFINES =
['_GLAPI_NO_EXPORTS'])<br>
> > <br>
> > wgl = env.ConvenienceLibrary(<br>
> > target ='wgl',<br>
> > diff --git
a/src/gallium/targets/libgl-gdi/SConscript
b/src/gallium/targets/libgl-gdi/SConscript<br>
> > index 132cb73358d..94feca24ef3 100644<br>
> > --- a/src/gallium/targets/libgl-gdi/SConscript<br>
> > +++ b/src/gallium/targets/libgl-gdi/SConscript<br>
> > @@ -48,12 +48,6 @@ else:<br>
> > <br>
> > env['no_import_lib'] = 1<br>
> > <br>
> > -# when GLES is enabled, gl* and _glapi_*
belong to bridge_glapi and<br>
> > -# shared_glapi respectively<br>
> > -if env['gles']:<br>
> > - env.Prepend(LIBPATH = [shared_glapi.dir])<br>
> > - glapi = [bridge_glapi, 'libglapi']<br>
> > -<br>
> > opengl32 = env.SharedLibrary(<br>
> > target ='opengl32',<br>
> > source = sources,<br>
> > diff --git
a/src/gallium/targets/libgl-xlib/SConscript
b/src/gallium/targets/libgl-xlib/SConscript<br>
> > index fb7a0ce50e3..b49b4e6fe2a 100644<br>
> > ---
a/src/gallium/targets/libgl-xlib/SConscript<br>
> > +++
b/src/gallium/targets/libgl-xlib/SConscript<br>
> > @@ -18,12 +18,6 @@ env.Append(CPPDEFINES =
['USE_XSHM'])<br>
> > env.Prepend(LIBS = env['X11_LIBS'])<br>
> > env.Prepend(LIBPATH = env['X11_LIBPATH'])<br>
> > <br>
> > -# when GLES is enabled, gl* and _glapi_*
belong to bridge_glapi and<br>
> > -# shared_glapi respectively<br>
> > -if env['gles']:<br>
> > - env.Prepend(LIBPATH = [shared_glapi.dir])<br>
> > - glapi = [bridge_glapi, 'glapi']<br>
> > -<br>
> > env.Prepend(LIBS = [<br>
> > st_xlib,<br>
> > ws_xlib,<br>
> > diff --git a/src/mapi/glapi/SConscript
b/src/mapi/glapi/SConscript<br>
> > index 08fed6c0d35..118da1d53f7 100644<br>
> > --- a/src/mapi/glapi/SConscript<br>
> > +++ b/src/mapi/glapi/SConscript<br>
> > @@ -19,12 +19,8 @@ if env['platform'] ==
'windows':<br>
> > '_GDI32_', # prevent gl* being
declared __declspec(dllimport) in MS headers<br>
> > 'BUILD_GL32', # declare gl* as
__declspec(dllexport) in Mesa headers<br>
> > 'KHRONOS_DLL_EXPORTS', # declare gl*
as __declspec(dllexport) in Khronos headers<br>
> > + '_GLAPI_NO_EXPORTS', # prevent
_glapi_* from being declared __declspec(dllimport)<br>
> > ])<br>
> > - if env['gles']:<br>
> > - env.Append(CPPDEFINES =
['_GLAPI_DLL_EXPORTS'])<br>
> > - else:<br>
> > - # prevent _glapi_* from being
declared __declspec(dllimport)<br>
> > - env.Append(CPPDEFINES =
['_GLAPI_NO_EXPORTS'])<br>
> > <br>
> > env.Append(CPPPATH = [<br>
> > '#/src',<br>
> > diff --git a/src/mapi/shared-glapi/SConscript
b/src/mapi/shared-glapi/SConscript<br>
> > index 5d74bd6813f..060c61dadce 100644<br>
> > --- a/src/mapi/shared-glapi/SConscript<br>
> > +++ b/src/mapi/shared-glapi/SConscript<br>
> > @@ -113,11 +113,4 @@ if env['platform'] ==
'windows':<br>
> > else:<br>
> > shared_glapi = env.FindIxes(shared_glapi,
'SHLIBPREFIX', 'SHLIBSUFFIX')<br>
> > <br>
> > -# build glapi bridge as a convenience
libarary for libgl-xlib/libgl-gdi<br>
> > -bridge_glapi_objects = mapi_objects(env,
'glapi', 'bridge')<br>
> > -bridge_glapi = env.ConvenienceLibrary(<br>
> > - target = 'glapi_bridge',<br>
> > - source = bridge_glapi_objects,<br>
> > -)<br>
> > -<br>
> > -Export(['shared_glapi', 'bridge_glapi'])<br>
> > +Export(['shared_glapi'])<br>
> > diff --git a/src/mesa/SConscript
b/src/mesa/SConscript<br>
> > index 5a21b64f561..eaf23fbae18 100644<br>
> > --- a/src/mesa/SConscript<br>
> > +++ b/src/mesa/SConscript<br>
> > @@ -27,10 +27,8 @@ if env['platform'] ==
'windows':<br>
> > env.Append(CPPDEFINES = [<br>
> > '_GDI32_', # prevent gl* being
declared __declspec(dllimport) in MS headers<br>
> > 'BUILD_GL32', # declare gl* as
__declspec(dllexport) in Mesa headers<br>
> > + '_GLAPI_NO_EXPORTS', # prevent
_glapi_* from being declared __declspec(dllimport)<br>
> > ])<br>
> > - if not env['gles']:<br>
> > - # prevent _glapi_* from being
declared __declspec(dllimport)<br>
> > - env.Append(CPPDEFINES =
['_GLAPI_NO_EXPORTS'])<br>
> > <br>
> > # parse Makefile.sources<br>
> > source_lists =
env.ParseSourceList('Makefile.sources')<br>
> > diff --git
a/src/mesa/drivers/osmesa/SConscript
b/src/mesa/drivers/osmesa/SConscript<br>
> > index 064f3da5da9..b08a79eb8a5 100644<br>
> > --- a/src/mesa/drivers/osmesa/SConscript<br>
> > +++ b/src/mesa/drivers/osmesa/SConscript<br>
> > @@ -28,10 +28,8 @@ if env['platform'] ==
'windows':<br>
> > env.AppendUnique(CPPDEFINES = [<br>
> > '_GDI32_', # prevent wgl* being
declared __declspec(dllimport)<br>
> > 'BUILD_GL32', # declare gl* as
__declspec(dllexport) in Mesa headers<br>
> > + '_GLAPI_NO_EXPORTS', # prevent
_glapi_* from being declared __declspec(dllimport)<br>
> > ])<br>
> > - if not env['gles']:<br>
> > - # prevent _glapi_* from being
declared __declspec(dllimport)<br>
> > - env.Append(CPPDEFINES =
['_GLAPI_NO_EXPORTS'])<br>
> > <br>
> > sources += ['osmesa.def']<br>
> > <br>
> > <br>
> _______________________________________________<br>
> mesa-dev mailing list<br>
> <a class="moz-txt-link-abbreviated" href="mailto:mesa-dev@lists.freedesktop.org">mesa-dev@lists.freedesktop.org</a><br>
> <a
href="https://lists.freedesktop.org/mailman/listinfo/mesa-dev">https://lists.freedesktop.org/mailman/listinfo/mesa-dev</a><br>
</div>
</span></font></div>
</div>
</div>
</body>
</html>