mesa/imports: let the build system detect strtok_r()
authorEric Engestrom <eric.engestrom@intel.com>
Tue, 5 Nov 2019 00:13:27 +0000 (00:13 +0000)
committerEric Engestrom <eric.engestrom@intel.com>
Tue, 5 Nov 2019 22:38:04 +0000 (22:38 +0000)
Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/2013
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Tested-by: Prodea Alexandru-Liviu <liviuprodea@yahoo.com>
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
meson.build
scons/gallium.py
src/mesa/main/imports.h

index 457cc0c5fdc8984c724498c448476e58eb9a4639..b9a6da01d314503f7e54bfe18c9e76be46adb66d 100644 (file)
@@ -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
index b216304170f5ebe8c6a175bb36efbe6f18632939..c0f6f6c91cac77b7ce9fdbc23302d05ebff8a910 100755 (executable)
@@ -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.
index 7f10ecec810ccfadca58cf340cd706b66bc21c01..7cf5f247be47b43ad05faa32e58dbf450630e67f 100644 (file)
@@ -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