From: Eric Engestrom Date: Tue, 5 Nov 2019 00:13:27 +0000 (+0000) Subject: mesa/imports: let the build system detect strtok_r() X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=73cc2fec10574816ff968b21183bd62e77517b66;p=mesa.git mesa/imports: let the build system detect strtok_r() Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/2013 Signed-off-by: Eric Engestrom Reviewed-by: Matt Turner Tested-by: Prodea Alexandru-Liviu Reviewed-by: Dylan Baker --- diff --git a/meson.build b/meson.build index 457cc0c5fdc..b9a6da01d31 100644 --- a/meson.build +++ b/meson.build @@ -1149,7 +1149,7 @@ foreach h : ['xlocale.h', 'sys/sysctl.h', 'linux/futex.h', 'endian.h', 'dlfcn.h' endif endforeach -foreach f : ['strtof', 'mkostemp', 'timespec_get', 'memfd_create', 'random_r', 'flock'] +foreach f : ['strtof', 'mkostemp', 'timespec_get', 'memfd_create', 'random_r', 'flock', 'strtok_r'] if cc.has_function(f) pre_args += '-DHAVE_@0@'.format(f.to_upper()) endif diff --git a/scons/gallium.py b/scons/gallium.py index b216304170f..c0f6f6c91ca 100755 --- a/scons/gallium.py +++ b/scons/gallium.py @@ -381,6 +381,9 @@ def generate(env): if check_header(env, 'sys/shm.h'): cppdefines += ['HAVE_SYS_SHM_H'] + if check_functions(env, ['strtok_r']): + cppdefines += ['HAVE_STRTOK_R'] + #FIXME: we should really be checking for the major()/minor() # functions/macros in these headers, but check_functions()'s # SConf.CheckFunc() doesn't seem to support macros. diff --git a/src/mesa/main/imports.h b/src/mesa/main/imports.h index 7f10ecec810..7cf5f247be4 100644 --- a/src/mesa/main/imports.h +++ b/src/mesa/main/imports.h @@ -309,7 +309,7 @@ extern int _mesa_vsnprintf(char *str, size_t size, const char *fmt, va_list arg); -#if defined(_WIN32) && !defined(strtok_r) +#if defined(_WIN32) && !defined(HAVE_STRTOK_R) #define strtok_r strtok_s #endif