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()