+#
+# Usage:
+# ./regen.sh [html|chm|xml|latex|all]
+#
+# Pass "x" to regen only the X output format and "all" to regen them all.
+# If no arguments are passed all formats are regenerated
+# (just like passing "all").
+#
+
+
+# remember current folder and then cd to the docs/doxygen one
+me=$(basename $0)
+path=${0%%/$me} # path from which the script has been launched
+current=$(pwd)
+cd $path
+if [[ -z "$WXWIDGETS" ]]; then
+ # Notice the use of -P to ensure we get the canonical path even if there
+ # are symlinks in the current path. This is important because Doxygen
+ # strips this string from the paths in the generated files textually and it
+ # wouldn't work if it contained symlinks.
+ WXWIDGETS=`cd ../.. && pwd -P`
+ if [ "$OSTYPE" = "cygwin" ]; then
+ WXWIDGETS=`cygpath -w $WXWIDGETS`
+ fi
+ export WXWIDGETS
+fi
+
+if [ "$DOXYGEN" = "" ]; then
+ DOXYGEN=doxygen
+fi
+
+# Check that doxygen has the correct version as different versions of it are
+# unfortunately not always (in fact, practically never) compatible.
+#
+# Still allow using incompatible version for some quick local testing if really
+# needed and 1.8.2 can't be installed for whatever reason.
+if [[ -z $WX_SKIP_DOXYGEN_VERSION_CHECK ]]; then
+ doxygen_version=`$DOXYGEN --version`
+ doxygen_version_required=1.8.2
+ if [[ $doxygen_version != $doxygen_version_required ]]; then
+ echo "Doxygen version $doxygen_version is not supported."
+ echo "Please use Doxygen $doxygen_version_required or export WX_SKIP_DOXYGEN_VERSION_CHECK."
+ exit 1
+ fi
+fi
+
+# prepare folders for the cp commands below
+mkdir -p out/html # we need to copy files in this folder below
+mkdir -p out/html/generic
+
+# These are not automatically copied by Doxygen because they're not
+# used in doxygen documentation, only in our html footer and by our
+# custom aliases
+cp images/generic/*png out/html/generic
+
+# Defaults for settings controlled by this script
+export GENERATE_DOCSET="NO";
+export GENERATE_HTML="NO";
+export GENERATE_HTMLHELP="NO";
+export GENERATE_LATEX="NO";
+export GENERATE_QHP="NO";
+export GENERATE_XML="NO";
+export SEARCHENGINE="NO";
+export SERVER_BASED_SEARCH="NO";
+
+# Which format should we generate during this run?
+case "$1" in
+ all) # All *main* formats, not all formats, here for backwards compat.
+ export GENERATE_HTML="YES";
+ export GENERATE_HTMLHELP="YES";
+ export GENERATE_XML="YES";
+ ;;
+ chm)
+ export GENERATE_HTML="YES";
+ export GENERATE_HTMLHELP="YES";
+ ;;
+ docset)
+ export GENERATE_DOCSET="YES";
+ export GENERATE_HTML="YES";
+ ;;
+ latex)
+ export GENERATE_LATEX="YES";
+ ;;
+ php) # HTML, but with PHP Search Engine
+ export GENERATE_HTML="YES";
+ export SEARCHENGINE="YES";
+ export SERVER_BASED_SEARCH="YES";
+ ;;
+ qch)
+ export GENERATE_HTML="YES";
+ export GENERATE_QHP="YES";
+ ;;
+ xml)
+ export GENERATE_XML="YES";
+ ;;
+ *) # Default to HTML only
+ export GENERATE_HTML="YES";
+ export SEARCHENGINE="YES";
+ ;;
+esac