1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
#
# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher
#
--- autoconf-2.59/lib/autoconf/types.m4~sizeof_types.patch 2003-05-22 08:05:14.000000000 -0400
+++ autoconf-2.59/lib/autoconf/types.m4 2004-05-29 01:31:24.828295015 -0400
@@ -380,32 +380,38 @@
# Generic checks. #
# ---------------- #
+AC_DEFUN([AC_PROG_SIZE],
+[
+ AC_CHECK_TOOL(SIZE, size, :)
+])
# AC_CHECK_SIZEOF(TYPE, [IGNORED], [INCLUDES = DEFAULT-INCLUDES])
# ---------------------------------------------------------------
AC_DEFUN([AC_CHECK_SIZEOF],
-[AS_LITERAL_IF([$1], [],
+[AC_REQUIRE([AC_PROG_SIZE])
+AC_REQUIRE([AC_PROG_AWK])
+ AS_LITERAL_IF([$1], [],
[AC_FATAL([$0: requires literal arguments])])dnl
AC_CHECK_TYPE([$1], [], [], [$3])
AC_CACHE_CHECK([size of $1], AS_TR_SH([ac_cv_sizeof_$1]),
-[if test "$AS_TR_SH([ac_cv_type_$1])" = yes; then
- # The cast to unsigned long works around a bug in the HP C Compiler
- # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
- # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
- # This bug is HP SR number 8606223364.
- _AC_COMPUTE_INT([(long) (sizeof ($1))],
- [AS_TR_SH([ac_cv_sizeof_$1])],
- [AC_INCLUDES_DEFAULT([$3])],
- [AC_MSG_FAILURE([cannot compute sizeof ($1), 77])])
+[
+if test "$AS_TR_SH([ac_cv_type_$1])" = yes; then
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([AC_INCLUDES_DEFAULT([$3])],
+ [static const $1 x[[256]];])],
+ [
+ AS_TR_SH([ac_cv_sizeof_$1])=`$SIZE conftest.$ac_objext | tail -n 1 | $AWK '{print [$]3/256}'`
+ ],
+ [
+ AS_TR_SH([ac_cv_sizeof_$1])=0
+ ])
else
AS_TR_SH([ac_cv_sizeof_$1])=0
-fi])dnl
+fi
+])dnl
AC_DEFINE_UNQUOTED(AS_TR_CPP(sizeof_$1), $AS_TR_SH([ac_cv_sizeof_$1]),
[The size of a `$1', as computed by sizeof.])
])# AC_CHECK_SIZEOF
-
-
# ---------------- #
# Generic checks. #
# ---------------- #
|