summaryrefslogtreecommitdiff
path: root/meson.build
diff options
context:
space:
mode:
authorL. E. Segovia <amy@amyspark.me>2022-12-03 15:25:05 -0300
committerL. E. Segovia <amy@amyspark.me>2022-12-06 17:53:17 +0000
commit536a4400ab205c04f26ace90ce14ba2d22d66378 (patch)
tree9c8e347955b2da66e2935b8b0b0312c38e0f5e0b /meson.build
parentf2e9d4d32efc6c14fb589714980af44528960b47 (diff)
downloadlcms2-536a4400ab205c04f26ace90ce14ba2d22d66378.tar.gz
meson: Try to use gmtime_r with _POSIX_C_SOURCE
Diffstat (limited to 'meson.build')
-rw-r--r--meson.build13
1 files changed, 12 insertions, 1 deletions
diff --git a/meson.build b/meson.build
index b0f2787..7e76147 100644
--- a/meson.build
+++ b/meson.build
@@ -30,8 +30,19 @@ if host_machine.endian() == 'big'
cargs = '-DWORDS_BIGENDIAN=1'
endif
+
# Check for threadsafe variants of gmtime
-if cc.has_header_symbol('time.h', 'gmtime_r')
+# MinGW needs _POSIX_C_SOURCE or _POSIX_THREAD_SAFE_FUNCTIONS defined
+# to make gmtime_r available
+if host_machine.system() == 'windows' and cc.get_argument_syntax() != 'msvc'
+ cargs += ['-D_POSIX_C_SOURCE=199503L']
+endif
+
+if cc.has_header_symbol(
+ 'time.h',
+ 'gmtime_r',
+ args: cargs,
+)
cargs += '-DHAVE_GMTIME_R=1'
elif cc.has_header_symbol('time.h', 'gmtime_s')
if cc.links(