meson: Make shared-glapi a combo
authorDylan Baker <dylan@pnwbakers.com>
Fri, 31 May 2019 23:16:22 +0000 (16:16 -0700)
committerDylan Baker <dylan@pnwbakers.com>
Tue, 10 Sep 2019 20:36:47 +0000 (20:36 +0000)
So it can auto off for windows, but on elsewhere.

Reviewed-by: Eric Engestrom <eric.engestrom@intel.com>
meson.build
meson_options.txt

index db21d4dbce4e66d12d4a7e223a774eaa49dd5f2f..2d6ac036475f8db8a0c36fd8502a2e4b45ae1158 100644 (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())
 
index b768c15053cddd034b7cafeeb528ba27dc7106e2..aadf7fd0721b4ee4aeec6bb31c21ad5a534d5184 100644 (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',