Skip to content

Commit

Permalink
[doc] Expand scope of doxygen-generated documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
Michael Brown committed Aug 11, 2009
1 parent d5d68b2 commit b3db99a
Show file tree
Hide file tree
Showing 4 changed files with 45 additions and 30 deletions.
5 changes: 5 additions & 0 deletions src/Makefile
Expand Up @@ -80,6 +80,11 @@ SRCDIRS += usr
NON_AUTO_SRCS :=
NON_AUTO_SRCS += drivers/net/prism2.c

# INCDIRS lists the include path
#
INCDIRS :=
INCDIRS += include .

###############################################################################
#
# Default build target: build the most common targets and print out a
Expand Down
23 changes: 18 additions & 5 deletions src/Makefile.housekeeping
Expand Up @@ -292,6 +292,11 @@ MAKEDEPS += arch/$(ARCH)/Makefile
include arch/$(ARCH)/Makefile
endif

# Include architecture-specific include path
ifdef ARCH
INCDIRS += arch/$(ARCH)/include
endif

###############################################################################
#
# Source file handling
Expand Down Expand Up @@ -320,9 +325,13 @@ autosrcs :

ifdef BIN

# INCDIRS lists the include path
incdirs :
@$(ECHO) $(INCDIRS)

# Common flags
#
CFLAGS += -I include -I arch/$(ARCH)/include -I .
CFLAGS += $(foreach INC,$(INCDIRS),-I$(INC))
CFLAGS += -Os
CFLAGS += -g
ifeq ($(CCTYPE),gcc)
Expand Down Expand Up @@ -953,20 +962,24 @@ endif # defined(BIN)
ifdef BIN

$(BIN)/doxygen.cfg : doxygen.cfg $(MAKEDEPS)
$(PERL) -pe 's{\@SRCDIRS\@}{$(SRCDIRS)}; ' \
$(Q)$(PERL) -pe 's{\@SRCDIRS\@}{$(SRCDIRS)}; ' \
-e 's{\@INCDIRS\@}{$(filter-out .,$(INCDIRS))}; ' \
-e 's{\@BIN\@}{$(BIN)}; ' \
-e 's{\@ARCH\@}{$(ARCH)}; ' \
$< > $@

$(BIN)/doc : $(BIN)/doxygen.cfg
$(DOXYGEN) $<
$(Q)$(DOXYGEN) $<

.PHONY : $(BIN)/doc

VERYCLEANUP += $(BIN)/doc

doc : $(BIN)/doc

doc-clean :
$(Q)$(RM) -r $(BIN)/doc

VERYCLEANUP += $(BIN)/doc

docview :
@[ -f $(BIN)/doc/html/index.html ] || $(MAKE) $(BIN)/doc
@if [ -n "$$BROWSER" ] ; then \
Expand Down
2 changes: 1 addition & 1 deletion src/arch/x86/Makefile
@@ -1,6 +1,6 @@
# Include common x86 headers
#
CFLAGS += -Iarch/x86/include
INCDIRS += arch/x86/include

# x86-specific directories containing source files
#
Expand Down
45 changes: 21 additions & 24 deletions src/doxygen.cfg
Expand Up @@ -25,7 +25,7 @@ DOXYFILE_ENCODING = UTF-8
# The PROJECT_NAME tag is a single word (or a sequence of words surrounded
# by quotes) that should identify the project.

PROJECT_NAME = Etherboot
PROJECT_NAME = gPXE

# The PROJECT_NUMBER tag can be used to enter a project or revision number.
# This could be handy for archiving the generated documentation or
Expand Down Expand Up @@ -92,7 +92,7 @@ ABBREVIATE_BRIEF =
# Doxygen will generate a detailed section even if there is only a brief
# description.

ALWAYS_DETAILED_SEC = NO
ALWAYS_DETAILED_SEC = YES

# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
# inherited members of a class in the documentation of that class as if those
Expand All @@ -105,7 +105,7 @@ INLINE_INHERITED_MEMB = NO
# path before files name in the file list and in the header files. If set
# to NO the shortest path that makes the file name unique will be used.

FULL_PATH_NAMES = NO
FULL_PATH_NAMES = YES

# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
# can be used to strip a user-defined part of the path. Stripping is
Expand Down Expand Up @@ -236,14 +236,14 @@ SIP_SUPPORT = NO
# setting a simple type. If this is not the case, or you want to show the
# methods anyway, you should set this option to NO.

IDL_PROPERTY_SUPPORT = YES
IDL_PROPERTY_SUPPORT = NO

# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
# tag is set to YES, then doxygen will reuse the documentation of the first
# member in the group (if any) for the other members of the group. By default
# all members of a group must be documented explicitly.

DISTRIBUTE_GROUP_DOC = NO
DISTRIBUTE_GROUP_DOC = YES

# Set the SUBGROUPING tag to YES (the default) to allow class member groups of
# the same type (for instance a group of public functions) to be put as a
Expand Down Expand Up @@ -288,7 +288,7 @@ SYMBOL_CACHE_SIZE = 0
# Private class members and static file members will be hidden unless
# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES

EXTRACT_ALL = NO
EXTRACT_ALL = YES

