From 2f97221cc16f175568ea240768e5818b35472adf Mon Sep 17 00:00:00 2001 From: makaimann Date: Mon, 22 Oct 2018 16:24:05 -0700 Subject: [PATCH] Fail for SWIG 3.0.8 (#2656) Ran into this bug when compiling with python3 bindings: https://github.com/swig/swig/issues/588 Instantiating any object crashes python. Since swig3.0.8 is currently the apt-get install for Ubuntu 16.04, I thought it'd be good to have a check for that. If python3 is preferred and the swig version is 3.0.8, it errors out and asks users to downgrade or upgrade SWIG. --- src/bindings/CMakeLists.txt | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/bindings/CMakeLists.txt b/src/bindings/CMakeLists.txt index 1c62ecd58..135331e54 100644 --- a/src/bindings/CMakeLists.txt +++ b/src/bindings/CMakeLists.txt @@ -3,6 +3,13 @@ if(NOT ENABLE_SHARED) endif() find_package(SWIG 3.0.0 REQUIRED) + +if(USE_PYTHON3 AND (SWIG_VERSION VERSION_EQUAL 3.0.8)) + message(FATAL_ERROR + "\nSWIG ${SWIG_VERSION} is not supported for python3 bindings because of the following bug: https://github.com/swig/swig/issues/588 +Please downgrade to 3.0.0-3.0.7 or upgrade.") +endif() + include(${SWIG_USE_FILE}) set(CVC4_SWIG_INTERFACE ${PROJECT_SOURCE_DIR}/src/cvc4.i) -- 2.30.2