diff --git a/modules/java/jar/CMakeLists.txt b/modules/java/jar/CMakeLists.txt index 0e16e3b5ebd9ddd48a71edc801c867bc578cf3b4..2cce25a76b19ba060be2f9cfeed84c73153f0d6d 100644 --- a/modules/java/jar/CMakeLists.txt +++ b/modules/java/jar/CMakeLists.txt @@ -25,6 +25,8 @@ if(OPENCV_JAVA_TARGET_VERSION) set(OPENCV_ANT_JAVAC_EXTRA_ATTRS "${OPENCV_ANT_JAVAC_EXTRA_ATTRS} target=\"${OPENCV_JAVA_TARGET_VERSION}\"") endif() +set(OPENCV_JAVADOC_DESTINATION "${OpenCV_BINARY_DIR}/doc/doxygen/html/javadoc" CACHE STRING "") + configure_file("${CMAKE_CURRENT_SOURCE_DIR}/build.xml.in" "${OPENCV_JAVA_DIR}/build.xml" @ONLY) list(APPEND depends "${OPENCV_JAVA_DIR}/build.xml") diff --git a/modules/java/jar/build.xml.in b/modules/java/jar/build.xml.in index 28a428c4188db4301bf1487869ac9871b0063c3e..bf2830186ea09a8043e813cead25002a448e2375 100644 --- a/modules/java/jar/build.xml.in +++ b/modules/java/jar/build.xml.in @@ -30,12 +30,13 @@ + todir="@OPENCV_JAVADOC_DESTINATION@" /> + var url = window.location.href; - url = url.substring(0, url.lastIndexOf('/', url.indexOf('.html'))) + '/../../../mymath.js'; + var pos = url.lastIndexOf('/javadoc/'); + url = pos >= 0 ? (url.substring(0, pos) + '/javadoc/mymath.js') : (window.location.origin + '/mymath.js'); var script = document.createElement('script'); script.src = '@OPENCV_MATHJAX_RELPATH@/MathJax.js?config=TeX-AMS-MML_HTMLorMML,' + url; document.getElementsByTagName('head')[0].appendChild(script); diff --git a/platforms/android/build_sdk.py b/platforms/android/build_sdk.py index 9d46f0e0e04327707b1c7a3f670686e271168a3d..240d9af08d611a6b71527dced0c3b581fe8e1eda 100755 --- a/platforms/android/build_sdk.py +++ b/platforms/android/build_sdk.py @@ -1,6 +1,13 @@ #!/usr/bin/env python -import os, sys, subprocess, argparse, shutil, glob, re +import os, sys +import argparse +import glob +import re +import shutil +import subprocess +import time + import logging as log import xml.etree.ElementTree as ET @@ -285,14 +292,34 @@ class Builder: for f in files: if f == "android.jar" or f == "annotations.jar": classpaths.append(os.path.join(dir, f)) + srcdir = os.path.join(self.resultdest, 'sdk', 'java', 'src') + dstdir = self.docdest + # synchronize with modules/java/jar/build.xml.in + shutil.copy2(os.path.join(SCRIPT_DIR, '../../doc/mymath.js'), dstdir) cmd = [ "javadoc", - "-header", "OpenCV %s" % self.opencv_version, + '-windowtitle', 'OpenCV %s Java documentation' % self.opencv_version, + '-doctitle', 'OpenCV Java documentation (%s)' % self.opencv_version, "-nodeprecated", - "-footer", 'OpenCV %s Documentation' % self.opencv_version, "-public", - '-sourcepath', os.path.join(self.resultdest, 'sdk', 'java', 'src'), - "-d", self.docdest, + '-sourcepath', srcdir, + '-encoding', 'UTF-8', + '-charset', 'UTF-8', + '-docencoding', 'UTF-8', + '--allow-script-in-comments', + '-header', +''' + +''' % 'https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0', + '-bottom', 'Generated on %s / OpenCV %s' % (time.strftime("%Y-%m-%d %H:%M:%S"), self.opencv_version), + "-d", dstdir, "-classpath", ":".join(classpaths), '-subpackages', 'org.opencv', ]