+2007-06-28 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/32509
+ * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Carry out the checks
+ involving the de_DE locale only if an auto locale config is
+ used for a target suitable for the gnu locale model.
+ * docs/html/install.html: Update.
+ * configure: Regenerated.
+
2007-06-26 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/util/testsuite_api.h: New.
#endif
], enable_clocale_flag=gnu, enable_clocale_flag=generic)
- # Test for bugs early in glibc-2.2.x series
- AC_TRY_RUN([
- #define _GNU_SOURCE 1
- #include <locale.h>
- #include <string.h>
- #if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2)
- extern __typeof(newlocale) __newlocale;
- extern __typeof(duplocale) __duplocale;
- extern __typeof(strcoll_l) __strcoll_l;
- #endif
- int main()
- {
- const char __one[] = "Äuglein Augmen";
+ if test $enable_clocale = auto; then
+ # Test for bugs early in glibc-2.2.x series
+ AC_TRY_RUN([
+ #define _GNU_SOURCE 1
+ #include <locale.h>
+ #include <string.h>
+ #if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2)
+ extern __typeof(newlocale) __newlocale;
+ extern __typeof(duplocale) __duplocale;
+ extern __typeof(strcoll_l) __strcoll_l;
+ #endif
+ int main()
+ {
+ const char __one[] = "Äuglein Augmen";
const char __two[] = "Äuglein";
- int i;
+ int i;
int j;
__locale_t loc;
__locale_t loc_dup;
i = __strcoll_l(__one, __two, loc);
j = __strcoll_l(__one, __two, loc_dup);
return 0;
- }
- ],
- [enable_clocale_flag=gnu],[enable_clocale_flag=generic],
- [enable_clocale_flag=generic])
+ }
+ ],
+ [enable_clocale_flag=gnu],[enable_clocale_flag=generic],
+ [enable_clocale_flag=generic])
+ fi
# Set it to scream when it hurts.
ac_save_CFLAGS="$CFLAGS"
rm -f conftest*
- # Test for bugs early in glibc-2.2.x series
- if test "$cross_compiling" = yes; then
+ if test $enable_clocale = auto; then
+ # Test for bugs early in glibc-2.2.x series
+ if test "$cross_compiling" = yes; then
enable_clocale_flag=generic
else
cat >conftest.$ac_ext <<_ACEOF
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
- #define _GNU_SOURCE 1
- #include <locale.h>
- #include <string.h>
- #if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2)
- extern __typeof(newlocale) __newlocale;
- extern __typeof(duplocale) __duplocale;
- extern __typeof(strcoll_l) __strcoll_l;
- #endif
- int main()
- {
- const char __one[] = "Äuglein Augmen";
+ #define _GNU_SOURCE 1
+ #include <locale.h>
+ #include <string.h>
+ #if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2)
+ extern __typeof(newlocale) __newlocale;
+ extern __typeof(duplocale) __duplocale;
+ extern __typeof(strcoll_l) __strcoll_l;
+ #endif
+ int main()
+ {
+ const char __one[] = "Äuglein Augmen";
const char __two[] = "Äuglein";
- int i;
+ int i;
int j;
__locale_t loc;
__locale_t loc_dup;
i = __strcoll_l(__one, __two, loc);
j = __strcoll_l(__one, __two, loc_dup);
return 0;
- }
+ }
_ACEOF
rm -f conftest$ac_exeext
fi
rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
fi
+ fi
# Set it to scream when it hurts.
ac_save_CFLAGS="$CFLAGS"
# Fake what AC_TRY_COMPILE does. XXX Look at redoing this new-style.
cat > conftest.$ac_ext << EOF
-#line 16572 "configure"
+#line 16574 "configure"
int main()
{
// NB: _Atomic_word not necessarily int.
information must be installed.
<p>
- Note that those sanity checks are also perfomed when an explicit
- --enable-clocale=gnu configure option is used: this behavior is
- new in gcc 4.2.1 and defends against misconfigurations.
+ Note however that the sanity checks involving the de_DE locale are
+ skipped when an explicit --enable-clocale=gnu configure option is
+ used: only the basic checks are carried out, defending against
+ misconfigurations.
</p>
<p>