Blame docs/naturaldocs/run_docs.sh

Packit ed3af9
#!/bin/sh
Packit ed3af9
Packit ed3af9
set -e
Packit ed3af9
Packit ed3af9
usage() {
Packit ed3af9
	echo "Usage: run_docs.sh [--nonfatal]"
Packit ed3af9
	echo "Generate the manual for gd!"
Packit ed3af9
	if [ $# -ne 0 ] ; then
Packit ed3af9
		printf 'ERROR: %b\n' "$*"
Packit ed3af9
		exit 1
Packit ed3af9
	else
Packit ed3af9
		exit 0
Packit ed3af9
	fi
Packit ed3af9
}
Packit ed3af9
Packit ed3af9
nd() {
Packit ed3af9
	# Figure out the name of this tool.
Packit ed3af9
	if which naturaldocs 2>/dev/null ; then
Packit ed3af9
		return
Packit ed3af9
	elif which NaturalDocs 2>/dev/null ; then
Packit ed3af9
		return
Packit ed3af9
	else
Packit ed3af9
		return 1
Packit ed3af9
	fi
Packit ed3af9
}
Packit ed3af9
Packit ed3af9
cd "$(dirname "$0")"
Packit ed3af9
Packit ed3af9
if [ $# -eq 1 ] ; then
Packit ed3af9
	case $1 in
Packit ed3af9
	--nonfatal)
Packit ed3af9
		if ! nd >/dev/null ; then
Packit ed3af9
			echo "skipping doc generation -- please install naturaldoc!"
Packit ed3af9
			exit 0
Packit ed3af9
		fi
Packit ed3af9
		;;
Packit ed3af9
	-h|--help)
Packit ed3af9
		usage
Packit ed3af9
		;;
Packit ed3af9
	*)
Packit ed3af9
		usage "unknown option: $1"
Packit ed3af9
		;;
Packit ed3af9
	esac
Packit ed3af9
elif [ $# -ne 0 ] ; then
Packit ed3af9
	usage "unknown options: $*"
Packit ed3af9
fi
Packit ed3af9
Packit ed3af9
# Version number
Packit ed3af9
VERSION=`(cd ../../; perl config/getver.pl)`
Packit ed3af9
Packit ed3af9
# Clear away old docs and ensure the doc dir. is present.
Packit ed3af9
rm -rf html
Packit ed3af9
mkdir html
Packit ed3af9
Packit ed3af9
# Create a lightly-processed copy of the source to use as input.  This
Packit ed3af9
# file skips all non-C code in src/ and removes the BGD_DECLARE()
Packit ed3af9
# macro from definitions so they don't show up in the docs.
Packit ed3af9
rm -rf tmp
Packit ed3af9
mkdir tmp
Packit ed3af9
perl nobgd.pl ../../src/ tmp/
Packit ed3af9
Packit ed3af9
# Add the external docs.
Packit ed3af9
echo "Title: License" | cat - ../../COPYING > tmp/license.txt
Packit ed3af9
sed -e "s/@VERSION@/$VERSION/g" preamble.txt > tmp/preamble.txt
Packit ed3af9
# ^^^ hack to get the version number in the docs.
Packit ed3af9
Packit ed3af9
# Run naturaldocs to create the manual.
Packit ed3af9
$(nd) --rebuild --rebuild-output --documented-only \
Packit ed3af9
    -i tmp/ \
Packit ed3af9
    -img images/ \
Packit ed3af9
    -o html html  \
Packit ed3af9
    --project project/ \
Packit ed3af9
    -s Default libgd
Packit ed3af9
Packit ed3af9
# And cleanup the temp files.
Packit ed3af9
rm -rf Data tmp
Packit ed3af9
Packit ed3af9