2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-22 18:19:42 +00:00

meson: add 'threads' dependency for pthread_* function checks

This fixes the correct detection of these functions on some
platforms like Alma Linux 8.

Co-authored-by: Aydın Mercan <aydin@isc.org>
This commit is contained in:
Aram Sargsyan 2025-07-28 10:53:32 +00:00 committed by Ondřej Surý
parent fdf7e2f773
commit f22c980173
No known key found for this signature in database
GPG Key ID: 2820F37E873DEA41

View File

@ -453,16 +453,6 @@ foreach fn, header : {
'flockfile': '#include <stdio.h>', 'flockfile': '#include <stdio.h>',
'getc_unlocked': '#include <stdio.h>', 'getc_unlocked': '#include <stdio.h>',
# Thread control
'pthread_attr_getstacksize': '#include <pthread.h>',
'pthread_attr_setstacksize': '#include <pthread.h>',
'pthread_barrier_init': '#include <pthread.h>',
'pthread_set_name_np': '#include <pthread.h>',
'pthread_setname_np': '#include <pthread.h>',
'pthread_spin_init': '#include <pthread.h>',
'pthread_yield': '#include <pthread.h>',
'pthread_yield_np': '#include <pthread.h>',
# Processor control # Processor control
'cpuset_getaffinity': '#include <sys/cpuset.h>', 'cpuset_getaffinity': '#include <sys/cpuset.h>',
'sched_getaffinity': '#include <sched.h>', 'sched_getaffinity': '#include <sched.h>',
@ -524,9 +514,31 @@ endif
### ###
null_dep = dependency('', required: false) null_dep = dependency('', required: false)
thread_dep = dependency('threads')
m_dep = cc.find_library('m', required: false) m_dep = cc.find_library('m', required: false)
## Threads
thread_dep = dependency('threads')
foreach fn : [
'pthread_attr_getstacksize',
'pthread_attr_setstacksize',
'pthread_barrier_init',
'pthread_set_name_np',
'pthread_setname_np',
'pthread_spin_init',
'pthread_yield',
'pthread_yield_np',
]
if cc.has_function(
fn,
prefix: '#include <pthread.h>',
args: sys_defines,
dependencies: thread_dep,
)
config.set('HAVE_@0@'.format(fn.to_upper()), 1)
endif
endforeach
## OpenSSL ## OpenSSL
openssl_dep = [ openssl_dep = [
dependency('libcrypto', version: '>=1.1.1'), dependency('libcrypto', version: '>=1.1.1'),