diff options
author | japm48 <japm48@users.noreply.github.com> | 2020-05-05 07:49:06 +0200 |
---|---|---|
committer | Marcus Müller <marcus@hostalia.de> | 2020-10-29 00:07:07 +0100 |
commit | 2025e70872dcbfa0039ec000ea11d98d34d6cf70 (patch) | |
tree | 3836191942c588ce3e843b002772abe36c1f6d53 /cmake | |
parent | 9a83abb5aa0f7398009f3c3b7944dd73d289c12a (diff) |
docs: use MathJax for HTML documentation
Fixes #2707.
A full LaTeX installation is no longer required for generating the HTML
docs. Also adds some nice-to-have functionalities accessible via
right-click context menu.
Details:
- SVG backend selected by default.
- MathJax recommends not (ab)using their CDN, so
this adds a local dependency.
- Some spurious doxygen warnings were also removed.
Diffstat (limited to 'cmake')
-rw-r--r-- | cmake/Modules/FindMathJax2.cmake | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/cmake/Modules/FindMathJax2.cmake b/cmake/Modules/FindMathJax2.cmake new file mode 100644 index 0000000000..8f61012222 --- /dev/null +++ b/cmake/Modules/FindMathJax2.cmake @@ -0,0 +1,60 @@ +# Copyright 2020 Free Software Foundation, Inc. +# +# This file is part of GNU Radio +# +# SPDX-License-Identifier: GPL-3.0-or-later +# +##### +# +# Find MathJax package (version 2). +# +# A hint can be provided by defining MATHJAX2_ROOT +# (will succeed if ${MATHJAX2_ROOT}/MathJax.js is found). +# +# Alternatively, a path can be provided in MATHJAX2_USE_ROOT +# so that ${MATHJAX2_USE_ROOT}/MathJax.js is used without +# checking its existence. +# This path could be a URL, an absolute local path or +# a path relative to the generated HTML folder. +# +# Note that version 2 and 3 are incompatible +# and doxygen requires version 2. +# See: https://github.com/doxygen/doxygen/issues/7346 +# +# Defined variables: +# - MATHJAX2_FOUND - True if MathJax found +# - MATHJAX2_JS_PATH - Path to MathJax.js file +# - MATHJAX2_PATH - Path to the MathJax root directory +# +##### + + +# TODO: in cmake 3.10+ use include_guard() +if(__INCLUDED_MATHJAX2) + return() +endif() +set(__INCLUDED_MATHJAX2 TRUE) + + +if(DEFINED MATHJAX2_USE_ROOT) + set(MATHJAX2_FOUND TRUE) + set(MATHJAX2_PATH "${MATHJAX2_USE_ROOT}/") + set(MATHJAX2_JS_PATH "${MATHJAX2_USE_ROOT}/MathJax.js") +else() + find_file(MATHJAX2_JS_PATH + NAMES + MathJax.js + PATHS + "${MATHJAX2_ROOT}" + /usr/share/mathjax2/ + /usr/share/javascript/mathjax/ + /usr/local/share/javascript/mathjax/ + ) + + get_filename_component(MATHJAX2_PATH ${MATHJAX2_JS_PATH} DIRECTORY) + + FIND_PACKAGE_HANDLE_STANDARD_ARGS(MathJax2 DEFAULT_MSG MATHJAX2_JS_PATH) +endif() + +mark_as_advanced(MATHJAX2_JS_PATH) + |