https://github.com/Iasonaskrpr updated https://github.com/llvm/llvm-project/pull/207764
>From c94bc02707b56671dfe25e76eb4ca634cf6d2132 Mon Sep 17 00:00:00 2001 From: Iasonaskrpr <[email protected]> Date: Mon, 6 Jul 2026 18:06:32 +0300 Subject: [PATCH 1/4] [lldb][Fortran] Added CMAKE variable guard for Fortran support in LLDB --- lldb/cmake/modules/FindFlang.cmake | 17 +++++++++++++++++ lldb/cmake/modules/LLDBConfig.cmake | 1 + 2 files changed, 18 insertions(+) create mode 100644 lldb/cmake/modules/FindFlang.cmake diff --git a/lldb/cmake/modules/FindFlang.cmake b/lldb/cmake/modules/FindFlang.cmake new file mode 100644 index 0000000000000..f71d42c5fb586 --- /dev/null +++ b/lldb/cmake/modules/FindFlang.cmake @@ -0,0 +1,17 @@ +# FindFlang.cmake + +include(FindPackageHandleStandardArgs) + +# If Flang and lldb are in-tree then the libraries will already be available, otherwise look for specific directories +if(TARGET flangFrontEnd) + set(Flang_FOUND TRUE) +else() + find_package(Flang QUIET CONFIG HINTS ${Flang_DIR} ${LLVM_DIR}/../flang) +endif() + +find_package_handle_standard_args(Flang + FOUND_VAR + Flang_FOUND + REQUIRED_VARS + Flang_FOUND +) \ No newline at end of file diff --git a/lldb/cmake/modules/LLDBConfig.cmake b/lldb/cmake/modules/LLDBConfig.cmake index e086aaf5d3632..82ad8b19ebb79 100644 --- a/lldb/cmake/modules/LLDBConfig.cmake +++ b/lldb/cmake/modules/LLDBConfig.cmake @@ -64,6 +64,7 @@ add_optional_dependency(LLDB_ENABLE_LUA "Enable Lua scripting support in LLDB" L add_optional_dependency(LLDB_ENABLE_PYTHON "Enable Python scripting support in LLDB" PythonAndSwig PYTHONANDSWIG_FOUND) add_optional_dependency(LLDB_ENABLE_LIBXML2 "Enable Libxml 2 support in LLDB" LibXml2 LIBXML2_FOUND VERSION ${LLDB_LIBXML2_VERSION}) add_optional_dependency(LLDB_ENABLE_TREESITTER "Enable Tree-sitter syntax highlighting" TreeSitter TREESITTER_FOUND) +add_optional_dependency(LLDB_ENABLE_FORTRAN "Enable Fortran support in lldb" Flang Flang_FOUND) option(LLDB_USE_ENTITLEMENTS "When codesigning, use entitlements if available" ON) option(LLDB_BUILD_FRAMEWORK "Build LLDB.framework (Darwin only)" OFF) >From 569e29d532ebf858728e4b79cfb93fd827f4dc16 Mon Sep 17 00:00:00 2001 From: Iasonaskrpr <[email protected]> Date: Mon, 6 Jul 2026 22:14:20 +0300 Subject: [PATCH 2/4] [lldb] Removed support for out-of-tree flang builds --- lldb/cmake/modules/FindFlang.cmake | 17 ----------------- lldb/cmake/modules/LLDBConfig.cmake | 9 ++++++++- 2 files changed, 8 insertions(+), 18 deletions(-) delete mode 100644 lldb/cmake/modules/FindFlang.cmake diff --git a/lldb/cmake/modules/FindFlang.cmake b/lldb/cmake/modules/FindFlang.cmake deleted file mode 100644 index f71d42c5fb586..0000000000000 --- a/lldb/cmake/modules/FindFlang.cmake +++ /dev/null @@ -1,17 +0,0 @@ -# FindFlang.cmake - -include(FindPackageHandleStandardArgs) - -# If Flang and lldb are in-tree then the libraries will already be available, otherwise look for specific directories -if(TARGET flangFrontEnd) - set(Flang_FOUND TRUE) -else() - find_package(Flang QUIET CONFIG HINTS ${Flang_DIR} ${LLVM_DIR}/../flang) -endif() - -find_package_handle_standard_args(Flang - FOUND_VAR - Flang_FOUND - REQUIRED_VARS - Flang_FOUND -) \ No newline at end of file diff --git a/lldb/cmake/modules/LLDBConfig.cmake b/lldb/cmake/modules/LLDBConfig.cmake index 82ad8b19ebb79..ffb01342531dc 100644 --- a/lldb/cmake/modules/LLDBConfig.cmake +++ b/lldb/cmake/modules/LLDBConfig.cmake @@ -56,6 +56,14 @@ set(LLDB_LIBXML2_VERSION "2.8" CACHE STRING static builds of libxml 2. Use at your own risk.") mark_as_advanced(LLDB_LIBXML2_VERSION) +set(LLDB_DEFAULT_ENABLE_FORTRAN OFF) + +if("flang" IN_LIST LLVM_ENABLE_PROJECTS) + set(LLDB_DEFAULT_ENABLE_FORTRAN ON) +endif() + +option(LLDB_ENABLE_FORTRAN "Enable Fortran support in LLDB" ${LLDB_DEFAULT_ENABLE_FORTRAN}) + add_optional_dependency(LLDB_ENABLE_SWIG "Enable SWIG to generate LLDB bindings" SWIG SWIG_FOUND VERSION 4) add_optional_dependency(LLDB_ENABLE_LIBEDIT "Enable editline support in LLDB" LibEdit LibEdit_FOUND) add_optional_dependency(LLDB_ENABLE_CURSES "Enable curses support in LLDB" CursesAndPanel CURSESANDPANEL_FOUND) @@ -64,7 +72,6 @@ add_optional_dependency(LLDB_ENABLE_LUA "Enable Lua scripting support in LLDB" L add_optional_dependency(LLDB_ENABLE_PYTHON "Enable Python scripting support in LLDB" PythonAndSwig PYTHONANDSWIG_FOUND) add_optional_dependency(LLDB_ENABLE_LIBXML2 "Enable Libxml 2 support in LLDB" LibXml2 LIBXML2_FOUND VERSION ${LLDB_LIBXML2_VERSION}) add_optional_dependency(LLDB_ENABLE_TREESITTER "Enable Tree-sitter syntax highlighting" TreeSitter TREESITTER_FOUND) -add_optional_dependency(LLDB_ENABLE_FORTRAN "Enable Fortran support in lldb" Flang Flang_FOUND) option(LLDB_USE_ENTITLEMENTS "When codesigning, use entitlements if available" ON) option(LLDB_BUILD_FRAMEWORK "Build LLDB.framework (Darwin only)" OFF) >From 50fbbc56e37fca4514dd863b415c2a796cb5d32c Mon Sep 17 00:00:00 2001 From: Iasonaskrpr <[email protected]> Date: Mon, 6 Jul 2026 22:39:47 +0300 Subject: [PATCH 3/4] Added error message --- lldb/cmake/modules/LLDBConfig.cmake | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/lldb/cmake/modules/LLDBConfig.cmake b/lldb/cmake/modules/LLDBConfig.cmake index ffb01342531dc..23809b5c94f84 100644 --- a/lldb/cmake/modules/LLDBConfig.cmake +++ b/lldb/cmake/modules/LLDBConfig.cmake @@ -64,6 +64,15 @@ endif() option(LLDB_ENABLE_FORTRAN "Enable Fortran support in LLDB" ${LLDB_DEFAULT_ENABLE_FORTRAN}) +# Fail early if the user forced Fortran ON but we don't have in-tree Flang +if(LLDB_ENABLE_FORTRAN AND NOT "flang" IN_LIST LLVM_ENABLE_PROJECTS) + message(FATAL_ERROR + "Fortran support in LLDB requires an in-tree Flang build. " + "Please add 'flang' to LLVM_ENABLE_PROJECTS or disable Fortran " + "support by passing -DLLDB_ENABLE_FORTRAN=OFF." + ) +endif() + add_optional_dependency(LLDB_ENABLE_SWIG "Enable SWIG to generate LLDB bindings" SWIG SWIG_FOUND VERSION 4) add_optional_dependency(LLDB_ENABLE_LIBEDIT "Enable editline support in LLDB" LibEdit LibEdit_FOUND) add_optional_dependency(LLDB_ENABLE_CURSES "Enable curses support in LLDB" CursesAndPanel CURSESANDPANEL_FOUND) >From 9e620ae8a0e251001fdaf1fd4cfe82a318590d21 Mon Sep 17 00:00:00 2001 From: Iasonas Karaprodromidis <[email protected]> Date: Wed, 8 Jul 2026 15:53:34 +0300 Subject: [PATCH 4/4] Fix punctuation in comment Co-authored-by: Jonas Devlieghere <[email protected]> --- lldb/cmake/modules/LLDBConfig.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lldb/cmake/modules/LLDBConfig.cmake b/lldb/cmake/modules/LLDBConfig.cmake index 23809b5c94f84..3f2e50cc7ab45 100644 --- a/lldb/cmake/modules/LLDBConfig.cmake +++ b/lldb/cmake/modules/LLDBConfig.cmake @@ -64,7 +64,7 @@ endif() option(LLDB_ENABLE_FORTRAN "Enable Fortran support in LLDB" ${LLDB_DEFAULT_ENABLE_FORTRAN}) -# Fail early if the user forced Fortran ON but we don't have in-tree Flang +# Fail early if the user forced Fortran ON but we don't have in-tree Flang. if(LLDB_ENABLE_FORTRAN AND NOT "flang" IN_LIST LLVM_ENABLE_PROJECTS) message(FATAL_ERROR "Fortran support in LLDB requires an in-tree Flang build. " _______________________________________________ lldb-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
