meson: Make shared-glapi a combo

So it can auto off for windows, but on elsewhere.

Reviewed-by: Eric Engestrom <eric.engestrom@intel.com>
This commit is contained in:
Dylan Baker 2019-05-31 16:16:22 -07:00
parent a1a8703199
commit 8424209a42
2 changed files with 13 additions and 5 deletions

View File

@ -89,7 +89,14 @@ if host_machine.system() == 'windows'
endif
endif
with_opengl = get_option('opengl')
with_shared_glapi = get_option('shared-glapi')
# Default shared glapi off for windows, on elsewhere.
_sg = get_option('shared-glapi')
if _sg == 'auto'
with_shared_glapi = host_machine.system() != 'windows'
else
with_shared_glapi = _sg == 'true'
endif
# shared-glapi is required if at least two OpenGL APIs are being built
if not with_shared_glapi
@ -115,7 +122,7 @@ with_gles1 = with_gles1 != 'false'
with_gles2 = with_gles2 != 'false'
with_any_opengl = with_opengl or with_gles1 or with_gles2
# Only build shared_glapi if at least one OpenGL API is enabled
with_shared_glapi = get_option('shared-glapi') and with_any_opengl
with_shared_glapi = with_shared_glapi and with_any_opengl
system_has_kms_drm = ['openbsd', 'netbsd', 'freebsd', 'gnu/kfreebsd', 'dragonfly', 'linux'].contains(host_machine.system())

View File

@ -176,9 +176,10 @@ option(
)
option(
'shared-glapi',
type : 'boolean',
value : true,
description : 'Whether to build a shared or static glapi'
type : 'combo',
value : 'auto',
choices : ['auto', 'true', 'false'],
description : 'Whether to build a shared or static glapi. Defaults to false on Windows, true elsewhere'
)
option(
'gles1',