MFC r196511:

- Update config to doxygen 1.5.2 (I use this with 1.5.9).
  - Add linprocfs and linsysfs to the linuxulator dox.
  - Take the generated includes from the .m files from a subdirectory
    instead of putting everything into $(.OBJDIR). This imporves the
    human readbility of the source directory contents a lot, if you do not
    create a separate OBJDIR.
  - Assume UTF-8 encoding for every input file.
  - Strip the source and dest path from the output, we are not interested
    in the absolute location on the machine where the docs are created,
    relative the the root of the FreeBSD source is what interests us.
  - Exclude .svn directories.
  - Switch to alphabetic index.
  - Use one line per INCLUDE_PATH member in the common dox-config.
  - Bump the __FreeBSD__ version to 9. [here in the MFC: to 8]
  - Switch from hardcoded .m files to an run-time generated one. Takes
    a little bit more time to get started with actual work, but at least
    is more future-proof. If you generate dox for all subsystems, the
    time to find all .m files in the source is magnitutes lower than
    producing the docs.
  - Make the *DEST_PATH overidable from the environment. This allows to
    produce the output directly in the docroot of a webserver.
  - Fix the path when telling the user where he can find the API docs.
This commit is contained in:
Alexander Leidinger 2009-11-05 08:31:42 +00:00
parent 9d37c171d7
commit c199dd3eab
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/stable/8/; revision=198946
19 changed files with 63 additions and 93 deletions

View File

@ -6,15 +6,15 @@
$(.OBJDIR)/dev_sound/dev_sound.tag: $(.OBJDIR)/dev_pci/dev_pci.tag \
$(.OBJDIR)/dev_usb/dev_usb.tag \
$(.OBJDIR)/ac97_if.h \
$(.OBJDIR)/channel_if.h \
$(.OBJDIR)/feeder_if.h \
$(.OBJDIR)/mixer_if.h
$(.OBJDIR)/include/ac97_if.h \
$(.OBJDIR)/include/channel_if.h \
$(.OBJDIR)/include/feeder_if.h \
$(.OBJDIR)/include/mixer_if.h
$(.OBJDIR)/dev_usb/dev_usb.tag: $(.OBJDIR)/dev_pci/dev_pci.tag \
$(.OBJDIR)/usb_if.h
$(.OBJDIR)/include/usb_if.h
$(.OBJDIR)/dev_pci/dev_pci.tag: $(.OBJDIR)/pci_if.h \
$(.OBJDIR)/pcib_if.h \
$(.OBJDIR)/bus_if.h
$(.OBJDIR)/dev_pci/dev_pci.tag: $(.OBJDIR)/include/pci_if.h \
$(.OBJDIR)/include/pcib_if.h \
$(.OBJDIR)/include/bus_if.h

View File

@ -1,4 +1,4 @@
# Doxyfile 1.4.1
# Doxyfile 1.5.2
# $FreeBSD$

View File

@ -1,4 +1,4 @@
# Doxyfile 1.4.1
# Doxyfile 1.5.2
# $FreeBSD$

View File

@ -1,4 +1,4 @@
# Doxyfile 1.4.1
# Doxyfile 1.5.2
# $FreeBSD$

View File

@ -1,4 +1,4 @@
# Doxyfile 1.4.1
# Doxyfile 1.5.2
# $FreeBSD$

View File

@ -1,4 +1,4 @@
# Doxyfile 1.4.1
# Doxyfile 1.5.2
# $FreeBSD$

View File

@ -1,4 +1,4 @@
# Doxyfile 1.4.1
# Doxyfile 1.5.2
# $FreeBSD$

View File

@ -1,4 +1,4 @@
# Doxyfile 1.4.1
# Doxyfile 1.5.2
# $FreeBSD$

View File

@ -1,4 +1,4 @@
# Doxyfile 1.4.1
# Doxyfile 1.5.2
# $FreeBSD$

View File

@ -1,4 +1,4 @@
# Doxyfile 1.4.1
# Doxyfile 1.5.2
# $FreeBSD$
@ -12,6 +12,8 @@ EXTRACT_ALL = YES # for undocumented src, no warnings enabled
# configuration options related to the input files
#---------------------------------------------------------------------------
INPUT = $(DOXYGEN_SRC_PATH)/compat/linux \
$(DOXYGEN_SRC_PATH)/compat/linprocfs \
$(DOXYGEN_SRC_PATH)/compat/linsysfs \
$(DOXYGEN_LINUX_PATH) $(NOTREVIEWED)
GENERATE_TAGFILE = linux/linux.tag

