diff options
Diffstat (limited to 'meson.build')
-rw-r--r-- | meson.build | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/meson.build b/meson.build index 2ae2050c..16dcb67e 100644 --- a/meson.build +++ b/meson.build @@ -615,8 +615,19 @@ endif config.set('DBUS_VA_COPY', va_copy) -#### Atomic integers -config.set10('DBUS_USE_SYNC', cc.has_function('__sync_sub_and_fetch') ? 1 : false) +# Can't use cc.has_function here because atomic operations are not +# exactly functions +config.set10( + 'DBUS_USE_SYNC', + cc.links(''' + int main(void) + { + int a = 4; + int b = __sync_sub_and_fetch (&a, 4); + return b; + } + ''') +) config.set10('HAVE_DECL_MSG_NOSIGNAL', cc.has_header_symbol('sys/socket.h', 'MSG_NOSIGNAL') |