Date: Mon, 24 Aug 2009 13:10:56 +0000 (UTC) From: Alexander Leidinger <netchild@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r196511 - head/tools/kerneldoc/subsys Message-ID: <200908241310.n7ODAu9G095738@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: netchild Date: Mon Aug 24 13:10:55 2009 New Revision: 196511 URL: http://svn.freebsd.org/changeset/base/196511 Log: - 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. [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. MFC after: 1 month (after 8.0) Modified: head/tools/kerneldoc/subsys/Dependencies head/tools/kerneldoc/subsys/Doxyfile-cam head/tools/kerneldoc/subsys/Doxyfile-crypto head/tools/kerneldoc/subsys/Doxyfile-dev_pci head/tools/kerneldoc/subsys/Doxyfile-dev_sound head/tools/kerneldoc/subsys/Doxyfile-dev_usb head/tools/kerneldoc/subsys/Doxyfile-geom head/tools/kerneldoc/subsys/Doxyfile-kern head/tools/kerneldoc/subsys/Doxyfile-libkern head/tools/kerneldoc/subsys/Doxyfile-linux head/tools/kerneldoc/subsys/Doxyfile-net80211 head/tools/kerneldoc/subsys/Doxyfile-netgraph head/tools/kerneldoc/subsys/Doxyfile-netinet head/tools/kerneldoc/subsys/Doxyfile-netinet6 head/tools/kerneldoc/subsys/Doxyfile-netipsec head/tools/kerneldoc/subsys/Doxyfile-opencrypto head/tools/kerneldoc/subsys/Doxyfile-vm head/tools/kerneldoc/subsys/Makefile head/tools/kerneldoc/subsys/common-Doxyfile Modified: head/tools/kerneldoc/subsys/Dependencies ============================================================================== --- head/tools/kerneldoc/subsys/Dependencies Mon Aug 24 12:52:05 2009 (r196510) +++ head/tools/kerneldoc/subsys/Dependencies Mon Aug 24 13:10:55 2009 (r196511) @@ -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 Modified: head/tools/kerneldoc/subsys/Doxyfile-cam ============================================================================== --- head/tools/kerneldoc/subsys/Doxyfile-cam Mon Aug 24 12:52:05 2009 (r196510) +++ head/tools/kerneldoc/subsys/Doxyfile-cam Mon Aug 24 13:10:55 2009 (r196511) @@ -1,4 +1,4 @@ -# Doxyfile 1.4.1 +# Doxyfile 1.5.2 # $FreeBSD$ Modified: head/tools/kerneldoc/subsys/Doxyfile-crypto ============================================================================== --- head/tools/kerneldoc/subsys/Doxyfile-crypto Mon Aug 24 12:52:05 2009 (r196510) +++ head/tools/kerneldoc/subsys/Doxyfile-crypto Mon Aug 24 13:10:55 2009 (r196511) @@ -1,4 +1,4 @@ -# Doxyfile 1.4.1 +# Doxyfile 1.5.2 # $FreeBSD$ Modified: head/tools/kerneldoc/subsys/Doxyfile-dev_pci ============================================================================== --- head/tools/kerneldoc/subsys/Doxyfile-dev_pci Mon Aug 24 12:52:05 2009 (r196510) +++ head/tools/kerneldoc/subsys/Doxyfile-dev_pci Mon Aug 24 13:10:55 2009 (r196511) @@ -1,4 +1,4 @@ -# Doxyfile 1.4.1 +# Doxyfile 1.5.2 # $FreeBSD$ Modified: head/tools/kerneldoc/subsys/Doxyfile-dev_sound ============================================================================== --- head/tools/kerneldoc/subsys/Doxyfile-dev_sound Mon Aug 24 12:52:05 2009 (r196510) +++ head/tools/kerneldoc/subsys/Doxyfile-dev_sound Mon Aug 24 13:10:55 2009 (r196511) @@ -1,4 +1,4 @@ -# Doxyfile 1.4.1 +# Doxyfile 1.5.2 # $FreeBSD$ Modified: head/tools/kerneldoc/subsys/Doxyfile-dev_usb ============================================================================== --- head/tools/kerneldoc/subsys/Doxyfile-dev_usb Mon Aug 24 12:52:05 2009 (r196510) +++ head/tools/kerneldoc/subsys/Doxyfile-dev_usb Mon Aug 24 13:10:55 2009 (r196511) @@ -1,4 +1,4 @@ -# Doxyfile 1.4.1 +# Doxyfile 1.5.2 # $FreeBSD$ Modified: head/tools/kerneldoc/subsys/Doxyfile-geom ============================================================================== --- head/tools/kerneldoc/subsys/Doxyfile-geom Mon Aug 24 12:52:05 2009 (r196510) +++ head/tools/kerneldoc/subsys/Doxyfile-geom Mon Aug 24 13:10:55 2009 (r196511) @@ -1,4 +1,4 @@ -# Doxyfile 1.4.1 +# Doxyfile 1.5.2 # $FreeBSD$ Modified: head/tools/kerneldoc/subsys/Doxyfile-kern ============================================================================== --- head/tools/kerneldoc/subsys/Doxyfile-kern Mon Aug 24 12:52:05 2009 (r196510) +++ head/tools/kerneldoc/subsys/Doxyfile-kern Mon Aug 24 13:10:55 2009 (r196511) @@ -1,4 +1,4 @@ -# Doxyfile 1.4.1 +# Doxyfile 1.5.2 # $FreeBSD$ Modified: head/tools/kerneldoc/subsys/Doxyfile-libkern ============================================================================== --- head/tools/kerneldoc/subsys/Doxyfile-libkern Mon Aug 24 12:52:05 2009 (r196510) +++ head/tools/kerneldoc/subsys/Doxyfile-libkern Mon Aug 24 13:10:55 2009 (r196511) @@ -1,4 +1,4 @@ -# Doxyfile 1.4.1 +# Doxyfile 1.5.2 # $FreeBSD$ Modified: head/tools/kerneldoc/subsys/Doxyfile-linux ============================================================================== --- head/tools/kerneldoc/subsys/Doxyfile-linux Mon Aug 24 12:52:05 2009 (r196510) +++ head/tools/kerneldoc/subsys/Doxyfile-linux Mon Aug 24 13:10:55 2009 (r196511) @@ -1,4 +1,4 @@ -# Doxyfile 1.4.1 +# Doxyfile 1.5.2 # $FreeBSD$ @@ -12,6 +12,8 @@ EXTRACT_ALL = YES # for un # 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 Modified: head/tools/kerneldoc/subsys/Doxyfile-net80211 ============================================================================== --- head/tools/kerneldoc/subsys/Doxyfile-net80211 Mon Aug 24 12:52:05 2009 (r196510) +++ head/tools/kerneldoc/subsys/Doxyfile-net80211 Mon Aug 24 13:10:55 2009 (r196511) @@ -1,4 +1,4 @@ -# Doxyfile 1.4.1 +# Doxyfile 1.5.2 # $FreeBSD$ Modified: head/tools/kerneldoc/subsys/Doxyfile-netgraph ============================================================================== --- head/tools/kerneldoc/subsys/Doxyfile-netgraph Mon Aug 24 12:52:05 2009 (r196510) +++ head/tools/kerneldoc/subsys/Doxyfile-netgraph Mon Aug 24 13:10:55 2009 (r196511) @@ -1,4 +1,4 @@ -# Doxyfile 1.4.1 +# Doxyfile 1.5.2 # $FreeBSD$ Modified: head/tools/kerneldoc/subsys/Doxyfile-netinet ============================================================================== --- head/tools/kerneldoc/subsys/Doxyfile-netinet Mon Aug 24 12:52:05 2009 (r196510) +++ head/tools/kerneldoc/subsys/Doxyfile-netinet Mon Aug 24 13:10:55 2009 (r196511) @@ -1,4 +1,4 @@ -# Doxyfile 1.4.1 +# Doxyfile 1.5.2 # $FreeBSD$ Modified: head/tools/kerneldoc/subsys/Doxyfile-netinet6 ============================================================================== --- head/tools/kerneldoc/subsys/Doxyfile-netinet6 Mon Aug 24 12:52:05 2009 (r196510) +++ head/tools/kerneldoc/subsys/Doxyfile-netinet6 Mon Aug 24 13:10:55 2009 (r196511) @@ -1,4 +1,4 @@ -# Doxyfile 1.4.1 +# Doxyfile 1.5.2 # $FreeBSD$ Modified: head/tools/kerneldoc/subsys/Doxyfile-netipsec ============================================================================== --- head/tools/kerneldoc/subsys/Doxyfile-netipsec Mon Aug 24 12:52:05 2009 (r196510) +++ head/tools/kerneldoc/subsys/Doxyfile-netipsec Mon Aug 24 13:10:55 2009 (r196511) @@ -1,4 +1,4 @@ -# Doxyfile 1.4.1 +# Doxyfile 1.5.2 # $FreeBSD$ Modified: head/tools/kerneldoc/subsys/Doxyfile-opencrypto ============================================================================== --- head/tools/kerneldoc/subsys/Doxyfile-opencrypto Mon Aug 24 12:52:05 2009 (r196510) +++ head/tools/kerneldoc/subsys/Doxyfile-opencrypto Mon Aug 24 13:10:55 2009 (r196511) @@ -1,4 +1,4 @@ -# Doxyfile 1.4.1 +# Doxyfile 1.5.2 # $FreeBSD$ Modified: head/tools/kerneldoc/subsys/Doxyfile-vm ============================================================================== --- head/tools/kerneldoc/subsys/Doxyfile-vm Mon Aug 24 12:52:05 2009 (r196510) +++ head/tools/kerneldoc/subsys/Doxyfile-vm Mon Aug 24 13:10:55 2009 (r196511) @@ -1,4 +1,4 @@ -# Doxyfile 1.4.1 +# Doxyfile 1.5.2 # $FreeBSD$ Modified: head/tools/kerneldoc/subsys/Makefile ============================================================================== --- head/tools/kerneldoc/subsys/Makefile Mon Aug 24 12:52:05 2009 (r196510) +++ head/tools/kerneldoc/subsys/Makefile Mon Aug 24 13:10:55 2009 (r196511) @@ -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 # Modified: head/tools/kerneldoc/subsys/common-Doxyfile ============================================================================== --- head/tools/kerneldoc/subsys/common-Doxyfile Mon Aug 24 12:52:05 2009 (r196510) +++ head/tools/kerneldoc/subsys/common-Doxyfile Mon Aug 24 13:10:55 2009 (r196511) @@ -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 clas 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__=9 \ + __${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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200908241310.n7ODAu9G095738>