Build: Avoid downloading mathjax during make doc
Project: http://git-wip-us.apache.org/repos/asf/incubator-madlib/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-madlib/commit/7be68936 Tree: http://git-wip-us.apache.org/repos/asf/incubator-madlib/tree/7be68936 Diff: http://git-wip-us.apache.org/repos/asf/incubator-madlib/diff/7be68936 Branch: refs/heads/latest_release Commit: 7be68936f2cf09e44fd9a8ae3e893db73dc99b26 Parents: 8679cbd Author: Rahul Iyer <ri...@apache.org> Authored: Tue Mar 7 13:11:23 2017 -0800 Committer: Rahul Iyer <ri...@apache.org> Committed: Wed Mar 15 11:08:51 2017 -0700 ---------------------------------------------------------------------- doc/CMakeLists.txt | 54 +++++++++++++++++++++++++++----------- doc/etc/developer.doxyfile.in | 3 ++- doc/etc/user.doxyfile.in | 28 +++++++++++++++++++- 3 files changed, 67 insertions(+), 18 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-madlib/blob/7be68936/doc/CMakeLists.txt ---------------------------------------------------------------------- diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt index e92aab4..aa969dc 100644 --- a/doc/CMakeLists.txt +++ b/doc/CMakeLists.txt @@ -54,20 +54,40 @@ set(_DOXYGEN_INPUT_DEVELOPER ) join_strings(DOXYGEN_INPUT_DEVELOPER " " "${_DOXYGEN_INPUT_DEVELOPER}") -set(DOXYGEN_USE_MATHJAX NO CACHE BOOL "In user documentation, render LaTeX formulas using MathJax") +if(NOT DEFINED DOXYGEN_USE_MATHJAX) + set(DOXYGEN_USE_MATHJAX YES CACHE BOOL + "In user documentation, render LaTeX formulas using MathJax") +endif(NOT DEFINED DOXYGEN_USE_MATHJAX) + +if(DOXYGEN_USE_MATHJAX) + if(NOT DEFINED MATHJAX_DIR) + find_path(MATHJAX_DIR + NAMES MathJax.js + PATHS "$ENV{MATHJAX_DIR}" "/usr/share/javascript/mathjax/" + DOC "Path to local MathJax.js") + endif(NOT DEFINED MATHJAX_DIR) + if(MATHJAX_DIR) + set(MATHJAX_RELPATH_CONFIG "MATHJAX_RELPATH = ${MATHJAX_DIR}") + message(STATUS "Using local MathJax: " ${MATHJAX_DIR}) + else(MATHJAX_DIR) + set(MATHJAX_RELPATH_CONFIG "") + message(STATUS "Using default web-based MathJax") + endif(MATHJAX_DIR) +endif(DOXYGEN_USE_MATHJAX) + +# set(MATHJAX_INSTALLATION "${CMAKE_BINARY_DIR}/third_party/downloads/mathjax" CACHE PATH +# "Path to MathJax installation (used to clone MathJax repository; absolute or relative to \${CMAKE_BINARY_DIR}/doc)" +# ) +# set(DOXYGEN_MATHJAX_RELPATH "${CMAKE_BINARY_DIR}/third_party/downloads/mathjax" CACHE STRING +# "Path to MathJax installation (used by Doxygen; absolute or relative to \${DOXYGEN_HTML_OUTPUT})" +# ) + set(DOXYGEN_INCLUDE_PATH "\"${CMAKE_SOURCE_DIR}/src\" \"${CMAKE_SOURCE_DIR}/src/ports/postgres\"") # Note: Type PATH implies that the value is either a relative path to # ${CMAKE_CURRENT_BINARY_DIR} (and CMake generates the full path) or as an # absolute path. Therefore, paths not relative to ${CMAKE_CURRENT_BINARY_DIR} # must be of type STRING! - -set(MATHJAX_INSTALLATION "${CMAKE_BINARY_DIR}/third_party/downloads/mathjax" CACHE PATH - "Path to MathJax installation (used to clone MathJax repository; absolute or relative to \${CMAKE_BINARY_DIR}/doc)" -) -set(DOXYGEN_MATHJAX_RELPATH "${CMAKE_BINARY_DIR}/third_party/downloads/mathjax" CACHE STRING - "Path to MathJax installation (used by Doxygen; absolute or relative to \${DOXYGEN_HTML_OUTPUT})" -) set(DOXYGEN_OUTPUT_DEVELOPER "${CMAKE_CURRENT_BINARY_DIR}/developer" CACHE PATH "Base path where the documentation generated by Doxygen will be put (abolsute or relative to \${CMAKE_BINARY_DIR}/doc/etc)" ) @@ -130,14 +150,16 @@ if(FLEX_FOUND AND BISON_FOUND AND DOXYGEN_FOUND) # -- Update MathJax ------------------------------------------------------------ - - add_custom_target(update_mathjax - COMMAND bin/update_mathjax.sh - WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}" - ) - if(USE_MATHJAX) - set(_MATHJAX_DEPENDENCY_USER update_mathjax) - endif(USE_MATHJAX) +# NOTE: Below has been disabled since Mathjax CDN is used to obtain the +# appropriate files + +# add_custom_target(update_mathjax +# COMMAND bin/update_mathjax.sh +# WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}" +# ) +# if(DOXYGEN_USE_MATHJAX) +# set(_MATHJAX_DEPENDENCY_USER update_mathjax) +# endif(DOXYGEN_USE_MATHJAX) # -- Run doxygen --------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-madlib/blob/7be68936/doc/etc/developer.doxyfile.in ---------------------------------------------------------------------- diff --git a/doc/etc/developer.doxyfile.in b/doc/etc/developer.doxyfile.in index 2c9b11d..02558c9 100644 --- a/doc/etc/developer.doxyfile.in +++ b/doc/etc/developer.doxyfile.in @@ -1282,7 +1282,8 @@ MATHJAX_FORMAT = HTML-CSS # However, it is strongly recommended to install a local # copy of MathJax from http://www.mathjax.org before deployment. -MATHJAX_RELPATH = @DOXYGEN_MATHJAX_RELPATH@ +# MATHJAX_RELPATH = @DOXYGEN_MATHJAX_RELPATH@ +@MATHJAX_RELPATH_CONFIG@ # The MATHJAX_EXTENSIONS tag can be used to specify one or MathJax extension # names that should be enabled during MathJax rendering. http://git-wip-us.apache.org/repos/asf/incubator-madlib/blob/7be68936/doc/etc/user.doxyfile.in ---------------------------------------------------------------------- diff --git a/doc/etc/user.doxyfile.in b/doc/etc/user.doxyfile.in index fc0648e..230aae8 100644 --- a/doc/etc/user.doxyfile.in +++ b/doc/etc/user.doxyfile.in @@ -127,12 +127,38 @@ INPUT = @DOXYGEN_INPUT_USER@ # Enable the USE_MATHJAX option to render LaTeX formulas using MathJax # (see http://www.mathjax.org) which uses client side Javascript for the # rendering instead of using prerendered bitmaps. Use this if you do not -# have LaTeX installed or if you want to formulas look prettier in the HTML +# have LaTeX installed or if you want formulas to look prettier in the HTML # output. When enabled you also need to install MathJax separately and # configure the path to it using the MATHJAX_RELPATH option. USE_MATHJAX = @DOXYGEN_USE_MATHJAX@ +# When MathJax is enabled you can set the default output format to be used for +# the MathJax output. Supported types are HTML-CSS, NativeMML (i.e. MathML) and +# SVG. The default value is HTML-CSS, which is slower, but has the best +# compatibility. + +MATHJAX_FORMAT = HTML-CSS + +# When MathJax is enabled you need to specify the location relative to the +# HTML output directory using the MATHJAX_RELPATH option. The destination +# directory should contain the MathJax.js script. For instance, if the mathjax +# directory is located at the same level as the HTML output directory, then +# MATHJAX_RELPATH should be ../mathjax. The default value points to +# the MathJax Content Delivery Network so you can quickly see the result without +# installing MathJax. +# However, it is strongly recommended to install a local +# copy of MathJax from http://www.mathjax.org before deployment. + +# MATHJAX_RELPATH = @DOXYGEN_MATHJAX_RELPATH@ +@MATHJAX_RELPATH_CONFIG@ + +# The MATHJAX_EXTENSIONS tag can be used to specify one or MathJax extension +# names that should be enabled during MathJax rendering. + +MATHJAX_EXTENSIONS = TeX/AMSmath \ + TeX/AMSsymbols + #--------------------------------------------------------------------------- # configuration options related to source browsing #---------------------------------------------------------------------------