meson: use a feature option for libunwind

Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20409>
This commit is contained in:
Dylan Baker 2022-12-20 15:41:44 -08:00 committed by Marge Bot
parent 3f10a89180
commit 202344e9a0
2 changed files with 9 additions and 21 deletions

View file

@ -1901,26 +1901,16 @@ if get_option('execmem')
pre_args += '-DMESA_EXECMEM' pre_args += '-DMESA_EXECMEM'
endif endif
_libunwind = get_option('libunwind') _libunwind = get_option('libunwind') \
if _libunwind == 'true' .require(not with_platform_android, error_message : 'Android requires the use of the backtrace library, not libunwind')
_libunwind = 'enabled'
warning('libunwind option "true" deprecated, please use "enabled" instead.')
elif _libunwind == 'false'
_libunwind = 'disabled'
warning('libunwind option "false" deprecated, please use "disabled" instead.')
endif
if _libunwind != 'disabled' and not with_platform_android
if host_machine.system() == 'darwin' if host_machine.system() == 'darwin'
dep_unwind = meson.get_compiler('c').find_library('System') dep_unwind = meson.get_compiler('c').find_library('System', required : _libunwind)
else else
dep_unwind = dependency('libunwind', required : _libunwind == 'enabled') dep_unwind = dependency('libunwind', required : _libunwind)
endif endif
if dep_unwind.found() if dep_unwind.found()
pre_args += '-DHAVE_LIBUNWIND' pre_args += '-DHAVE_LIBUNWIND'
endif endif
else
dep_unwind = null_dep
endif
if with_osmesa if with_osmesa
if not with_gallium_softpipe if not with_gallium_softpipe

View file

@ -340,9 +340,7 @@ option(
) )
option( option(
'libunwind', 'libunwind',
type : 'combo', type : 'feature',
value : 'auto',
choices : ['auto', 'true', 'false', 'enabled', 'disabled'],
description : 'Use libunwind for stack-traces' description : 'Use libunwind for stack-traces'
) )
option( option(