diff options
author | Stefan Schubert <schubi@suse.de> | 2024-06-05 12:13:05 +0200 |
---|---|---|
committer | Dmitry V. Levin <ldv@strace.io> | 2024-07-02 08:00:00 +0000 |
commit | fa3295e079dbbc241906f29bde5fb71bc4172771 (patch) | |
tree | 77b6560f234c4234fade4e7a23908c492b30d05d /configure.ac | |
parent | bc461898448a1bf306fc094cdf6a5a197c4e2753 (diff) | |
download | pam-fa3295e079dbbc241906f29bde5fb71bc4172771.tar.gz pam-fa3295e079dbbc241906f29bde5fb71bc4172771.tar.bz2 pam-fa3295e079dbbc241906f29bde5fb71bc4172771.zip |
pam_econf_readconfig: add econf_readConfigWithCallback support
Check for econf_readConfigWithCallback() and use it if available.
Co-authored-by: Dmitry V. Levin <ldv@strace.io>
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac index fc5cc085..1fd06b6f 100644 --- a/configure.ac +++ b/configure.ac @@ -578,6 +578,31 @@ if test "$WITH_ECONF" = "check"; then elif test "$WITH_ECONF" = "yes"; then PKG_CHECK_MODULES([ECONF], [libeconf >= 0.5.0], [ECONF_CFLAGS="-DUSE_ECONF=1 $ECONF_CFLAGS"], []) fi +if test -n "$ECONF_CFLAGS"; then + AC_MSG_CHECKING(for econf_readConfigWithCallback) + saved_CFLAGS=$CFLAGS + CFLAGS="$CFLAGS $ECONF_CFLAGS" + saved_LIBS=$LIBS + LIBS="$LIBS $ECONF_LIBS" + AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[ + #include <libeconf.h> + ]], + [[ + econf_file *key_file = NULL; + econf_err error = ECONF_SUCCESS; + error = econf_newKeyFile_with_options(&key_file, "PYTHON_STYLE=1"); + error = econf_readConfigWithCallback (&key_file, "foo", "/usr/lib", "test", "conf", "=", "#", NULL, NULL); + ]])], + [econf_readConfigWithCallback=yes], [econf_readConfigWithCallback=no]) + AC_MSG_RESULT($econf_readConfigWithCallback) + if test "$econf_readConfigWithCallback" = yes; then + AC_DEFINE([HAVE_ECONF_READCONFIG], [1], [Define if econf_readConfigWithCallback is available]) + fi + LIBS=$saved_LIBS + CFLAGS=$saved_CFLAGS +fi AC_SUBST([ECONF_CFLAGS]) AC_SUBST([ECONF_LIBS]) |