# If the EXTRACT_PRIVATE tag is set to YES all private members of a class
# will be included in the documentation.
Expand Down Expand Up @@ -375,7 +375,7 @@ HIDE_SCOPE_NAMES = NO
# will put a list of the files that are included by a file in the documentation
# of that file.

SHOW_INCLUDE_FILES = NO
SHOW_INCLUDE_FILES = YES

# If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
# is inserted in the documentation for inline members.
Expand Down Expand Up @@ -528,7 +528,7 @@ WARN_IF_DOC_ERROR = YES
# wrong or incomplete parameter documentation, but not about the absence of
# documentation.

WARN_NO_PARAMDOC = NO
WARN_NO_PARAMDOC = YES

# The WARN_FORMAT tag determines the format of the warning messages that
# doxygen can produce. The string should contain the $file, $line, and $text
Expand All @@ -555,9 +555,8 @@ WARN_LOGFILE =
# with spaces.

INPUT = @SRCDIRS@ \
include \
include/gpxe \
arch/@ARCH@/include \
@INCDIRS@ \
config \
doc

# This tag can be used to specify the character encoding of the source files
Expand All @@ -577,14 +576,13 @@ INPUT_ENCODING = UTF-8

FILE_PATTERNS = *.c \
*.h \
*.S \
*.dox

# The RECURSIVE tag can be used to turn specify whether or not subdirectories
# should be searched for input files as well. Possible values are YES and NO.
# If left blank NO is used.

RECURSIVE = NO
RECURSIVE = YES

# The EXCLUDE tag can be used to specify files and/or directories that should
# excluded from the INPUT source files. This way you can easily exclude a
Expand Down Expand Up @@ -679,7 +677,7 @@ SOURCE_BROWSER = YES
# Setting the INLINE_SOURCES tag to YES will include the body
# of functions and classes directly in the documentation.

INLINE_SOURCES = NO
INLINE_SOURCES = YES

# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
# doxygen to hide any special comment blocks from generated source code
Expand All @@ -697,7 +695,7 @@ REFERENCED_BY_RELATION = YES
# then for each documented function all documented entities
# called/used by that function will be listed.

REFERENCES_RELATION = NO
REFERENCES_RELATION = YES

# If the REFERENCES_LINK_SOURCE tag is set to YES (the default)
# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from
Expand Down Expand Up @@ -797,7 +795,7 @@ HTML_ALIGN_MEMBERS = YES
# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox
# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari).

HTML_DYNAMIC_SECTIONS = NO
HTML_DYNAMIC_SECTIONS = YES

# If the GENERATE_DOCSET tag is set to YES, additional index files
# will be generated that can be used as input for Apple's Xcode 3
Expand Down Expand Up @@ -867,7 +865,7 @@ BINARY_TOC = NO
# The TOC_EXPAND flag can be set to YES to add extra items for group members
# to the contents of the HTML help documentation and to the tree view.

TOC_EXPAND = NO
TOC_EXPAND = YES

# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and QHP_VIRTUAL_FOLDER
# are set, an additional index file will be generated that can be used as input for
Expand Down Expand Up @@ -927,7 +925,7 @@ ENUM_VALUES_PER_LINE = 4
# releases of Doxygen, the values YES and NO are equivalent to FRAME and NONE
# respectively.

GENERATE_TREEVIEW = NO
GENERATE_TREEVIEW = NONE

# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
# used to set the initial width (in pixels) of the frame in which the tree
Expand All @@ -950,7 +948,7 @@ FORMULA_FONTSIZE = 10
# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
# generate Latex output.

GENERATE_LATEX = YES
GENERATE_LATEX = NO

# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.
# If a relative path is entered the value of OUTPUT_DIRECTORY will be
Expand Down Expand Up @@ -1068,7 +1066,7 @@ RTF_EXTENSIONS_FILE =
# If the GENERATE_MAN tag is set to YES (the default) Doxygen will
# generate man pages

GENERATE_MAN = YES
GENERATE_MAN = NO

# The MAN_OUTPUT tag is used to specify where the man pages will be put.
# If a relative path is entered the value of OUTPUT_DIRECTORY will be
Expand Down Expand Up @@ -1201,8 +1199,7 @@ SEARCH_INCLUDES = YES
# contain include files that are not input files but should be processed by
# the preprocessor.

INCLUDE_PATH = include \
arch/@ARCH@/include
INCLUDE_PATH = @INCDIRS@

# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
# patterns (like *.h and *.hpp) to filter out the header-files in the
Expand Down Expand Up @@ -1297,7 +1294,7 @@ PERL_PATH =
# fallback. It is recommended to install and use dot, since it yields more
# powerful graphs.

CLASS_DIAGRAMS = YES
CLASS_DIAGRAMS = NO

# You can define message sequence charts within doxygen comments using the \msc
# command. Doxygen will then run the mscgen tool (see
Expand All @@ -1312,7 +1309,7 @@ MSCGEN_PATH =
# inheritance and usage relations if the target is undocumented
# or is not a class.

HIDE_UNDOC_RELATIONS = YES
HIDE_UNDOC_RELATIONS = NO

# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
# available from the path. This tool is part of Graphviz, a graph visualization
Expand Down

0 comments on commit b3db99a

Please sign in to comment.