1
0
Fork 0
mirror of https://github.com/eosswedenorg/antelope-keygen synced 2026-06-16 03:44:56 +02:00
antelope-keygen/cli/CMakeLists.txt

84 lines
2.1 KiB
CMake

cmake_minimum_required(VERSION 3.15)
# --------------------------------
# Project Info
# --------------------------------
project(antelope-keygen
VERSION ${CMAKE_PROJECT_VERSION}
LANGUAGES CXX)
# Options
option(FORCE_ANSI "Force ANSI console colors even on windows" OFF)
# --------------------------------
# Program
# --------------------------------
set (PROGRAM_EXE ${PROJECT_NAME})
set (PROGRAM_SOURCE
src/isatty.cpp
src/cli_key_search_result.cpp
src/console.cpp
src/benchmark.cpp
src/main.cpp
)
if (WIN32 AND NOT FORCE_ANSI)
set (PROGRAM_SOURCE ${PROGRAM_SOURCE} src/console_win32.cpp)
else()
# *nix should have ansi support.
set (PROGRAM_SOURCE ${PROGRAM_SOURCE} src/console_ansi.cpp)
endif()
add_executable( ${PROGRAM_EXE} ${PROGRAM_SOURCE} )
# Include CLI11
include ( ${CMAKE_SOURCE_DIR}/lib/CLI11/CMakeLists.txt )
target_include_directories( ${PROGRAM_EXE} PRIVATE ${LIBCLI11_INCLUDE} )
target_link_libraries( ${PROGRAM_EXE} PUBLIC common )
# --------------------------------
# Install
# --------------------------------
install(TARGETS ${PROGRAM_EXE}
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
COMPONENT cli)
install(FILES ${PROJECT_LICENSE_FILE}
DESTINATION ${CMAKE_INSTALL_SHAREDIR}
COMPONENT cli
RENAME LICENSE.cli)
install (FILES ${LIBCLI11_LICENSE}
DESTINATION ${CMAKE_INSTALL_SHAREDIR}
COMPONENT cli
RENAME LICENSE.libcli11)
# Documentation
configure_file( docs/README.md.in ${PROJECT_BINARY_DIR}/README.cli.md @ONLY )
install(FILES ${PROJECT_BINARY_DIR}/README.cli.md
DESTINATION ${CMAKE_INSTALL_SHAREDIR}
COMPONENT cli)
if (UNIX)
configure_file( docs/antelope-keygen.1.in ${PROJECT_BINARY_DIR}/man1/antelope-keygen.1 )
configure_file( docs/antelope-keygen-search.1.in ${PROJECT_BINARY_DIR}/man1/antelope-keygen-search.1 )
configure_file( docs/antelope-keygen-benchmark.1.in ${PROJECT_BINARY_DIR}/man1/antelope-keygen-benchmark.1 )
install(DIRECTORY ${PROJECT_BINARY_DIR}/man1
DESTINATION ${CMAKE_INSTALL_MANDIR}
COMPONENT cli)
endif (UNIX)
# --------------------------------
# Package
# --------------------------------
configure_file(cmake/CPackComponentConfig.cmake.in
${PROJECT_BINARY_DIR}/CPackProperties.cmake)