summaryrefslogtreecommitdiff
path: root/doc/man/CMakeLists.txt
blob: 9b3c5076478b8e687e13d857a6af31562187b13f (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
###
# Generate manpages
###

set(MANPAGES st-util st-flash st-info)

# Only generate manpages with pandoc in Debug builds
if (${STLINK_GENERATE_MANPAGES})
    include(pandocology)
    foreach (manpage ${MANPAGES})
        add_document(
            ${manpage}.1
            SOURCES ${manpage}.md
            PANDOC_DIRECTIVES -s -t man
            PRODUCT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
            )
    endforeach ()
else ()
    message(STATUS "Manpage generation disabled")
endif ()

# Install from output folder or this folder
foreach (manpage ${MANPAGES})
    if (EXISTS ${CMAKE_CURRENT_BINARY_DIR}/${manpage}.1)
        set(f "${CMAKE_CURRENT_BINARY_DIR}/${manpage}.1")
    elseif (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${manpage}.1")
        set(f "${CMAKE_CURRENT_SOURCE_DIR}/${manpage}.1")
    else()
        message(AUTHOR_WARNING "Manpage ${manpage} not generated")
    endif ()

    if (f AND NOT WIN32)
        install(FILES ${f} DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/man/man1)
        unset(f)
    endif ()
endforeach ()