From feb03e471786e9c543ef6e807a4a748046c0ce2b Mon Sep 17 00:00:00 2001 From: Yang Tse Date: Wed, 13 Aug 2008 15:32:20 +0000 Subject: The size of long is a build time characteristic and as such it is now recorded in curlbuild.h as CURL_SIZEOF_LONG. Definition now done from configure process and in CVS curlbuild.h.dist for non-configure systems. --- acinclude.m4 | 43 ++++++++++++++++++++++++++++++++++++++----- 1 file changed, 38 insertions(+), 5 deletions(-) (limited to 'acinclude.m4') diff --git a/acinclude.m4 b/acinclude.m4 index 433a4e22e..8240a7da1 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -3613,6 +3613,43 @@ _EOF ]) +dnl CURL_CONFIGURE_LONG +dnl ------------------------------------------------- +dnl Find out the size of long as reported by sizeof() and define +dnl CURL_SIZEOF_LONG as appropriate to be used in template file +dnl include/curl/curlbuild.h.in to properly configure the library. +dnl The size of long is a build time characteristic and as such +dnl must be recorded in curlbuild.h + +AC_DEFUN([CURL_CONFIGURE_LONG], [ + if test ! -z "$ac_cv_sizeof_long"; then + AC_MSG_WARN([AC_CHECK_SIZEOF(long) was called before CURL_CONFIGURE_LONG]) + fi + AC_MSG_CHECKING([size of long]) + curl_sizeof_long="unknown" + for tmp_size in '16' '8' '4' '2' '1' ; do + if test "$curl_sizeof_long" = "unknown"; then + AC_COMPILE_IFELSE([ + AC_LANG_PROGRAM([[ + typedef char dummy_arr[sizeof(long) == $tmp_size ? 1 : -1]; + ]],[[ + dummy_arr[1] = (long)1; + ]]) + ],[ + curl_sizeof_long="$tmp_size" + ]) + fi + done + if test "$curl_sizeof_long" = "unknown"; then + AC_MSG_ERROR([cannot find out size of long]) + else + AC_MSG_RESULT([$curl_sizeof_long]) + CURL_DEFINE_UNQUOTED([CURL_SIZEOF_LONG], [$curl_sizeof_long]) + ac_cv_sizeof_long="$curl_sizeof_long" + fi +]) + + dnl CURL_INCLUDES_INTTYPES dnl ------------------------------------------------- dnl Set up variable with list of headers that must be @@ -3722,13 +3759,9 @@ AC_DEFUN([CURL_CONFIGURE_CURL_OFF_T], [ AC_MSG_ERROR([SED not set. Cannot continue without SED being set.]) fi # - AC_CHECK_SIZEOF(long) + CURL_CONFIGURE_LONG AC_CHECK_SIZEOF(void*) # - if test -z "$ac_cv_sizeof_long" || - test "$ac_cv_sizeof_long" -eq "0"; then - AC_MSG_ERROR([cannot find out size of long.]) - fi if test -z "$ac_cv_sizeof_voidp" || test "$ac_cv_sizeof_voidp" -eq "0"; then AC_MSG_ERROR([cannot find out size of void*.]) -- cgit v1.2.3