mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-22 05:35:25 +00:00
meson: properly handle readline if it's explicitly disabled
If readline is detected using pkg-config it would ignore the readline option. Signed-off-by: Pavel Hrdina <phrdina@redhat.com> Reviewed-by: Andrea Bolognani <abologna@redhat.com>
This commit is contained in:
parent
c8be9ccc36
commit
fc125d7e5c
36
meson.build
36
meson.build
@ -1243,26 +1243,30 @@ endif
|
||||
|
||||
# readline 7.0 is the first version which includes pkg-config support
|
||||
readline_version = '7.0'
|
||||
readline_dep = dependency('readline', version: '>=' + readline_version, required: false)
|
||||
if not readline_dep.found()
|
||||
readline_dep = cc.find_library('readline', required: get_option('readline'))
|
||||
if not get_option('readline').disabled()
|
||||
readline_dep = dependency('readline', version: '>=' + readline_version, required: false)
|
||||
if not readline_dep.found()
|
||||
readline_dep = cc.find_library('readline', required: get_option('readline'))
|
||||
|
||||
if readline_dep.found()
|
||||
# This variable is present in all reasonable (5.0+) readline versions;
|
||||
# however, the macOS base system contains a library called libedit which
|
||||
# takes over the readline name despite lacking many of its features. We
|
||||
# want to make sure we only enable readline support when linking against
|
||||
# the actual readline library, and the availability of this specific
|
||||
# variable is as good a witness for that fact as any.
|
||||
correct_rl = cc.has_header_symbol('readline/readline.h', 'rl_completion_quote_character', prefix: '#include <stdio.h>')
|
||||
if not correct_rl
|
||||
if get_option('readline').enabled()
|
||||
error('readline is missing rl_completion_quote_character')
|
||||
else
|
||||
readline_dep = dependency('', required: false)
|
||||
if readline_dep.found()
|
||||
# This variable is present in all reasonable (5.0+) readline versions;
|
||||
# however, the macOS base system contains a library called libedit which
|
||||
# takes over the readline name despite lacking many of its features. We
|
||||
# want to make sure we only enable readline support when linking against
|
||||
# the actual readline library, and the availability of this specific
|
||||
# variable is as good a witness for that fact as any.
|
||||
correct_rl = cc.has_header_symbol('readline/readline.h', 'rl_completion_quote_character', prefix: '#include <stdio.h>')
|
||||
if not correct_rl
|
||||
if get_option('readline').enabled()
|
||||
error('readline is missing rl_completion_quote_character')
|
||||
else
|
||||
readline_dep = dependency('', required: false)
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
else
|
||||
readline_dep = dependency('', required: false)
|
||||
endif
|
||||
if readline_dep.found()
|
||||
# Gross kludge for readline include path obtained through pkg-config.
|
||||
|
Loading…
Reference in New Issue
Block a user