|
#! /usr/bin/env bash |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
set -e |
|
|
|
function usage { |
|
echo "Usage: ${0} [flags...]" |
|
echo |
|
echo "Generate Thrust documentation markdown with Doxygen and Doxybook that " |
|
echo "can be served with Jekyll." |
|
echo |
|
echo "-h, -help, --help" |
|
echo " Print this message." |
|
echo |
|
echo "-c, --clean" |
|
echo " Delete the all existing build artifacts before generating the " |
|
echo " markdown." |
|
|
|
exit -3 |
|
} |
|
|
|
LOCAL=0 |
|
CLEAN=0 |
|
|
|
while test ${#} != 0 |
|
do |
|
case "${1}" in |
|
-h) ;& |
|
-help) ;& |
|
--help) usage ;; |
|
-c) ;& |
|
--clean) CLEAN=1 ;; |
|
esac |
|
shift |
|
done |
|
|
|
SCRIPT_PATH=$(cd $(dirname ${0}); pwd -P) |
|
|
|
REPO_PATH=${SCRIPT_PATH}/.. |
|
|
|
BUILD_DOCS_PATH=build_docs |
|
BUILD_DOXYGEN_PATH=${BUILD_DOCS_PATH}/doxygen |
|
BUILD_GITHUB_PAGES_PATH=${BUILD_DOCS_PATH}/github_pages |
|
|
|
cd ${REPO_PATH} |
|
|
|
if [[ "${CLEAN}" == 1 ]]; then |
|
rm -rf ${BUILD_DOXYGEN_PATH} |
|
rm -rf ${BUILD_GITHUB_PAGES_PATH} |
|
fi |
|
|
|
mkdir -p ${BUILD_DOXYGEN_PATH}/xml |
|
mkdir -p ${BUILD_GITHUB_PAGES_PATH} |
|
mkdir -p ${BUILD_GITHUB_PAGES_PATH}/api |
|
mkdir -p ${BUILD_GITHUB_PAGES_PATH}/contributing |
|
mkdir -p ${BUILD_GITHUB_PAGES_PATH}/releases |
|
|
|
|
|
|
|
cp -ur docs/github_pages/* ${BUILD_GITHUB_PAGES_PATH}/ |
|
cp README.md ${BUILD_GITHUB_PAGES_PATH}/overview.md |
|
cp CODE_OF_CONDUCT.md ${BUILD_GITHUB_PAGES_PATH}/contributing/code_of_conduct.md |
|
cp CHANGELOG.md ${BUILD_GITHUB_PAGES_PATH}/releases/changelog.md |
|
|
|
doxygen docs/doxygen/config.dox |
|
|
|
|
|
|
|
doxybook2 --config docs/doxybook/config.json \ |
|
--templates docs/doxybook/templates \ |
|
--debug-templates \ |
|
--input ${BUILD_DOXYGEN_PATH}/xml \ |
|
--output ${BUILD_GITHUB_PAGES_PATH}/api |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
rm -rf ${BUILD_GITHUB_PAGES_PATH}/api/files |
|
rm -rf ${BUILD_GITHUB_PAGES_PATH}/api/index_files.md |
|
rm -rf ${BUILD_GITHUB_PAGES_PATH}/api/pages |
|
rm -rf ${BUILD_GITHUB_PAGES_PATH}/api/index_pages.md |
|
rm -rf ${BUILD_GITHUB_PAGES_PATH}/api/examples |
|
rm -rf ${BUILD_GITHUB_PAGES_PATH}/api/index_examples.md |
|
rm -rf ${BUILD_GITHUB_PAGES_PATH}/api/images |
|
rm -rf ${BUILD_GITHUB_PAGES_PATH}/api/index_namespaces.md |
|
rm -rf ${BUILD_GITHUB_PAGES_PATH}/api/index_groups.md |
|
rm -rf ${BUILD_GITHUB_PAGES_PATH}/api/index_classes.md |
|
|
|
|