[Lldb-commits] [PATCH] D88967: [lldb] Add a cmake warning about the python/swig incompatibility

Pavel Labath via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Wed Oct 7 07:42:10 PDT 2020


labath created this revision.
labath added reviewers: amccarth, tatyana-krasnukha, JDevlieghere.
Herald added a subscriber: mgorny.
Herald added a project: LLDB.
labath requested review of this revision.

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..


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D88967

Files:
  lldb/cmake/modules/FindPythonAndSwig.cmake


Index: lldb/cmake/modules/FindPythonAndSwig.cmake
===================================================================
--- lldb/cmake/modules/FindPythonAndSwig.cmake
+++ lldb/cmake/modules/FindPythonAndSwig.cmake
@@ -45,6 +45,17 @@
     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


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D88967.296674.patch
Type: text/x-patch
Size: 1149 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20201007/8d34d9aa/attachment-0001.bin>


More information about the lldb-commits mailing list