Back to the Main Page. | compile_value |
Download the M4 Source. |
AC_C_COMPILE_VALUE (COMPILE-VALUE, ALIAS, INCLUDES)
1.1 (2002/09/12) 0.5.65 : Cross Compilation
Ilguiz Latypov <ilatypov@superbt.com>
#define COMPILE_VALUE_<ALIAS> <NUMBER>
AC_C_COMPILE_VALUE(sizeof(int), sizeof_int)
AC_C_COMPILE_VALUE([sizeof(int[[543]])], sizeof_int543)
#define COMPILE_VALUE_SIZEOF_INT 4
#define COMPILE_VALUE_SIZEOF_INT543 2172
## Portability defines that help interoperate with classic and modern autoconfs ifdef([AC_TR_SH],[ define([AC_TR_SH_REUSE],[AC_TR_SH([$1])]) define([AC_TR_CPP_REUSE],[AC_TR_CPP([$1])]) ], [ define([AC_TR_SH_REUSE], [patsubst(translit([[$1]], [*+], [pp]), [[^a-zA-Z0-9_]], [_])]) define([AC_TR_CPP_REUSE], [patsubst(translit([[$1]], [*abcdefghijklmnopqrstuvwxyz], [PABCDEFGHIJKLMNOPQRSTUVWXYZ]), [[^A-Z0-9_]], [_])]) ]) AC_DEFUN([AC_C_COMPILE_VALUE], [ pushdef([ac_c_compile_value], AC_TR_SH_REUSE([ac_cv_c_compile_value_$2]))dnl ac_c_compile_value_expand="$1" AC_CACHE_CHECK([value of $1 by analyzing object code], ac_c_compile_value, [ save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -c -o conftest.o" AC_TRY_COMPILE([$3 #include <stddef.h> #include <stdint.h> #include <stdlib.h> #define COMPILE_VALUE $ac_c_compile_value_expand #define HEX_DIGIT(n) ((n) >= 10 ? 'a' + (n) - 10 : '0' + (n)) char object_code_block[] = { '\n', 'e', '4', 'V', 'A', '0', 'x', (char) HEX_DIGIT((((COMPILE_VALUE / 16) / 16) / 16) % 16), (char) HEX_DIGIT(((COMPILE_VALUE / 16) / 16) % 16), (char) HEX_DIGIT((COMPILE_VALUE / 16) % 16), (char) HEX_DIGIT(COMPILE_VALUE % 16), 'Y', '3', 'p', 'M', '\n' };], [], [ac_c_compile_value=` typeset -i n=\`sed -ne 's/^e4VA0x\(.*\)Y3pM$/0x\1/p' < conftest.o\`; echo $n`], [ac_c_compile_value=0]) CFLAGS="$save_CFLAGS"]) AC_DEFINE_UNQUOTED(AC_TR_CPP_REUSE(compile_value_$2), [$[]ac_c_compile_value], [$1]) popdef([ac_c_compile_value])dnl ])