diff options
author | Morgan Deters <mdeters@gmail.com> | 2012-11-27 18:09:16 +0000 |
---|---|---|
committer | Morgan Deters <mdeters@gmail.com> | 2012-11-27 18:09:16 +0000 |
commit | 0697e19c09a8ac5f1d9c30ee053845f06ea39c0e (patch) | |
tree | b9694086e1d23e53a52ad7d105d6ccd71dbb4d76 | |
parent | 7d7106f4e62daf77b8ef616a013ea70ebeb24ac0 (diff) |
give warning at configure-time about unsupported language bindings, and don't advertise them in help listing for --enable-language-bindings
-rw-r--r-- | config/bindings.m4 | 19 | ||||
-rw-r--r-- | configure.ac | 8 |
2 files changed, 25 insertions, 2 deletions
diff --git a/config/bindings.m4 b/config/bindings.m4 index b37a46243..1c4c42695 100644 --- a/config/bindings.m4 +++ b/config/bindings.m4 @@ -2,6 +2,12 @@ # ----------------------- # Supported language bindings for CVC4. AC_DEFUN([CVC4_SUPPORTED_BINDINGS], +[c,java]) + +# CVC4_ALL_BINDINGS +# ----------------- +# All language bindings for CVC4 (may include unofficial bindings). +AC_DEFUN([CVC4_ALL_BINDINGS], [c,java,csharp,perl,php,python,ruby,tcl,ocaml]) # CVC4_CHECK_BINDINGS(DEFAULT_BINDINGS_LIST) @@ -12,7 +18,7 @@ AC_DEFUN([CVC4_CHECK_BINDINGS], [ dnl Check for SWIG (for building language bindings) noswig=no -m4_foreach(lang,[CVC4_SUPPORTED_BINDINGS], +m4_foreach(lang,[CVC4_ALL_BINDINGS], [[cvc4_build_]]lang[[_bindings=no ]]) @@ -49,10 +55,19 @@ if test -z "$try_bindings"; then else AC_MSG_RESULT([$try_bindings]) fi +CVC4_UNSUPPORTED_LANGUAGE_BINDINGS= cvc4_save_CPPFLAGS="$CPPFLAGS" cvc4_save_CXXFLAGS="$CXXFLAGS" AC_LANG_PUSH([C++]) for binding in $try_bindings; do + __cvc4_lang_supported=no + m4_foreach([__cvc4_supported_binding], [CVC4_SUPPORTED_BINDINGS], + [if test "$binding" = "__cvc4_supported_binding"; then __cvc4_lang_supported=yes; fi + ])dnl + if test $__cvc4_lang_supported = no; then + CVC4_UNSUPPORTED_LANGUAGE_BINDINGS="${CVC4_UNSUPPORTED_LANGUAGE_BINDINGS:+$CVC4_UNSUPPORTED_LANGUAGE_BINDINGS }$binding" + fi + binding_error=no AC_MSG_CHECKING([for availability of $binding binding]) case "$binding" in @@ -167,7 +182,7 @@ done AM_CONDITIONAL([CVC4_HAS_SWIG], [test "$SWIG"]) -m4_foreach([lang], [CVC4_SUPPORTED_BINDINGS], +m4_foreach([lang], [CVC4_ALL_BINDINGS], [AM_CONDITIONAL([CVC4_LANGUAGE_BINDING_]m4_toupper(lang), [test "$cvc4_build_]lang[_bindings" = yes]) ])dnl diff --git a/configure.ac b/configure.ac index 682f0de7c..4595227a4 100644 --- a/configure.ac +++ b/configure.ac @@ -1287,6 +1287,14 @@ ${licensewarn}Now just type make, followed by make check or make install, as you EOF +if test -n "$CVC4_UNSUPPORTED_LANGUAGE_BINDINGS"; then + AC_MSG_WARN([]) + AC_MSG_WARN([You are electing to build unsupported language binding(s): $CVC4_UNSUPPORTED_LANGUAGE_BINDINGS]) + AC_MSG_WARN([Please be aware that these bindings may not compile, or work, and the interface to CVC4 via]) + AC_MSG_WARN([these bindings may change drastically in upcoming releases of CVC4.]) + AC_MSG_WARN([]) +fi + if test -n "$CVC4_INTEGRITY_WARNING"; then AC_MSG_WARN([]) AC_MSG_WARN($CVC4_INTEGRITY_WARNING) |