Răsfoiți Sursa

docs: Use README.md to generate mainpage with doxygen

Actually we are using a slightly modified one that removes the
`Table of Contents` section and replaces it with the doxygen-compatible
`[TOC]` to auto-generate a TOC that has working links.
Nikias Bassen 1 an în urmă
părinte
comite
86c3ef2de8
3 a modificat fișierele cu 14 adăugiri și 3 ștergeri
  1. 4 1
      Makefile.am
  2. 9 1
      doxygen.cfg.in
  3. 1 1
      include/plist/plist.h

+ 4 - 1
Makefile.am

@@ -25,4 +25,7 @@ docs/html: $(top_builddir)/doxygen.cfg $(top_srcdir)/include/plist/*.h
 	rm -rf docs/html
 	doxygen doxygen.cfg
 
-docs: doxygen.cfg docs/html
+docs/README.doxygen.md: README.md
+	awk '/\#\# Table of Contents/{while(getline && $$0 != ""){}{print "[TOC]"}}1' README.md > $@
+
+docs: doxygen.cfg docs/README.doxygen.md docs/html

+ 9 - 1
doxygen.cfg.in

@@ -521,7 +521,8 @@ WARN_LOGFILE           =
 # directories like "/usr/src/myproject". Separate the files or directories 
 # with spaces.
 
-INPUT                  = include/plist/plist.h
+INPUT                  = include/plist/plist.h \
+			docs/README.doxygen.md
 
 # This tag can be used to specify the character encoding of the source files 
 # that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is 
@@ -625,6 +626,13 @@ FILTER_PATTERNS        =
 
 FILTER_SOURCE_FILES    = NO
 
+# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that
+# is part of the input, its contents will be placed on the main page
+# (index.html). This can be useful if you have a project on for instance GitHub
+# and want to reuse the introduction page also for the doxygen output.
+
+USE_MDFILE_AS_MAINPAGE = docs/README.doxygen.md
+
 #---------------------------------------------------------------------------
 # configuration options related to source browsing
 #---------------------------------------------------------------------------

+ 1 - 1
include/plist/plist.h

@@ -90,7 +90,7 @@ extern "C"
 #include <stdio.h>
 
     /**
-     * \mainpage libplist : A library to handle Apple Property Lists
+     * libplist : A library to handle Apple Property Lists
      * \defgroup PublicAPI Public libplist API
      */
     /*@{*/