blob: d391b9e9e78ff1fdcbbb0135d356e31b2f216410 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
set(MAX25_TERMINAL_SRCS
max25_terminal.c
max25_proto.c
max25_ui.c
)
add_executable(max25-terminal ${MAX25_TERMINAL_SRCS})
target_include_directories(max25-terminal PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}")
find_package(Curses)
if(Curses_FOUND AND TARGET Curses::Curses)
target_compile_definitions(max25-terminal PRIVATE MAX25_HAVE_NCURSES)
target_link_libraries(max25-terminal PRIVATE Curses::Curses)
elseif(Curses_FOUND)
target_compile_definitions(max25-terminal PRIVATE MAX25_HAVE_NCURSES)
target_include_directories(max25-terminal PRIVATE ${CURSES_INCLUDE_DIR})
target_link_libraries(max25-terminal PRIVATE ${CURSES_LIBRARIES})
elseif(UNIX AND NOT APPLE)
target_compile_definitions(max25-terminal PRIVATE MAX25_HAVE_NCURSES)
target_link_libraries(max25-terminal PRIVATE ncurses tinfo)
endif()
target_compile_options(max25-terminal PRIVATE -Wall -Wextra -std=c11 -O2)
add_custom_command(TARGET max25-terminal POST_BUILD
COMMAND "${CMAKE_COMMAND}" -E rm -f "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/max25-client"
COMMAND "${CMAKE_COMMAND}" -E create_symlink max25-terminal "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/max25-client"
COMMENT "max25-client -> max25-terminal"
)
install(TARGETS max25-terminal RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")
install(CODE "
set(_dst \"\$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR}/max25-client\")
set(_src \"\$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR}/max25-terminal\")
if(EXISTS \"\${_dst}\")
file(REMOVE \"\${_dst}\")
endif()
execute_process(COMMAND \"${CMAKE_COMMAND}\" -E create_symlink max25-terminal \"\${_dst}\")
")
|