diff options
author | Bruno Haible <bruno@clisp.org> | 2019-12-18 14:35:27 +0100 |
---|---|---|
committer | Bruno Haible <bruno@clisp.org> | 2019-12-18 14:35:27 +0100 |
commit | 505092c2fd7606c8add097815b68568be4c7ccf3 (patch) | |
tree | 3b2128227a4b253e2348248010c297b17f7d4929 /modules | |
parent | 25d476a2b79ab1cfc9c34e162bf5a69159ed6952 (diff) | |
download | gnulib-505092c2fd7606c8add097815b68568be4c7ccf3.tar.gz |
setlocale: Make calls with NULL argument multithread-safe.
* lib/setlocale.c: Include <errno.h>.
(setlocale_mtsafe): New function.
(setlocale_unixlike): Invoke setlocale_mtsafe instead of setlocale.
(setlocale_improved): Renamed from rpl_setlocale.
* m4/setlocale.m4 (gl_FUNC_SETLOCALE): Require gl_FUNC_SETLOCALE_NULL.
Set and define NEED_SETLOCALE_IMPROVED and NEED_SETLOCALE_MTSAFE. Set
LIB_SETLOCALE.
* modules/setlocale (Depends-on): Add setlocale-null. Update conditions.
(Link): New section.
* tests/locale.c: Undefine setlocale.
* tests/test-setlocale_null-one.c: Likewise.
* tests/test-setlocale_null-all.c: Likewise.
* modules/setlocale-tests (Makefile.am): Link the test programs with
$(LIB_SETLOCALE).
* modules/astrxfrm-tests (Makefile.am): Likewise.
* modules/btowc-tests (Makefile.am): Likewise.
* modules/c-ctype-tests (Makefile.am): Likewise.
* modules/c-snprintf-tests (Makefile.am): Likewise.
* modules/c-strcase-tests (Makefile.am): Likewise.
* modules/c-vasprintf-tests (Makefile.am): Likewise.
* modules/c-vsnprintf-tests (Makefile.am): Likewise.
* modules/c-xvasprintf-tests (Makefile.am): Likewise.
* modules/dfa-tests (Makefile.am): Likewise.
* modules/duplocale-tests (Makefile.am): Likewise.
* modules/hard-locale-tests (Makefile.am): Likewise.
* modules/localcharset-tests (Makefile.am): Likewise.
* modules/localename-tests (Makefile.am): Likewise.
* modules/mbmemcasecmp-tests (Makefile.am): Likewise.
* modules/mbmemcasecoll-tests (Makefile.am): Likewise.
* modules/mbrtowc-tests (Makefile.am): Likewise.
* modules/mbscasecmp-tests (Makefile.am): Likewise.
* modules/mbscasestr-tests (Makefile.am): Likewise.
* modules/mbschr-tests (Makefile.am): Likewise.
* modules/mbscspn-tests (Makefile.am): Likewise.
* modules/mbsinit-tests (Makefile.am): Likewise.
* modules/mbsncasecmp-tests (Makefile.am): Likewise.
* modules/mbsnrtowcs-tests (Makefile.am): Likewise.
* modules/mbspbrk-tests (Makefile.am): Likewise.
* modules/mbspcasecmp-tests (Makefile.am): Likewise.
* modules/mbsrchr-tests (Makefile.am): Likewise.
* modules/mbsrtowcs-tests (Makefile.am): Likewise.
* modules/mbsspn-tests (Makefile.am): Likewise.
* modules/mbsstr-tests (Makefile.am): Likewise.
* modules/nl_langinfo-tests (Makefile.am): Likewise.
* modules/quotearg-tests (Makefile.am): Likewise.
* modules/regex-tests (Makefile.am): Likewise.
* modules/strfmon_l-tests (Makefile.am): Likewise.
* modules/strtod-tests (Makefile.am): Likewise.
* modules/strtold-tests (Makefile.am): Likewise.
* modules/unicase/locale-language-tests (Makefile.am): Likewise.
* modules/unicase/ulc-casecmp-tests (Makefile.am): Likewise.
* modules/unicase/ulc-casecoll-tests (Makefile.am): Likewise.
* modules/unigbrk/ulc-grapheme-breaks-tests (Makefile.am): Likewise.
* modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
* modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
* modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
* modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
* modules/uniwbrk/ulc-wordbreaks-tests (Makefile.am): Likewise.
* modules/vasnprintf-posix-tests (Makefile.am): Likewise.
* modules/wcrtomb-tests (Makefile.am): Likewise.
* modules/wcsnrtombs-tests (Makefile.am): Likewise.
* modules/wcsrtombs-tests (Makefile.am): Likewise.
* modules/wcwidth-tests (Makefile.am): Likewise.
* doc/posix-functions/setlocale.texi: Mention that the multithread-
safety fix is also available in module 'setlocale'.
Diffstat (limited to 'modules')
51 files changed, 69 insertions, 50 deletions
diff --git a/modules/astrxfrm-tests b/modules/astrxfrm-tests index af8c1003ed..b113e34a31 100644 --- a/modules/astrxfrm-tests +++ b/modules/astrxfrm-tests @@ -9,3 +9,4 @@ configure.ac: Makefile.am: TESTS += test-astrxfrm check_PROGRAMS += test-astrxfrm +test_astrxfrm_LDADD = $(LDADD) $(LIB_SETLOCALE) diff --git a/modules/btowc-tests b/modules/btowc-tests index 66196b1332..e36cc61c42 100644 --- a/modules/btowc-tests +++ b/modules/btowc-tests @@ -18,4 +18,4 @@ Makefile.am: TESTS += test-btowc1.sh test-btowc2.sh TESTS_ENVIRONMENT += LOCALE_FR='@LOCALE_FR@' LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' check_PROGRAMS += test-btowc - +test_btowc_LDADD = $(LDADD) $(LIB_SETLOCALE) diff --git a/modules/c-ctype-tests b/modules/c-ctype-tests index e66a4cca87..02706b00de 100644 --- a/modules/c-ctype-tests +++ b/modules/c-ctype-tests @@ -11,3 +11,4 @@ configure.ac: Makefile.am: TESTS += test-c-ctype check_PROGRAMS += test-c-ctype +test_c_ctype_LDADD = $(LDADD) $(LIB_SETLOCALE) diff --git a/modules/c-snprintf-tests b/modules/c-snprintf-tests index 86d6a1420c..231a4fdb66 100644 --- a/modules/c-snprintf-tests +++ b/modules/c-snprintf-tests @@ -13,5 +13,6 @@ gt_LOCALE_FR Makefile.am: TESTS += test-c-snprintf.sh -check_PROGRAMS += test-c-snprintf TESTS_ENVIRONMENT += LOCALE_FR='@LOCALE_FR@' +check_PROGRAMS += test-c-snprintf +test_c_snprintf_LDADD = $(LDADD) $(LIB_SETLOCALE) diff --git a/modules/c-strcase-tests b/modules/c-strcase-tests index 5802f41eb1..7cdb29cef2 100644 --- a/modules/c-strcase-tests +++ b/modules/c-strcase-tests @@ -19,3 +19,5 @@ Makefile.am: TESTS += test-c-strcase.sh TESTS_ENVIRONMENT += LOCALE_FR='@LOCALE_FR@' LOCALE_TR_UTF8='@LOCALE_TR_UTF8@' check_PROGRAMS += test-c-strcasecmp test-c-strncasecmp +test_c_strcasecmp_LDADD = $(LDADD) $(LIB_SETLOCALE) +test_c_strncasecmp_LDADD = $(LDADD) $(LIB_SETLOCALE) diff --git a/modules/c-vasprintf-tests b/modules/c-vasprintf-tests index 940956366c..b82fc8b7e1 100644 --- a/modules/c-vasprintf-tests +++ b/modules/c-vasprintf-tests @@ -13,5 +13,6 @@ gt_LOCALE_FR Makefile.am: TESTS += test-c-vasprintf.sh -check_PROGRAMS += test-c-vasprintf TESTS_ENVIRONMENT += LOCALE_FR='@LOCALE_FR@' +check_PROGRAMS += test-c-vasprintf +test_c_vasprintf_LDADD = $(LDADD) $(LIB_SETLOCALE) diff --git a/modules/c-vsnprintf-tests b/modules/c-vsnprintf-tests index 6a76092ddd..542d8d98f3 100644 --- a/modules/c-vsnprintf-tests +++ b/modules/c-vsnprintf-tests @@ -13,5 +13,6 @@ gt_LOCALE_FR Makefile.am: TESTS += test-c-vsnprintf.sh -check_PROGRAMS += test-c-vsnprintf TESTS_ENVIRONMENT += LOCALE_FR='@LOCALE_FR@' +check_PROGRAMS += test-c-vsnprintf +test_c_vsnprintf_LDADD = $(LDADD) $(LIB_SETLOCALE) diff --git a/modules/c-xvasprintf-tests b/modules/c-xvasprintf-tests index a118de0a67..75ce919410 100644 --- a/modules/c-xvasprintf-tests +++ b/modules/c-xvasprintf-tests @@ -14,6 +14,6 @@ gt_LOCALE_FR Makefile.am: TESTS += test-c-xvasprintf.sh -check_PROGRAMS += test-c-xvasprintf -test_c_xvasprintf_LDADD = $(LDADD) @LIBINTL@ TESTS_ENVIRONMENT += LOCALE_FR='@LOCALE_FR@' +check_PROGRAMS += test-c-xvasprintf +test_c_xvasprintf_LDADD = $(LDADD) $(LIB_SETLOCALE) @LIBINTL@ diff --git a/modules/dfa-tests b/modules/dfa-tests index ee4354a268..0128dca2b0 100644 --- a/modules/dfa-tests +++ b/modules/dfa-tests @@ -18,4 +18,4 @@ TESTS += \ dfa-match.sh check_PROGRAMS += dfa-match-aux -dfa_match_aux_LDADD = $(LDADD) @LIBINTL@ $(LIBTHREAD) +dfa_match_aux_LDADD = $(LDADD) $(LIB_SETLOCALE) @LIBINTL@ $(LIBTHREAD) diff --git a/modules/duplocale-tests b/modules/duplocale-tests index 6545c4e33a..e30810982a 100644 --- a/modules/duplocale-tests +++ b/modules/duplocale-tests @@ -15,4 +15,4 @@ gt_FUNC_USELOCALE Makefile.am: TESTS += test-duplocale check_PROGRAMS += test-duplocale -test_duplocale_LDADD = $(LDADD) @LIB_DUPLOCALE@ +test_duplocale_LDADD = $(LDADD) $(LIB_SETLOCALE) @LIB_DUPLOCALE@ diff --git a/modules/hard-locale-tests b/modules/hard-locale-tests index a501781d8d..ddd101f175 100644 --- a/modules/hard-locale-tests +++ b/modules/hard-locale-tests @@ -16,4 +16,4 @@ Makefile.am: TESTS += test-hard-locale check_PROGRAMS += test-hard-locale noinst_PROGRAMS += locale -test_hard_locale_LDADD = $(LDADD) @LIB_HARD_LOCALE@ +test_hard_locale_LDADD = $(LDADD) $(LIB_SETLOCALE) @LIB_HARD_LOCALE@ diff --git a/modules/localcharset-tests b/modules/localcharset-tests index 52e4c60d59..70d5cfd551 100644 --- a/modules/localcharset-tests +++ b/modules/localcharset-tests @@ -7,3 +7,4 @@ configure.ac: Makefile.am: noinst_PROGRAMS += test-localcharset +test_localcharset_LDADD = $(LDADD) $(LIB_SETLOCALE) diff --git a/modules/localename-tests b/modules/localename-tests index 4940965d03..4b9a28a65c 100644 --- a/modules/localename-tests +++ b/modules/localename-tests @@ -15,5 +15,5 @@ AC_CHECK_FUNCS_ONCE([newlocale]) Makefile.am: TESTS += test-localename check_PROGRAMS += test-localename -test_localename_LDADD = $(LDADD) @INTL_MACOSX_LIBS@ $(LIBTHREAD) +test_localename_LDADD = $(LDADD) $(LIB_SETLOCALE) @INTL_MACOSX_LIBS@ $(LIBTHREAD) diff --git a/modules/mbmemcasecmp-tests b/modules/mbmemcasecmp-tests index 29c8cf68fe..16a11231c2 100644 --- a/modules/mbmemcasecmp-tests +++ b/modules/mbmemcasecmp-tests @@ -25,4 +25,4 @@ TESTS_ENVIRONMENT += \ LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' \ LOCALE_TR_UTF8='@LOCALE_TR_UTF8@' check_PROGRAMS += test-mbmemcasecmp -test_mbmemcasecmp_LDADD = $(LDADD) $(LIBTHREAD) +test_mbmemcasecmp_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBTHREAD) diff --git a/modules/mbmemcasecoll-tests b/modules/mbmemcasecoll-tests index fb308d993d..56a3db0af2 100644 --- a/modules/mbmemcasecoll-tests +++ b/modules/mbmemcasecoll-tests @@ -25,4 +25,4 @@ TESTS_ENVIRONMENT += \ LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' \ LOCALE_TR_UTF8='@LOCALE_TR_UTF8@' check_PROGRAMS += test-mbmemcasecoll -test_mbmemcasecoll_LDADD = $(LDADD) $(LIBTHREAD) +test_mbmemcasecoll_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBTHREAD) diff --git a/modules/mbrtowc-tests b/modules/mbrtowc-tests index a2839cbd72..86008d867d 100644 --- a/modules/mbrtowc-tests +++ b/modules/mbrtowc-tests @@ -41,4 +41,4 @@ TESTS_ENVIRONMENT += \ LOCALE_JA='@LOCALE_JA@' \ LOCALE_ZH_CN='@LOCALE_ZH_CN@' check_PROGRAMS += test-mbrtowc test-mbrtowc-w32 -test_mbrtowc_LDADD = $(LDADD) $(LIBTHREAD) +test_mbrtowc_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBTHREAD) diff --git a/modules/mbscasecmp-tests b/modules/mbscasecmp-tests index 8548050dd6..9f77064c3b 100644 --- a/modules/mbscasecmp-tests +++ b/modules/mbscasecmp-tests @@ -15,4 +15,4 @@ Makefile.am: TESTS += test-mbscasecmp.sh TESTS_ENVIRONMENT += LOCALE_TR_UTF8='@LOCALE_TR_UTF8@' check_PROGRAMS += test-mbscasecmp -test_mbscasecmp_LDADD = $(LDADD) $(LIBTHREAD) +test_mbscasecmp_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBTHREAD) diff --git a/modules/mbscasestr-tests b/modules/mbscasestr-tests index bc2df73cc7..3395c1fd8c 100644 --- a/modules/mbscasestr-tests +++ b/modules/mbscasestr-tests @@ -25,6 +25,6 @@ TESTS += test-mbscasestr1 test-mbscasestr2.sh test-mbscasestr3.sh test-mbscasest TESTS_ENVIRONMENT += LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' LOCALE_TR_UTF8='@LOCALE_TR_UTF8@' LOCALE_ZH_CN='@LOCALE_ZH_CN@' check_PROGRAMS += test-mbscasestr1 test-mbscasestr2 test-mbscasestr3 test-mbscasestr4 test_mbscasestr1_LDADD = $(LDADD) $(LIBTHREAD) -test_mbscasestr2_LDADD = $(LDADD) $(LIBTHREAD) -test_mbscasestr3_LDADD = $(LDADD) $(LIBTHREAD) -test_mbscasestr4_LDADD = $(LDADD) $(LIBTHREAD) +test_mbscasestr2_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBTHREAD) +test_mbscasestr3_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBTHREAD) +test_mbscasestr4_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBTHREAD) diff --git a/modules/mbschr-tests b/modules/mbschr-tests index f04e03c5d4..33ee83fdcf 100644 --- a/modules/mbschr-tests +++ b/modules/mbschr-tests @@ -15,4 +15,4 @@ Makefile.am: TESTS += test-mbschr.sh TESTS_ENVIRONMENT += LOCALE_ZH_CN='@LOCALE_ZH_CN@' check_PROGRAMS += test-mbschr -test_mbschr_LDADD = $(LDADD) $(LIBTHREAD) +test_mbschr_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBTHREAD) diff --git a/modules/mbscspn-tests b/modules/mbscspn-tests index a6eada177b..8c4a3d154d 100644 --- a/modules/mbscspn-tests +++ b/modules/mbscspn-tests @@ -15,4 +15,4 @@ Makefile.am: TESTS += test-mbscspn.sh TESTS_ENVIRONMENT += LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' check_PROGRAMS += test-mbscspn -test_mbscspn_LDADD = $(LDADD) $(LIBTHREAD) +test_mbscspn_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBTHREAD) diff --git a/modules/mbsinit-tests b/modules/mbsinit-tests index e509efed3f..0674e9c610 100644 --- a/modules/mbsinit-tests +++ b/modules/mbsinit-tests @@ -17,4 +17,4 @@ Makefile.am: TESTS += test-mbsinit.sh TESTS_ENVIRONMENT += LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' check_PROGRAMS += test-mbsinit -test_mbsinit_LDADD = $(LDADD) $(LIBTHREAD) +test_mbsinit_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBTHREAD) diff --git a/modules/mbsncasecmp-tests b/modules/mbsncasecmp-tests index ad04325bd9..050201a5c2 100644 --- a/modules/mbsncasecmp-tests +++ b/modules/mbsncasecmp-tests @@ -15,4 +15,4 @@ Makefile.am: TESTS += test-mbsncasecmp.sh TESTS_ENVIRONMENT += LOCALE_TR_UTF8='@LOCALE_TR_UTF8@' check_PROGRAMS += test-mbsncasecmp -test_mbsncasecmp_LDADD = $(LDADD) $(LIBTHREAD) +test_mbsncasecmp_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBTHREAD) diff --git a/modules/mbsnrtowcs-tests b/modules/mbsnrtowcs-tests index ac67c854bb..4d90f17a81 100644 --- a/modules/mbsnrtowcs-tests +++ b/modules/mbsnrtowcs-tests @@ -31,4 +31,4 @@ TESTS_ENVIRONMENT += \ LOCALE_JA='@LOCALE_JA@' \ LOCALE_ZH_CN='@LOCALE_ZH_CN@' check_PROGRAMS += test-mbsnrtowcs -test_mbsnrtowcs_LDADD = $(LDADD) $(LIBTHREAD) +test_mbsnrtowcs_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBTHREAD) diff --git a/modules/mbspbrk-tests b/modules/mbspbrk-tests index 587ff5dcc3..902e5b39c5 100644 --- a/modules/mbspbrk-tests +++ b/modules/mbspbrk-tests @@ -15,4 +15,4 @@ Makefile.am: TESTS += test-mbspbrk.sh TESTS_ENVIRONMENT += LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' check_PROGRAMS += test-mbspbrk -test_mbspbrk_LDADD = $(LDADD) $(LIBTHREAD) +test_mbspbrk_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBTHREAD) diff --git a/modules/mbspcasecmp-tests b/modules/mbspcasecmp-tests index e1b87c36a2..e6f11ffa4d 100644 --- a/modules/mbspcasecmp-tests +++ b/modules/mbspcasecmp-tests @@ -15,4 +15,4 @@ Makefile.am: TESTS += test-mbspcasecmp.sh TESTS_ENVIRONMENT += LOCALE_TR_UTF8='@LOCALE_TR_UTF8@' check_PROGRAMS += test-mbspcasecmp -test_mbspcasecmp_LDADD = $(LDADD) $(LIBTHREAD) +test_mbspcasecmp_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBTHREAD) diff --git a/modules/mbsrchr-tests b/modules/mbsrchr-tests index 326d566d6f..1d9780426d 100644 --- a/modules/mbsrchr-tests +++ b/modules/mbsrchr-tests @@ -15,4 +15,4 @@ Makefile.am: TESTS += test-mbsrchr.sh TESTS_ENVIRONMENT += LOCALE_ZH_CN='@LOCALE_ZH_CN@' check_PROGRAMS += test-mbsrchr -test_mbsrchr_LDADD = $(LDADD) $(LIBTHREAD) +test_mbsrchr_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBTHREAD) diff --git a/modules/mbsrtowcs-tests b/modules/mbsrtowcs-tests index 24dfa3f78b..3de9d73f61 100644 --- a/modules/mbsrtowcs-tests +++ b/modules/mbsrtowcs-tests @@ -31,4 +31,4 @@ TESTS_ENVIRONMENT += \ LOCALE_JA='@LOCALE_JA@' \ LOCALE_ZH_CN='@LOCALE_ZH_CN@' check_PROGRAMS += test-mbsrtowcs -test_mbsrtowcs_LDADD = $(LDADD) $(LIBTHREAD) +test_mbsrtowcs_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBTHREAD) diff --git a/modules/mbsspn-tests b/modules/mbsspn-tests index 8a5fe23396..994a7062e6 100644 --- a/modules/mbsspn-tests +++ b/modules/mbsspn-tests @@ -15,4 +15,4 @@ Makefile.am: TESTS += test-mbsspn.sh TESTS_ENVIRONMENT += LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' check_PROGRAMS += test-mbsspn -test_mbsspn_LDADD = $(LDADD) $(LIBTHREAD) +test_mbsspn_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBTHREAD) diff --git a/modules/mbsstr-tests b/modules/mbsstr-tests index a0a878b1f0..739e51deec 100644 --- a/modules/mbsstr-tests +++ b/modules/mbsstr-tests @@ -21,5 +21,5 @@ TESTS += test-mbsstr1 test-mbsstr2.sh test-mbsstr3.sh TESTS_ENVIRONMENT += LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' LOCALE_ZH_CN='@LOCALE_ZH_CN@' check_PROGRAMS += test-mbsstr1 test-mbsstr2 test-mbsstr3 test_mbsstr1_LDADD = $(LDADD) $(LIBTHREAD) -test_mbsstr2_LDADD = $(LDADD) $(LIBTHREAD) -test_mbsstr3_LDADD = $(LDADD) $(LIBTHREAD) +test_mbsstr2_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBTHREAD) +test_mbsstr3_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBTHREAD) diff --git a/modules/nl_langinfo-tests b/modules/nl_langinfo-tests index db0a57d1de..9474bbd86f 100644 --- a/modules/nl_langinfo-tests +++ b/modules/nl_langinfo-tests @@ -20,4 +20,4 @@ Makefile.am: TESTS += test-nl_langinfo.sh test-nl_langinfo-mt TESTS_ENVIRONMENT += LOCALE_FR='@LOCALE_FR@' LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' check_PROGRAMS += test-nl_langinfo test-nl_langinfo-mt -test_nl_langinfo_mt_LDADD = $(LDADD) $(LIBMULTITHREAD) $(LIB_NANOSLEEP) +test_nl_langinfo_mt_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBMULTITHREAD) $(LIB_NANOSLEEP) diff --git a/modules/quotearg-tests b/modules/quotearg-tests index 61aa27ce74..486956affc 100644 --- a/modules/quotearg-tests +++ b/modules/quotearg-tests @@ -27,4 +27,4 @@ Makefile.am: TESTS += test-quotearg.sh TESTS_ENVIRONMENT += LOCALE_FR='@LOCALE_FR@' LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' check_PROGRAMS += test-quotearg -test_quotearg_LDADD = $(LDADD) @LIBINTL@ $(LIBTHREAD) +test_quotearg_LDADD = $(LDADD) $(LIB_SETLOCALE) @LIBINTL@ $(LIBTHREAD) diff --git a/modules/regex-tests b/modules/regex-tests index 0782303655..e8821ec52d 100644 --- a/modules/regex-tests +++ b/modules/regex-tests @@ -11,4 +11,4 @@ configure.ac: Makefile.am: TESTS += test-regex check_PROGRAMS += test-regex -test_regex_LDADD = $(LDADD) @LIBINTL@ $(LIBTHREAD) +test_regex_LDADD = $(LDADD) $(LIB_SETLOCALE) @LIBINTL@ $(LIBTHREAD) diff --git a/modules/setlocale b/modules/setlocale index 5d5ed81dca..cc92e1a8bc 100644 --- a/modules/setlocale +++ b/modules/setlocale @@ -7,7 +7,8 @@ m4/setlocale.m4 Depends-on: locale -localename [test $REPLACE_SETLOCALE = 1] +localename [test $NEED_SETLOCALE_IMPROVED = 1] +setlocale-null [test $NEED_SETLOCALE_MTSAFE = 1] configure.ac: gl_FUNC_SETLOCALE @@ -22,6 +23,9 @@ Makefile.am: Include: <locale.h> +Link: +$(LIB_SETLOCALE) + License: LGPL diff --git a/modules/setlocale-tests b/modules/setlocale-tests index 8c35c9d82c..25129f92ef 100644 --- a/modules/setlocale-tests +++ b/modules/setlocale-tests @@ -27,3 +27,5 @@ TESTS_ENVIRONMENT += \ LOCALE_JA='@LOCALE_JA@' \ LOCALE_ZH_CN='@LOCALE_ZH_CN@' check_PROGRAMS += test-setlocale1 test-setlocale2 +test_setlocale1_LDADD = $(LDADD) @LIB_SETLOCALE@ +test_setlocale2_LDADD = $(LDADD) @LIB_SETLOCALE@ diff --git a/modules/strfmon_l-tests b/modules/strfmon_l-tests index 871962c6f9..cf2d6a2fa3 100644 --- a/modules/strfmon_l-tests +++ b/modules/strfmon_l-tests @@ -10,3 +10,4 @@ configure.ac: Makefile.am: TESTS += test-strfmon_l check_PROGRAMS += test-strfmon_l +test_strfmon_l_LDADD = $(LDADD) $(LIB_SETLOCALE) diff --git a/modules/strtod-tests b/modules/strtod-tests index e3cd57f66e..03966580f9 100644 --- a/modules/strtod-tests +++ b/modules/strtod-tests @@ -26,3 +26,4 @@ TESTS_ENVIRONMENT += \ LOCALE_FR='@LOCALE_FR@' \ LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' check_PROGRAMS += test-strtod1 +test_strtod1_LDADD = $(LDADD) $(LIB_SETLOCALE) diff --git a/modules/strtold-tests b/modules/strtold-tests index c58e52c2ab..dc82f50a08 100644 --- a/modules/strtold-tests +++ b/modules/strtold-tests @@ -26,3 +26,4 @@ TESTS_ENVIRONMENT += \ LOCALE_FR='@LOCALE_FR@' \ LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' check_PROGRAMS += test-strtold1 +test_strtold1_LDADD = $(LDADD) $(LIB_SETLOCALE) diff --git a/modules/unicase/locale-language-tests b/modules/unicase/locale-language-tests index 2cf5926963..1399e52692 100644 --- a/modules/unicase/locale-language-tests +++ b/modules/unicase/locale-language-tests @@ -23,4 +23,4 @@ TESTS += unicase/test-locale-language.sh TESTS_ENVIRONMENT += LOCALE_FR='@LOCALE_FR@' LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' LOCALE_JA='@LOCALE_JA@' LOCALE_TR_UTF8='@LOCALE_TR_UTF8@' LOCALE_ZH_CN='@LOCALE_ZH_CN@' check_PROGRAMS += test-locale-language test_locale_language_SOURCES = unicase/test-locale-language.c -test_locale_language_LDADD = $(LDADD) $(LIBUNISTRING) @INTL_MACOSX_LIBS@ $(LIBTHREAD) +test_locale_language_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBUNISTRING) @INTL_MACOSX_LIBS@ $(LIBTHREAD) diff --git a/modules/unicase/ulc-casecmp-tests b/modules/unicase/ulc-casecmp-tests index 0d78fbe256..08a8620d5f 100644 --- a/modules/unicase/ulc-casecmp-tests +++ b/modules/unicase/ulc-casecmp-tests @@ -22,5 +22,5 @@ TESTS_ENVIRONMENT += \ LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' check_PROGRAMS += test-ulc-casecmp test_ulc_casecmp_SOURCES = unicase/test-ulc-casecmp.c -test_ulc_casecmp_LDADD = $(LDADD) $(LIBUNISTRING) @LIBICONV@ +test_ulc_casecmp_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBUNISTRING) @LIBICONV@ diff --git a/modules/unicase/ulc-casecoll-tests b/modules/unicase/ulc-casecoll-tests index bd2e59b82d..1610872651 100644 --- a/modules/unicase/ulc-casecoll-tests +++ b/modules/unicase/ulc-casecoll-tests @@ -22,5 +22,5 @@ TESTS_ENVIRONMENT += \ LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' check_PROGRAMS += test-ulc-casecoll test_ulc_casecoll_SOURCES = unicase/test-ulc-casecoll.c -test_ulc_casecoll_LDADD = $(LDADD) $(LIBUNISTRING) @LIBICONV@ +test_ulc_casecoll_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBUNISTRING) @LIBICONV@ diff --git a/modules/unigbrk/ulc-grapheme-breaks-tests b/modules/unigbrk/ulc-grapheme-breaks-tests index 187e26f05b..a6dacd0001 100644 --- a/modules/unigbrk/ulc-grapheme-breaks-tests +++ b/modules/unigbrk/ulc-grapheme-breaks-tests @@ -16,4 +16,4 @@ TESTS += unigbrk/test-ulc-grapheme-breaks.sh TESTS_ENVIRONMENT += LOCALE_AR='@LOCALE_AR@' check_PROGRAMS += test-ulc-grapheme-breaks test_ulc_grapheme_breaks_SOURCES = unigbrk/test-ulc-grapheme-breaks.c -test_ulc_grapheme_breaks_LDADD = $(LDADD) $(LIBUNISTRING) @LIBICONV@ +test_ulc_grapheme_breaks_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBUNISTRING) @LIBICONV@ diff --git a/modules/unistdio/u16-vasnprintf-tests b/modules/unistdio/u16-vasnprintf-tests index 3dc3cb0083..45e3ab2200 100644 --- a/modules/unistdio/u16-vasnprintf-tests +++ b/modules/unistdio/u16-vasnprintf-tests @@ -28,6 +28,6 @@ check_PROGRAMS += test-u16-vasnprintf1 test-u16-vasnprintf2 test-u16-vasnprintf3 test_u16_vasnprintf1_SOURCES = unistdio/test-u16-vasnprintf1.c test_u16_vasnprintf1_LDADD = $(LDADD) $(LIBUNISTRING) @LIBICONV@ test_u16_vasnprintf2_SOURCES = unistdio/test-u16-vasnprintf2.c -test_u16_vasnprintf2_LDADD = $(LDADD) $(LIBUNISTRING) @LIBICONV@ +test_u16_vasnprintf2_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBUNISTRING) @LIBICONV@ test_u16_vasnprintf3_SOURCES = unistdio/test-u16-vasnprintf3.c -test_u16_vasnprintf3_LDADD = $(LDADD) $(LIBUNISTRING) @LIBICONV@ +test_u16_vasnprintf3_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBUNISTRING) @LIBICONV@ diff --git a/modules/unistdio/u32-vasnprintf-tests b/modules/unistdio/u32-vasnprintf-tests index 555319b4a1..7343c328e6 100644 --- a/modules/unistdio/u32-vasnprintf-tests +++ b/modules/unistdio/u32-vasnprintf-tests @@ -28,6 +28,6 @@ check_PROGRAMS += test-u32-vasnprintf1 test-u32-vasnprintf2 test-u32-vasnprintf3 test_u32_vasnprintf1_SOURCES = unistdio/test-u32-vasnprintf1.c test_u32_vasnprintf1_LDADD = $(LDADD) $(LIBUNISTRING) @LIBICONV@ test_u32_vasnprintf2_SOURCES = unistdio/test-u32-vasnprintf2.c -test_u32_vasnprintf2_LDADD = $(LDADD) $(LIBUNISTRING) @LIBICONV@ +test_u32_vasnprintf2_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBUNISTRING) @LIBICONV@ test_u32_vasnprintf3_SOURCES = unistdio/test-u32-vasnprintf3.c -test_u32_vasnprintf3_LDADD = $(LDADD) $(LIBUNISTRING) @LIBICONV@ +test_u32_vasnprintf3_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBUNISTRING) @LIBICONV@ diff --git a/modules/unistdio/u8-vasnprintf-tests b/modules/unistdio/u8-vasnprintf-tests index 8d5e29512d..70c9820326 100644 --- a/modules/unistdio/u8-vasnprintf-tests +++ b/modules/unistdio/u8-vasnprintf-tests @@ -28,6 +28,6 @@ check_PROGRAMS += test-u8-vasnprintf1 test-u8-vasnprintf2 test-u8-vasnprintf3 test_u8_vasnprintf1_SOURCES = unistdio/test-u8-vasnprintf1.c test_u8_vasnprintf1_LDADD = $(LDADD) $(LIBUNISTRING) @LIBICONV@ test_u8_vasnprintf2_SOURCES = unistdio/test-u8-vasnprintf2.c -test_u8_vasnprintf2_LDADD = $(LDADD) $(LIBUNISTRING) @LIBICONV@ +test_u8_vasnprintf2_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBUNISTRING) @LIBICONV@ test_u8_vasnprintf3_SOURCES = unistdio/test-u8-vasnprintf3.c -test_u8_vasnprintf3_LDADD = $(LDADD) $(LIBUNISTRING) @LIBICONV@ +test_u8_vasnprintf3_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBUNISTRING) @LIBICONV@ diff --git a/modules/unistdio/ulc-vasnprintf-tests b/modules/unistdio/ulc-vasnprintf-tests index b72c1888a7..0af236161d 100644 --- a/modules/unistdio/ulc-vasnprintf-tests +++ b/modules/unistdio/ulc-vasnprintf-tests @@ -24,6 +24,6 @@ check_PROGRAMS += test-ulc-vasnprintf1 test-ulc-vasnprintf2 test-ulc-vasnprintf3 test_ulc_vasnprintf1_SOURCES = unistdio/test-ulc-vasnprintf1.c test_ulc_vasnprintf1_LDADD = $(LDADD) $(LIBUNISTRING) @LIBICONV@ $(LIBTHREAD) test_ulc_vasnprintf2_SOURCES = unistdio/test-ulc-vasnprintf2.c -test_ulc_vasnprintf2_LDADD = $(LDADD) $(LIBUNISTRING) @LIBICONV@ $(LIBTHREAD) +test_ulc_vasnprintf2_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBUNISTRING) @LIBICONV@ $(LIBTHREAD) test_ulc_vasnprintf3_SOURCES = unistdio/test-ulc-vasnprintf3.c -test_ulc_vasnprintf3_LDADD = $(LDADD) $(LIBUNISTRING) @LIBICONV@ $(LIBTHREAD) +test_ulc_vasnprintf3_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBUNISTRING) @LIBICONV@ $(LIBTHREAD) diff --git a/modules/uniwbrk/ulc-wordbreaks-tests b/modules/uniwbrk/ulc-wordbreaks-tests index 19f1ee6811..cfb866b503 100644 --- a/modules/uniwbrk/ulc-wordbreaks-tests +++ b/modules/uniwbrk/ulc-wordbreaks-tests @@ -16,5 +16,5 @@ TESTS += uniwbrk/test-ulc-wordbreaks.sh TESTS_ENVIRONMENT += LOCALE_FR='@LOCALE_FR@' check_PROGRAMS += test-ulc-wordbreaks test_ulc_wordbreaks_SOURCES = uniwbrk/test-ulc-wordbreaks.c -test_ulc_wordbreaks_LDADD = $(LDADD) $(LIBUNISTRING) @LIBICONV@ +test_ulc_wordbreaks_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBUNISTRING) @LIBICONV@ diff --git a/modules/vasnprintf-posix-tests b/modules/vasnprintf-posix-tests index 6ba745bf14..2ea2791ddf 100644 --- a/modules/vasnprintf-posix-tests +++ b/modules/vasnprintf-posix-tests @@ -24,3 +24,5 @@ Makefile.am: TESTS += test-vasnprintf-posix test-vasnprintf-posix2.sh test-vasnprintf-posix3 TESTS_ENVIRONMENT += LOCALE_FR='@LOCALE_FR@' LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' check_PROGRAMS += test-vasnprintf-posix test-vasnprintf-posix2 test-vasnprintf-posix3 +test_vasnprintf_posix2_LDADD = $(LDADD) $(LIB_SETLOCALE) +test_vasnprintf_posix3_LDADD = $(LDADD) $(LIB_SETLOCALE) diff --git a/modules/wcrtomb-tests b/modules/wcrtomb-tests index 32f9d3a7f0..43c28e8d53 100644 --- a/modules/wcrtomb-tests +++ b/modules/wcrtomb-tests @@ -35,4 +35,4 @@ TESTS_ENVIRONMENT += \ LOCALE_JA='@LOCALE_JA@' \ LOCALE_ZH_CN='@LOCALE_ZH_CN@' check_PROGRAMS += test-wcrtomb test-wcrtomb-w32 - +test_wcrtomb_LDADD = $(LDADD) $(LIB_SETLOCALE) diff --git a/modules/wcsnrtombs-tests b/modules/wcsnrtombs-tests index 877dd17584..adeda4e9d1 100644 --- a/modules/wcsnrtombs-tests +++ b/modules/wcsnrtombs-tests @@ -28,4 +28,4 @@ TESTS_ENVIRONMENT += \ LOCALE_JA='@LOCALE_JA@' \ LOCALE_ZH_CN='@LOCALE_ZH_CN@' check_PROGRAMS += test-wcsnrtombs - +test_wcsnrtombs_LDADD = $(LDADD) $(LIB_SETLOCALE) diff --git a/modules/wcsrtombs-tests b/modules/wcsrtombs-tests index 4b6bf54172..2f52f68b20 100644 --- a/modules/wcsrtombs-tests +++ b/modules/wcsrtombs-tests @@ -28,4 +28,4 @@ TESTS_ENVIRONMENT += \ LOCALE_JA='@LOCALE_JA@' \ LOCALE_ZH_CN='@LOCALE_ZH_CN@' check_PROGRAMS += test-wcsrtombs - +test_wcsrtombs_LDADD = $(LDADD) $(LIB_SETLOCALE) diff --git a/modules/wcwidth-tests b/modules/wcwidth-tests index 9606674b90..875d18f8d3 100644 --- a/modules/wcwidth-tests +++ b/modules/wcwidth-tests @@ -12,4 +12,4 @@ configure.ac: Makefile.am: TESTS += test-wcwidth check_PROGRAMS += test-wcwidth -test_wcwidth_LDADD = $(LDADD) $(LIBUNISTRING) +test_wcwidth_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBUNISTRING) |