JDevlieghere updated this revision to Diff 234788.
JDevlieghere marked an inline comment as done.
JDevlieghere added a comment.
- Extract finding curses and panel into FindCursesAndPanel
- Include LZMA
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D71306/new/
https://reviews.llvm.org/D71306
Files:
lldb/cmake/modules/FindCursesAndPanel.cmake
lldb/cmake/modules/LLDBConfig.cmake
lldb/test/CMakeLists.txt
Index: lldb/test/CMakeLists.txt
===================================================================
--- lldb/test/CMakeLists.txt
+++ lldb/test/CMakeLists.txt
@@ -144,6 +144,7 @@
# These values are not canonicalized within LLVM.
llvm_canonicalize_cmake_booleans(
LLDB_ENABLE_PYTHON
+ LLDB_ENABLE_LZMA
LLVM_ENABLE_ZLIB
LLVM_ENABLE_SHARED_LIBS
LLDB_IS_64_BITS)
Index: lldb/cmake/modules/LLDBConfig.cmake
===================================================================
--- lldb/cmake/modules/LLDBConfig.cmake
+++ lldb/cmake/modules/LLDBConfig.cmake
@@ -25,7 +25,7 @@
endif()
function(add_optional_dependency variable description package found)
- set(${variable} "AUTO" CACHE STRING "${description} On, Off or Auto
(default)")
+ set(${variable} "Auto" CACHE STRING "${description} On, Off or Auto
(default)")
string(TOUPPER "${${variable}}" ${variable})
if("${${variable}}" STREQUAL "AUTO")
@@ -38,17 +38,12 @@
endif()
find_package(${package} ${maybe_required})
- # We could set ${variable} directory to ${${found}} but then the value is
- # TRUE/FALSE rather than ON/OFF.
- if (${${found}})
- set(${variable} ON PARENT_SCOPE)
- else()
- set(${variable} OFF PARENT_SCOPE)
- endif()
+ set(${variable} ${${found}} PARENT_SCOPE)
endfunction()
add_optional_dependency(LLDB_ENABLE_LIBEDIT "Enable editline support." LibEdit
libedit_FOUND)
-add_optional_dependency(LLDB_ENABLE_CURSES "Enable curses support." Curses
CURSES_FOUND)
+add_optional_dependency(LLDB_ENABLE_CURSES "Enable curses support."
CursesAndPanel CURSES_PANEL_FOUND)
+add_optional_dependency(LLDB_ENABLE_LZMA "Enable LZMA compression support."
LibLZMA LIBLZMA_FOUND)
set(default_enable_python ON)
@@ -406,12 +401,9 @@
set(LLDB_VERSION
"${LLDB_VERSION_MAJOR}.${LLDB_VERSION_MINOR}.${LLDB_VERSION_PATCH}${LLDB_VERSION_SUFFIX}")
message(STATUS "LLDB version: ${LLDB_VERSION}")
-find_package(LibLZMA)
-cmake_dependent_option(LLDB_ENABLE_LZMA "Support LZMA compression" ON
"LIBLZMA_FOUND" OFF)
if (LLDB_ENABLE_LZMA)
include_directories(${LIBLZMA_INCLUDE_DIRS})
endif()
-llvm_canonicalize_cmake_booleans(LLDB_ENABLE_LZMA)
include_directories(BEFORE
${CMAKE_CURRENT_BINARY_DIR}/include
Index: lldb/cmake/modules/FindCursesAndPanel.cmake
===================================================================
--- /dev/null
+++ lldb/cmake/modules/FindCursesAndPanel.cmake
@@ -0,0 +1,16 @@
+#.rst:
+# FindCursesAndPanel
+# -----------
+#
+# Find the curses and panel library as a whole.
+
+if(CURSES_INCLUDE_DIRS AND CURSES_LIBRARIES AND PANEL_LIBRARIES)
+ set(CURSES_PANEL_FOUND TRUE)
+else()
+ find_package(Curses QUIET)
+ find_library(PANEL_LIBRARIES NAMES panel DOC "The curses panel library"
QUIET)
+ if(CURSES_FOUND AND PANEL_LIBRARIES)
+ mark_as_advanced(CURSES_INCLUDE_DIRS CURSES_LIBRARIES PANEL_LIBRARIES)
+ endif()
+endif()
+
Index: lldb/test/CMakeLists.txt
===================================================================
--- lldb/test/CMakeLists.txt
+++ lldb/test/CMakeLists.txt
@@ -144,6 +144,7 @@
# These values are not canonicalized within LLVM.
llvm_canonicalize_cmake_booleans(
LLDB_ENABLE_PYTHON
+ LLDB_ENABLE_LZMA
LLVM_ENABLE_ZLIB
LLVM_ENABLE_SHARED_LIBS
LLDB_IS_64_BITS)
Index: lldb/cmake/modules/LLDBConfig.cmake
===================================================================
--- lldb/cmake/modules/LLDBConfig.cmake
+++ lldb/cmake/modules/LLDBConfig.cmake
@@ -25,7 +25,7 @@
endif()
function(add_optional_dependency variable description package found)
- set(${variable} "AUTO" CACHE STRING "${description} On, Off or Auto (default)")
+ set(${variable} "Auto" CACHE STRING "${description} On, Off or Auto (default)")
string(TOUPPER "${${variable}}" ${variable})
if("${${variable}}" STREQUAL "AUTO")
@@ -38,17 +38,12 @@
endif()
find_package(${package} ${maybe_required})
- # We could set ${variable} directory to ${${found}} but then the value is
- # TRUE/FALSE rather than ON/OFF.
- if (${${found}})
- set(${variable} ON PARENT_SCOPE)
- else()
- set(${variable} OFF PARENT_SCOPE)
- endif()
+ set(${variable} ${${found}} PARENT_SCOPE)
endfunction()
add_optional_dependency(LLDB_ENABLE_LIBEDIT "Enable editline support." LibEdit libedit_FOUND)
-add_optional_dependency(LLDB_ENABLE_CURSES "Enable curses support." Curses CURSES_FOUND)
+add_optional_dependency(LLDB_ENABLE_CURSES "Enable curses support." CursesAndPanel CURSES_PANEL_FOUND)
+add_optional_dependency(LLDB_ENABLE_LZMA "Enable LZMA compression support." LibLZMA LIBLZMA_FOUND)
set(default_enable_python ON)
@@ -406,12 +401,9 @@
set(LLDB_VERSION "${LLDB_VERSION_MAJOR}.${LLDB_VERSION_MINOR}.${LLDB_VERSION_PATCH}${LLDB_VERSION_SUFFIX}")
message(STATUS "LLDB version: ${LLDB_VERSION}")
-find_package(LibLZMA)
-cmake_dependent_option(LLDB_ENABLE_LZMA "Support LZMA compression" ON "LIBLZMA_FOUND" OFF)
if (LLDB_ENABLE_LZMA)
include_directories(${LIBLZMA_INCLUDE_DIRS})
endif()
-llvm_canonicalize_cmake_booleans(LLDB_ENABLE_LZMA)
include_directories(BEFORE
${CMAKE_CURRENT_BINARY_DIR}/include
Index: lldb/cmake/modules/FindCursesAndPanel.cmake
===================================================================
--- /dev/null
+++ lldb/cmake/modules/FindCursesAndPanel.cmake
@@ -0,0 +1,16 @@
+#.rst:
+# FindCursesAndPanel
+# -----------
+#
+# Find the curses and panel library as a whole.
+
+if(CURSES_INCLUDE_DIRS AND CURSES_LIBRARIES AND PANEL_LIBRARIES)
+ set(CURSES_PANEL_FOUND TRUE)
+else()
+ find_package(Curses QUIET)
+ find_library(PANEL_LIBRARIES NAMES panel DOC "The curses panel library" QUIET)
+ if(CURSES_FOUND AND PANEL_LIBRARIES)
+ mark_as_advanced(CURSES_INCLUDE_DIRS CURSES_LIBRARIES PANEL_LIBRARIES)
+ endif()
+endif()
+
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits