aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--meson.build5
-rw-r--r--src/tools/msvc/Mkvcbuild.pm4
2 files changed, 7 insertions, 2 deletions
diff --git a/meson.build b/meson.build
index 56454cc3395..54451abe195 100644
--- a/meson.build
+++ b/meson.build
@@ -1060,7 +1060,10 @@ if not perlopt.disabled()
if cc.get_id() == 'msvc'
# prevent binary mismatch between MSVC built plperl and Strawberry or
# msys ucrt perl libraries
- perl_ccflags += ['-DNO_THREAD_SAFE_LOCALE']
+ perl_v = run_command(perl, '-V').stdout()
+ if not perl_v.contains('USE_THREAD_SAFE_LOCALE')
+ perl_ccflags += ['-DNO_THREAD_SAFE_LOCALE']
+ endif
endif
endif
diff --git a/src/tools/msvc/Mkvcbuild.pm b/src/tools/msvc/Mkvcbuild.pm
index 6a79a0e037d..1dc336a54da 100644
--- a/src/tools/msvc/Mkvcbuild.pm
+++ b/src/tools/msvc/Mkvcbuild.pm
@@ -595,7 +595,9 @@ sub mkvcbuild
push(@perl_embed_ccflags, 'PLPERL_HAVE_UID_GID');
# prevent binary mismatch between MSVC built plperl and
# Strawberry or msys ucrt perl libraries
- push(@perl_embed_ccflags, 'NO_THREAD_SAFE_LOCALE');
+ my $perl_v = `$^X -V 2>&1`;
+ push(@perl_embed_ccflags, 'NO_THREAD_SAFE_LOCALE')
+ unless $perl_v =~ /USE_THREAD_SAFE_LOCALE/;
# Windows offers several 32-bit ABIs. Perl is sensitive to
# sizeof(time_t), one of the ABI dimensions. To get 32-bit time_t,