Mercurial > hg > soundsoftware-site
diff extra/soundsoftware/extract-doxygen.sh @ 203:1e55195bca45 feature_20
Pull doc extractor script out into separate javadoc, doxygen, and controller scripts
author | Chris Cannam <chris.cannam@soundsoftware.ac.uk> |
---|---|
date | Mon, 07 Feb 2011 16:46:28 +0000 |
parents | |
children | c3544e9fd588 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/extra/soundsoftware/extract-doxygen.sh Mon Feb 07 16:46:28 2011 +0000 @@ -0,0 +1,60 @@ +#!/bin/bash + +hgdir="/var/hg" +docdir="/var/doc" + +project="$1" +targetdir="$2" + +projectdir="$hgdir/$project" + +if [ -z "$project" ] || [ -z "$targetdir" ]; then + echo "Usage: $0 <project> <targetdir>" + exit 2 +fi + +if [ ! -d "$projectdir" ] || [ ! -d "$projectdir/.hg" ]; then + echo "No hg repo found at $projectdir" + exit 1 +fi + +if [ ! -d "$targetdir" ]; then + echo "Target dir $targetdir not found" + exit 1 +fi + +if [ -f "$targetdir/index.html" ]; then + echo "Target dir $targetdir already contains index.html" + exit 1 +fi + +doxyfile=$(find "$projectdir" -type f -name Doxyfile -print | head -1) + +if [ -z "$doxyfile" ]; then + echo "No Doxyfile found for project $project" + exit 1 +fi + +echo "Project $project contains a Doxyfile at $doxyfile" + +cd "$projectdir" || exit 1 + +# hmm. should be a whitelist + +cat "$doxyfile" | \ + grep -vi OUTPUT_DIRECTORY | \ + grep -vi HTML_OUTPUT | \ + grep -vi SEARCHENGINE | \ + grep -vi HAVE_DOT | \ + grep -vi DOT_FONTNAME | \ + grep -vi DOT_FONTPATH | \ + grep -vi DOT_TRANSPARENT | \ + sed -e '$a OUTPUT_DIRECTORY='"$targetdir" \ + -e '$a HTML_OUTPUT = .' \ + -e '$a SEARCHENGINE = NO' \ + -e '$a HAVE_DOT = YES' \ + -e '$a DOT_FONTNAME = FreeMono' \ + -e '$a DOT_FONTPATH = /usr/share/fonts/truetype/freefont' \ + -e '$a DOT_TRANSPARENT = YES' | \ + doxygen - +