mirror of
https://github.com/keepassxreboot/keepassxc.git
synced 2024-12-27 00:09:53 -05:00
e3c7b570ae
* Remove mention of no longer used IRC network Channels exist on matrix, and on libera.chat now. * Correctly match only files with .png extension The current search would match files such as 'createpng'. * Fix comparison in script The result was always false, due to comparing a literal string instead of a variable. * Use correct license files from upstream Correct license files obtained from: https://www.gnu.org/licenses/old-licenses/gpl-2.0.txt https://www.gnu.org/licenses/gpl-3.0.txt https://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt https://www.gnu.org/licenses/lgpl-3.0.txt * Refresh several shell scripts This fixes several shellcheck warnings, as well as makes the code more robust and have consistent codestyle between all the files. * Trim excess whitespace
61 lines
2.7 KiB
CMake
61 lines
2.7 KiB
CMake
# Copyright (C) 2020 KeePassXC Team <team@keepassxc.org>
|
|
#
|
|
# This program is free software: you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation, either version 2 or (at your option)
|
|
# version 3 of the License.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
find_program(ASCIIDOCTOR_EXE asciidoctor)
|
|
if(NOT ASCIIDOCTOR_EXE)
|
|
message(FATAL_ERROR "asciidoctor is required to build documentation")
|
|
endif()
|
|
message(STATUS "Using asciidoctor: ${ASCIIDOCTOR_EXE}")
|
|
|
|
set(DOC_DIR ${CMAKE_CURRENT_SOURCE_DIR})
|
|
set(OUT_DIR ${CMAKE_CURRENT_BINARY_DIR})
|
|
set(REV -a revnumber=${KEEPASSXC_VERSION})
|
|
|
|
# Build html documentation on all platforms
|
|
# NOTE: Combine into one long command to prevent MSVC from failing to build all docs
|
|
file(GLOB doc_depends ${DOC_DIR}/*.adoc ${DOC_DIR}/topics/* ${DOC_DIR}/styles/* ${DOC_DIR}/images/*)
|
|
add_custom_command(
|
|
OUTPUT KeePassXC_GettingStarted.html KeePassXC_UserGuide.html KeePassXC_KeyboardShortcuts.html
|
|
COMMAND
|
|
${ASCIIDOCTOR_EXE} -D ${OUT_DIR} -o KeePassXC_GettingStarted.html ${REV} ${DOC_DIR}/GettingStarted.adoc &&
|
|
${ASCIIDOCTOR_EXE} -D ${OUT_DIR} -o KeePassXC_UserGuide.html ${REV} ${DOC_DIR}/UserGuide.adoc &&
|
|
${ASCIIDOCTOR_EXE} -D ${OUT_DIR} -o KeePassXC_KeyboardShortcuts.html ${REV} ${DOC_DIR}/topics/KeyboardShortcuts.adoc
|
|
DEPENDS ${doc_depends}
|
|
VERBATIM)
|
|
|
|
add_custom_target(docs ALL DEPENDS KeePassXC_GettingStarted.html KeePassXC_UserGuide.html KeePassXC_KeyboardShortcuts.html)
|
|
|
|
install(FILES
|
|
${OUT_DIR}/KeePassXC_GettingStarted.html
|
|
${OUT_DIR}/KeePassXC_UserGuide.html
|
|
${OUT_DIR}/KeePassXC_KeyboardShortcuts.html
|
|
DESTINATION ${DATA_INSTALL_DIR}/docs)
|
|
|
|
# Build Man Pages on Linux and macOS
|
|
if(UNIX)
|
|
add_custom_command(OUTPUT keepassxc.1 keepassxc-cli.1
|
|
COMMAND ${ASCIIDOCTOR_EXE} -D ${OUT_DIR} -b manpage ${REV} ./man/keepassxc.1.adoc
|
|
COMMAND ${ASCIIDOCTOR_EXE} -D ${OUT_DIR} -b manpage ${REV} ./man/keepassxc-cli.1.adoc
|
|
DEPENDS ${DOC_DIR}/man/keepassxc.1.adoc ${DOC_DIR}/man/keepassxc-cli.1.adoc
|
|
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
|
VERBATIM)
|
|
add_custom_target(manpages ALL DEPENDS keepassxc.1 keepassxc-cli.1)
|
|
|
|
install(FILES
|
|
${OUT_DIR}/keepassxc.1
|
|
${OUT_DIR}/keepassxc-cli.1
|
|
DESTINATION ${CMAKE_INSTALL_MANDIR}/man1/)
|
|
endif()
|