Skip to contentSkip to conversation

doxygen: use relative paths from the project root

PATCH In review Steffan Karger 3 participants 8 messages Nov 1, 2017 – Nov 8, 2017 Kbuild

lore
Share & tools
lore
#0 lore raw

PATCH 1/2 doxygen: use relative paths from the project root

Instead of genering docs with full path names (e.g. /home/steffan/dev/openvpn/src/openvpn/crypto.h), use a relative path wrt the project root (e.g. src/openvpn/crypto.h). This makes the generated doxygen easier to read.

---
 doc/doxygen/openvpn.doxyfile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
doc/doxygen/openvpn.doxyfile +1 -1
index a7d9728..80cda2b 100644
@@ -25,7 +25,7 @@ ABBREVIATE_BRIEF       = "The $name class" \
 ALWAYS_DETAILED_SEC    = NO
 INLINE_INHERITED_MEMB  = NO
 FULL_PATH_NAMES        = YES
-STRIP_FROM_PATH        = ""
+STRIP_FROM_PATH        = "."
 STRIP_FROM_INC_PATH    =
 SHORT_NAMES            = NO
 JAVADOC_AUTOBRIEF      = YES # NO
Signature · 1 line
2.7.4
#1 lore raw

PATCH 2/2 doxygen: add make target

Add a make target, such that 'make doxygen' works (both for in-tree and out-of-tree builds).

---
 Makefile.am                     |   5 +-
 configure.ac                    |   1 +
 doc/Makefile.am                 |   2 +
 doc/doxygen/openvpn.doxyfile    | 279 ----------------------------------------
 doc/doxygen/openvpn.doxyfile.in | 279 ++++++++++++++++++++++++++++++++++++++++
 5 files changed, 286 insertions(+), 280 deletions(-)
 delete mode 100644 doc/doxygen/openvpn.doxyfile
 create mode 100644 doc/doxygen/openvpn.doxyfile.in
Makefile.am +4 -1
index 87af724..34632c4 100644
@@ -46,7 +46,7 @@ EXTRA_DIST = \
 	contrib \
 	debug
 
-.PHONY: config-version.h
+.PHONY: config-version.h doxygen
 
 if GIT_CHECKOUT
 BUILT_SOURCES = \
@@ -96,3 +96,6 @@ config-version.h:
 	else \
 		rm -f config-version.h.tmp; \
 	fi
