build jslist.h depending apps only when header is available

This commit is contained in:
Nedko Arnaudov 2023-07-28 18:20:07 +03:00
parent 2e6dc07efe
commit bd85999e84
2 changed files with 17 additions and 2 deletions

View File

@ -119,6 +119,19 @@ has_jack2_internal_client = cc.compiles(
)
message('Provides jack2-style jack_internal_client_handle(): ' + has_jack2_internal_client.to_string())
has_jack_jslist = cc.compiles(
'''
#include <jack/jack.h>
#include <jack/jslist.h>
int main (int argc, char *argv[]) {
}
''',
dependencies: [dep_jack],
include_directories: include_directories_common,
)
message('Provides usable jack/jslist.h: ' + has_jack_jslist.to_string())
has_jack_uuid = cc.compiles(
'''
#include <jack/jack.h>
@ -157,7 +170,7 @@ has_ppoll = cc.has_function('ppoll', prefix: '#define _GNU_SOURCE\n#include <sys
build_alsa_in_out = false
if get_option('alsa_in_out').enabled() or (
get_option('alsa_in_out').auto() and dep_alsa.found() and dep_samplerate.found()
get_option('alsa_in_out').auto() and dep_alsa.found() and dep_samplerate.found() and has_jack_jslist
)
build_alsa_in_out = true
endif
@ -168,7 +181,7 @@ if get_option('jack_net').enabled() or (get_option('jack_net').auto() and lib_ja
endif
build_jack_netsource = false
if get_option('jack_netsource').enabled() or (get_option('jack_netsource').auto() and dep_samplerate.found())
if get_option('jack_netsource').enabled() or (get_option('jack_netsource').auto() and dep_samplerate.found() and has_jack_jslist)
build_jack_netsource = true
endif

View File

@ -161,6 +161,7 @@ exe_jack_samplerate = executable(
install: true
)
if has_jack_jslist
# dont install, jack session is deprecated
exe_jack_session_notify = executable(
'jack_session_notify',
@ -169,6 +170,7 @@ exe_jack_session_notify = executable(
c_args: ['-Wno-deprecated-declarations'],
install: false
)
endif
jack_transport_c_args = c_args_common
jack_transport_deps = [dep_jack]