diff options
-rw-r--r-- | meson.build | 58 | ||||
-rw-r--r-- | src/daemon/meson.build | 2 | ||||
-rw-r--r-- | src/meson.build | 5 | ||||
-rw-r--r-- | src/pulse/meson.build | 2 | ||||
-rw-r--r-- | src/tests/meson.build | 2 | ||||
-rw-r--r-- | src/utils/meson.build | 4 |
6 files changed, 65 insertions, 8 deletions
diff --git a/meson.build b/meson.build index f4a1a7cf4..842d5f5b5 100644 --- a/meson.build +++ b/meson.build @@ -171,10 +171,13 @@ endif check_headers = [ 'arpa/inet.h', + 'byteswap.h', 'cpuid.h', + 'dlfcn.h', 'execinfo.h', 'grp.h', 'langinfo.h', + 'linux/sockios.h', 'locale.h', 'netdb.h', 'netinet/in.h', @@ -187,16 +190,20 @@ check_headers = [ 'regex.h', 'sched.h', 'sys/capability.h', + 'sys/dl.h', 'sys/eventfd.h', - 'sys/ioctl.h', 'sys/filio.h', + 'sys/ioctl.h', 'sys/mman.h', 'sys/prctl.h', 'sys/resource.h', 'sys/select.h', 'sys/socket.h', + 'sys/syscall.h', + 'sys/uio.h', 'sys/un.h', 'sys/wait.h', + 'syslog.h', 'valgrind/memcheck.h', 'xlocale.h', ] @@ -218,35 +225,46 @@ endif check_functions = [ 'accept4', 'clock_gettime', + 'ctime_r', 'fchmod', 'fchown', 'fork', 'fstat', 'getaddrinfo', 'getgrgid_r', + 'getgrnam_r', 'getpwnam_r', + 'getpwuid_r', 'gettimeofday', 'getuid', + 'lrintf', 'lstat', 'memfd_create', 'mkfifo', 'mlock', 'nanosleep', + 'open64', 'paccept', 'pipe', 'pipe2', + 'posix_fadvise', 'posix_madvise', + 'posix_memalign', + 'ppoll', 'readlink', 'setegid', 'seteuid', + 'setpgid', 'setregid', - 'setreuid', 'setresgid', 'setresuid', + 'setreuid', 'setsid', 'sig2str', 'sigaction', + 'strerror_r', 'strtod_l', + 'strtof', 'symlink', 'sysconf', 'uname', @@ -307,7 +325,19 @@ endif # Core Dependencies libm_dep = cc.find_library('m', required : true) + thread_dep = dependency('threads') +foreach f : [ + 'pthread_getname_np', + 'pthread_setaffinity_np', + 'pthread_setname_np', +] + if cc.has_function(f, dependencies : thread_dep) + define = 'HAVE_' + f.underscorify().to_upper() + cdata.set(define, 1) + endif +endforeach + cap_dep = cc.find_library('cap', required : false) shm_dep = cc.find_library('rt', required : false) @@ -315,6 +345,30 @@ if shm_dep.found() cdata.set('HAVE_SHM_OPEN', 1) endif +dl_dep = cc.find_library('dl', required : false) +if dl_dep.found() + cdata.set('HAVE_DLADDR', 1) +endif + +have_iconv = false +if cc.has_function('iconv_open') + iconv_dep = dependency('', required : false) + have_iconv = true +else + iconv_dep = cc.find_library('iconv', required : false) + have_iconv = iconv_dep.found() +endif +if have_iconv + cdata.set('HAVE_ICONV', 1) + iconvconsttest = '''#include <iconv.h> +size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); +''' + if cc.compiles(iconvconsttest, dependencies : iconv_dep) + cdata.set('ICONV_CONST', '') + else + cdata.set('ICONV_CONST', 'const') + endif +endif atomictest = '''void func() { volatile int atomic = 2; diff --git a/src/daemon/meson.build b/src/daemon/meson.build index 7f075b067..4423da2d1 100644 --- a/src/daemon/meson.build +++ b/src/daemon/meson.build @@ -31,7 +31,7 @@ executable('pulseaudio', include_directories : [configinc, topinc], link_args : ['-ffast-math'], link_with : [libpulsecore, libpulsecommon, libpulse], - dependencies : [ltdl_dep, cap_dep, dbus_dep, libsystemd_dep], + dependencies : [ltdl_dep, cap_dep, dbus_dep, libsystemd_dep, dl_dep], c_args : pa_c_args, ) diff --git a/src/meson.build b/src/meson.build index 6ce7261df..c9b71a484 100644 --- a/src/meson.build +++ b/src/meson.build @@ -181,7 +181,10 @@ libpulsecommon = shared_library('pulsecommon-' + pa_version_major_minor, link_args : [nodelete_link_args], install : true, install_dir : privlibdir, - dependencies : [libm_dep, thread_dep, shm_dep, sndfile_dep, dbus_dep, x11_dep, libsystemd_dep, glib_dep, gtk_dep, asyncns_dep], + dependencies : [ + libm_dep, thread_dep, dl_dep, shm_dep, iconv_dep, sndfile_dep, dbus_dep, + x11_dep, libsystemd_dep, glib_dep, gtk_dep, asyncns_dep + ], implicit_include_directories : false) libpulsecommon_dep = declare_dependency(link_with: libpulsecommon) diff --git a/src/pulse/meson.build b/src/pulse/meson.build index 7674e0b42..00c686772 100644 --- a/src/pulse/meson.build +++ b/src/pulse/meson.build @@ -81,7 +81,7 @@ libpulse = shared_library('pulse', link_args : [nodelete_link_args, versioning_link_args], install : true, install_rpath : privlibdir, - dependencies : [libm_dep, thread_dep, libpulsecommon_dep, dbus_dep], + dependencies : [libm_dep, thread_dep, libpulsecommon_dep, dbus_dep, dl_dep, iconv_dep], implicit_include_directories : false) libpulse_dep = declare_dependency(link_with: libpulse) diff --git a/src/tests/meson.build b/src/tests/meson.build index 62bfa9061..15286f579 100644 --- a/src/tests/meson.build +++ b/src/tests/meson.build @@ -127,7 +127,7 @@ norun_tests = [ [ 'remix-test', 'remix-test.c', [ libpulse_dep, libpulsecommon_dep, libpulsecore_dep ] ], [ 'rtstutter', 'rtstutter.c', - [ libpulse_dep, libpulsecommon_dep, libpulsecore_dep ] ], + [ thread_dep, libpulse_dep, libpulsecommon_dep, libpulsecore_dep ] ], [ 'sig2str-test', 'sig2str-test.c', [ check_dep, libpulse_dep, libpulsecommon_dep, libpulsecore_dep ] ], [ 'stripnul', 'stripnul.c', diff --git a/src/utils/meson.build b/src/utils/meson.build index a35dae4f1..d00e030ae 100644 --- a/src/utils/meson.build +++ b/src/utils/meson.build @@ -94,8 +94,8 @@ if cc.has_header('sys/soundcard.h') install_rpath : privlibdir, include_directories : [configinc, topinc], link_with : [libpulsecommon, libpulse], - link_args : [nodelete_link_args, '-ldl'], - dependencies: [thread_dep], + link_args : [nodelete_link_args], + dependencies: [thread_dep, dl_dep], c_args : [pa_c_args, '-Wno-nonnull-compare'] ) |