diff --git a/CMake/Manpage.cmake b/CMake/Manpage.cmake new file mode 100644 index 00000000..4842387e --- /dev/null +++ b/CMake/Manpage.cmake @@ -0,0 +1,31 @@ +find_package(A2X REQUIRED) + +add_custom_target(man ALL) + +function(add_manpage name section) + add_custom_command( + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${name}.${section} + COMMAND ${A2X_COMMAND} + --no-xmllint + --doctype manpage + --format manpage + -D ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} + ${CMAKE_CURRENT_SOURCE_DIR}/${name}.${section}.txt + DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${name}.${section}.txt + COMMENT Generating manpage for ${name}.${section} + ) + + add_custom_target(man-${name}.${section} + DEPENDS + ${CMAKE_CURRENT_BINARY_DIR}/${name}.${section} + ) + add_dependencies(man + man-${name}.${section} + ) + + install( + FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${name}.${section} + DESTINATION share/man/man${section} + COMPONENT documentation + ) +endfunction() diff --git a/CMakeLists.txt b/CMakeLists.txt index 48f03e2e..4d828153 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -50,7 +50,6 @@ add_subdirectory(swaybar) find_package(XKBCommon REQUIRED) find_package(WLC REQUIRED) -find_package(A2X REQUIRED) find_package(PCRE REQUIRED) find_package(Wayland REQUIRED) find_package(JsonC REQUIRED) @@ -98,36 +97,7 @@ install( COMPONENT configuration ) -add_custom_target(man ALL) - -function(add_manpage name section) - add_custom_command( - OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${name}.${section} - COMMAND ${A2X_COMMAND} - --no-xmllint - --doctype manpage - --format manpage - -D ${CMAKE_RUNTIME_OUTPUT_DIRECTORY} - ${CMAKE_CURRENT_SOURCE_DIR}/${name}.${section}.txt - DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${name}.${section}.txt - COMMENT Generating manpage for ${name}.${section} - ) - - add_custom_target(man-${name}.${section} - DEPENDS - ${CMAKE_CURRENT_BINARY_DIR}/${name}.${section} - ) - add_dependencies(man - man-${name}.${section} - ) - - install( - FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${name}.${section} - DESTINATION share/man/man${section} - COMPONENT documentation - ) -endfunction() - +include(Manpage) add_manpage(sway 1) add_manpage(sway 5) add_manpage(swaymsg 1)