Annotation of embedaddon/libiconv/m4/eilseq.m4, revision 1.1.1.1
1.1 misho 1: #serial 1
2:
3: AC_PREREQ(2.50)
4:
5: # The EILSEQ errno value ought to be defined in <errno.h>, according to
6: # ISO C 99 and POSIX. But some systems (like SunOS 4) don't define it,
7: # and some systems (like BSD/OS) define it in <wchar.h> not <errno.h>.
8:
9: # Define EILSEQ as a C macro and as a substituted macro in such a way that
10: # 1. on all systems, after inclusion of <errno.h>, EILSEQ is usable,
11: # 2. on systems where EILSEQ is defined elsewhere, we use the same numeric
12: # value.
13:
14: AC_DEFUN([AC_EILSEQ],
15: [
16: AC_REQUIRE([AC_PROG_CC])dnl
17:
18: dnl Check for any extra headers that could define EILSEQ.
19: AC_CHECK_HEADERS(wchar.h)
20:
21: AC_CACHE_CHECK([for EILSEQ], ac_cv_decl_EILSEQ, [
22: AC_EGREP_CPP(yes,[
23: #include <errno.h>
24: #ifdef EILSEQ
25: yes
26: #endif
27: ], have_eilseq=1)
28: if test -n "$have_eilseq"; then
29: dnl EILSEQ exists in <errno.h>. Don't need to define EILSEQ ourselves.
30: ac_cv_decl_EILSEQ=yes
31: else
32: AC_EGREP_CPP(yes,[
33: #include <errno.h>
34: #if HAVE_WCHAR_H
35: #include <wchar.h>
36: #endif
37: #ifdef EILSEQ
38: yes
39: #endif
40: ], have_eilseq=1)
41: if test -n "$have_eilseq"; then
42: dnl EILSEQ exists in some other system header.
43: dnl Define it to the same value.
44: _AC_COMPUTE_INT([EILSEQ], ac_cv_decl_EILSEQ, [
45: #include <errno.h>
46: #if HAVE_WCHAR_H
47: #include <wchar.h>
48: #endif
49: /* The following two lines are a workaround against an autoconf-2.52 bug. */
50: #include <stdio.h>
51: #include <stdlib.h>
52: ])
53: else
54: dnl EILSEQ isn't defined by the system. Define EILSEQ ourselves, but
55: dnl don't define it as EINVAL, because iconv() callers want to
56: dnl distinguish EINVAL and EILSEQ.
57: ac_cv_decl_EILSEQ=ENOENT
58: fi
59: fi
60: ])
61: if test "$ac_cv_decl_EILSEQ" != yes; then
62: AC_DEFINE_UNQUOTED([EILSEQ], [$ac_cv_decl_EILSEQ],
63: [Define as good substitute value for EILSEQ.])
64: EILSEQ="$ac_cv_decl_EILSEQ"
65: AC_SUBST(EILSEQ)
66: fi
67: ])
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>