@eli-schwartz requested changes on this pull request.
- ['memcpy', '#include <string.h>'],
+ ['mkstemp', '#include <stdlib.h>'], + ['regcomp', '#include <regex.h>'], + ['socket', '#include <sys/socket.h>'], + ['strerror', '#include <string.h>'], + ['strstr', '#include <string.h>'], + ['wcrtomb', '#include <wchar.h>'], + ['wcscoll', '#include <wchar.h>'], +] + +foreach h : check_headers + define = 'HAVE_' + h.underscorify().to_upper() + if cc.has_header(h) + cdata.set(define, 1) + else + cdata.set(define, false)
Several times you do `cdata.get()` on values that could be either int `1` or bool `false`, and that evaluates to a meson syntax error when trying to check the "truthiness" of an integer. It doesn't build by default for me.
Which systems was this tested on? Seems like a system that has none of: glibc, fnmatch, regcomp (all 3 need to evaluate to false for configuration to pass).