mirror of
https://github.com/php/php-src.git
synced 2025-08-19 08:49:28 +02:00
MFH:- Added PHP_CHECK_SIZEOF macro (special version of AC_CHECK_SIZEOF)
This commit is contained in:
parent
f132df4f66
commit
3d88f40d51
2 changed files with 46 additions and 3 deletions
41
acinclude.m4
41
acinclude.m4
|
@ -1034,6 +1034,44 @@ dnl -------------------------------------------------------------------------
|
||||||
dnl Checks for structures, typedefs, broken functions, etc.
|
dnl Checks for structures, typedefs, broken functions, etc.
|
||||||
dnl -------------------------------------------------------------------------
|
dnl -------------------------------------------------------------------------
|
||||||
|
|
||||||
|
dnl
|
||||||
|
dnl PHP_CHECK_SIZEOF(TYPE [, CROSS-SIZE])
|
||||||
|
dnl Enhanced version of AC_CHECK_SIZEOF for checking more types
|
||||||
|
dnl than just those defined in stdio.h
|
||||||
|
dnl
|
||||||
|
AC_DEFUN(PHP_CHECK_SIZEOF,
|
||||||
|
[changequote(<<, >>)dnl
|
||||||
|
dnl The name to #define.
|
||||||
|
define(<<AC_TYPE_NAME>>, translit(sizeof_$1, [a-z *], [A-Z_P]))dnl
|
||||||
|
dnl The cache variable name.
|
||||||
|
define(<<AC_CV_NAME>>, translit(ac_cv_sizeof_$1, [ *], [_p]))dnl
|
||||||
|
changequote([, ])dnl
|
||||||
|
AC_MSG_CHECKING(size of $1)
|
||||||
|
AC_CACHE_VAL(AC_CV_NAME,
|
||||||
|
[AC_TRY_RUN([#include <stdio.h>
|
||||||
|
#if STDC_HEADERS
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <stddef.h>
|
||||||
|
#endif
|
||||||
|
#ifdef HAVE_INTTYPES_H
|
||||||
|
#include <inttypes.h>
|
||||||
|
#endif
|
||||||
|
#ifdef HAVE_UNISTD_H
|
||||||
|
#include <unistd.h>
|
||||||
|
#endif
|
||||||
|
int main()
|
||||||
|
{
|
||||||
|
FILE *f=fopen("conftestval", "w");
|
||||||
|
if (!f) return(1);
|
||||||
|
fprintf(f, "%d\n", sizeof($1));
|
||||||
|
return(0);
|
||||||
|
}], AC_CV_NAME=`cat conftestval`, AC_CV_NAME=0, ifelse([$2], , , AC_CV_NAME=$2))])dnl
|
||||||
|
AC_MSG_RESULT($AC_CV_NAME)
|
||||||
|
AC_DEFINE_UNQUOTED(AC_TYPE_NAME, $AC_CV_NAME, [The number of bytes in a $1.])
|
||||||
|
undefine([AC_TYPE_NAME])dnl
|
||||||
|
undefine([AC_CV_NAME])dnl
|
||||||
|
])
|
||||||
|
|
||||||
dnl
|
dnl
|
||||||
dnl PHP_CHECK_IN_ADDR_T
|
dnl PHP_CHECK_IN_ADDR_T
|
||||||
dnl
|
dnl
|
||||||
|
@ -2646,6 +2684,9 @@ php_cv_crypt_r_style=struct_crypt_data_gnu_source)
|
||||||
fi
|
fi
|
||||||
])
|
])
|
||||||
|
|
||||||
|
dnl
|
||||||
|
dnl PHP_TEST_WRITE_STDOUT
|
||||||
|
dnl
|
||||||
AC_DEFUN([PHP_TEST_WRITE_STDOUT],[
|
AC_DEFUN([PHP_TEST_WRITE_STDOUT],[
|
||||||
AC_CACHE_CHECK(whether writing to stdout works,ac_cv_write_stdout,[
|
AC_CACHE_CHECK(whether writing to stdout works,ac_cv_write_stdout,[
|
||||||
AC_TRY_RUN([
|
AC_TRY_RUN([
|
||||||
|
|
|
@ -424,15 +424,17 @@ PHP_TM_GMTOFF
|
||||||
PHP_STRUCT_FLOCK
|
PHP_STRUCT_FLOCK
|
||||||
PHP_SOCKLEN_T
|
PHP_SOCKLEN_T
|
||||||
|
|
||||||
AC_CHECK_SIZEOF(intmax_t, 0)
|
|
||||||
AC_CHECK_SIZEOF(size_t, 8)
|
AC_CHECK_SIZEOF(size_t, 8)
|
||||||
AC_CHECK_SIZEOF(ssize_t, 8)
|
|
||||||
AC_CHECK_SIZEOF(ptrdiff_t, 8)
|
|
||||||
AC_CHECK_SIZEOF(long long, 8)
|
AC_CHECK_SIZEOF(long long, 8)
|
||||||
AC_CHECK_SIZEOF(long long int, 8)
|
AC_CHECK_SIZEOF(long long int, 8)
|
||||||
AC_CHECK_SIZEOF(long, 8)
|
AC_CHECK_SIZEOF(long, 8)
|
||||||
AC_CHECK_SIZEOF(int, 4)
|
AC_CHECK_SIZEOF(int, 4)
|
||||||
|
|
||||||
|
dnl These are defined elsewhere than stdio.h
|
||||||
|
PHP_CHECK_SIZEOF(intmax_t, 0)
|
||||||
|
PHP_CHECK_SIZEOF(ssize_t, 8)
|
||||||
|
PHP_CHECK_SIZEOF(ptrdiff_t, 8)
|
||||||
|
|
||||||
dnl Check for members of the stat structure
|
dnl Check for members of the stat structure
|
||||||
AC_STRUCT_ST_BLKSIZE
|
AC_STRUCT_ST_BLKSIZE
|
||||||
dnl AC_STRUCT_ST_BLOCKS will screw QNX because fileblocks.o does not exists
|
dnl AC_STRUCT_ST_BLOCKS will screw QNX because fileblocks.o does not exists
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue