Skip to content

Commit

Permalink
[lldb] Add a cmake warning about the python/swig incompatibility
Browse files Browse the repository at this point in the history
Raise awareness of the fact that some versions of swig and python (and
build types) just don't mix.

One day this will be a reason to require swig>=4.0, but this version is
too hot off the press right now..

Differential Revision: https://reviews.llvm.org/D88967
  • Loading branch information
labath committed Oct 8, 2020
1 parent 4424d24 commit d4a7c70
Showing 1 changed file with 11 additions and 0 deletions.
11 changes: 11 additions & 0 deletions lldb/cmake/modules/FindPythonAndSwig.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,17 @@ else()
message(STATUS "SWIG 2 or later is required for Python support in LLDB but could not be found")
endif()

get_property(MULTI_CONFIG GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG)
if ("${Python3_VERSION}" VERSION_GREATER_EQUAL "3.7" AND
"${SWIG_VERSION}" VERSION_LESS "4.0" AND WIN32 AND (
${MULTI_CONFIG} OR (${uppercase_CMAKE_BUILD_TYPE} STREQUAL "DEBUG")))
# Technically this can happen with non-Windows builds too, but we are not
# able to detect whether Python was built with assertions, and only Windows
# has the requirement that Debug LLDB must use Debug Python.
message(WARNING "Debug builds of LLDB are likely to be unusable due to "
"<https://github.com/swig/swig/issues/1321>. Please use SWIG >= 4.0.")
endif()

include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(PythonAndSwig
FOUND_VAR
Expand Down

0 comments on commit d4a7c70

Please sign in to comment.