64 lines
1.9 KiB
Plaintext
64 lines
1.9 KiB
Plaintext
dnl Copyright 2019 Google Inc. All Rights Reserved.
|
|
dnl
|
|
dnl Licensed under the Apache License, Version 2.0 (the "License");
|
|
dnl you may not use this file except in compliance with the License.
|
|
dnl You may obtain a copy of the License at
|
|
dnl
|
|
dnl http://www.apache.org/licenses/LICENSE-2.0
|
|
dnl
|
|
dnl Unless required by applicable law or agreed to in writing, software
|
|
dnl distributed under the License is distributed on an "AS-IS" BASIS,
|
|
dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
dnl See the License for the specific language governing permissions and
|
|
dnl limitations under the License.
|
|
dnl
|
|
|
|
PHP_ARG_WITH(crc32c, for crc32c support,
|
|
[ --with-crc32c[=DIR] Include crc32c support. File is the optional path to google/crc32c])
|
|
|
|
if test "$PHP_CRC32C" != "no"; then
|
|
PHP_REQUIRE_CXX() # The external crc32c library uses C++.
|
|
|
|
if test -r $PHP_CRC32C/; then
|
|
SEARCH_PATH=$PHP_CRC32C
|
|
else
|
|
SEARCH_PATH="$PWD/crc32c/build /usr/local /usr"
|
|
fi
|
|
|
|
|
|
AC_MSG_CHECKING([for crc32c files])
|
|
SEARCH_FOR="include/crc32c/crc32c.h"
|
|
|
|
for i in $SEARCH_PATH ; do
|
|
if test -r $i/$SEARCH_FOR; then
|
|
CRC32C_DIR=$i
|
|
AC_MSG_RESULT(found in $i)
|
|
fi
|
|
done
|
|
|
|
# --with-crc32c -> check with-path
|
|
if test -z "$CRC32C_DIR"; then
|
|
AC_MSG_RESULT([not found])
|
|
AC_MSG_ERROR([Please install the google/crc32c package, and use --with-crc32c])
|
|
fi
|
|
|
|
# --with-crc32c -> add include path
|
|
PHP_ADD_INCLUDE($CRC32C_DIR/include)
|
|
|
|
# --with-crc32c -> check for lib and symbol presence
|
|
LIBNAME=crc32c
|
|
LIBSYMBOL=crc32c_extend
|
|
|
|
PHP_CHECK_LIBRARY($LIBNAME, $LIBSYMBOL,
|
|
[
|
|
PHP_ADD_LIBRARY_WITH_PATH($LIBNAME, $CRC32C_DIR/$PHP_LIBDIR, CRC32C_SHARED_LIBADD)
|
|
],[
|
|
AC_MSG_FAILURE([wrong crc32c lib version or lib not found])
|
|
],[
|
|
-L$CRC32C_DIR/$PHP_LIBDIR -lm
|
|
])
|
|
|
|
PHP_SUBST(CRC32C_SHARED_LIBADD)
|
|
PHP_NEW_EXTENSION(crc32c, hash_crc32c.c php_crc32c.c, $ext_shared, , -Wall -Werror)
|
|
fi
|