aboutsummaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorjethro <jtg@xtrabass.com>2017-05-29 18:39:49 -0400
committerjethro <jtg@xtrabass.com>2017-06-18 10:08:37 -0400
commite1f3dfccc8a099eb08e0d9ef758b216d035afd78 (patch)
treeabf35aacb54779d49ef4616d7a2b13ed718fc709 /CMakeLists.txt
parentMerge pull request #2055 (diff)
downloadmonero-e1f3dfccc8a099eb08e0d9ef758b216d035afd78.tar.xz
Add readline support to cli
This PR adds readline support to the daemon and monero-wallet-cli. Only GNU readline is supported (e.g. not libedit) and there are cmake checks to ensure this. There is a cmake variable, Readline_ROOT_DIR that can specify a directory to find readline, otherwise some default paths are searched. There is also a cmake option, USE_READLINE, that defaults to ON. If set to ON, if readline is not found, the build continues but without readline support. One negative side effect of using readline is that the color prompt in the wallet-cli now has no color and just uses terminal default. I know how to fix this but it's quite a big change so will tackle another time.
Diffstat (limited to '')
-rw-r--r--CMakeLists.txt13
1 files changed, 13 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index a9d6be986..a8060f90c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -655,6 +655,19 @@ endif()
list(APPEND EXTRA_LIBRARIES ${CMAKE_DL_LIBS})
+option(USE_READLINE "Build with GNU readline support." ON)
+if(USE_READLINE)
+ find_package(Readline)
+ if(READLINE_FOUND AND GNU_READLINE_FOUND)
+ add_definitions(-DHAVE_READLINE)
+ include_directories(${Readline_INCLUDE_DIR})
+ list(APPEND EXTRA_LIBRARIES ${Readline_LIBRARY})
+ message(STATUS "Found readline library at: ${Readline_ROOT_DIR}")
+ else()
+ message(STATUS "Could not find GNU readline library so building without readline support")
+ endif()
+endif()
+
if(ANDROID)
set(ATOMIC libatomic.a)
endif()