xref: /PHP-7.4/ext/hash/config.m4 (revision 66351025)
1PHP_ARG_WITH([mhash],
2  [for mhash support],
3  [AS_HELP_STRING([[--with-mhash]],
4    [Include mhash support])])
5
6if test "$PHP_MHASH" != "no"; then
7  if test "$PHP_HASH" = "no"; then
8    PHP_HASH="yes"
9  fi
10
11  AC_DEFINE(PHP_MHASH_BC, 1, [ ])
12fi
13
14dnl Defined for BC.
15AC_DEFINE(HAVE_HASH_EXT,1,[Have HASH Extension])
16
17if test $ac_cv_c_bigendian_php = yes; then
18  EXT_HASH_SHA3_SOURCES="hash_sha3.c"
19  AC_DEFINE(HAVE_SLOW_HASH3, 1, [Define is hash3 algo is available])
20  AC_MSG_WARN("Use SHA3 slow implementation on bigendian")
21else
22  AC_CHECK_SIZEOF([long])
23  AC_MSG_CHECKING([if we're at 64-bit platform])
24  AS_IF([test "$ac_cv_sizeof_long" -eq 4],[
25    AC_MSG_RESULT([no])
26    SHA3_DIR="sha3/generic32lc"
27    SHA3_OPT_SRC="$SHA3_DIR/KeccakP-1600-inplace32BI.c"
28  ],[
29    AC_MSG_RESULT([yes])
30    SHA3_DIR="sha3/generic64lc"
31    SHA3_OPT_SRC="$SHA3_DIR/KeccakP-1600-opt64.c"
32  ])
33  EXT_HASH_SHA3_SOURCES="$SHA3_OPT_SRC $SHA3_DIR/KeccakHash.c $SHA3_DIR/KeccakSponge.c hash_sha3.c"
34  PHP_HASH_CFLAGS="-I@ext_srcdir@/$SHA3_DIR -DKeccakP200_excluded -DKeccakP400_excluded -DKeccakP800_excluded -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1"
35
36  PHP_ADD_BUILD_DIR(ext/hash/$SHA3_DIR, 1)
37fi
38
39EXT_HASH_SOURCES="hash.c hash_md.c hash_sha.c hash_ripemd.c hash_haval.c \
40  hash_tiger.c hash_gost.c hash_snefru.c hash_whirlpool.c hash_adler32.c \
41  hash_crc32.c hash_fnv.c hash_joaat.c $EXT_HASH_SHA3_SOURCES"
42EXT_HASH_HEADERS="php_hash.h php_hash_md.h php_hash_sha.h php_hash_ripemd.h \
43  php_hash_haval.h php_hash_tiger.h php_hash_gost.h php_hash_snefru.h \
44  php_hash_whirlpool.h php_hash_adler32.h php_hash_crc32.h \
45  php_hash_fnv.h php_hash_joaat.h php_hash_sha3.h"
46
47PHP_NEW_EXTENSION(hash, $EXT_HASH_SOURCES, 0,,$PHP_HASH_CFLAGS)
48PHP_INSTALL_HEADERS(ext/hash, $EXT_HASH_HEADERS)
49