From c4bb9e1ca60fd7e82548aa2e5d72e9ab7efda9ca Mon Sep 17 00:00:00 2001 From: David Robillard Date: Thu, 13 Jan 2022 15:27:41 -0500 Subject: Define _POSIX_C_SOURCE globally in the build system Using inconsistent defines like this that affect the standard library implementation can cause issues. So, doing this consistently for the whole library is a better approach, although it unfortunately makes the code more difficult to compile manually. --- meson.build | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'meson.build') diff --git a/meson.build b/meson.build index bf29d82c..890c8894 100644 --- a/meson.build +++ b/meson.build @@ -105,6 +105,12 @@ sources = [ # System libraries m_dep = cc.find_library('m', required: false) +# System defines needed to expose platform APIs +platform_args = [] +if host_machine.system() != 'windows' + platform_args += ['-D_POSIX_C_SOURCE=200809L'] +endif + # Determine library type and the flags needed to build it library_name = versioned_name if get_option('default_library') == 'both' @@ -136,7 +142,7 @@ libserd = build_target( sources, version: meson.project_version(), include_directories: include_directories(['include']), - c_args: c_warnings + library_args, + c_args: c_warnings + platform_args + library_args, dependencies: m_dep, gnu_symbol_visibility: 'hidden', install: true, @@ -163,7 +169,7 @@ if get_option('utils') endif serdi = executable('serdi', 'src/serdi.c', - c_args: c_warnings + prog_args, + c_args: c_warnings + platform_args + prog_args, link_args: tool_link_args, install: true, dependencies: serd_dep) -- cgit v1.2.1