aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJack Lloyd <[email protected]>2016-10-22 13:24:06 -0400
committerJack Lloyd <[email protected]>2016-10-22 13:24:06 -0400
commitf1557cb19dfb1220ddf994c931c148d83beb2390 (patch)
tree495bc035b52dfbf6bc5ec48a450003bf2c8b48c8 /src
parentecbe5a45f3d508b1c8aef7ee7508c65ac3d92c82 (diff)
parent4cc164ccf9035de64c1d783c2cb57032e2f6c6b0 (diff)
GH #674 Check Doxygen and Sphinx builds as part of CI
Diffstat (limited to 'src')
-rw-r--r--src/build-data/botan.doxy.in1
-rw-r--r--src/build-data/sphinx/conf.py2
-rw-r--r--src/lib/cert/x509/x509path.h4
-rwxr-xr-xsrc/scripts/ci/travis/build.sh20
-rwxr-xr-xsrc/scripts/ci/travis/install.sh10
5 files changed, 29 insertions, 8 deletions
diff --git a/src/build-data/botan.doxy.in b/src/build-data/botan.doxy.in
index 90f2b9502..770149f01 100644
--- a/src/build-data/botan.doxy.in
+++ b/src/build-data/botan.doxy.in
@@ -74,6 +74,7 @@ WARN_IF_DOC_ERROR = YES
WARN_NO_PARAMDOC = YES
WARN_FORMAT = "$file:$line: $text"
WARN_LOGFILE =
+WARN_AS_ERROR = YES
#---------------------------------------------------------------------------
# configuration options related to the input files
diff --git a/src/build-data/sphinx/conf.py b/src/build-data/sphinx/conf.py
index ff927c8bd..e144944f3 100644
--- a/src/build-data/sphinx/conf.py
+++ b/src/build-data/sphinx/conf.py
@@ -214,7 +214,7 @@ latex_documents = [
latex_show_pagerefs = False
# If true, show URL addresses after external links.
-latex_show_urls = False
+latex_show_urls = 'inline'
# Additional stuff for the LaTeX preamble.
#latex_preamble = ''
diff --git a/src/lib/cert/x509/x509path.h b/src/lib/cert/x509/x509path.h
index b33069f72..f65652e59 100644
--- a/src/lib/cert/x509/x509path.h
+++ b/src/lib/cert/x509/x509path.h
@@ -169,6 +169,7 @@ class BOTAN_DLL Path_Validation_Result
* @param certstores list of certificate stores that contain trusted certificates
* @param hostname if not empty, compared against the DNS name in end_certs[0]
* @param usage if not set to UNSPECIFIED, compared against the key usage in end_certs[0]
+* @param validation_time what reference time to use for validation
* @return result of the path validation
*/
Path_Validation_Result BOTAN_DLL x509_path_validate(
@@ -186,6 +187,7 @@ Path_Validation_Result BOTAN_DLL x509_path_validate(
* @param certstores list of stores that contain trusted certificates
* @param hostname if not empty, compared against the DNS name in end_cert
* @param usage if not set to UNSPECIFIED, compared against the key usage in end_cert
+* @param validation_time what reference time to use for validation
* @return result of the path validation
*/
Path_Validation_Result BOTAN_DLL x509_path_validate(
@@ -203,6 +205,7 @@ Path_Validation_Result BOTAN_DLL x509_path_validate(
* @param store store that contains trusted certificates
* @param hostname if not empty, compared against the DNS name in end_cert
* @param usage if not set to UNSPECIFIED, compared against the key usage in end_cert
+* @param validation_time what reference time to use for validation
* @return result of the path validation
*/
Path_Validation_Result BOTAN_DLL x509_path_validate(
@@ -220,6 +223,7 @@ Path_Validation_Result BOTAN_DLL x509_path_validate(
* @param store store that contains trusted certificates
* @param hostname if not empty, compared against the DNS name in end_certs[0]
* @param usage if not set to UNSPECIFIED, compared against the key usage in end_certs[0]
+* @param validation_time what reference time to use for validation
* @return result of the path validation
*/
Path_Validation_Result BOTAN_DLL x509_path_validate(
diff --git a/src/scripts/ci/travis/build.sh b/src/scripts/ci/travis/build.sh
index 53c8df15a..3b34f7320 100755
--- a/src/scripts/ci/travis/build.sh
+++ b/src/scripts/ci/travis/build.sh
@@ -116,8 +116,14 @@ fi
ccache --show-stats
# build!
-echo $MAKE_PREFIX make -j $BUILD_JOBS
-time $MAKE_PREFIX make -j $BUILD_JOBS
+
+if [ "$BUILD_MODE" = "docs" ]; then
+ doxygen build/botan.doxy
+ sphinx-build -a -W -c src/build-data/sphinx doc/manual manual-out
+else
+ echo $MAKE_PREFIX make -j $BUILD_JOBS
+ time $MAKE_PREFIX make -j $BUILD_JOBS
+fi
# post-build ccache stats
ccache --show-stats
@@ -151,8 +157,8 @@ if [ "$BUILD_MODE" = "sonarqube" ]; then
# When neither on master branch nor on a non-external pull request => nothing to do
fi
-if [ "$BUILD_MODE" == "sonarqube" ] || \
- ( [ "${BUILD_MODE:0:5}" == "cross" ] && [ "$TRAVIS_OS_NAME" == "osx" ] ); then
+if [ "$BUILD_MODE" = "sonarqube" ] || [ "$BUILD_MODE" = "docs" ] || \
+ ( [ "${BUILD_MODE:0:5}" = "cross" ] && [ "$TRAVIS_OS_NAME" = "osx" ] ); then
echo "Running tests disabled on this build type"
else
echo Running $TEST_PREFIX $TEST_EXE
@@ -170,5 +176,7 @@ then
done
fi
-# Test make install
-make install
+if [ "$BUILD_MODE" != "docs" ]; then
+ # Test make install
+ make install
+fi
diff --git a/src/scripts/ci/travis/install.sh b/src/scripts/ci/travis/install.sh
index 9459e448d..30c54fdbe 100755
--- a/src/scripts/ci/travis/install.sh
+++ b/src/scripts/ci/travis/install.sh
@@ -19,8 +19,16 @@ if [ "$BUILD_MODE" = "sonarqube" ]; then
fi
if [ "$TRAVIS_OS_NAME" = "linux" ]; then
+ sudo apt-get -qq update
+
+ if [ "$BUILD_MODE" = "docs" ]; then
+ sudo apt-get install doxygen
+ # The version of Sphinx in 14.04 is too old (1.2.2)
+ # and does not support all C++ features used in the manual
+ sudo pip install sphinx
+ fi
+
if [ "$BUILD_MODE" = "valgrind" ] || [ "${BUILD_MODE:0:5}" = "cross" ]; then
- sudo apt-get -qq update
if [ "$BUILD_MODE" = "valgrind" ]; then
sudo apt-get install valgrind