Commit 1451a492 by Benjamin Kosnik Committed by Benjamin Kosnik

acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Extended checking before enabling gnu model.

2001-12-18  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Extended checking before
	enabling gnu model.
	* aclocal.m4: Rebuild.
	* configure: Rebuild.

From-SVN: r48163
parent e964a852
2001-12-18 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Extended checking before
enabling gnu model.
* aclocal.m4: Rebuild.
* configure: Rebuild.
2001-12-18 Paolo Carlini <pcarlini@unitus.it>
Nathan Myers <ncm@cantrip.org>
......
......@@ -1052,12 +1052,38 @@ AC_DEFUN(GLIBCPP_ENABLE_CLOCALE, [
if test x$enable_clocale_flag = xno; then
case x${target_os} in
xlinux* | xgnu*)
AC_EGREP_CPP([ok], [
AC_EGREP_CPP([_GLIBCPP_ok], [
#include <features.h>
#if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 2)
ok
_GLIBCPP_ok
#endif
], enable_clocale_flag=gnu, enable_clocale_flag=generic)
# Test for bugs early in glibc-2.2.x series
if test x$enable_clocale_flag = xgnu; then
AC_TRY_RUN([
#define _GNU_SOURCE 1
#include <locale.h>
int main()
{
const char __one[] = "uglein Augmen";
const char __two[] = "uglein";
int i;
int j;
__locale_t loc;
__locale_t loc_dup;
loc = __newlocale(1 << LC_ALL, "de_DE", 0);
loc_dup = __duplocale(loc);
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])
fi
# ... at some point put __strxfrm_l tests in as well.
;;
*)
enable_clocale_flag=generic
......
......@@ -1064,12 +1064,38 @@ AC_DEFUN(GLIBCPP_ENABLE_CLOCALE, [
if test x$enable_clocale_flag = xno; then
case x${target_os} in
xlinux* | xgnu*)
AC_EGREP_CPP([ok], [
AC_EGREP_CPP([_GLIBCPP_ok], [
#include <features.h>
#if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 2)
ok
_GLIBCPP_ok
#endif
], enable_clocale_flag=gnu, enable_clocale_flag=generic)
# Test for bugs early in glibc-2.2.x series
if test x$enable_clocale_flag = xgnu; then
AC_TRY_RUN([
#define _GNU_SOURCE 1
#include <locale.h>
int main()
{
const char __one[] = "uglein Augmen";
const char __two[] = "uglein";
int i;
int j;
__locale_t loc;
__locale_t loc_dup;
loc = __newlocale(1 << LC_ALL, "de_DE", 0);
loc_dup = __duplocale(loc);
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])
fi
# ... at some point put __strxfrm_l tests in as well.
;;
*)
enable_clocale_flag=generic
......
This source diff could not be displayed because it is too large. You can view the blob instead.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment