1From b4c64b6f07743e3fb63ce52359bc664ab7d60df0 Mon Sep 17 00:00:00 2001 2From: Joshua Watt <JPEWhacker@gmail.com> 3Date: Thu, 20 Feb 2020 15:20:45 -0600 4Subject: [PATCH] build: Fix strndup detection on MinGW 5 6GCC and meson conspire together to incorrectly detect that strndup() 7exists on MinGW as __builtin_strndup, when no such function exists. As a 8work around, meson will skip looking for __builtin functions if an 9'#include' is in the prefix, so add '#include <string.h>' when looking 10for strndup(). 11 12See: https://github.com/mesonbuild/meson/issues/3672 13 14Upstream-Status: Submitted [https://gitlab.freedesktop.org/wayland/wayland/merge_requests/63] 15 16Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> 17Signed-off-by: Denys Dmytriyenko <denis@denix.org> 18--- 19 meson.build | 2 +- 20 1 file changed, 1 insertion(+), 1 deletion(-) 21 22diff --git a/meson.build b/meson.build 23index 3bc25c9..adde7b9 100644 24--- a/meson.build 25+++ b/meson.build 26@@ -38,11 +38,11 @@ have_funcs = [ 27 'prctl', 28 'memfd_create', 29 'mremap', 30- 'strndup', 31 ] 32 foreach f: have_funcs 33 config_h.set('HAVE_' + f.underscorify().to_upper(), cc.has_function(f)) 34 endforeach 35+config_h.set('HAVE_STRNDUP', cc.has_function('strndup') and cc.has_header_symbol('string.h', 'strndup')) 36 config_h.set10('HAVE_XUCRED_CR_PID', cc.has_member('struct xucred', 'cr_pid', prefix : '#include <sys/ucred.h>')) 37 have_broken_msg_cmsg_cloexec = false 38 if host_machine.system() == 'freebsd' 39-- 402.7.4 41 42