config.w32 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. // vim:ft=javascript
  2. ARG_WITH('mhash', 'mhash support (BC via hash)', 'no');
  3. if (PHP_MHASH != 'no') {
  4. AC_DEFINE('PHP_MHASH_BC', 1);
  5. }
  6. PHP_HASH = 'yes';
  7. EXTENSION('hash', 'hash.c hash_md.c hash_sha.c hash_ripemd.c hash_haval.c ' +
  8. 'hash_tiger.c hash_gost.c hash_snefru.c hash_whirlpool.c ' +
  9. 'hash_adler32.c hash_crc32.c hash_joaat.c hash_fnv.c ' +
  10. 'hash_sha3.c hash_murmur.c hash_xxhash.c', false);
  11. var hash_sha3_dir = 'ext/hash/sha3/generic' + (X64 ? '64' : '32') + 'lc';
  12. if(X64) {
  13. ADD_SOURCES(hash_sha3_dir, 'KeccakHash.c KeccakSponge.c KeccakP-1600-opt64.c', 'hash');
  14. } else {
  15. ADD_SOURCES(hash_sha3_dir, 'KeccakHash.c KeccakSponge.c KeccakP-1600-inplace32BI.c', 'hash');
  16. }
  17. if (!CHECK_HEADER_ADD_INCLUDE('KeccakHash.h', 'CFLAGS_HASH', hash_sha3_dir)) {
  18. // Should NEVER happen
  19. ERROR('Unable to locate SHA3 headers');
  20. }
  21. ADD_FLAG('CFLAGS_HASH', '/DKeccakP200_excluded /DKeccakP400_excluded /DKeccakP800_excluded /DZEND_ENABLE_STATIC_TSRMLS_CACHE=1');
  22. var hash_murmur_dir = 'ext/hash/murmur';
  23. if (!CHECK_HEADER_ADD_INCLUDE('PMurHash.h', 'CFLAGS_HASH', hash_murmur_dir)) {
  24. ERROR('Unable to locate murmur headers');
  25. }
  26. ADD_SOURCES(hash_murmur_dir, 'PMurHash.c PMurHash128.c', 'hash');
  27. var hash_xxhash_dir = 'ext/hash/xxhash';
  28. if (!CHECK_HEADER_ADD_INCLUDE('xxhash.h', 'CFLAGS_HASH', hash_xxhash_dir)) {
  29. ERROR('Unable to locate xxhash headers');
  30. }
  31. PHP_INSTALL_HEADERS('ext/hash/', 'php_hash.h php_hash_md.h php_hash_sha.h ' +
  32. 'php_hash_ripemd.h php_hash_haval.h php_hash_tiger.h ' +
  33. 'php_hash_gost.h php_hash_snefru.h php_hash_whirlpool.h ' +
  34. 'php_hash_adler32.h php_hash_crc32.h php_hash_sha3.h ' +
  35. 'php_hash_murmur.h php_hash_xxhash.h');