Description
When configuring to build on macOS 10.12.6, the following is observed:
checking CommonCrypto/CommonRandom.h usability... no
checking CommonCrypto/CommonRandom.h presence... yes
configure: WARNING: CommonCrypto/CommonRandom.h: present but cannot be compiled
configure: WARNING: CommonCrypto/CommonRandom.h: check for missing prerequisite headers?
configure: WARNING: CommonCrypto/CommonRandom.h: see the Autoconf documentation
configure: WARNING: CommonCrypto/CommonRandom.h: section "Present But Cannot Be Compiled"
configure: WARNING: CommonCrypto/CommonRandom.h: proceeding with the compiler's result
configure: WARNING: ## ---------------------------------------------------- ##
configure: WARNING: ## Report this to https://github.com/php/php-src/issues ##
configure: WARNING: ## ---------------------------------------------------- ##
checking for CommonCrypto/CommonRandom.h... no
Even though the header is present, configuration of it fails.
I was able to fix it with the following:
diff --git a/ext/random/config.m4 b/ext/random/config.m4
index 7bd432c911..a8e6d5a568 100644
--- a/ext/random/config.m4
+++ b/ext/random/config.m4
@@ -7,7 +7,12 @@ dnl
dnl Check for CCRandomGenerateBytes
dnl header absent in previous macOs releases
dnl
-AC_CHECK_HEADERS([CommonCrypto/CommonRandom.h])
+AC_CHECK_HEADERS([CommonCrypto/CommonRandom.h], [], [],
+[
+ #include <sys/types.h>
+ #include <Availability.h>
+ #include <CommonCrypto/CommonCryptoError.h>
+])
dnl
dnl Setup extension
diff --git a/ext/standard/config.m4 b/ext/standard/config.m4
index fb9d8e5415..8e77e75134 100644
--- a/ext/standard/config.m4
+++ b/ext/standard/config.m4
@@ -407,7 +407,12 @@ dnl
dnl Check for CCRandomGenerateBytes
dnl header absent in previous macOs releases
dnl
-AC_CHECK_HEADERS([CommonCrypto/CommonRandom.h])
+AC_CHECK_HEADERS([CommonCrypto/CommonRandom.h], [], [],
+[
+ #include <sys/types.h>
+ #include <Availability.h>
+ #include <CommonCrypto/CommonCryptoError.h>
+])
dnl
dnl Check for argon2
With the patch, php builds, and the "random" module is present.
PHP Version
PHP 8.2.0RC1
Operating System
macOS 10.12.6
Description
When configuring to build on macOS 10.12.6, the following is observed:
Even though the header is present, configuration of it fails.
I was able to fix it with the following:
With the patch, php builds, and the "random" module is present.
PHP Version
PHP 8.2.0RC1
Operating System
macOS 10.12.6