View File

@ -1,4 +1,4 @@
# Doxyfile 1.4.1
# Doxyfile 1.5.2
# $FreeBSD$

View File

@ -1,4 +1,4 @@
# Doxyfile 1.4.1
# Doxyfile 1.5.2
# $FreeBSD$

View File

@ -1,4 +1,4 @@
# Doxyfile 1.4.1
# Doxyfile 1.5.2
# $FreeBSD$

View File

@ -1,4 +1,4 @@
# Doxyfile 1.4.1
# Doxyfile 1.5.2
# $FreeBSD$

View File

@ -1,4 +1,4 @@
# Doxyfile 1.4.1
# Doxyfile 1.5.2
# $FreeBSD$

View File

@ -1,4 +1,4 @@
# Doxyfile 1.4.1
# Doxyfile 1.5.2
# $FreeBSD$

View File

@ -1,4 +1,4 @@
# Doxyfile 1.4.1
# Doxyfile 1.5.2
# $FreeBSD$

View File

@ -10,49 +10,7 @@ TARGET_ARCH?= ${MACHINE_ARCH}
S?=/usr/src/sys
LOCALBASE?=/usr/local
MFILES+=dev/acpica/acpi_if.m
MFILES+=dev/ata/ata_if.m
MFILES+=dev/eisa/eisa_if.m
MFILES+=dev/iicbus/iicbb_if.m
MFILES+=dev/iicbus/iicbus_if.m
MFILES+=dev/mii/miibus_if.m
MFILES+=dev/mmc/mmcbr_if.m
MFILES+=dev/mmc/mmcbus_if.m
MFILES+=dev/ofw/ofw_bus_if.m
MFILES+=dev/pccard/card_if.m
MFILES+=dev/pccard/power_if.m
MFILES+=dev/pci/pci_if.m
MFILES+=dev/pci/pcib_if.m
MFILES+=dev/ppbus/ppbus_if.m
MFILES+=dev/scc/scc_if.m
MFILES+=dev/smbus/smbus_if.m
MFILES+=dev/sound/midi/mpu_if.m
MFILES+=dev/sound/midi/mpufoi_if.m
MFILES+=dev/sound/midi/synth_if.m
MFILES+=dev/sound/pcm/ac97_if.m
MFILES+=dev/sound/pcm/channel_if.m
MFILES+=dev/sound/pcm/feeder_if.m
MFILES+=dev/sound/pcm/mixer_if.m
MFILES+=dev/spibus/spibus_if.m
MFILES+=dev/uart/uart_if.m
MFILES+=dev/usb/usb_if.m
MFILES+=geom/part/g_part_if.m
MFILES+=isa/isa_if.m
MFILES+=kern/bus_if.m
MFILES+=kern/clock_if.m
MFILES+=kern/cpufreq_if.m
MFILES+=kern/device_if.m
MFILES+=kern/linker_if.m
MFILES+=kern/serdev_if.m
MFILES+=libkern/iconv_converter_if.m
MFILES+=opencrypto/cryptodev_if.m
MFILES+=pc98/pc98/canbus_if.m
MFILES+=pci/agp_if.m
MFILES+=powerpc/powerpc/mmu_if.m
MFILES+=powerpc/powerpc/pic_if.m
MFILES+=sparc64/pci/ofw_pci_if.m
MFILES+=sun4v/mdesc/mdesc_bus_if.m
MFILES!= find ${S} -name \*.m | sed -e 's:${S}/::g'
HFILES= ${MFILES:T:S/.m$/.h/}
AWK?= awk
@ -73,16 +31,16 @@ usage:
all: ${ALL}
pdf-all:${PDF_ALL}
mfiles: ${HFILES:S/^/${.OBJDIR}\//}
mfiles: ${HFILES:S/^/${.OBJDIR}\/include\//}
DOXYGEN_DEST_PATH= ${.OBJDIR}
DOXYGEN_LATEX_DEST_PATH=${.OBJDIR}
DOXYGEN_PDF_DEST_PATH= ${.OBJDIR}
DOXYGEN_DEST_PATH?= ${.OBJDIR}
DOXYGEN_LATEX_DEST_PATH?=${.OBJDIR}
DOXYGEN_PDF_DEST_PATH?= ${.OBJDIR}
.if exists{${S}/${TARGET_ARCH}/linux}
.if exists(${S}/${TARGET_ARCH}/linux)
DOXYGEN_LINUX_PATH= ${S}/${TARGET_ARCH}/linux
.endif
.if exists{${S}/${TARGET_ARCH}/linux32}
.if exists(${S}/${TARGET_ARCH}/linux32)
DOXYGEN_LINUX_PATH+= ${S}/${TARGET_ARCH}/linux32
.endif
@ -98,13 +56,13 @@ ${.OBJDIR}/${target}/${target}.tag:
env DOXYGEN_INCLUDE_PATH=${.CURDIR} \
DOXYGEN_SRC_PATH=${S} \
DOXYGEN_DEST_PATH=${DOXYGEN_DEST_PATH} \
DOXYGEN_SRC_INCLUDE_PATH="${S}/sys ${S}/../include ${S}/${TARGET_ARCH}/include" \
DOXYGEN_SRC_INCLUDE_PATH="${S}/sys ${S}/../include ${S}/${TARGET_ARCH}/include ${.OBJDIR}/include" \
DOXYGEN_TARGET_ARCH=${TARGET_ARCH} \
DOXYGEN_LINUX_PATH=${DOXYGEN_LINUX_PATH} \
NOTREVIEWED=${.CURDIR}/notreviewed.dox \
PATH=${LOCALBASE}/bin:${PATH} \
doxygen ${.CURDIR}/Doxyfile-${target}
@echo "API docs for ${target} are now available in ${.OBJDIR}/${target}/." | /usr/bin/fmt
@echo "API docs for ${target} are now available in ${DOXYGEN_DEST_PATH}/${target}/." | /usr/bin/fmt
pdf-${target}: ${.OBJDIR}/${target}/${target}.tag
@cd ${DOXYGEN_LATEX_DEST_PATH}/${target}/latex && ${MAKE} refman.pdf && cp refman.pdf ${DOXYGEN_PDF_DEST_PATH}/${target}.pdf
@ -117,10 +75,12 @@ clean-${target}:
rm -rf ${DOXYGEN_DEST_PATH}/${target} ${.OBJDIR}/${target}
.endfor
CLEANDIRS+= ${.OBJDIR}/include
.for file in ${MFILES}
CLEANDIRS+= ${.OBJDIR}/${file:T:S/.m$/.h/}
${.OBJDIR}/${file:T:S/.m$/.h/}: ${S}/${file}
cd ${.OBJDIR}; ${AWK} -f $S/tools/makeobjops.awk ${S}/${file} -h
CLEANFILES+= ${.OBJDIR}/include/${file:T:S/.m$/.h/}
${.OBJDIR}/include/${file:T:S/.m$/.h/}: ${S}/${file}
@mkdir -p ${.OBJDIR}/include
cd ${.OBJDIR}/include && ${AWK} -f $S/tools/makeobjops.awk ${S}/${file} -h
.endfor
#

View File

@ -1,14 +1,14 @@
# Doxyfile 1.4.1
# Doxyfile 1.5.2
# $FreeBSD$
#---------------------------------------------------------------------------
# Project related configuration options
#---------------------------------------------------------------------------
DOXYFILE_ENCODING = UTF-8
PROJECT_NUMBER =
CREATE_SUBDIRS = YES
OUTPUT_LANGUAGE = English
USE_WINDOWS_ENCODING = NO
BRIEF_MEMBER_DESC = YES
REPEAT_BRIEF = YES
ABBREVIATE_BRIEF = "The $name class" \
@ -25,18 +25,20 @@ ABBREVIATE_BRIEF = "The $name class" \
ALWAYS_DETAILED_SEC = NO
INLINE_INHERITED_MEMB = NO
FULL_PATH_NAMES = YES
STRIP_FROM_PATH =
STRIP_FROM_PATH = $(DOXYGEN_SRC_PATH) $(DOXYGEN_DEST_PATH)
STRIP_FROM_INC_PATH =
SHORT_NAMES = NO
JAVADOC_AUTOBRIEF = NO
MULTILINE_CPP_IS_BRIEF = NO
DETAILS_AT_TOP = NO
INHERIT_DOCS = YES
DISTRIBUTE_GROUP_DOC = NO
SEPARATE_MEMBER_PAGES = NO
TAB_SIZE = 8
ALIASES =
OPTIMIZE_OUTPUT_FOR_C = YES
OPTIMIZE_OUTPUT_JAVA = NO
BUILTIN_STL_SUPPORT = NO
CPP_CLI_SUPPORT = NO
DISTRIBUTE_GROUP_DOC = NO
SUBGROUPING = YES
#---------------------------------------------------------------------------
# Build related configuration options
@ -76,9 +78,11 @@ WARN_IF_DOC_ERROR = YES
WARN_NO_PARAMDOC = NO
WARN_FORMAT = "$file:$line: $text"
WARN_LOGFILE =
#---------------------------------------------------------------------------
# configuration options related to the input files
#---------------------------------------------------------------------------
INPUT_ENCODING = UTF-8
FILE_PATTERNS = *.c \
*.cc \
*.cxx \
@ -120,7 +124,8 @@ FILE_PATTERNS = *.c \
RECURSIVE = YES
EXCLUDE =
EXCLUDE_SYMLINKS = NO
EXCLUDE_PATTERNS = */.\#*
EXCLUDE_PATTERNS = */.\#* */.svn/*
EXCLUDE_SYMBOLS =
EXAMPLE_PATH =
EXAMPLE_PATTERNS = *
EXAMPLE_RECURSIVE = NO
@ -136,11 +141,13 @@ INLINE_SOURCES = NO
STRIP_CODE_COMMENTS = YES
REFERENCED_BY_RELATION = YES
REFERENCES_RELATION = YES
REFERENCES_LINK_SOURCE = YES
USE_HTAGS = NO
VERBATIM_HEADERS = YES
#---------------------------------------------------------------------------
# configuration options related to the alphabetical class index
#---------------------------------------------------------------------------
ALPHABETICAL_INDEX = NO
ALPHABETICAL_INDEX = YES
COLS_IN_ALPHA_INDEX = 5
IGNORE_PREFIX =
#---------------------------------------------------------------------------
@ -220,12 +227,13 @@ ENABLE_PREPROCESSING = YES
MACRO_EXPANSION = YES
EXPAND_ONLY_PREDEF = YES
SEARCH_INCLUDES = YES
INCLUDE_PATH = $(DOXYGEN_SRC_INCLUDE_PATH) .
INCLUDE_PATH = $(DOXYGEN_SRC_INCLUDE_PATH) \
.
INCLUDE_FILE_PATTERNS = *.h
PREDEFINED = "_KERNEL" \
"__FreeBSD__=7" \
"__${TARGET_ARCH}__=1" \
"__${TARGET_ARCH}=1"
PREDEFINED = _KERNEL \
__FreeBSD__=8 \
__${TARGET_ARCH}__=1 \
__${TARGET_ARCH}=1
EXPAND_AS_DEFINED =
SKIP_FUNCTION_MACROS = YES
#---------------------------------------------------------------------------
@ -238,6 +246,7 @@ PERL_PATH = /usr/bin/perl
# Configuration options related to the dot tool
#---------------------------------------------------------------------------
CLASS_DIAGRAMS = NO
MSCGEN_PATH =
HIDE_UNDOC_RELATIONS = YES
HAVE_DOT = YES
CLASS_GRAPH = YES
@ -248,14 +257,13 @@ TEMPLATE_RELATIONS = NO
INCLUDE_GRAPH = YES
INCLUDED_BY_GRAPH = YES
CALL_GRAPH = YES
CALLER_GRAPH = YES
GRAPHICAL_HIERARCHY = YES
DIRECTORY_GRAPH = YES
DOT_IMAGE_FORMAT = png
DOT_PATH =
DOTFILE_DIRS =
MAX_DOT_GRAPH_WIDTH = 1024
MAX_DOT_GRAPH_HEIGHT = 1024
MAX_DOT_GRAPH_DEPTH = 1000
DOT_GRAPH_MAX_NODES = 50
DOT_TRANSPARENT = NO
DOT_MULTI_TARGETS = YES
GENERATE_LEGEND = YES