summaryrefslogtreecommitdiff
path: root/Utilities/Doxygen
diff options
context:
space:
mode:
authorSebastien Barre <sebastien.barre@kitware.com>2001-11-02 16:05:37 -0500
committerSebastien Barre <sebastien.barre@kitware.com>2001-11-02 16:05:37 -0500
commitbc673070bc5f5fccdf404fd687ee57c9bb6f0684 (patch)
treef4b2aa5097c6793f858f2f1cb9d5884e2a5b0d78 /Utilities/Doxygen
parent3f4eeeaa8a41c4fd49b96225e1b79a0ca899ef8e (diff)
downloadcmake-bc673070bc5f5fccdf404fd687ee57c9bb6f0684.tar.gz
Doxygen doc generator
Diffstat (limited to 'Utilities/Doxygen')
-rw-r--r--Utilities/Doxygen/CMakeLists.txt23
-rwxr-xr-xUtilities/Doxygen/doc_makeall.sh.in192
-rw-r--r--Utilities/Doxygen/doxyfile.in70
3 files changed, 285 insertions, 0 deletions
diff --git a/Utilities/Doxygen/CMakeLists.txt b/Utilities/Doxygen/CMakeLists.txt
new file mode 100644
index 0000000000..f17215b0bb
--- /dev/null
+++ b/Utilities/Doxygen/CMakeLists.txt
@@ -0,0 +1,23 @@
+#
+# Build the documentation
+#
+INCLUDE (${CMAKE_ROOT}/Modules/DocumentationVTK.cmake OPTIONAL)
+
+IF (BUILD_DOCUMENTATION)
+
+ #
+ # Configure the script and the doxyfile, then add target
+ #
+ CONFIGURE_FILE(
+ ${CMAKE_SOURCE_DIR}/Utilities/Doxygen/doxyfile.in
+ ${CMAKE_BINARY_DIR}/Utilities/Doxygen/doxyfile)
+
+ CONFIGURE_FILE(
+ ${CMAKE_SOURCE_DIR}/Utilities/Doxygen/doc_makeall.sh.in
+ ${CMAKE_BINARY_DIR}/Utilities/Doxygen/doc_makeall.sh)
+
+ ADD_CUSTOM_TARGET(DoxygenDoc
+ ${BASH}
+ ${CMAKE_BINARY_DIR}/Utilities/Doxygen/doc_makeall.sh)
+
+ENDIF (BUILD_DOCUMENTATION)
diff --git a/Utilities/Doxygen/doc_makeall.sh.in b/Utilities/Doxygen/doc_makeall.sh.in
new file mode 100755
index 0000000000..f3e7b81995
--- /dev/null
+++ b/Utilities/Doxygen/doc_makeall.sh.in
@@ -0,0 +1,192 @@
+# -------------------------------------------------------------------------
+# Doxygen documentation batch
+# modified by S. Barre (Time-stamp: <2001-11-02 15:58:40 barre>
+# -------------------------------------------------------------------------
+
+# Path to several tools (_PROG to avoid the typical GZIP env var pb)
+# Example:
+# DOXYGEN_PROG=@DOXYGEN@ (INCLUDE(${CMAKE_ROOT}/Modules/FindDoxygen.cmake))
+# GZIP_PROG=@GZIP@ (INCLUDE(${CMAKE_ROOT}/Modules/FindCygwin.cmake))
+# HHC_PROG=@HHC@ (INCLUDE(${CMAKE_ROOT}/Modules/FindHhc.cmake))
+# MV_PROG=@MV@ (INCLUDE(${CMAKE_ROOT}/Modules/FindCygwin.cmake))
+# PERL_PROG=@PERL@ (INCLUDE(${CMAKE_ROOT}/Modules/FindPerl.cmake))
+# RM_PROG=@RM@ (INCLUDE(${CMAKE_ROOT}/Modules/FindCygwin.cmake))
+# TAR_PROG=@TAR@ (INCLUDE(${CMAKE_ROOT}/Modules/FindCygwin.cmake))
+# WGET_PROG=@WGET@ (INCLUDE(${CMAKE_ROOT}/Modules/FindWget.cmake))
+#
+export DOXYGEN_PROG=@DOXYGEN@ # Doxygen
+export GZIP_PROG=@GZIP@ # gzip (Unix-like 'gzip compressor')
+export HHC_PROG=@HHC@ # HTML Help Compiler
+export MV_PROG=@MV@ # mv (Unix-like 'move/rename files')
+export PERL_PROG=@PERL@ # Perl
+export RM_PROG=@RM@ # rm (Unix-like 'remove files')
+export TAR_PROG=@TAR@ # tar (Unix-like 'archiver')
+export WGET_PROG=@WGET@ # wget (remote file retrieval)
+
+# PROJECT_NAME:
+# Documentation/project name. Used in some of the resulting file names and
+# xrefs to uniquify two or more projects linked together through their
+# Doxygen's tag files. Mandatory for each documentation set.
+# Note: might be the same as the doxyfile's PROJECT_NAME
+# Example:
+# PROJECT_NAME=VTK
+#
+export PROJECT_NAME=CMake
+
+# SOURCE_DIR:
+# Source directory. The top directory of the source files.
+# Example:
+# SOURCE_DIR=@VTK_SOURCE_DIR@
+#
+export SOURCE_DIR=@CMAKE_SOURCE_DIR@
+
+# REL_PATH_TO_TOP:
+# Relative path from the top directory of the source files to the directory
+# (or top directory) holding the files to document. Useful if several parts
+# of the same source directory should be documented separately.
+# Example:
+# REL_PATH_TO_TOP=.
+# REL_PATH_TO_TOP=framework/src
+#
+export REL_PATH_TO_TOP=Source
+
+# INTERMEDIATE_DOX_DIR:
+# Directory where the intermediate Doxygen files should be stored (mainly
+# these headers files converted from the VTK format to the Doxygen format).
+# This directory is erased at the end of this script, unless you comment
+# the corresponding line.
+# DOXTEMP might be used to simplify the syntax.
+# Example:
+# DOXTEMP=DOXTEMP=@VTK_BINARY_DIR@/Utilities/Doxygen
+# INTERMEDIATE_DOX_DIR=$DOXTEMP/dox
+#
+export DOXTEMP=@CMAKE_BINARY_DIR@/Utilities/Doxygen
+export INTERMEDIATE_DOX_DIR=$DOXTEMP/dox
+
+# DOXYFILE:
+# Path to the Doxygen configuration file (i.e. doxyfile).
+# Example:
+# DOXYFILE=$DOXTEMP/doxyfile
+#
+export DOXYFILE=$DOXTEMP/doxyfile
+
+# OUTPUT_DIRECTORY ALLOW_ERASE_OUTPUT_DIRECTORY:
+# Path to the Doxygen output directory (where the resulting doc is stored).
+# Note: should be the same as your doxyfile's OUTPUT_DIRECTORY
+# If ON, allows the output directory to be erased when some advanced output
+# file have been produced (HTML Help, or TAR archive for example).
+# Example:
+# OUTPUT_DIRECTORY=$DOXTEMP/doc
+# ALLOW_ERASE_OUTPUT_DIRECTORY=ON
+#
+export OUTPUT_DIRECTORY=$DOXTEMP/doc
+export ALLOW_ERASE_OUTPUT_DIRECTORY=ON
+
+# COMPILE_HTML_HELP RESULTING_HTML_HELP_FILE:
+# Compile the CHM (Compressed HTML) HTML Help file, name of the resulting
+# file. If set to ON and name is non-empty these options will actually
+# trigger the HTML-Help compiler to create the CHM. The resulting
+# file (usually index.chm) will be renamed to this name.
+# Note: if ON, the whole $OUTPUT_DIRECTORY will be erased at the end of
+# this script, since this file is considered to be one of the
+# advanced final output, unless ALLOW_ERASE_OUTPUT_DIRECTORY is OFF
+# Note: your doxyfile should be configured to enable HTML Help creation
+# (using GENERATE_HTML = YES, GENERATE_HTMLHELP = YES)
+# Example:
+# COMPILE_HTML_HELP=ON
+# COMPILE_HTML_HELP=@DOCUMENTATION_HTML_HELP@
+# RESULTING_HTML_HELP_FILE=$DOXTEMP/vtk4.chm
+# RESULTING_HTML_HELP_FILE=$DOXTEMP/$PROJECT_NAME.chm
+#
+export COMPILE_HTML_HELP=@DOCUMENTATION_HTML_HELP@
+export RESULTING_HTML_HELP_FILE=$DOXTEMP/$PROJECT_NAME.chm
+
+# CREATE_HTML_TARZ_ARCHIVE RESULTING_HTML_TARZ_ARCHIVE_FILE:
+# Create a compressed (gzip) tar archive of the html directory (located
+# under the OUTPUT_DIRECTORY), and name of the resulting archive file.
+# Note: if ON, the whole $OUTPUT_DIRECTORY will be erased at the end of
+# this script, since this file is considered to be one of the
+# advanced final output, unless ALLOW_ERASE_OUTPUT_DIRECTORY is OFF
+# Note: your doxyfile should be configured to enable HTML creation
+# (using GENERATE_HTML = YES)
+# Example:
+# CREATE_HTML_TARZ_ARCHIVE=ON
+# CREATE_HTML_TARZ_ARCHIVE=@DOCUMENTATION_HTML_TARZ@
+# RESULTING_HTML_TARZ_ARCHIVE_FILE=$DOXTEMP/vtk4-html.tar.gz
+# RESULTING_HTML_TARZ_ARCHIVE_FILE=$DOXTEMP/$PROJECT_NAME-html.tar.gz
+#
+export CREATE_HTML_TARZ_ARCHIVE=@DOCUMENTATION_HTML_TARZ@
+export RESULTING_HTML_TARZ_ARCHIVE_FILE=$DOXTEMP/vtk4-html.tar.gz
+export RESULTING_HTML_TARZ_ARCHIVE_FILE=$DOXTEMP/$PROJECT_NAME-html.tar.gz
+
+# ----------------------------------------------------------------------------
+# Create the Doxygen doc.
+
+if test "x$DOXYGEN_PROG" != "xNOTFOUND" ; then
+ $DOXYGEN_PROG $DOXYFILE
+fi
+
+# ----------------------------------------------------------------------------
+# Create the CHM HTML HELP doc.
+
+if test "x$COMPILE_HTML_HELP" == "xON" ; then
+ if test "x$RESULTING_HTML_HELP_FILE" != "x" ; then
+ cd $OUTPUT_DIRECTORY/html
+ if test "x$HHC_PROG" != "xNOTFOUND" ; then
+ $HHC_PROG index.hhp
+ if test "x$MV_PROG" != "xNOTFOUND" ; then
+ $MV_PROG -f index.chm $RESULTING_HTML_HELP_FILE
+ fi
+ fi
+ fi
+fi
+
+# ----------------------------------------------------------------------------
+# Create the compressed tar archive.
+
+if test "x$CREATE_HTML_TARZ_ARCHIVE" == "xON" ; then
+ if test "x$RESULTING_HTML_TARZ_ARCHIVE_FILE" != "x" ; then
+ cd $OUTPUT_DIRECTORY
+ if test "x$TAR_PROG" != "xNOTFOUND" ; then
+ if test "x$RM_PROG" != "xNOTFOUND" ; then
+ $RM_PROG -f html.tar
+ fi
+ $TAR_PROG -cf html.tar html
+ if test "x$GZIP_PROG" != "xNOTFOUND" ; then
+ if test "x$RM_PROG" != "xNOTFOUND" ; then
+ $RM_PROG -f html.tar.gz
+ fi
+ $GZIP_PROG html.tar
+ $MV_PROG -f html.tar.gz $RESULTING_HTML_TARZ_ARCHIVE_FILE
+ fi
+ fi
+ fi
+fi
+
+# ----------------------------------------------------------------------------
+# Clean-up.
+
+if test "x$RM_PROG" != "xNOTFOUND" ; then
+
+ if test "x$DOWNLOAD_VTK_TAGFILE" == "xON" ; then
+ if test "x$VTK_TAGFILE" != "x" ; then
+ $RM_PROG -f $VTK_TAGFILE_DEST_DIR/$VTK_TAGFILE
+ fi
+ fi
+
+ if test "x$COMPILE_HTML_HELP" == "xON" ; then
+ if test "x$RESULTING_HTML_HELP_FILE" != "x" ; then
+ if test "x$ALLOW_ERASE_OUTPUT_DIRECTORY" == "xON" ; then
+ $RM_PROG -fr $OUTPUT_DIRECTORY
+ fi
+ fi
+ fi
+
+ if test "x$CREATE_HTML_TARZ_ARCHIVE" == "xON" ; then
+ if test "x$RESULTING_HTML_TARZ_ARCHIVE_FILE" != "x" ; then
+ if test "x$ALLOW_ERASE_OUTPUT_DIRECTORY" == "xON" ; then
+ $RM_PROG -fr $OUTPUT_DIRECTORY
+ fi
+ fi
+ fi
+fi
diff --git a/Utilities/Doxygen/doxyfile.in b/Utilities/Doxygen/doxyfile.in
new file mode 100644
index 0000000000..c7d5c9fa6a
--- /dev/null
+++ b/Utilities/Doxygen/doxyfile.in
@@ -0,0 +1,70 @@
+# -------------------------------------------------------------------------
+# doxyfile for CMake
+# modified by S. Barre (Time-stamp: <2001-11-02 15:30:58 barre>
+# -------------------------------------------------------------------------
+
+PROJECT_NAME = CMake
+
+FULL_PATH_NAMES = YES
+WARN_IF_UNDOCUMENTED = NO
+
+GENERATE_TREEVIEW = NO
+GENERATE_TODOLIST = YES
+GENERATE_BUGLIST = YES
+GENERATE_HTML = YES
+GENERATE_HTMLHELP = YES
+GENERATE_LATEX = NO
+GENERATE_MAN = NO
+GENERATE_RTF = NO
+
+HAVE_DOT = YES
+#HAVE_DOT = NO
+DOT_PATH = "@DOT_PATH@"
+CLASS_GRAPH = YES
+COLLABORATION_GRAPH = YES
+TEMPLATE_RELATIONS = YES
+INCLUDE_GRAPH = YES
+INCLUDED_BY_GRAPH = YES
+CLASS_DIAGRAMS = YES
+GENERATE_LEGEND = YES
+GRAPHICAL_HIERARCHY = YES
+
+ALLEXTERNALS = NO
+
+IMAGE_PATH =
+
+OUTPUT_DIRECTORY = "@CMAKE_BINARY_DIR@/Utilities/Doxygen/doc"
+
+INPUT = \
+ "@CMAKE_SOURCE_DIR@/Source" \
+
+EXTRACT_ALL = YES
+EXTRACT_PRIVATE = NO
+EXTRACT_STATIC = YES
+HIDE_UNDOC_MEMBERS = NO
+HIDE_UNDOC_CLASSES = YES
+ALWAYS_DETAILED_SEC = NO
+SOURCE_BROWSER = YES
+INLINE_SOURCES = NO
+CASE_SENSE_NAMES = YES
+VERBATIM_HEADERS = NO
+SHOW_INCLUDE_FILES = YES
+JAVADOC_AUTOBRIEF = YES
+SORT_MEMBER_DOCS = NO
+DISTRIBUTE_GROUP_DOC = YES
+TAB_SIZE = 3
+
+FILE_PATTERNS = *.h
+RECURSIVE = NO
+EXCLUDE_PATTERNS =
+
+HTML_ALIGN_MEMBERS = YES
+ALPHABETICAL_INDEX = YES
+COLS_IN_ALPHA_INDEX = 3
+IGNORE_PREFIX = cm
+
+ENABLE_PREPROCESSING = YES
+MACRO_EXPANSION = YES
+SEARCH_INCLUDES = YES
+INCLUDE_PATH =
+EXPAND_ONLY_PREDEF = YES