summaryrefslogtreecommitdiffstats
path: root/CMake
diff options
context:
space:
mode:
authorLibravatar Christoph Gysin <christoph.gysin@gmail.com>2015-12-01 22:22:39 +0200
committerLibravatar Christoph Gysin <christoph.gysin@gmail.com>2015-12-01 22:47:22 +0200
commit4277070a7b92b5aad7c08beb876f7460fe268f60 (patch)
treebef53364575ce4ccf283fa9dbc6f3cd727979874 /CMake
parentRemove build badge (Travis is broken, not sway) (diff)
downloadsway-4277070a7b92b5aad7c08beb876f7460fe268f60.tar.gz
sway-4277070a7b92b5aad7c08beb876f7460fe268f60.tar.zst
sway-4277070a7b92b5aad7c08beb876f7460fe268f60.zip
cmake: extract add_manpage()
Diffstat (limited to 'CMake')
-rw-r--r--CMake/Manpage.cmake31
1 files changed, 31 insertions, 0 deletions
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 @@
1find_package(A2X REQUIRED)
2
3add_custom_target(man ALL)
4
5function(add_manpage name section)
6 add_custom_command(
7 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${name}.${section}
8 COMMAND ${A2X_COMMAND}
9 --no-xmllint
10 --doctype manpage
11 --format manpage
12 -D ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}
13 ${CMAKE_CURRENT_SOURCE_DIR}/${name}.${section}.txt
14 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${name}.${section}.txt
15 COMMENT Generating manpage for ${name}.${section}
16 )
17
18 add_custom_target(man-${name}.${section}
19 DEPENDS
20 ${CMAKE_CURRENT_BINARY_DIR}/${name}.${section}
21 )
22 add_dependencies(man
23 man-${name}.${section}
24 )
25
26 install(
27 FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${name}.${section}
28 DESTINATION share/man/man${section}
29 COMPONENT documentation
30 )
31endfunction()