summaryrefslogtreecommitdiffstats
path: root/CMakeScripts/Pod2man.cmake
diff options
context:
space:
mode:
authorMarc Jeanmougin <marc@jeanmougin.fr>2019-03-15 00:53:59 +0000
committerMarc Jeanmougin <marc@jeanmougin.fr>2019-03-15 00:53:59 +0000
commit083575fad08c2dae525daf9f060ba3fb1c43bfec (patch)
tree0531d07deaf29456866de3444c520af25dcf3317 /CMakeScripts/Pod2man.cmake
parentPlace vertical iconified docks to the right of dock (diff)
downloadinkscape-083575fad08c2dae525daf9f060ba3fb1c43bfec.tar.gz
inkscape-083575fad08c2dae525daf9f060ba3fb1c43bfec.zip
Improve deb generation and install scripts
Diffstat (limited to '')
-rw-r--r--CMakeScripts/Pod2man.cmake40
1 files changed, 32 insertions, 8 deletions
diff --git a/CMakeScripts/Pod2man.cmake b/CMakeScripts/Pod2man.cmake
index 5b6afa914..42b4f4100 100644
--- a/CMakeScripts/Pod2man.cmake
+++ b/CMakeScripts/Pod2man.cmake
@@ -9,6 +9,11 @@ if(NOT POD2MAN)
message(STATUS "Could not find pod2man - man pages disabled")
endif()
+find_program(GZIP gzip)
+if(NOT GZIP)
+ message(STATUS "Could not find gzip - man pages uncompressed")
+endif()
+
macro(pod2man PODFILE_FULL RELEASE SECTION CENTER)
get_filename_component(PODFILE ${PODFILE_FULL} NAME)
string(REPLACE "." ";" PODFILE_LIST ${PODFILE})
@@ -28,11 +33,13 @@ macro(pod2man PODFILE_FULL RELEASE SECTION CENTER)
set(MANPAGE_TARGET "man-${NAME}-${LANG}")
set(MANFILE_TEMP "${CMAKE_CURRENT_BINARY_DIR}/${NAME}.${LANG}.tmp")
set(MANFILE_FULL "${CMAKE_CURRENT_BINARY_DIR}/${NAME}.${LANG}.${SECTION}")
+ set(MANFILE_FULL_GZ "${CMAKE_CURRENT_BINARY_DIR}/${NAME}.${LANG}.${SECTION}.gz")
set(MANFILE_DEST "${SHARE_INSTALL}/man/${LANG}/man${SECTION}")
else()
set(MANPAGE_TARGET "man-${NAME}")
set(MANFILE_TEMP "${CMAKE_CURRENT_BINARY_DIR}/${NAME}.tmp")
set(MANFILE_FULL "${CMAKE_CURRENT_BINARY_DIR}/${NAME}.${SECTION}")
+ set(MANFILE_FULL_GZ "${CMAKE_CURRENT_BINARY_DIR}/${NAME}.${SECTION}.gz")
set(MANFILE_DEST "${SHARE_INSTALL}/man/man${SECTION}")
endif()
add_custom_command(
@@ -40,18 +47,35 @@ macro(pod2man PODFILE_FULL RELEASE SECTION CENTER)
COMMAND ${POD2MAN} --utf8 --section="${SECTION}" --center="${CENTER}"
--release="${RELEASE}" --name="${NAME_UPCASE}" "${PODFILE_FULL}" "${MANFILE_TEMP}"
)
+
add_custom_command(
OUTPUT ${MANFILE_FULL}
COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/fix-roff-punct "${MANFILE_TEMP}" > ${MANFILE_FULL}
DEPENDS ${MANFILE_TEMP}
)
- add_custom_target(${MANPAGE_TARGET} ALL
- DEPENDS ${MANFILE_FULL}
- )
- install(
- FILES ${MANFILE_FULL}
- RENAME ${NAME}.${SECTION}
- DESTINATION ${MANFILE_DEST}
- )
+ if(GZIP)
+ add_custom_command(
+ OUTPUT ${MANFILE_FULL_GZ}
+ COMMAND ${GZIP} -k --best -n "${MANFILE_FULL}"
+ DEPENDS ${MANFILE_FULL}
+ )
+ add_custom_target(${MANPAGE_TARGET} ALL
+ DEPENDS ${MANFILE_FULL_GZ}
+ )
+ install(
+ FILES ${MANFILE_FULL_GZ}
+ RENAME ${NAME}.${SECTION}.gz
+ DESTINATION ${MANFILE_DEST}
+ )
+ else(GZIP)
+ add_custom_target(${MANPAGE_TARGET} ALL
+ DEPENDS ${MANFILE_FULL}
+ )
+ install(
+ FILES ${MANFILE_FULL}
+ RENAME ${NAME}.${SECTION}
+ DESTINATION ${MANFILE_DEST}
+ )
+ endif()
endif()
endmacro(pod2man PODFILE NAME SECTION CENTER)