Skip to content
Snippets Groups Projects

Improve cmake scripts to find required utilities

2 files
+ 77
3
Compare changes
  • Side-by-side
  • Inline

Files

+ 39
3
@@ -6,10 +6,16 @@ find_program(EMACS emacs)
# check for LaTeX
find_package(LATEX COMPONENTS PDFLATEX)
# check for pygmentize
find_program(PYGMENTIZE pygmentize)
# check for gnuplot
find_package(Gnuplot)
add_custom_target(userdoc)
add_custom_target(doc DEPENDS userdoc)
if (EMACS)
if (EMACS AND GNUPLOT_FOUND)
add_custom_command(
OUTPUT "${PUGS_BINARY_DIR}/doc"
@@ -64,7 +70,7 @@ if (EMACS)
add_dependencies(userdoc userdoc-html)
if (LATEX_FOUND)
if (LATEX_PDFLATEX_FOUND AND PYGMENTIZE)
add_custom_command(
OUTPUT "${PUGS_BINARY_DIR}/doc/userdoc.pdf"
@@ -92,7 +98,37 @@ if (EMACS)
add_dependencies(userdoc userdoc-pdf)
else()
if (NOT LATEX_PDFLATEX_FOUND)
add_custom_target(userdoc-missing-latex
COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --no-newline "Cannot build pdf documentation: "
COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --red --bold "pdflatex missing")
add_dependencies(userdoc userdoc-missing-latex)
endif()
if (NOT PIGMENTIZE_FOUND)
add_custom_target(userdoc-missing-pygmentize
COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --no-newline "Cannot build pdf documentation: "
COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --red --bold "pygmentize missing")
add_dependencies(userdoc userdoc-missing-pygmentize)
endif()
endif()
add_dependencies(doc userdoc)
else()
if (NOT EMACS)
add_custom_target(userdoc-missing-emacs
COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --no-newline "Cannot build documentation: "
COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --red --bold "emacs missing")
add_dependencies(userdoc userdoc-missing-emacs)
endif()
if (NOT GNUPLOT_FOUND)
add_custom_target(userdoc-missing-gnuplot
COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --no-newline "Cannot build documentation: "
COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --red --bold "gnuplot missing")
add_dependencies(userdoc userdoc-missing-gnuplot)
endif()
endif()
add_dependencies(doc userdoc)
Loading