summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--makedef.pl5
-rw-r--r--perlvars.h3
2 files changed, 7 insertions, 1 deletions
diff --git a/makedef.pl b/makedef.pl
index 06c647fc2c..626d990744 100644
--- a/makedef.pl
+++ b/makedef.pl
@@ -436,6 +436,11 @@ unless ($define{'PERL_IMPLICIT_CONTEXT'}) {
);
}
+if (${^SAFE_LOCALES}) {
+ ++$skip{PL_locale_mutex};
+ ++$skip{PL_lc_numeric_mutex};
+}
+
unless ($define{'PERL_OP_PARENT'}) {
++$skip{$_} foreach qw(
Perl_op_parent
diff --git a/perlvars.h b/perlvars.h
index be67a59988..0f2e3475d3 100644
--- a/perlvars.h
+++ b/perlvars.h
@@ -99,9 +99,10 @@ PERLVARI(G, mmap_page_size, IV, 0)
#if defined(USE_ITHREADS)
PERLVAR(G, hints_mutex, perl_mutex) /* Mutex for refcounted he refcounting */
+#ifndef USE_THREAD_SAFE_LOCALE
PERLVAR(G, locale_mutex, perl_mutex) /* Mutex for setlocale() changing */
PERLVAR(G, lc_numeric_mutex, perl_mutex) /* Mutex for switching LC_NUMERIC */
-
+# endif
#endif
/* Proxy for HAS_POSIX_2008_LOCALE, since that is not defined in time for this */