https://github.com/JDevlieghere updated https://github.com/llvm/llvm-project/pull/212655
>From 22283b0c2ad399ede7414bdda7a123acb6116be5 Mon Sep 17 00:00:00 2001 From: Jonas Devlieghere <[email protected]> Date: Tue, 28 Jul 2026 16:12:44 -0700 Subject: [PATCH 1/2] [lldb][docs] Document the script interpreter plugin build options Describe LLDB_ENABLE_DYNAMIC_SCRIPTINTERPRETERS and how it interacts with LLDB_ENABLE_PYTHON_LIMITED_API, including the platform defaults for both and why the Python Limited API requires dynamic script interpreter plugins everywhere but Windows. --- lldb/docs/resources/build.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/lldb/docs/resources/build.md b/lldb/docs/resources/build.md index 2ad5fb8c91bda..349b8ed29e6c1 100644 --- a/lldb/docs/resources/build.md +++ b/lldb/docs/resources/build.md @@ -266,6 +266,20 @@ $ cmake -G Ninja \ It is strongly recommend to use a release build for the compiler to speed up test execution. +#### Script Interpreter Plugins + +LLDB's script interpreter plugins can be built as static or dynamic libraries. +This is controlled by `LLDB_ENABLE_DYNAMIC_SCRIPTINTERPRETERS`, which defaults +to `ON` on Darwin and FreeBSD and `OFF` everywhere else. + +This option is used in combination with `LLDB_ENABLE_PYTHON_LIMITED_API`, which +defaults to `ON` when using SWIG 4.2 or later. When enabled, LLDB uses the +Python [Limited API](https://docs.python.org/3/c-api/stable.html). + +The Python Limited API allows LLDB to use, and be used from, a different +version of Python (3.8 or later) than it was built against. Except on Windows, +this also requires the script interpreters to be built as dynamic libraries. + #### Windows On Windows the LLDB test suite requires lld. Either add `lld` to >From 7a539ae20c0dabfa6fdc89073232f763f64861e2 Mon Sep 17 00:00:00 2001 From: Jonas Devlieghere <[email protected]> Date: Wed, 29 Jul 2026 08:56:59 -0700 Subject: [PATCH 2/2] Address David's review feedback --- lldb/docs/resources/build.md | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/lldb/docs/resources/build.md b/lldb/docs/resources/build.md index 349b8ed29e6c1..aa819483f47a1 100644 --- a/lldb/docs/resources/build.md +++ b/lldb/docs/resources/build.md @@ -268,17 +268,18 @@ test execution. #### Script Interpreter Plugins -LLDB's script interpreter plugins can be built as static or dynamic libraries. -This is controlled by `LLDB_ENABLE_DYNAMIC_SCRIPTINTERPRETERS`, which defaults -to `ON` on Darwin and FreeBSD and `OFF` everywhere else. - -This option is used in combination with `LLDB_ENABLE_PYTHON_LIMITED_API`, which -defaults to `ON` when using SWIG 4.2 or later. When enabled, LLDB uses the -Python [Limited API](https://docs.python.org/3/c-api/stable.html). - -The Python Limited API allows LLDB to use, and be used from, a different -version of Python (3.8 or later) than it was built against. Except on Windows, -this also requires the script interpreters to be built as dynamic libraries. +LLDB's script interpreter plugins (for Python and Lua) can be built as static +or dynamic libraries. This is controlled by +`LLDB_ENABLE_DYNAMIC_SCRIPTINTERPRETERS`, which defaults to `ON` on masOS and +FreeBSD, and `OFF` everywhere else. + +`LLDB_ENABLE_PYTHON_LIMITED_API` makes LLDB use the Python +[Limited API](https://docs.python.org/3/c-api/stable.html). It defaults to `ON` +when using SWIG 4.2 or later. + +When both of these options are enabled, LLDB can use, and be used from, a +different version of Python (3.8 or later) than it was built against. Note that +on Windows, `LLDB_ENABLE_DYNAMIC_SCRIPTINTERPRETERS` is not required. #### Windows _______________________________________________ lldb-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