+
+doxygen: doc/doxygen/openvpn.doxyfile
+	doxygen doc/doxygen/openvpn.doxyfile
configure.ac +1 -0
index 6f59bae..6570610 100644
@@ -1413,6 +1413,7 @@ AC_CONFIG_FILES([
 	distro/rpm/Makefile
 	distro/rpm/openvpn.spec
 	distro/systemd/Makefile
+	doc/doxygen/openvpn.doxyfile
 	include/Makefile
 	src/Makefile
 	src/compat/Makefile
doc/Makefile.am +2 -0
index dedd1fa..f9e7f4a 100644
@@ -14,6 +14,8 @@ MAINTAINERCLEANFILES = \
 
 CLEANFILES = openvpn.8.html
 
+SUBDIRS = doxygen
+
 dist_doc_DATA = \
 	management-notes.txt
 
doc/doxygen/openvpn.doxyfile deleted +0 -279

279 lines not on this page · raw message

doc/doxygen/openvpn.doxyfile.in new file +279 -0

279 lines not on this page · raw message

Signature · 1 line
2.7.4
#2 lore raw

Re: [Openvpn-devel] [PATCH 2/2] doxygen: add make target

Hi,

Quoted 2 lines · Steffan Karger

Add a make target, such that 'make doxygen' works (both for in-tree and out-of-tree builds).

The relative path used for INPUT= has some funky side effects if another project happens to be checked out "nearby" - I had openvpn in

/tmp/x/openvpn/

and doxygen started building documentation for

/tmp/roundcubemail-1.3.1/

so that's overdoing things a bit :-) - feature-ACK, code-NAK.

(As discussed on IRC)

gert

Signature · 4 lines
USENET is *not* the non-clickable part of WWW!
                                                           //www.muc.de/~gert/
Gert Doering - Munich, Germany                             [email protected]...
fax: +49-89-35655025                        [email protected]...
#3 lore raw
In reply to Steffan Karger

Hi,

Quoted 4 lines · Steffan Karger

Instead of genering docs with full path names (e.g. /home/steffan/dev/openvpn/src/openvpn/crypto.h), use a relative path wrt the project root (e.g. src/openvpn/crypto.h). This makes the generated doxygen easier to read.

Feature-ACK, but since there is a patch 2 in the series that right afterwards changes this very line

doc/doxygen/openvpn.doxyfile ABBREVIATE_BRIEF = "The $name class" \ · line 28

Quoted 2 lines
doc/doxygen/openvpn.doxyfile +1 -1
-STRIP_FROM_PATH        = ""
+STRIP_FROM_PATH        = "."

... again, maybe just folding these two patches together makes more sense.

gert

Signature · 4 lines
USENET is *not* the non-clickable part of WWW!
                                                           //www.muc.de/~gert/
Gert Doering - Munich, Germany                             [email protected]...
fax: +49-89-35655025                        [email protected]...
#4 lore raw

PATCH v2 1/1 doxygen: add make target and use relative paths

Add a make target, such that 'make doxygen' works (both for in-tree and out-of-tree builds).

While doing so, instead of genering docs with full path names (e.g. /home/steffan/dev/openvpn/src/openvpn/crypto.h), use a relative path wrt the project root (e.g. src/openvpn/crypto.h) in the generated documentation. This makes the generated doxygen easier to read.

---
v2:
- merge patches 1/2 and 2/2 from the v1 set
- use abs_top_srcdir (instead of top_srcdir)

 Makefile.am                     |   5 +-
 configure.ac                    |   1 +
 doc/Makefile.am                 |   2 +
 doc/doxygen/openvpn.doxyfile    | 279 ----------------------------------------
 doc/doxygen/openvpn.doxyfile.in | 279 ++++++++++++++++++++++++++++++++++++++++
 5 files changed, 286 insertions(+), 280 deletions(-)
 delete mode 100644 doc/doxygen/openvpn.doxyfile
 create mode 100644 doc/doxygen/openvpn.doxyfile.in
Makefile.am +4 -1
index 87af724..34632c4 100644
@@ -46,7 +46,7 @@ EXTRA_DIST = \
 	contrib \
 	debug
 
-.PHONY: config-version.h
+.PHONY: config-version.h doxygen
 
 if GIT_CHECKOUT
 BUILT_SOURCES = \
@@ -96,3 +96,6 @@ config-version.h:
 	else \
 		rm -f config-version.h.tmp; \
 	fi
+
+doxygen: doc/doxygen/openvpn.doxyfile
+	doxygen doc/doxygen/openvpn.doxyfile
configure.ac +1 -0
index 45aa501..eca83e6 100644
@@ -1420,6 +1420,7 @@ AC_CONFIG_FILES([
 	distro/rpm/Makefile
 	distro/rpm/openvpn.spec
 	distro/systemd/Makefile
+	doc/doxygen/openvpn.doxyfile
 	include/Makefile
 	src/Makefile
 	src/compat/Makefile
doc/Makefile.am +2 -0
index dedd1fa..f9e7f4a 100644
@@ -14,6 +14,8 @@ MAINTAINERCLEANFILES = \
 
 CLEANFILES = openvpn.8.html
 
+SUBDIRS = doxygen
+
 dist_doc_DATA = \
 	management-notes.txt
 
doc/doxygen/openvpn.doxyfile deleted +0 -279

279 lines not on this page · raw message

doc/doxygen/openvpn.doxyfile.in new file +279 -0

279 lines not on this page · raw message

Signature · 1 line
2.7.4
#5 lore raw

Re: [Openvpn-devel] [PATCH v2] doxygen: add make target and use relative paths

2017-11-08 15:01 GMT+05:00 Steffan Karger <[email protected]...>:

Quoted 3 lines

Add a make target, such that 'make doxygen' works (both for in-tree and out-of-tree builds).

should we add both variants of 'make doxygen' to travis-ci matrix ?

Quoted 724 lines

While doing so, instead of genering docs with full path names (e.g. /home/steffan/dev/openvpn/src/openvpn/crypto.h), use a relative path wrt the project root (e.g. src/openvpn/crypto.h) in the generated documentation. This makes the generated doxygen easier to read.

---
v2:
- merge patches 1/2 and 2/2 from the v1 set
- use abs_top_srcdir (instead of top_srcdir)

 Makefile.am                     |   5 +-
 configure.ac                    |   1 +
 doc/Makefile.am                 |   2 +
 doc/doxygen/openvpn.doxyfile    | 279 ------------------------------
----------
 doc/doxygen/openvpn.doxyfile.in | 279 ++++++++++++++++++++++++++++++
++++++++++
 5 files changed, 286 insertions(+), 280 deletions(-)
 delete mode 100644 doc/doxygen/openvpn.doxyfile
 create mode 100644 doc/doxygen/openvpn.doxyfile.in
Makefile.am +4 -1
index 87af724..34632c4 100644
@@ -46,7 +46,7 @@ EXTRA_DIST = \
        contrib \
        debug
 
-.PHONY: config-version.h
+.PHONY: config-version.h doxygen
 
 if GIT_CHECKOUT
 BUILT_SOURCES = \
@@ -96,3 +96,6 @@ config-version.h:
        else \
                rm -f config-version.h.tmp; \
        fi
+
+doxygen: doc/doxygen/openvpn.doxyfile
+       doxygen doc/doxygen/openvpn.doxyfile
configure.ac +1 -0
index 45aa501..eca83e6 100644
@@ -1420,6 +1420,7 @@ AC_CONFIG_FILES([
        distro/rpm/Makefile
        distro/rpm/openvpn.spec
        distro/systemd/Makefile
+       doc/doxygen/openvpn.doxyfile
        include/Makefile
        src/Makefile
        src/compat/Makefile
doc/Makefile.am +2 -0
index dedd1fa..f9e7f4a 100644
@@ -14,6 +14,8 @@ MAINTAINERCLEANFILES = \
 
 CLEANFILES = openvpn.8.html
 
+SUBDIRS = doxygen
+
 dist_doc_DATA = \
        management-notes.txt
 
doc/doxygen/openvpn.doxyfile deleted +0 -266
deleted file mode 100644
index a7d9728..0000000
@@ -1,279 +0,0 @@
-# Doxyfile 1.5.5
-
-#----------------------------------------------------------
-----------------
-# Project related configuration options
-#----------------------------------------------------------
-----------------
-DOXYFILE_ENCODING      = UTF-8
-PROJECT_NAME           = "OpenVPN"
-PROJECT_NUMBER         =
-OUTPUT_DIRECTORY       = doxygen
-CREATE_SUBDIRS         = NO
-OUTPUT_LANGUAGE        = English
-BRIEF_MEMBER_DESC      = YES
-REPEAT_BRIEF           = YES
-ABBREVIATE_BRIEF       = "The $name class" \
-                         "The $name widget" \
-                         "The $name file" \
-                         is \
-                         provides \
-                         specifies \
-                         contains \
-                         represents \
-                         a \
-                         an \
-                         the
-ALWAYS_DETAILED_SEC    = NO
-INLINE_INHERITED_MEMB  = NO
-FULL_PATH_NAMES        = YES
-STRIP_FROM_PATH        = ""
-STRIP_FROM_INC_PATH    =
-SHORT_NAMES            = NO
-JAVADOC_AUTOBRIEF      = YES # NO
-QT_AUTOBRIEF           = NO
-MULTILINE_CPP_IS_BRIEF = NO
-DETAILS_AT_TOP         = NO
-INHERIT_DOCS           = YES
-SEPARATE_MEMBER_PAGES  = NO
-TAB_SIZE               = 8
-ALIASES                =
-OPTIMIZE_OUTPUT_FOR_C  = YES
-OPTIMIZE_OUTPUT_JAVA   = NO
-OPTIMIZE_FOR_FORTRAN   = NO
-OPTIMIZE_OUTPUT_VHDL   = NO
-BUILTIN_STL_SUPPORT    = NO
-CPP_CLI_SUPPORT        = NO
-SIP_SUPPORT            = NO
-DISTRIBUTE_GROUP_DOC   = NO
-SUBGROUPING            = YES
-TYPEDEF_HIDES_STRUCT   = NO
-#----------------------------------------------------------
-----------------
-# Build related configuration options
-#----------------------------------------------------------
-----------------
-EXTRACT_ALL            = YES
-EXTRACT_PRIVATE        = YES
-EXTRACT_STATIC         = YES
-EXTRACT_LOCAL_CLASSES  = YES
-EXTRACT_LOCAL_METHODS  = YES
-EXTRACT_ANON_NSPACES   = YES
-HIDE_UNDOC_MEMBERS     = NO
-HIDE_UNDOC_CLASSES     = NO
-HIDE_FRIEND_COMPOUNDS  = NO
-HIDE_IN_BODY_DOCS      = NO
-INTERNAL_DOCS          = NO
-CASE_SENSE_NAMES       = NO
-HIDE_SCOPE_NAMES       = NO
-SHOW_INCLUDE_FILES     = YES
-INLINE_INFO            = YES
-SORT_MEMBER_DOCS       = YES
-SORT_BRIEF_DOCS        = NO
-SORT_GROUP_NAMES       = NO
-SORT_BY_SCOPE_NAME     = NO
-GENERATE_TODOLIST      = YES
-GENERATE_TESTLIST      = YES
-GENERATE_BUGLIST       = YES
-GENERATE_DEPRECATEDLIST= YES
-ENABLED_SECTIONS       =
-MAX_INITIALIZER_LINES  = 30
-SHOW_USED_FILES        = YES
-SHOW_DIRECTORIES       = NO
-FILE_VERSION_FILTER    =
-#----------------------------------------------------------
-----------------
-# configuration options related to warning and progress messages
-#----------------------------------------------------------
-----------------
-QUIET                  = NO
-WARNINGS               = YES
-WARN_IF_UNDOCUMENTED   = YES
-WARN_IF_DOC_ERROR      = YES
-WARN_NO_PARAMDOC       = NO
-WARN_FORMAT            = "$file:$line: $text"
-WARN_LOGFILE           =
-#----------------------------------------------------------
-----------------
-# configuration options related to the input files
-#----------------------------------------------------------
-----------------
-INPUT                  = .
-INPUT_ENCODING         = UTF-8
-FILE_PATTERNS          = *.c \
-                         *.cc \
-                         *.cxx \
-                         *.cpp \
-                         *.c++ \
-                         *.d \
-                         *.java \
-                         *.ii \
-                         *.ixx \
-                         *.ipp \
-                         *.i++ \
-                         *.inl \
-                         *.h \
-                         *.hh \
-                         *.hxx \
-                         *.hpp \
-                         *.h++ \
-                         *.idl \
-                         *.odl \
-                         *.cs \
-                         *.php \
-                         *.php3 \
-                         *.inc \
-                         *.m \
-                         *.mm \
-                         *.dox \
-                         *.py \
-                         *.f90 \
-                         *.f \
-                         *.vhd \
-                         *.vhdl
-RECURSIVE              = YES
-EXCLUDE                =
-EXCLUDE_SYMLINKS       = NO
-EXCLUDE_PATTERNS       =
-EXCLUDE_SYMBOLS        =
-EXAMPLE_PATH           =
-EXAMPLE_PATTERNS       = *
-EXAMPLE_RECURSIVE      = NO
-IMAGE_PATH             =
-INPUT_FILTER           =
-FILTER_PATTERNS        =
-FILTER_SOURCE_FILES    = NO
-#----------------------------------------------------------
-----------------
-# configuration options related to source browsing
-#----------------------------------------------------------
-----------------
-SOURCE_BROWSER         = YES
-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
-COLS_IN_ALPHA_INDEX    = 5
-IGNORE_PREFIX          =
-#----------------------------------------------------------
-----------------
-# configuration options related to the HTML output
-#----------------------------------------------------------
-----------------
-GENERATE_HTML          = YES
-HTML_OUTPUT            = html
-HTML_FILE_EXTENSION    = .html
-HTML_HEADER            =
-HTML_FOOTER            =
-HTML_STYLESHEET        =
-HTML_ALIGN_MEMBERS     = YES
-GENERATE_HTMLHELP      = NO
-GENERATE_DOCSET        = NO
-DOCSET_FEEDNAME        = "Doxygen generated docs"
-DOCSET_BUNDLE_ID       = org.doxygen.Project
-HTML_DYNAMIC_SECTIONS  = NO
-CHM_FILE               =
-HHC_LOCATION           =
-GENERATE_CHI           = NO
-BINARY_TOC             = NO
-TOC_EXPAND             = NO
-DISABLE_INDEX          = NO
-ENUM_VALUES_PER_LINE   = 4
-GENERATE_TREEVIEW      = NO
-TREEVIEW_WIDTH         = 250
-#----------------------------------------------------------
-----------------
-# configuration options related to the LaTeX output
-#----------------------------------------------------------
-----------------
-GENERATE_LATEX         = YES
-LATEX_OUTPUT           = latex
-LATEX_CMD_NAME         = latex
-MAKEINDEX_CMD_NAME     = makeindex
-COMPACT_LATEX          = YES # NO
-PAPER_TYPE             = a4wide
-EXTRA_PACKAGES         =
-LATEX_HEADER           =
-PDF_HYPERLINKS         = YES
-USE_PDFLATEX           = YES
-LATEX_BATCHMODE        = NO
-LATEX_HIDE_INDICES     = NO
-#----------------------------------------------------------
-----------------
-# configuration options related to the RTF output
-#----------------------------------------------------------
-----------------
-GENERATE_RTF           = NO
-RTF_OUTPUT             = rtf
-COMPACT_RTF            = NO
-RTF_HYPERLINKS         = NO
-RTF_STYLESHEET_FILE    =
-RTF_EXTENSIONS_FILE    =
-#----------------------------------------------------------
-----------------
-# configuration options related to the man page output
-#----------------------------------------------------------
-----------------
-GENERATE_MAN           = NO
-MAN_OUTPUT             = man
-MAN_EXTENSION          = .3
-MAN_LINKS              = NO
-#----------------------------------------------------------
-----------------
-# configuration options related to the XML output
-#----------------------------------------------------------
-----------------
-GENERATE_XML           = NO
-XML_OUTPUT             = xml
-XML_SCHEMA             =
-XML_DTD                =
-XML_PROGRAMLISTING     = YES
-#----------------------------------------------------------
-----------------
-# configuration options for the AutoGen Definitions output
-#----------------------------------------------------------
-----------------
-GENERATE_AUTOGEN_DEF   = NO
-#----------------------------------------------------------
-----------------
-# configuration options related to the Perl module output
-#----------------------------------------------------------
-----------------
-GENERATE_PERLMOD       = NO
-PERLMOD_LATEX          = NO
-PERLMOD_PRETTY         = YES
-PERLMOD_MAKEVAR_PREFIX =
-#----------------------------------------------------------
-----------------
-# Configuration options related to the preprocessor
-#----------------------------------------------------------
-----------------
-ENABLE_PREPROCESSING   = YES
-MACRO_EXPANSION        = NO
-EXPAND_ONLY_PREDEF     = NO
-SEARCH_INCLUDES        = YES
-INCLUDE_PATH           =
-INCLUDE_FILE_PATTERNS  =
-PREDEFINED             = _WIN32 NTLM USE_LZO ENABLE_FRAGMENT P2MP

P2MP_SERVER ENABLE_CRYPTO ENABLE_CRYPTO_OPENSSL ENABLE_PLUGIN ENABLE_MANAGEMENT ENABLE_OCC HAVE_GETTIMEOFDAY

doc/doxygen/openvpn.doxyfile deleted +0 -47
-EXPAND_AS_DEFINED      =
-SKIP_FUNCTION_MACROS   = YES
-#----------------------------------------------------------
-----------------
-# Configuration::additions related to external references
-#----------------------------------------------------------
-----------------
-TAGFILES               =
-GENERATE_TAGFILE       =
-ALLEXTERNALS           = NO
-EXTERNAL_GROUPS        = YES
-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
-COLLABORATION_GRAPH    = YES
-GROUP_GRAPHS           = YES
-UML_LOOK               = NO
-TEMPLATE_RELATIONS     = NO
-INCLUDE_GRAPH          = YES
-INCLUDED_BY_GRAPH      = YES
-CALL_GRAPH             = NO # YES
-CALLER_GRAPH           = NO # YES
-GRAPHICAL_HIERARCHY    = YES
-DIRECTORY_GRAPH        = YES
-DOT_IMAGE_FORMAT       = png
-DOT_PATH               = "/usr/bin/dot"
-DOTFILE_DIRS           =
-DOT_GRAPH_MAX_NODES    = 50
-MAX_DOT_GRAPH_DEPTH    = 1000
-DOT_TRANSPARENT        = YES
-DOT_MULTI_TARGETS      = NO
-GENERATE_LEGEND        = YES
-DOT_CLEANUP            = YES
-#----------------------------------------------------------
-----------------
-# Configuration::additions related to the search engine
-#----------------------------------------------------------
-----------------
-SEARCHENGINE           = NO
doc/doxygen/openvpn. renamed from doc/doxygen/openvpn.doxyfile.in +0 -0

doxyfile.in
new file mode 100644
index 0000000..e1cdc3b

doc/doxygen/openvpn.doxyfile.in new file +238 -28
@@ -0,0 +1,279 @@
+# Doxyfile 1.5.5
+
+#----------------------------------------------------------
-----------------
+# Project related configuration options
+#----------------------------------------------------------
-----------------
+DOXYFILE_ENCODING      = UTF-8
+PROJECT_NAME           = "OpenVPN"
+PROJECT_NUMBER         =
+OUTPUT_DIRECTORY       = doxygen
+CREATE_SUBDIRS         = NO
+OUTPUT_LANGUAGE        = English
+BRIEF_MEMBER_DESC      = YES
+REPEAT_BRIEF           = YES
+ABBREVIATE_BRIEF       = "The $name class" \
+                         "The $name widget" \
+                         "The $name file" \
+                         is \
+                         provides \
+                         specifies \
+                         contains \
+                         represents \
+                         a \
+                         an \
+                         the
+ALWAYS_DETAILED_SEC    = NO
+INLINE_INHERITED_MEMB  = NO
+FULL_PATH_NAMES        = YES
+STRIP_FROM_PATH        = @abs_top_srcdir@
+STRIP_FROM_INC_PATH    =
+SHORT_NAMES            = NO
+JAVADOC_AUTOBRIEF      = YES # NO
+QT_AUTOBRIEF           = NO
+MULTILINE_CPP_IS_BRIEF = NO
+DETAILS_AT_TOP         = NO
+INHERIT_DOCS           = YES
+SEPARATE_MEMBER_PAGES  = NO
+TAB_SIZE               = 8
+ALIASES                =
+OPTIMIZE_OUTPUT_FOR_C  = YES
+OPTIMIZE_OUTPUT_JAVA   = NO
+OPTIMIZE_FOR_FORTRAN   = NO
+OPTIMIZE_OUTPUT_VHDL   = NO
+BUILTIN_STL_SUPPORT    = NO
+CPP_CLI_SUPPORT        = NO
+SIP_SUPPORT            = NO
+DISTRIBUTE_GROUP_DOC   = NO
+SUBGROUPING            = YES
+TYPEDEF_HIDES_STRUCT   = NO
+#----------------------------------------------------------
-----------------
+# Build related configuration options
+#----------------------------------------------------------
-----------------
+EXTRACT_ALL            = YES
+EXTRACT_PRIVATE        = YES
+EXTRACT_STATIC         = YES
+EXTRACT_LOCAL_CLASSES  = YES
+EXTRACT_LOCAL_METHODS  = YES
+EXTRACT_ANON_NSPACES   = YES
+HIDE_UNDOC_MEMBERS     = NO
+HIDE_UNDOC_CLASSES     = NO
+HIDE_FRIEND_COMPOUNDS  = NO
+HIDE_IN_BODY_DOCS      = NO
+INTERNAL_DOCS          = NO
+CASE_SENSE_NAMES       = NO
+HIDE_SCOPE_NAMES       = NO
+SHOW_INCLUDE_FILES     = YES
+INLINE_INFO            = YES
+SORT_MEMBER_DOCS       = YES
+SORT_BRIEF_DOCS        = NO
+SORT_GROUP_NAMES       = NO
+SORT_BY_SCOPE_NAME     = NO
+GENERATE_TODOLIST      = YES
+GENERATE_TESTLIST      = YES
+GENERATE_BUGLIST       = YES
+GENERATE_DEPRECATEDLIST= YES
+ENABLED_SECTIONS       =
+MAX_INITIALIZER_LINES  = 30
+SHOW_USED_FILES        = YES
+SHOW_DIRECTORIES       = NO
+FILE_VERSION_FILTER    =
+#----------------------------------------------------------
-----------------
+# configuration options related to warning and progress messages
+#----------------------------------------------------------
-----------------
+QUIET                  = NO
+WARNINGS               = YES
+WARN_IF_UNDOCUMENTED   = YES
+WARN_IF_DOC_ERROR      = YES
+WARN_NO_PARAMDOC       = NO
+WARN_FORMAT            = "$file:$line: $text"
+WARN_LOGFILE           =
+#----------------------------------------------------------
-----------------
+# configuration options related to the input files
+#----------------------------------------------------------
-----------------
+INPUT                  = @abs_top_srcdir@
+INPUT_ENCODING         = UTF-8
+FILE_PATTERNS          = *.c \
+                         *.cc \
+                         *.cxx \
+                         *.cpp \
+                         *.c++ \
+                         *.d \
+                         *.java \
+                         *.ii \
+                         *.ixx \
+                         *.ipp \
+                         *.i++ \
+                         *.inl \
+                         *.h \
+                         *.hh \
+                         *.hxx \
+                         *.hpp \
+                         *.h++ \
+                         *.idl \
+                         *.odl \
+                         *.cs \
+                         *.php \
+                         *.php3 \
+                         *.inc \
+                         *.m \
+                         *.mm \
+                         *.dox \
+                         *.py \
+                         *.f90 \
+                         *.f \
+                         *.vhd \
+                         *.vhdl
+RECURSIVE              = YES
+EXCLUDE                =
+EXCLUDE_SYMLINKS       = NO
+EXCLUDE_PATTERNS       =
+EXCLUDE_SYMBOLS        =
+EXAMPLE_PATH           =
+EXAMPLE_PATTERNS       = *
+EXAMPLE_RECURSIVE      = NO
+IMAGE_PATH             =
+INPUT_FILTER           =
+FILTER_PATTERNS        =
+FILTER_SOURCE_FILES    = NO
+#----------------------------------------------------------
-----------------
+# configuration options related to source browsing
+#----------------------------------------------------------
-----------------
+SOURCE_BROWSER         = YES
+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
+COLS_IN_ALPHA_INDEX    = 5
+IGNORE_PREFIX          =
+#----------------------------------------------------------
-----------------
+# configuration options related to the HTML output
+#----------------------------------------------------------
-----------------
+GENERATE_HTML          = YES
+HTML_OUTPUT            = html
+HTML_FILE_EXTENSION    = .html
+HTML_HEADER            =
+HTML_FOOTER            =
+HTML_STYLESHEET        =
+HTML_ALIGN_MEMBERS     = YES
+GENERATE_HTMLHELP      = NO
+GENERATE_DOCSET        = NO
+DOCSET_FEEDNAME        = "Doxygen generated docs"
+DOCSET_BUNDLE_ID       = org.doxygen.Project
+HTML_DYNAMIC_SECTIONS  = NO
+CHM_FILE               =
+HHC_LOCATION           =
+GENERATE_CHI           = NO
+BINARY_TOC             = NO
+TOC_EXPAND             = NO
+DISABLE_INDEX          = NO
+ENUM_VALUES_PER_LINE   = 4
+GENERATE_TREEVIEW      = NO
+TREEVIEW_WIDTH         = 250
+#----------------------------------------------------------
-----------------
+# configuration options related to the LaTeX output
+#----------------------------------------------------------
-----------------
+GENERATE_LATEX         = YES
+LATEX_OUTPUT           = latex
+LATEX_CMD_NAME         = latex
+MAKEINDEX_CMD_NAME     = makeindex
+COMPACT_LATEX          = YES # NO
+PAPER_TYPE             = a4wide
+EXTRA_PACKAGES         =
+LATEX_HEADER           =
+PDF_HYPERLINKS         = YES
+USE_PDFLATEX           = YES
+LATEX_BATCHMODE        = NO
+LATEX_HIDE_INDICES     = NO
+#----------------------------------------------------------
-----------------
+# configuration options related to the RTF output
+#----------------------------------------------------------
-----------------
+GENERATE_RTF           = NO
+RTF_OUTPUT             = rtf
+COMPACT_RTF            = NO
+RTF_HYPERLINKS         = NO
+RTF_STYLESHEET_FILE    =
+RTF_EXTENSIONS_FILE    =
+#----------------------------------------------------------
-----------------
+# configuration options related to the man page output
+#----------------------------------------------------------
-----------------
+GENERATE_MAN           = NO
+MAN_OUTPUT             = man
+MAN_EXTENSION          = .3
+MAN_LINKS              = NO
+#----------------------------------------------------------
-----------------
+# configuration options related to the XML output
+#----------------------------------------------------------
-----------------
+GENERATE_XML           = NO
+XML_OUTPUT             = xml
+XML_SCHEMA             =
+XML_DTD                =
+XML_PROGRAMLISTING     = YES
+#----------------------------------------------------------
-----------------
+# configuration options for the AutoGen Definitions output
+#----------------------------------------------------------
-----------------
+GENERATE_AUTOGEN_DEF   = NO
+#----------------------------------------------------------
-----------------
+# configuration options related to the Perl module output
+#----------------------------------------------------------
-----------------
+GENERATE_PERLMOD       = NO
+PERLMOD_LATEX          = NO
+PERLMOD_PRETTY         = YES
+PERLMOD_MAKEVAR_PREFIX =
+#----------------------------------------------------------
-----------------
+# Configuration options related to the preprocessor
+#----------------------------------------------------------
-----------------
+ENABLE_PREPROCESSING   = YES
+MACRO_EXPANSION        = NO
+EXPAND_ONLY_PREDEF     = NO
+SEARCH_INCLUDES        = YES
+INCLUDE_PATH           =
+INCLUDE_FILE_PATTERNS  =
+PREDEFINED             = _WIN32 NTLM USE_LZO ENABLE_FRAGMENT P2MP

P2MP_SERVER ENABLE_CRYPTO ENABLE_CRYPTO_OPENSSL ENABLE_PLUGIN ENABLE_MANAGEMENT ENABLE_OCC HAVE_GETTIMEOFDAY

doc/doxygen/openvpn.doxyfile.in new file +41 -7
+EXPAND_AS_DEFINED      =
+SKIP_FUNCTION_MACROS   = YES
+#----------------------------------------------------------
-----------------
+# Configuration::additions related to external references
+#----------------------------------------------------------
-----------------
+TAGFILES               =
+GENERATE_TAGFILE       =
+ALLEXTERNALS           = NO
+EXTERNAL_GROUPS        = YES
+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
+COLLABORATION_GRAPH    = YES
+GROUP_GRAPHS           = YES
+UML_LOOK               = NO
+TEMPLATE_RELATIONS     = NO
+INCLUDE_GRAPH          = YES
+INCLUDED_BY_GRAPH      = YES
+CALL_GRAPH             = NO # YES
+CALLER_GRAPH           = NO # YES
+GRAPHICAL_HIERARCHY    = YES
+DIRECTORY_GRAPH        = YES
+DOT_IMAGE_FORMAT       = png
+DOT_PATH               = "/usr/bin/dot"
+DOTFILE_DIRS           =
+DOT_GRAPH_MAX_NODES    = 50
+MAX_DOT_GRAPH_DEPTH    = 1000
+DOT_TRANSPARENT        = YES
+DOT_MULTI_TARGETS      = NO
+GENERATE_LEGEND        = YES
+DOT_CLEANUP            = YES
+#----------------------------------------------------------
-----------------
+# Configuration::additions related to the search engine
+#----------------------------------------------------------
-----------------
+SEARCHENGINE           = NO
--

2.7.4

------------------------------------------------------------
------------------
Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Openvpn-devel mailing list [email protected]
https://lists.sourceforge.net/lists/listinfo/openvpn-devel

#6 lore raw

PATCH v3 1/1 doxygen: add make target and use relative paths

In reply to Steffan Karger

Add a make target, such that 'make doxygen' works (both for in-tree and out-of-tree builds). This now generates the doxygen in doc/doxygen/, rather than in doxygen/.

While doing so, instead of genering docs with full path names (e.g. /home/steffan/dev/openvpn/src/openvpn/crypto.h), use a relative path wrt the project root (e.g. src/openvpn/crypto.h) in the generated documentation. This makes the generated doxygen easier to read.

---
v2:
- merge patches 1/2 and 2/2 from the v1 set
- use abs_top_srcdir (instead of top_srcdir)
v3:
- fix .gitignore
- include doc/doxygen/Makefile.am (fixes "make distclean", was hidden by old .gitignore)
- generate doxygen in doc/doxygen/, instead of doxygen/

 .gitignore                      |   3 +-
 Makefile.am                     |   5 +-
 configure.ac                    |   4 +-
 doc/Makefile.am                 |   2 +
 doc/doxygen/Makefile.am         |  21 +++
 doc/doxygen/openvpn.doxyfile    | 279 ----------------------------------------
 doc/doxygen/openvpn.doxyfile.in | 279 ++++++++++++++++++++++++++++++++++++++++
 7 files changed, 311 insertions(+), 282 deletions(-)
 create mode 100644 doc/doxygen/Makefile.am
 delete mode 100644 doc/doxygen/openvpn.doxyfile
 create mode 100644 doc/doxygen/openvpn.doxyfile.in
.gitignore +2 -1
index 4543674..18a4520 100644
@@ -34,7 +34,6 @@ config.sub
 configure
 configure.h
 depcomp
-doxygen/
 stamp-h1
 install-sh
 missing
@@ -51,6 +50,8 @@ msvc-env-local.bat
 config-msvc-local.h
 config-msvc-version.h
 doc/openvpn.8.html
+/doc/doxygen/html/
+/doc/doxygen/latex/
 distro/rpm/openvpn.spec
 distro/systemd/*.service
 sample/sample-keys/sample-ca/
Makefile.am +4 -1
index 87af724..773b786 100644
@@ -46,7 +46,7 @@ EXTRA_DIST = \
 	contrib \
 	debug
 
-.PHONY: config-version.h
+.PHONY: config-version.h doxygen
 
 if GIT_CHECKOUT
 BUILT_SOURCES = \
@@ -96,3 +96,6 @@ config-version.h:
 	else \
 		rm -f config-version.h.tmp; \
 	fi
+
+doxygen:
+	$(MAKE) -C doc/doxygen doxygen
configure.ac +3 -1
index 45aa501..7f2e34f 100644
@@ -1420,6 +1420,9 @@ AC_CONFIG_FILES([
 	distro/rpm/Makefile
 	distro/rpm/openvpn.spec
 	distro/systemd/Makefile
+	doc/Makefile
+	doc/doxygen/Makefile
+	doc/doxygen/openvpn.doxyfile
 	include/Makefile
 	src/Makefile
 	src/compat/Makefile
@@ -1436,7 +1439,6 @@ AC_CONFIG_FILES([
         tests/unit_tests/plugins/auth-pam/Makefile
         vendor/Makefile
 	sample/Makefile
-	doc/Makefile
 ])
 AC_CONFIG_FILES([tests/t_client.sh], [chmod +x tests/t_client.sh])
 AC_OUTPUT
doc/Makefile.am +2 -0
index dedd1fa..f9e7f4a 100644
@@ -14,6 +14,8 @@ MAINTAINERCLEANFILES = \
 
 CLEANFILES = openvpn.8.html
 
+SUBDIRS = doxygen
+
 dist_doc_DATA = \
 	management-notes.txt
 
doc/doxygen/Makefile.am new file +21 -0
new file mode 100644
index 0000000..def0978
@@ -0,0 +1,21 @@
+#
+#  OpenVPN -- An application to securely tunnel IP networks
+#             over a single UDP port, with support for SSL/TLS-based
+#             session authentication and key exchange,
+#             packet encryption, packet authentication, and
+#             packet compression.
+#
+#  Copyright (C) 2017 Fox-IT B.V. <[email protected]...>
+#
+
+MAINTAINERCLEANFILES = \
+	$(srcdir)/Makefile.in
+
+DISTCLEANFILES = openvpn.doxyfile
+
+.PHONY: doxygen
+doxygen: openvpn.doxyfile
+	doxygen openvpn.doxyfile
+
+clean-local:
+	-rm -rf html latex
doc/doxygen/openvpn.doxyfile deleted +0 -279

279 lines not on this page · raw message

doc/doxygen/openvpn.doxyfile.in new file +279 -0

279 lines not on this page · raw message

Signature · 1 line
2.7.4
#7 lore raw

[Openvpn-devel] [PATCH applied] Re: doxygen: add make target and use relative paths

ACK.

"Does what it says on the lid", easy access to documentation is good :-)

Tried in-tree and out-of-tree builds, and both gave me a nice HTML
and Latex documentation. "make distclean" now works as well, as does
"make distcheck" :-)

Your patch has been applied to the master branch.

commit 66bf378e686872dfab22a983184f65599af494f8

Author: Steffan Karger
Date:   Wed Nov 8 13:12:54 2017 +0100
     doxygen: add make target and use relative paths

     Signed-off-by: Steffan Karger <[email protected]...>
     Acked-by: Gert Doering <[email protected]...>
     Message-Id: <[email protected]...>
     URL: https://www.mail-archive.com/search?l=mid&[email protected]...
     Signed-off-by: Gert Doering <[email protected]...>

--
kind regards,

Gert Doering