Warning, /multimedia/kid3/src/app/cli/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 ### Check for readline
0002 set(READLINE_INCLUDE_DIR)
0003 set(READLINE_LIBRARIES)
0004 if(WITH_READLINE)
0005   find_path(READLINE_INCLUDE_DIR readline/readline.h)
0006   find_library(READLINE_LIBRARY readline)
0007   if(READLINE_INCLUDE_DIR AND READLINE_LIBRARY)
0008     # Check whether it needs to be linked against termcap
0009     set(_CMAKE_REQUIRED_INCLUDES_TMP "${CMAKE_REQUIRED_INCLUDES}")
0010     set(_CMAKE_REQUIRED_LIBRARIES_TMP "${CMAKE_REQUIRED_LIBRARIES}")
0011     set(CMAKE_REQUIRED_INCLUDES "${READLINE_INCLUDE_DIR}")
0012     set(CMAKE_REQUIRED_LIBRARIES "${READLINE_LIBRARY}")
0013     CHECK_CXX_SOURCE_COMPILES("#include<cstdio>\n#include <readline/readline.h>\nint main() {\n  readline(\"\");\n  return 0;\n}\n" READLINE_STANDALONE_FOUND)
0014     if(READLINE_STANDALONE_FOUND)
0015       set(READLINE_LIBRARIES ${READLINE_LIBRARY})
0016     else()
0017       # Check whether it works with termcap
0018       find_library(TERMCAP_LIBRARY termcap)
0019       if(TERMCAP_LIBRARY)
0020         set(CMAKE_REQUIRED_LIBRARIES "${READLINE_LIBRARY};${TERMCAP_LIBRARY}")
0021         CHECK_CXX_SOURCE_COMPILES("#include<cstdio>\n#include <readline/readline.h>\nint main() {\n  readline(\"\");\n  return 0;\n}\n" READLINE_TERMCAP_FOUND)
0022         if(READLINE_TERMCAP_FOUND)
0023           set(READLINE_LIBRARIES "${READLINE_LIBRARY};${TERMCAP_LIBRARY}")
0024         endif()
0025       endif()
0026     endif()
0027     set(CMAKE_REQUIRED_INCLUDES "${_CMAKE_REQUIRED_INCLUDES_TMP}")
0028     set(CMAKE_REQUIRED_LIBRARIES "${_CMAKE_REQUIRED_LIBRARIES_TMP}")
0029   endif()
0030   if(READLINE_LIBRARIES)
0031     message(STATUS "readline found: ${READLINE_LIBRARIES}")
0032     set(HAVE_READLINE 1)
0033   else()
0034     message(FATAL_ERROR "Could not find readline")
0035   endif()
0036 endif()
0037 configure_file(cliconfig.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/cliconfig.h)
0038 
0039 add_executable(kid3-cli
0040   maincli.cpp
0041   abstractcli.cpp
0042   kid3cli.cpp
0043   clicommand.cpp
0044   standardiohandler.cpp
0045   abstractcliformatter.cpp
0046   textcliformatter.cpp
0047   jsoncliformatter.cpp
0048 )
0049 
0050 if(HAVE_READLINE)
0051   target_sources(kid3-cli PRIVATE readlinecompleter.cpp)
0052 endif()
0053 
0054 qt_wrap_cpp(cli_GEN_MOC_SRCS
0055   abstractcli.h
0056   kid3cli.h
0057   clicommand.h
0058   standardiohandler.h
0059   textcliformatter.h
0060   jsoncliformatter.h
0061   TARGET kid3-cli
0062 )
0063 target_sources(kid3-cli PRIVATE ${cli_GEN_MOC_SRCS})
0064 
0065 target_include_directories(kid3-cli PRIVATE ${CMAKE_CURRENT_BINARY_DIR} ${READLINE_INCLUDE_DIR})
0066 
0067 target_link_libraries(kid3-cli kid3-core ${READLINE_LIBRARIES})
0068 if(NOT MSVC)
0069   target_link_libraries(kid3-cli -lstdc++)
0070 endif()
0071 
0072 if(APPLE)
0073   set(cli_BINDIR ${WITH_LIBDIR})
0074 else()
0075   set(cli_BINDIR ${WITH_BINDIR})
0076 endif()
0077 
0078 install(TARGETS kid3-cli
0079   BUNDLE DESTINATION .
0080   RUNTIME DESTINATION ${cli_BINDIR})
0081 
0082 if(LINUX_SELF_CONTAINED)
0083   set_target_properties(kid3-cli PROPERTIES INSTALL_RPATH "\$ORIGIN")
0084 endif()