# libgcrypt.m4 - Autoconf macros to detect libgcrypt # Copyright (C) 2002, 2003, 2004, 2011, 2014, 2018 g10 Code GmbH # # This file is free software; as a special exception the author gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. # # This file is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY, to the extent permitted by law; without even the # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # # Last-changed: 2018-11-13 dnl AM_PATH_LIBGCRYPT([MINIMUM-VERSION, dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]]]) dnl Test for libgcrypt and define LIBGCRYPT_CFLAGS and LIBGCRYPT_LIBS. dnl MINIMUN-VERSION is a string with the version number optionalliy prefixed dnl with the API version to also check the API compatibility. Example: dnl a MINIMUN-VERSION of 1:1.2.5 won't pass the test unless the installed dnl version of libgcrypt is at least 1.2.5 *and* the API number is 1. Using dnl this features allows to prevent build against newer versions of libgcrypt dnl with a changed API. dnl dnl If a prefix option is not used, the config script is first dnl searched in $SYSROOT/bin and then along $PATH. If the used dnl config script does not match the host specification the script dnl is added to the gpg_config_script_warn variable. dnl AC_DEFUN([AM_PATH_LIBGCRYPT], [ AC_REQUIRE([AC_CANONICAL_HOST]) AC_ARG_WITH(libgcrypt-prefix, AC_HELP_STRING([--with-libgcrypt-prefix=PFX], [prefix where LIBGCRYPT is installed (optional)]), libgcrypt_config_prefix="$withval", libgcrypt_config_prefix="") if test x"${LIBGCRYPT_CONFIG}" = x ; then if test x"${libgcrypt_config_prefix}" != x ; then LIBGCRYPT_CONFIG="${libgcrypt_config_prefix}/bin/libgcrypt-config" fi fi use_gpgrt_config="" if test x"${LIBGCRYPT_CONFIG}" = x -a x"$GPGRT_CONFIG" != x -a "$GPGRT_CONFIG" != "no"; then if $GPGRT_CONFIG libgcrypt --exists; then LIBGCRYPT_CONFIG="$GPGRT_CONFIG libgcrypt" AC_MSG_NOTICE([Use gpgrt-config as libgcrypt-config]) use_gpgrt_config=yes fi fi if test -z "$use_gpgrt_config"; then if test x"${LIBGCRYPT_CONFIG}" = x ; then case "${SYSROOT}" in /*) if test -x "${SYSROOT}/bin/libgcrypt-config" ; then LIBGCRYPT_CONFIG="${SYSROOT}/bin/libgcrypt-config" fi ;; '') ;; *) AC_MSG_WARN([Ignoring \$SYSROOT as it is not an absolute path.]) ;; esac fi AC_PATH_PROG(LIBGCRYPT_CONFIG, libgcrypt-config, no) fi tmp=ifelse([$1], ,1:1.2.0,$1) if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then req_libgcrypt_api=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\1/'` min_libgcrypt_version=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\2/'` else req_libgcrypt_api=0 min_libgcrypt_version="$tmp" fi AC_MSG_CHECKING(for LIBGCRYPT - version >= $min_libgcrypt_version) ok=no if test "$LIBGCRYPT_CONFIG" != "no" ; then req_major=`echo $min_libgcrypt_version | \ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\1/'` req_minor=`echo $min_libgcrypt_version | \ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\2/'` req_micro=`echo $min_libgcrypt_version | \ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\3/'` if test -z "$use_gpgrt_config"; then libgcrypt_config_version=`$LIBGCRYPT_CONFIG --version` else libgcrypt_config_version=`$LIBGCRYPT_CONFIG --modversion` fi major=`echo $libgcrypt_config_version | \ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\1/'` minor=`echo $libgcrypt_config_version | \ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\2/'` micro=`echo $libgcrypt_config_version | \ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\3/'` if test "$major" -gt "$req_major"; then ok=yes else if test "$major" -eq "$req_major"; then if test "$minor" -gt "$req_minor"; then ok=yes else if test "$minor" -eq "$req_minor"; then if test "$micro" -ge "$req_micro"; then ok=yes fi fi fi fi fi fi if test $ok = yes; then AC_MSG_RESULT([yes ($libgcrypt_config_version)]) else AC_MSG_RESULT(no) fi if test $ok = yes; then # If we have a recent libgcrypt, we should also check that the # API is compatible if test "$req_libgcrypt_api" -gt 0 ; then if test -z "$use_gpgrt_config"; then tmp=`$LIBGCRYPT_CONFIG --api-version 2>/dev/null || echo 0` else tmp=`$LIBGCRYPT_CONFIG --variable=api_version 2>/dev/null || echo 0` fi if test "$tmp" -gt 0 ; then AC_MSG_CHECKING([LIBGCRYPT API version]) if test "$req_libgcrypt_api" -eq "$tmp" ; then AC_MSG_RESULT([okay]) else ok=no AC_MSG_RESULT([does not match. want=$req_libgcrypt_api got=$tmp]) fi fi fi fi if test $ok = yes; then LIBGCRYPT_CFLAGS=`$LIBGCRYPT_CONFIG --cflags` LIBGCRYPT_LIBS=`$LIBGCRYPT_CONFIG --libs` ifelse([$2], , :, [$2]) if test -z "$use_gpgrt_config"; then libgcrypt_config_host=`$LIBGCRYPT_CONFIG --host 2>/dev/null || echo none` else libgcrypt_config_host=`$LIBGCRYPT_CONFIG --variable=host 2>/dev/null || echo none` fi if test x"$libgcrypt_config_host" != xnone ; then if test x"$libgcrypt_config_host" != x"$host" ; then AC_MSG_WARN([[ *** *** The config script "$LIBGCRYPT_CONFIG" was *** built for $libgcrypt_config_host and thus may not match the *** used host $host. *** You may want to use the configure option --with-libgcrypt-prefix *** to specify a matching config script or use \$SYSROOT. ***]]) gpg_config_script_warn="$gpg_config_script_warn libgcrypt" fi fi else LIBGCRYPT_CFLAGS="" LIBGCRYPT_LIBS="" ifelse([$3], , :, [$3]) fi AC_SUBST(LIBGCRYPT_CFLAGS) AC_SUBST(LIBGCRYPT_LIBS) ])
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
bison-i18n.m4 | File | 1.88 KB | 0644 |
|
codeset.m4 | File | 842 B | 0644 |
|
extern-inline.m4 | File | 4.27 KB | 0644 |
|
fcntl-o.m4 | File | 4.56 KB | 0644 |
|
fontutil.m4 | File | 13.83 KB | 0644 |
|
freetype2.m4 | File | 6.18 KB | 0644 |
|
gettext.m4 | File | 15.49 KB | 0644 |
|
glibc2.m4 | File | 830 B | 0644 |
|
glibc21.m4 | File | 907 B | 0644 |
|
gpg-error.m4 | File | 4.65 KB | 0644 |
|
gpgrt.m4 | File | 4.61 KB | 0644 |
|
iconv.m4 | File | 9.06 KB | 0644 |
|
intdiv0.m4 | File | 2.35 KB | 0644 |
|
intl.m4 | File | 11.84 KB | 0644 |
|
intldir.m4 | File | 917 B | 0644 |
|
intlmacosx.m4 | File | 2.47 KB | 0644 |
|
intmax.m4 | File | 1.1 KB | 0644 |
|
inttypes-pri.m4 | File | 1.22 KB | 0644 |
|
inttypes_h.m4 | File | 1020 B | 0644 |
|
lcmessage.m4 | File | 1.33 KB | 0644 |
|
lib-ld.m4 | File | 3.6 KB | 0644 |
|
lib-link.m4 | File | 32.28 KB | 0644 |
|
lib-prefix.m4 | File | 8.27 KB | 0644 |
|
libgcrypt.m4 | File | 6.09 KB | 0644 |
|
libtool.m4 | File | 298.69 KB | 0644 |
|
libxml.m4 | File | 7.7 KB | 0644 |
|
libxslt.m4 | File | 7.93 KB | 0644 |
|
lock.m4 | File | 1.43 KB | 0644 |
|
longlong.m4 | File | 4.63 KB | 0644 |
|
ltargz.m4 | File | 2.51 KB | 0644 |
|
ltdl.m4 | File | 29.33 KB | 0644 |
|
ltoptions.m4 | File | 14.17 KB | 0644 |
|
ltsugar.m4 | File | 4.28 KB | 0644 |
|
ltversion.m4 | File | 699 B | 0644 |
|
lt~obsolete.m4 | File | 6 KB | 0644 |
|
mysql.m4 | File | 4.42 KB | 0644 |
|
nls.m4 | File | 1.19 KB | 0644 |
|
pkg.m4 | File | 12.37 KB | 0644 |
|
po.m4 | File | 18.52 KB | 0644 |
|
printf-posix.m4 | File | 1.54 KB | 0644 |
|
progtest.m4 | File | 3.02 KB | 0644 |
|
size_max.m4 | File | 2.99 KB | 0644 |
|
stdint_h.m4 | File | 995 B | 0644 |
|
threadlib.m4 | File | 14.8 KB | 0644 |
|
uintmax_t.m4 | File | 1.09 KB | 0644 |
|
visibility.m4 | File | 3.27 KB | 0644 |
|
wchar_t.m4 | File | 818 B | 0644 |
|
wint_t.m4 | File | 1.03 KB | 0644 |
|
xsize.m4 | File | 406 B | 0644 |
|