aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLászló Langó <llango.u-szeged@partner.samsung.com>2017-01-31 12:27:59 +0100
committerGitHub <noreply@github.com>2017-01-31 12:27:59 +0100
commit107c058bb1bb8316e06f5b5655f9cc6d479e6173 (patch)
tree5575fbe5970e4f3d9f95d416b77547bd29b03ac5
parent623975d19f19bddb7e1396b56ca3c9f62db82822 (diff)
Add doxygen checker (#1540)
* Fixed Doxygen issues * Updated Doxygen config * Added new script to test whether doxygen generation was successful or not * Added to Travis CI JerryScript-DCO-1.0-Signed-off-by: László Langó llango.u-szeged@partner.samsung.com
-rw-r--r--.travis.yml2
-rw-r--r--Doxyfile24
-rw-r--r--jerry-core/ecma/builtin-objects/typedarray/ecma-builtin-int8array.c8
-rw-r--r--jerry-core/ecma/builtin-objects/typedarray/ecma-builtin-typedarray.c8
-rwxr-xr-xtools/apt-get-install-deps.sh1
-rwxr-xr-xtools/check-doxygen.sh25
-rwxr-xr-xtools/run-tests.py4
-rwxr-xr-xtools/settings.py5
8 files changed, 54 insertions, 23 deletions
diff --git a/.travis.yml b/.travis.yml
index baf27ded..e6d7eac8 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -5,7 +5,7 @@ dist: trusty
sudo: required
env:
- - OPTS="--check-signed-off-travis --check-cppcheck --check-vera --check-license"
+ - OPTS="--check-signed-off-travis --check-cppcheck --check-doxygen --check-vera --check-license"
- OPTS="--jerry-tests --jerry-test-suite"
- OPTS="--jerry-tests --jerry-test-suite --toolchain=cmake/toolchain_linux_armv7l.cmake" TIMEOUT=300 INSTALL_QEMU_ARM=yes
- OPTS="--buildoption-test"
diff --git a/Doxyfile b/Doxyfile
index f217dcda..185950c4 100644
--- a/Doxyfile
+++ b/Doxyfile
@@ -76,7 +76,7 @@ CREATE_SUBDIRS = NO
# U+3044.
# The default value is: NO.
-ALLOW_UNICODE_NAMES = NO
+# ALLOW_UNICODE_NAMES = NO
# The OUTPUT_LANGUAGE tag is used to specify the language in which all
# documentation generated by doxygen is written. Doxygen will use this
@@ -512,7 +512,7 @@ HIDE_SCOPE_NAMES = NO
# YES the compound reference will be hidden.
# The default value is: NO.
-HIDE_COMPOUND_REFERENCE= NO
+# HIDE_COMPOUND_REFERENCE= NO
# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of
# the files that are included by a file in the documentation of that file.
@@ -730,7 +730,7 @@ WARN_IF_DOC_ERROR = YES
# parameter documentation, but not about the absence of documentation.
# The default value is: NO.
-WARN_NO_PARAMDOC = NO
+WARN_NO_PARAMDOC = YES
# The WARN_FORMAT tag determines the format of the warning messages that doxygen
# can produce. The string should contain the $file, $line, and $text tags, which
@@ -778,7 +778,7 @@ INPUT_ENCODING = UTF-8
# *.md, *.mm, *.dox, *.py, *.f90, *.f, *.for, *.tcl, *.vhd, *.vhdl, *.ucf,
# *.qsf, *.as and *.js.
-FILE_PATTERNS =
+FILE_PATTERNS = *.h, *.c
# The RECURSIVE tag can be used to specify whether or not subdirectories should
# be searched for input files as well.
@@ -991,7 +991,7 @@ VERBATIM_HEADERS = YES
# compiled with the --with-libclang option.
# The default value is: NO.
-CLANG_ASSISTED_PARSING = NO
+# CLANG_ASSISTED_PARSING = NO
# If clang assisted parsing is enabled you can provide the compiler with command
# line options that you would normally use when invoking the compiler. Note that
@@ -999,7 +999,7 @@ CLANG_ASSISTED_PARSING = NO
# specified with INPUT and INCLUDE_PATH.
# This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES.
-CLANG_OPTIONS =
+# CLANG_OPTIONS =
#---------------------------------------------------------------------------
# Configuration options related to the alphabetical class index
@@ -1668,7 +1668,7 @@ LATEX_FOOTER =
# list).
# This tag requires that the tag GENERATE_LATEX is set to YES.
-LATEX_EXTRA_STYLESHEET =
+# LATEX_EXTRA_STYLESHEET =
# The LATEX_EXTRA_FILES tag can be used to specify one or more extra images or
# other source files which should be copied to the LATEX_OUTPUT output
@@ -1793,7 +1793,7 @@ RTF_EXTENSIONS_FILE =
# The default value is: NO.
# This tag requires that the tag GENERATE_RTF is set to YES.
-RTF_SOURCE_CODE = NO
+# RTF_SOURCE_CODE = NO
#---------------------------------------------------------------------------
# Configuration options related to the man page output
@@ -1828,7 +1828,7 @@ MAN_EXTENSION = .3
# MAN_EXTENSION with the initial . removed.
# This tag requires that the tag GENERATE_MAN is set to YES.
-MAN_SUBDIR =
+# MAN_SUBDIR =
# If the MAN_LINKS tag is set to YES and doxygen generates man output, then it
# will generate one additional man file for each entity documented in the real
@@ -1891,7 +1891,7 @@ DOCBOOK_OUTPUT = docbook
# The default value is: NO.
# This tag requires that the tag GENERATE_DOCBOOK is set to YES.
-DOCBOOK_PROGRAMLISTING = NO
+# DOCBOOK_PROGRAMLISTING = NO
#---------------------------------------------------------------------------
# Configuration options for the AutoGen Definitions output
@@ -2316,12 +2316,12 @@ DIAFILE_DIRS =
# generate a warning when it encounters a \startuml command in this case and
# will not generate output for the diagram.
-PLANTUML_JAR_PATH =
+# PLANTUML_JAR_PATH =
# When using plantuml, the specified paths are searched for files specified by
# the !include statement in a plantuml block.
-PLANTUML_INCLUDE_PATH =
+# PLANTUML_INCLUDE_PATH =
# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of nodes
# that will be shown in the graph. If the number of nodes in a graph becomes
diff --git a/jerry-core/ecma/builtin-objects/typedarray/ecma-builtin-int8array.c b/jerry-core/ecma/builtin-objects/typedarray/ecma-builtin-int8array.c
index 7cfc39bb..7c0367ff 100644
--- a/jerry-core/ecma/builtin-objects/typedarray/ecma-builtin-int8array.c
+++ b/jerry-core/ecma/builtin-objects/typedarray/ecma-builtin-int8array.c
@@ -78,9 +78,9 @@ ecma_builtin_int8array_dispatch_construct (const ecma_value_t *arguments_list_p,
} /* ecma_builtin_int8array_dispatch_construct */
/**
- * @}
- * @}
- * @}
- */
+ * @}
+ * @}
+ * @}
+ */
#endif /* !CONFIG_DISABLE_TYPEDARRAY_BUILTIN */
diff --git a/jerry-core/ecma/builtin-objects/typedarray/ecma-builtin-typedarray.c b/jerry-core/ecma/builtin-objects/typedarray/ecma-builtin-typedarray.c
index 19a32ad3..8ea60e2d 100644
--- a/jerry-core/ecma/builtin-objects/typedarray/ecma-builtin-typedarray.c
+++ b/jerry-core/ecma/builtin-objects/typedarray/ecma-builtin-typedarray.c
@@ -122,9 +122,9 @@ ecma_builtin_typedarray_dispatch_construct (const ecma_value_t *arguments_list_p
} /* ecma_builtin_typedarray_dispatch_construct */
/**
- * @}
- * @}
- * @}
- */
+ * @}
+ * @}
+ * @}
+ */
#endif /* !CONFIG_DISABLE_TYPEDARRAY_BUILTIN */
diff --git a/tools/apt-get-install-deps.sh b/tools/apt-get-install-deps.sh
index 5e9a8ab5..a2eaf6e9 100755
--- a/tools/apt-get-install-deps.sh
+++ b/tools/apt-get-install-deps.sh
@@ -18,4 +18,5 @@ sudo apt-get update -q
sudo apt-get install -q -y \
make cmake \
gcc gcc-multilib \
+ doxygen \
cppcheck vera++ python
diff --git a/tools/check-doxygen.sh b/tools/check-doxygen.sh
new file mode 100755
index 00000000..ad1594c1
--- /dev/null
+++ b/tools/check-doxygen.sh
@@ -0,0 +1,25 @@
+#!/bin/bash
+
+# Copyright JS Foundation and other contributors, http://js.foundation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+echo -n "Generating documentation with doxygen ..."
+DOXYGEN_WARNINGS=$((doxygen > /dev/null) 2>&1)
+echo " finished"
+
+if [ -n "$DOXYGEN_WARNINGS" ]
+then
+ echo "$DOXYGEN_WARNINGS"
+ exit 1
+fi
diff --git a/tools/run-tests.py b/tools/run-tests.py
index 6160befe..190d53ba 100755
--- a/tools/run-tests.py
+++ b/tools/run-tests.py
@@ -30,6 +30,7 @@ parser.add_argument('--check-signed-off', action='store_true', default=False, he
parser.add_argument('--check-signed-off-tolerant', action='store_true', default=False, help='Run signed-off check in tolerant mode')
parser.add_argument('--check-signed-off-travis', action='store_true', default=False, help='Run signed-off check in tolerant mode if on Travis CI and not checking a pull request')
parser.add_argument('--check-cppcheck', action='store_true', default=False, help='Run cppcheck')
+parser.add_argument('--check-doxygen', action='store_true', default=False, help='Run doxygen')
parser.add_argument('--check-vera', action='store_true', default=False, help='Run vera check')
parser.add_argument('--check-license', action='store_true', default=False, help='Run license check')
parser.add_argument('--buildoption-test', action='store_true', default=False, help='Run buildoption-test')
@@ -231,6 +232,9 @@ def main():
if not ret and (script_args.all or script_args.check_cppcheck):
ret = run_check([CPPCHECK_SCRIPT])
+ if not ret and (script_args.all or script_args.check_doxygen):
+ ret = run_check([DOXYGEN_SCRIPT])
+
if not ret and (script_args.all or script_args.check_vera):
ret = run_check([VERA_SCRIPT])
diff --git a/tools/settings.py b/tools/settings.py
index d7a76835..0579177b 100755
--- a/tools/settings.py
+++ b/tools/settings.py
@@ -26,9 +26,10 @@ TEST262_TEST_SUITE_DIR = path.join(PROJECT_DIR, 'tests/test262')
BUILD_SCRIPT = path.join(TOOLS_DIR, 'build.py')
CPPCHECK_SCRIPT = path.join(TOOLS_DIR, 'check-cppcheck.sh')
-SIGNED_OFF_SCRIPT = path.join(TOOLS_DIR, 'check-signed-off.sh')
-VERA_SCRIPT = path.join(TOOLS_DIR, 'check-vera.sh')
+DOXYGEN_SCRIPT = path.join(TOOLS_DIR, 'check-doxygen.sh')
LICENSE_SCRIPT = path.join(TOOLS_DIR, 'check-license.py')
+SIGNED_OFF_SCRIPT = path.join(TOOLS_DIR, 'check-signed-off.sh')
TEST_RUNNER_SCRIPT = path.join(TOOLS_DIR, 'runners/run-test-suite.sh')
TEST262_RUNNER_SCRIPT = path.join(TOOLS_DIR, 'runners/run-test-suite-test262.sh')
+VERA_SCRIPT = path.join(TOOLS_DIR, 'check-vera.sh')
UNITTEST_RUNNER_SCRIPT = path.join(TOOLS_DIR, 'runners/run-unittests.sh')