]> granicus.if.org Git - php/commitdiff
ext/standard: Use PKG_CHECK_MODULES to detect the Argon2 library
authorHugh McMaster <hugh.mcmaster@outlook.com>
Fri, 7 Jun 2019 09:44:22 +0000 (19:44 +1000)
committerJoe Watkins <krakjoe@php.net>
Wed, 12 Jun 2019 04:54:54 +0000 (06:54 +0200)
azure/apt.yml
azure/job.yml
ext/standard/config.m4

index 4ce769cea4453675cc9a66111b77846db4a9ac2f..843ae1daf197d3d1e40ec99d42f021e8c6f30114 100644 (file)
@@ -31,6 +31,7 @@ steps:
                        libreadline-dev \
                        libldap2-dev \
                        libsasl2-dev \
+                       libargon2-0-dev \
                        postgresql \
                        postgresql-contrib \
                        ${{ parameters.packages }}
index 2b6960c961341d266682d76ad73dd8d9b17e9156..003a6d20a6f05c0dd88cf7434686d74c4e074931 100644 (file)
@@ -58,6 +58,7 @@ jobs:
             --enable-zend-test \
             --with-ldap \
             --with-ldap-sasl \
+            --with-password-argon2 \
             --enable-werror \
             --with-config-file-path=/etc \
             --with-config-file-scan-dir=/etc/php.d
index 891fca2ffa026c565cfd2b46e9d459ff9128b447..20ff3d55c05f1b102f30cddda89f643eebc15f7d 100644 (file)
@@ -406,36 +406,18 @@ AC_CHECK_DECLS([arc4random_buf])
 dnl
 dnl Check for argon2
 dnl
-PHP_ARG_WITH([password-argon2],
-  [for Argon2 support],
-  [AS_HELP_STRING([[--with-password-argon2[=DIR]]],
-    [Include Argon2 support in password_*. DIR is the Argon2 shared library
-    path])])
-
-if test "$PHP_PASSWORD_ARGON2" != "no"; then
-  AC_MSG_CHECKING([for Argon2 library])
-  for i in $PHP_PASSWORD_ARGON2 /usr /usr/local ; do
-    if test -r $i/include/argon2.h; then
-      ARGON2_DIR=$i;
-      AC_MSG_RESULT(found in $i)
-      break
-    fi
-  done
-
-  if test -z "$ARGON2_DIR"; then
-    AC_MSG_RESULT([not found])
-    AC_MSG_ERROR([Please ensure the argon2 header and library are installed])
-  fi
+PHP_ARG_WITH([argon2],
+  [whether to build with Argon2 support],
+  [AS_HELP_STRING([--with-argon2],
+    [Build with Argon2 support])])
 
-  PHP_ADD_LIBRARY_WITH_PATH(argon2, $ARGON2_DIR/$PHP_LIBDIR)
-  PHP_ADD_INCLUDE($ARGON2_DIR/include)
+if test "$PHP_ARGON2" != "no"; then
+  PKG_CHECK_MODULES([ARGON2], [libargon2])
 
-  AC_CHECK_LIB(argon2, argon2id_hash_raw, [
-    LIBS="$LIBS -largon2"
-    AC_DEFINE(HAVE_ARGON2LIB, 1, [ Define to 1 if you have the <argon2.h> header file ])
-  ], [
-    AC_MSG_ERROR([Problem with libargon2.(a|so). Please verify that Argon2 header and libraries >= 20161029 are installed])
-  ])
+  PHP_EVAL_INCLINE($ARGON2_CFLAGS)
+  PHP_EVAL_LIBLINE($ARGON2_LIBS, ARGON2_SHARED_LIBADD)
+
+  AC_DEFINE(HAVE_ARGON2LIB, 1, [ ])
 fi
 
 dnl