diff --git a/.gitignore b/.gitignore
index a007b45..3469b7e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -46,26 +46,3 @@ doxygen-1.7.1.src.tar.gz
/doxygen-1.8.11.src.tar.gz
/doxygen-1.8.12.src.tar.gz
/doxygen-1.8.13.src.tar.gz
-/doxygen-1.8.14.src.tar.gz
-/doxygen-1.8.15.src.tar.gz
-/doxygen-1.8.16.src.tar.gz
-/doxygen-1.8.17.src.tar.gz
-/doxygen-1.8.18.src.tar.gz
-/doxywizard-icons.tar.xz
-/doxygen-1.9.1.src.tar.gz
-/doxygen-1.9.2.src.tar.gz
-/doxygen-1.9.2-d882240f-git.src.tar.gz
-/doxygen-e18f715eb55121a4219d00bc4d824cebf1fb504b.tar.gz
-/doxygen-1.9.4.src.tar.gz
-/doxygen-1.9.5.src.tar.gz
-/doxygen-1.9.6.src.tar.gz
-/doxygen-1.9.7.src.tar.gz
-/doxygen-1.9.8.src.tar.gz
-/doxygen-1.10.0.src.tar.gz
-/doxygen-1.11.0.src.tar.gz
-/doxygen-1.12.0.src.tar.gz
-/doxygen-1.13.0.src.tar.gz
-/doxygen-1.13.1.src.tar.gz
-/doxygen-1.13.2.src.tar.gz
-/doxygen-1.14.0.src.tar.gz
-/doxygen-1.15.0.src.tar.gz
diff --git a/README.rpm-packaging b/README.rpm-packaging
deleted file mode 100644
index 9f09233..0000000
--- a/README.rpm-packaging
+++ /dev/null
@@ -1,36 +0,0 @@
-# Javascript asset handling for RPM packaging
-
-RPM packages should unbundle Javascript assets during the RPM build
-process. Currently, this process is not fully automated.
-
-If Doxygen HTML documentation is installed, add
-
- %{?doxygen_js_requires}
-
-to the subpackage that contains the HTML documentation.
-
-If HTML documentation is installed during the %install phase, invoke
-
- %{doxygen_unbundle_buildroot}
-
-towards the end of the %install section. It will process Javascript
-files under %{_docdir} (/usr/share/doc). If another directory needs
-to be processed, use an explicit directory argument:
-
- %{doxygen_unbundle_buildroot /usr/share/example/doc}
-
-The path is relative to %{buildroot} or $RPM_BUILD_ROOT.
-
-If HTML documentation is not installed, but propagated into package
-using %doc directives, it is necessary to invoke
-
- %{doxygen_unbundle}
-
-after running Doxygen (typically from the %build section). This
-unbundles assets found under the current directory. A specific
-directory can be processed by passing it as an argument:
-
- %{doxygen_unbundle example/doc}
-
-In this case, the path argument is relative to the current directory,
-not the buildroot.
diff --git a/doxygen-1.8.13-#775493.patch b/doxygen-1.8.13-#775493.patch
new file mode 100644
index 0000000..0a20583
--- /dev/null
+++ b/doxygen-1.8.13-#775493.patch
@@ -0,0 +1,93 @@
+diff --git a/src/commentscan.l b/src/commentscan.l
+index fad09d9..f26cabd 100644
+--- a/src/commentscan.l
++++ b/src/commentscan.l
+@@ -125,6 +125,8 @@ static bool handleCopyBrief(const QCString &);
+ static bool handleCopyDetails(const QCString &);
+ static bool handleParBlock(const QCString &);
+ static bool handleEndParBlock(const QCString &);
++static bool handleParam(const QCString &);
++static bool handleRetval(const QCString &);
+
+ typedef bool (*DocCmdFunc)(const QCString &name);
+
+@@ -247,7 +249,7 @@ static DocCmdMap docCmdMap[] =
+ { "line", 0, TRUE },
+ { "note", 0, TRUE },
+ { "par", 0, TRUE },
+- { "param", 0, TRUE },
++ { "param", &handleParam, TRUE },
+ { "tparam", 0, TRUE },
+ { "post", 0, TRUE },
+ { "pre", 0, TRUE },
+@@ -257,7 +259,7 @@ static DocCmdMap docCmdMap[] =
+ { "return", 0, TRUE },
+ { "returns", 0, TRUE },
+ { "exception", 0, TRUE },
+- { "retval", 0, TRUE },
++ { "retval", &handleRetval, TRUE },
+ { "sa", 0, TRUE },
+ { "see", 0, TRUE },
+ { "since", 0, TRUE },
+@@ -971,6 +973,7 @@ RCSTAG "$"{ID}":"[^\n$]+"$"
+ %x XRefItemParam2
+ %x XRefItemParam3
+ %x FileDocArg1
++%x ParamArg1
+ %x EnumDocArg1
+ %x NameSpaceDocArg1
+ %x PackageDocArg1
+@@ -1564,6 +1567,30 @@ RCSTAG "$"{ID}":"[^\n$]+"$"
+ BEGIN( Comment );
+ }
+
++ /* --------- handle arguments of the param command ------------ */
++{ID}/{B}*"," {
++ if (yytext[0]=='_' && Config_getBool(MARKDOWN_SUPPORT))
++ {
++ addOutput('\\');
++ }
++ addOutput(yytext);
++ }
++"," {
++ addOutput(" , ");
++ }
++{ID} {
++ if (yytext[0]=='_' && Config_getBool(MARKDOWN_SUPPORT))
++ {
++ addOutput('\\');
++ }
++ addOutput(yytext);
++ BEGIN( Comment );
++ }
++. {
++ unput(yytext[0]);
++ BEGIN( Comment );
++ }
++
+ /* --------- handle arguments of the file/dir/example command ------------ */
+
+ {DOCNL} { // no file name specfied
+@@ -2400,6 +2427,22 @@ static bool handleFile(const QCString &)
+ return stop;
+ }
+
++static bool handleParam(const QCString &)
++{
++ // we need process param and retval arguments to escape leading underscores in case of
++ // markdown processing, see bug775493
++ addOutput("@param ");
++ BEGIN( ParamArg1 );
++ return FALSE;
++}
++
++static bool handleRetval(const QCString &)
++{
++ addOutput("@retval ");
++ BEGIN( ParamArg1 );
++ return FALSE;
++}
++
+ static bool handleDir(const QCString &)
+ {
+ bool stop=makeStructuralIndicator(Entry::DIRDOC_SEC);
diff --git a/doxygen-1.8.13-#776988.patch b/doxygen-1.8.13-#776988.patch
new file mode 100644
index 0000000..f02cc8f
--- /dev/null
+++ b/doxygen-1.8.13-#776988.patch
@@ -0,0 +1,38 @@
+diff --git a/src/doctokenizer.l b/src/doctokenizer.l
+index a89570e..7545cba 100644
+--- a/src/doctokenizer.l
++++ b/src/doctokenizer.l
+@@ -395,10 +395,14 @@ HTMLTAG "<"(("/")?){ID}({WS}+{ATTRIB})*{WS}*(("/")?)">"
+ HTMLKEYL "strong"|"center"|"table"|"caption"|"small"|"code"|"dfn"|"var"|"img"|"pre"|"sub"|"sup"|"tr"|"td"|"th"|"ol"|"ul"|"li"|"tt"|"kbd"|"em"|"hr"|"dl"|"dt"|"dd"|"br"|"i"|"a"|"b"|"p"
+ HTMLKEYU "STRONG"|"CENTER"|"TABLE"|"CAPTION"|"SMALL"|"CODE"|"DFN"|"VAR"|"IMG"|"PRE"|"SUB"|"SUP"|"TR"|"TD"|"TH"|"OL"|"UL"|"LI"|"TT"|"KBD"|"EM"|"HR"|"DL"|"DT"|"DD"|"BR"|"I"|"A"|"B"|"P"
+ HTMLKEYW {HTMLKEYL}|{HTMLKEYU}
+-REFWORD2 ("#"|"::")?((({ID}{TEMPLPART}?)|{ANONNS})("."|"#"|"::"|"-"|"/"))*({ID}{TEMPLPART}?(":")?){FUNCARG2}?
+-REFWORD3 ({ID}":")*{ID}":"?
+-REFWORD4 (({SCOPEPRE}*"operator"{OPMASKOP2})|(("::"|"#"){SCOPEPRE}*"operator"{OPMASKOP2})){CVSPEC}?
+-REFWORD {LABELID}|{REFWORD2}|{REFWORD3}|{REFWORD4}
++REFWORD2_PRE ("#"|"::")?((({ID}{TEMPLPART}?)|{ANONNS})("."|"#"|"::"|"-"|"/"))*({ID}{TEMPLPART}?(":")?)
++REFWORD2 {REFWORD2_PRE}{FUNCARG2}?
++REFWORD2_NOCV {REFWORD2_PRE}("("{FUNCPART}")")?
++REFWORD3 ({ID}":")*{ID}":"?
++REFWORD4_NOCV (({SCOPEPRE}*"operator"{OPMASKOP2})|(("::"|"#"){SCOPEPRE}*"operator"{OPMASKOP2}))
++REFWORD4 {REFWORD4_NOCV}{CVSPEC}?
++REFWORD {LABELID}|{REFWORD2}|{REFWORD3}|{REFWORD4}
++REFWORD_NOCV {LABELID}|{REFWORD2_NOCV}|{REFWORD3}|{REFWORD4_NOCV}
+
+ %option noyywrap
+ %option yylineno
+@@ -1011,6 +1015,14 @@ REFWORD {LABELID}|{REFWORD2}|{REFWORD3}|{REFWORD4}
+ unput(*yytext);
+ return 0;
+ }
++{REFWORD_NOCV}/{BLANK}("const")[a-z_A-Z0-9] { // see bug776988
++ g_token->name=yytext;
++ return TK_WORD;
++ }
++{REFWORD_NOCV}/{BLANK}("volatile")[a-z_A-Z0-9] { // see bug776988
++ g_token->name=yytext;
++ return TK_WORD;
++ }
+ {REFWORD} { // label to refer to
+ g_token->name=yytext;
+ return TK_WORD;
diff --git a/doxygen-1.8.13-C#-property-initializer-parsing.patch b/doxygen-1.8.13-C#-property-initializer-parsing.patch
new file mode 100644
index 0000000..ea7e736
--- /dev/null
+++ b/doxygen-1.8.13-C#-property-initializer-parsing.patch
@@ -0,0 +1,38 @@
+commit 14a0bcc74a121525917aefc8c9034e283e94884b
+Author: Piotr Szydełko
+Date: Sat May 20 08:14:27 2017 +0200
+
+ Fix C# property initializer parsing
+
+ int Property {get; set;} = 23;
+ The parser was ending the property at the closing bracket,
+ which resulted in the initializer being assigned to the following property.
+
+diff --git a/src/scanner.l b/src/scanner.l
+index 9ff082d4..632c8a51 100644
+--- a/src/scanner.l
++++ b/src/scanner.l
+@@ -6198,6 +6198,14 @@ OPERATOR "operator"{B}*({ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP})
+ }
+ }
+ "{" { curlyCount++; }
++"}"{B}*"=" {
++ // fall back to next rule if it's not the right bracket
++ if (curlyCount != 0) REJECT;
++ current->initializer = "=";
++ current->endBodyLine=yyLineNr;
++ lastInitializerContext = FindMembers;
++ BEGIN(ReadInitializer);
++ }
+ "}" {
+ if (curlyCount)
+ {
+@@ -6207,6 +6215,8 @@ OPERATOR "operator"{B}*({ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP})
+ {
+ mtype = Method;
+ virt = Normal;
++ // not really important, but while we are at it
++ current->endBodyLine=yyLineNr;
+ unput(';');
+ BEGIN(FindMembers);
+ }
diff --git a/doxygen-1.8.13-non-reachable-links.patch b/doxygen-1.8.13-non-reachable-links.patch
new file mode 100644
index 0000000..ba34252
--- /dev/null
+++ b/doxygen-1.8.13-non-reachable-links.patch
@@ -0,0 +1,568 @@
+commit 31cf78d223e52fe078ad9b0651672aeb73926065
+Author: albert-github
+Date: Sun Jun 4 12:52:50 2017 +0200
+
+ Correction of non reachable links and redirected links in documentation.
+
+ The W3C link checker reported a number of problems regarding non reachable links and permanent redirects.
+ Most of these problems have been fixed with this patch
+
+diff --git a/doc/commands.doc b/doc/commands.doc
+index 70b89c60..4357fba1 100644
+--- a/doc/commands.doc
++++ b/doc/commands.doc
+@@ -433,7 +433,7 @@ Structural indicators
+ \par Example:
+ \include enum.h
+ \htmlonly
+- Click here
++ Click here
+ for the corresponding HTML documentation that is generated by doxygen.
+ \endhtmlonly
+ \latexonly
+@@ -565,7 +565,7 @@ Structural indicators
+ \par Example:
+ \include func.h
+ \htmlonly
+- Click here
++ Click here
+ for the corresponding HTML documentation that is generated by doxygen.
+ \endhtmlonly
+ \latexonly
+@@ -823,7 +823,7 @@ Structural indicators
+ \par Example:
+ \include overload.cpp
+ \htmlonly
+- Click here
++ Click here
+ for the corresponding HTML documentation that is generated by doxygen.
+ \endhtmlonly
+ \latexonly
+@@ -1121,7 +1121,7 @@ Structural indicators
+
+
+ \section cmdweakgroup \\weakgroup [(title)]
+- \addindex \\addtogroup
++ \addindex \\weakgroup
+ Can be used exactly like \ref cmdaddtogroup "\\addtogroup", but has
+ a lower priority when it comes to resolving conflicting grouping
+ definitions.
+@@ -1513,7 +1513,7 @@ ALIASES = "english=\if english" \
+ \par Example:
+ \include par.cpp
+ \htmlonly
+- Click here
++ Click here
+ for the corresponding HTML documentation that is generated by doxygen.
+ \endhtmlonly
+ \latexonly
+@@ -2704,7 +2704,7 @@ class Receiver
+
+ \addindex \\startuml
+ Starts a text fragment which should contain a valid description of a
+- PlantUML diagram. See http://plantuml.sourceforge.net/ for examples.
++ PlantUML diagram. See http://plantuml.com/ for examples.
+ The text fragment ends with \ref cmdenduml "\\enduml".
+ \note You need to install Java and the PlantUML's jar file,
+ if you want to use this command. The location of the jar file should be specified
+diff --git a/doc/customize.doc b/doc/customize.doc
+index f98ce0b4..9ef38919 100644
+--- a/doc/customize.doc
++++ b/doc/customize.doc
+@@ -90,7 +90,7 @@ that are disabled by default:
+
+ To tweak things like fonts or colors, margins, or other look \& feel
+ aspects of the HTML output in detail, you can create a different
+-cascading style sheet.
++cascading style sheet.
+ You can also let doxygen use a custom header and footer for each HTML
+ page it generates, for instance to make the output conform to the style
+ used on the rest of your web site.
+@@ -390,7 +390,7 @@ files as one big DOM tree would not fit into memory.
+
+ See the Breathe project for
+ an example that uses doxygen XML output from Python to bridge it with the
+-Sphinx document generator.
++Sphinx document generator.
+
+
+ \htmlonly
+diff --git a/doc/docblocks.doc b/doc/docblocks.doc
+index f0499c6f..81cfdd08 100644
+--- a/doc/docblocks.doc
++++ b/doc/docblocks.doc
+@@ -260,7 +260,7 @@ Here is an example of the use of these comment blocks:
+ \include afterdoc.h
+ \htmlonly
+
+- Click here
++ Click here
+ for the corresponding HTML documentation that is generated by doxygen.
+ \endhtmlonly
+ \latexonly
+@@ -281,7 +281,7 @@ Here is an example of a documented piece of C++ code using the Qt style:
+ \include qtstyle.cpp
+ \htmlonly
+
+- Click here
++ Click here
+ for the corresponding HTML documentation that is generated by doxygen.
+ \endhtmlonly
+ \latexonly
+@@ -316,7 +316,7 @@ JavaDoc style and \ref cfg_javadoc_autobrief "JAVADOC_AUTOBRIEF" set to YES:
+ \include jdstyle.cpp
+ \htmlonly
+
+- Click here
++ Click here
+ for the corresponding HTML documentation that is generated by doxygen.
+ \endhtmlonly
+ \latexonly
+@@ -634,7 +634,7 @@ need for some more structure, like a block of verbatim text, a list, or a
+ simple table. For this doxygen supports the
+ Markdown
+ syntax, including parts of the
+-Markdown Extra
++Markdown Extra
+ extension.
+
+ Markdown is designed to be very easy to read and write.
+@@ -646,13 +646,13 @@ directly. For more details see chapter \ref markdown.
+ For programming language specific formatting doxygen has two
+ forms of additional markup on top of Markdown formatting.
+
+-1. Javadoc like markup.
++1. Javadoc like markup.
+ See \ref commands for a complete overview of all commands supported by doxygen.
+-2. XML markup
++2. XML markup
+ as specified in the C# standard. See \ref xmlcmds for the XML commands supported by doxygen.
+
+ If this is still not enough doxygen also supports a \ref htmlcmds "subset" of
+-the HTML markup language.
++the HTML markup language.
+
+ \htmlonly
+ Go to the next section or return to the
+diff --git a/doc/extsearch.doc b/doc/extsearch.doc
+index cead851c..99a72195 100644
+--- a/doc/extsearch.doc
++++ b/doc/extsearch.doc
+@@ -52,7 +52,7 @@ The data flow is shown in the following diagram:
+
+ The first step is to make the search engine available via a web server.
+ If you use `doxysearch.cgi` this means making the
+-CGI binary
++CGI binary
+ available from the web server (i.e. be able to run it from a
+ browser via an URL starting with http:)
+
+@@ -187,7 +187,7 @@ The next subsections describe these interfaces in more detail.
+ \subsection extsearch_api_index Indexer input format
+
+ The search data produced by doxygen follows the
+-Solr XML index message
++Solr XML index message
+ format.
+
+ The input for the indexer is an XML file, which consists of one `` tag containing
+@@ -224,12 +224,12 @@ Each field has a name. The following field names are supported:
+ - *text*: the documentation associated with the item. Note that only words are present, no markup.
+
+ @note Due to the potentially large size of the XML file, it is recommended to use a
+-SAX based parser to process it.
++SAX based parser to process it.
+
+ \subsection extsearch_api_search_in Search URL format
+
+ When the search engine is invoked from a doxygen generated HTML page, a number of parameters are
+-passed to via the query string.
++passed to via the query string.
+
+ The following fields are passed:
+ - *q*: the query text as entered by the user
+@@ -247,14 +247,14 @@ It represents a query for the word 'list' (`q=list`) requesting 20 search result
+ starting with the result number 20 (`p=1`) and using callback 'dummy' (`cb=dummy`):
+
+
+-@note The values are URL encoded so they
++@note The values are URL encoded so they
+ have to be decoded before they can be used.
+
+ \subsection extsearch_api_search_out Search results format
+
+ When invoking the search engine as shown in the previous subsection, it should reply with
+ the results. The format of the reply is
+-JSON with padding, which is basically
++JSON with padding, which is basically
+ a javascript struct wrapped in a function call. The name of function should be the name of
+ the callback (as passed with the *cb* field in the query).
+
+diff --git a/doc/faq.doc b/doc/faq.doc
+index 5af3db83..bbad8c0f 100644
+--- a/doc/faq.doc
++++ b/doc/faq.doc
+@@ -285,7 +285,7 @@ At the time I was looking into \c lex and \c yacc, where a lot of things start w
+ \section faq_why What was the reason to develop doxygen?
+
+ I once wrote a GUI widget based on the Qt library (it is still available at
+-http://sourceforge.net/projects/qdbttabular/ but hasn't been updated since 2002).
++https://sourceforge.net/projects/qdbttabular/ but hasn't been updated since 2002).
+ Qt had nicely generated documentation (using an internal tool which
+ they didn't want to release)
+ and I wrote similar docs by hand.
+diff --git a/doc/formulas.doc b/doc/formulas.doc
+index 650751e8..1649c197 100644
+--- a/doc/formulas.doc
++++ b/doc/formulas.doc
+@@ -30,7 +30,7 @@ have the following tools installed
+ to bitmaps. I have used Aladdin GhostScript 8.0 for testing.
+
+ For the HTML output there is also an alternative solution using
+-MathJax which does not
++MathJax which does not
+ require the above tools. If you enable \ref cfg_use_mathjax "USE_MATHJAX" in
+ the config then the latex formulas will be copied to the HTML "as is" and a
+ client side javascript will parse them and turn them into (interactive) images.
+diff --git a/doc/grouping.doc b/doc/grouping.doc
+index bbb577cf..2c4ebe19 100644
+--- a/doc/grouping.doc
++++ b/doc/grouping.doc
+@@ -197,7 +197,7 @@ documentation of the class.
+
+ \htmlonly
+
+-Click here
++Click here
+ for the corresponding HTML documentation that is generated by doxygen.
+ \endhtmlonly
+ \latexonly
+diff --git a/doc/index.doc b/doc/index.doc
+index c8950c4c..14f03961 100644
+--- a/doc/index.doc
++++ b/doc/index.doc
+@@ -180,7 +180,7 @@ Thanks go to:
+ Talin for adding support for C# style comments with XML markup.
+ Petr Prikryl for coordinating the internationalization support.
+ All language maintainers for providing translations into many languages.
+-The band Porcupine Tree for
++The band Porcupine Tree for
+ providing hours of great music to listen to while coding.
+ many, many others for suggestions, patches and bug reports.
+
+diff --git a/doc/install.doc b/doc/install.doc
+index fd4f28d1..22d6e7cc 100644
+--- a/doc/install.doc
++++ b/doc/install.doc
+@@ -37,7 +37,7 @@ following to build the executable:
+ \addindex strip
+ \addindex python
+ In order to generate a \c Makefile for your platform, you need
+- cmake version 2.8.12 or later.
++ cmake version 2.8.12 or later.
+ \addindex cmake
+
+
+@@ -63,7 +63,7 @@ tools should be installed.
+ For formulas in the HTML output (when MathJax is not used)
+ or in case you do not wish to use `pdflatex,
+ the ghostscript interpreter is needed. You can find it at
+- www.ghostscript.com.
++ www.ghostscript.com.
+
+
+ Compilation is now done by performing the following steps:
+@@ -150,20 +150,20 @@ standard installation procedure that is required for these packages.
+ \section install_src_windows Compiling from source on Windows
+
+ From version 1.8.10 onwards, build files need to be generated by cmake.
+-cmake can be downloaded from http://www.cmake.org/download/
++cmake can be downloaded from https://cmake.org/download/
+
+ At the moment only the express version of Visual Studio 2013 is tested,
+ but other version might also work.
+
+ Alternatively, you can compile doxygen
+ \ref install_src_unix "the UNIX way" using
+-Cygwin
++Cygwin
+ or MinGW.
+
+ The next step is to install modern versions of \c bison and \c flex
+-(see http://sourceforge.net/projects/winflexbison. After installation and adding them to
++(see https://sourceforge.net/projects/winflexbison/. After installation and adding them to
+ your `path` rename `win_flex.exe` to `flex.exe` and `win_bison.exe` to `bison.exe`)
+-Furthermore you have to install \c python (version 2.6 or higher, see http://www.python.org).
++Furthermore you have to install \c python (version 2.6 or higher, see https://www.python.org).
+ These packages are needed during the compilation process.
+
+ Download doxygen's source tarball and put it somewhere (e.g. use c:\\tools)
+@@ -214,19 +214,19 @@ you need qhelpgenerator which is part of Qt.
+ You can download Qt from Qt Software Downloads.
+
+ In order to generate PDF output or use scientific formulas you will also need to
+-install LaTeX and
+-Ghostscript.
++install LaTeX and
++Ghostscript.
+
+ For \LaTeX a number of distributions exists. Popular ones that should work with
+-doxygen are MikTex
++doxygen are MikTex
+ and proTeXt.
+
+-Ghostscript can be downloaded
++Ghostscript can be downloaded
+ from Sourceforge.
+
+ After installing \LaTeX and Ghostscript you'll need to make sure the tools
+ latex.exe, pdflatex.exe, and gswin32c.exe are present in the search path of a
+-command box. Follow these
++command box. Follow these
+ instructions if you are unsure and run the commands from a command box to verify it works.
+
+ \htmlonly
+diff --git a/doc/markdown.doc b/doc/markdown.doc
+index 300d7fc7..737df71a 100644
+--- a/doc/markdown.doc
++++ b/doc/markdown.doc
+@@ -41,9 +41,9 @@ the extensions that doxygen supports.
+ Finally section \ref markdown_dox discusses some specifics for doxygen's
+ implementation of the Markdown standard.
+
+-[markdown]: http://daringfireball.net/projects/markdown
+-[mdextra]: http://michelf.com/projects/php-markdown/extra/
+-[github]: http://github.github.com/github-flavored-markdown/
++[markdown]: http://daringfireball.net/projects/markdown/
++[mdextra]: https://michelf.ca/projects/php-markdown/extra/
++[github]: https://github.github.com/github-flavored-markdown/
+
+ \section markdown_std Standard Markdown
+
+@@ -303,7 +303,7 @@ Note that using `[TOC]` is the same as using a
+ \subsection md_tables Tables
+
+ Of the features defined by "Markdown Extra" is support for
+-simple tables:
++simple tables:
+
+ A table consists of a header line, a separator line, and at least one
+ row line. Table columns are separated by the pipe (|) character.
+@@ -376,7 +376,7 @@ For more complex tables in doxygen please have a look at: \ref tables
+ \subsection md_fenced Fenced Code Blocks
+
+ Another feature defined by "Markdown Extra" is support for
+-
++
+ fenced code blocks:
+
+ A fenced code block does not require indentation, and is
+diff --git a/doc/searching.doc b/doc/searching.doc
+index dcf858fa..00c61414 100644
+--- a/doc/searching.doc
++++ b/doc/searching.doc
+@@ -72,7 +72,7 @@ has its own advantages and disadvantages:
+ searching, meaning that you could use your own indexer and search engine
+ of choice. To make life easier doxygen ships with an example indexer
+ (doxyindexer) and search engine (doxysearch.cgi) based on
+- the Xapian open source search engine
++ the Xapian open source search engine
+ library.
+
+ To enable this search method set
+@@ -147,7 +147,7 @@ has its own advantages and disadvantages:
+ \ref cfg_qhp_namespace "QHP_NAMESPACE",
+ \ref cfg_qhg_location "QHG_LOCATION",
+ \ref cfg_qhp_virtual_folder "QHP_VIRTUAL_FOLDER".
+- See this article
++ See this article
+ for more info.
+
+ Feature wise the Qt compressed help feature is comparable with the CHM
+diff --git a/doc/starting.doc b/doc/starting.doc
+index bfb8e8f7..c869867b 100644
+--- a/doc/starting.doc
++++ b/doc/starting.doc
+@@ -263,7 +263,7 @@ capabilities of the man page format, so some information
+ \subsection docbook_out DocBook output
+ \addindex docbook
+ Doxygen can also generate output in the
+-DocBook format. How to process the
++DocBook format. How to process the
+ DocBook output is beyond the scope of this manual.
+
+ \section step3 Step 3: Documenting the sources
+diff --git a/src/config.xml b/src/config.xml
+index 0fdf3efc..8bb6addb 100644
+--- a/src/config.xml
++++ b/src/config.xml
+@@ -215,7 +215,7 @@ Go to the next section or return to the
+ This tag specifies the encoding used for all characters in the config file that
+ follow. The default is UTF-8 which is also the encoding used for all text before
+ the first occurrence of this tag. Doxygen uses \c libiconv (or the iconv built into
+- \c libc) for the transcoding. See http://www.gnu.org/software/libiconv for the list of
++ \c libc) for the transcoding. See https://www.gnu.org/software/libiconv/ for the list of
+ possible encodings.
+ ]]>
+
+@@ -661,7 +661,7 @@ Go to the next section or return to the
+
+ sip sources only.
++ of sip sources only.
+ Doxygen will parse them like normal C++ but will assume all classes use public
+ instead of private inheritance when no explicit protection keyword is present.
+ ]]>
+@@ -1172,7 +1172,7 @@ FILE_VERSION_INFO = "cleartool desc -fmt \%Vn"
+ The \c CITE_BIB_FILES tag can be used to specify one or more \c bib files
+ containing the reference definitions. This must be a list of .bib files. The
+ .bib extension is automatically appended if omitted. This requires the
+- \c bibtex tool to be installed. See also http://en.wikipedia.org/wiki/BibTeX for
++ \c bibtex tool to be installed. See also https://en.wikipedia.org/wiki/BibTeX for
+ more info. For \f$\mbox{\LaTeX}\f$ the style of the bibliography can be controlled
+ using \ref cfg_latex_bib_style "LATEX_BIB_STYLE".
+ To use this feature you need \c bibtex and \c perl available in the search path.
+@@ -1285,7 +1285,7 @@ FILE_VERSION_INFO = "cleartool desc -fmt \%Vn"
+ This tag can be used to specify the character encoding of the source files that
+ doxygen parses. Internally doxygen uses the UTF-8 encoding.
+ Doxygen uses `libiconv` (or the `iconv` built into `libc`) for the transcoding.
+- See the libiconv documentation for
++ See the libiconv documentation for
+ the list of possible encodings.
+ ]]>
+
+@@ -1585,7 +1585,7 @@ to disable this feature.
+ If the \c USE_HTAGS tag is set to \c YES then the references to source code
+ will point to the HTML generated by the \c htags(1) tool instead of doxygen
+ built-in source browser. The \c htags tool is part of GNU's global source
+- tagging system (see http://www.gnu.org/software/global/global.html). You
++ tagging system (see https://www.gnu.org/software/global/global.html). You
+ will need version 4.8.6 or higher.
+
+ To use it do the following:
+@@ -1904,7 +1904,7 @@ hr.footer {
+ The \c HTML_COLORSTYLE_HUE tag controls the color of the HTML output.
+ Doxygen will adjust the colors in the style sheet and background images
+ according to this color. Hue is specified as an angle on a colorwheel,
+- see http://en.wikipedia.org/wiki/Hue for more information.
++ see https://en.wikipedia.org/wiki/Hue for more information.
+ For instance the value 0 represents red, 60 is yellow, 120 is green,
+ 180 is cyan, 240 is blue, 300 purple, and 360 is red again.
+ ]]>
+@@ -1981,14 +1981,14 @@ hr.footer {
+ Apple's Xcode 3
++ Apple's Xcode 3
+ integrated development environment, introduced with OSX 10.5 (Leopard).
+ To create a documentation set, doxygen will generate a Makefile in the
+ HTML output directory. Running \c make will produce the docset in that
+ directory and running make install will install the docset in
+ ~/Library/Developer/Shared/Documentation/DocSets
+ so that Xcode will find it at startup. See
+- http://developer.apple.com/tools/creatingdocsetswithdoxygen.html for
++ https://developer.apple.com/tools/creatingdocsetswithdoxygen.html for
+ more information.
+ ]]>
+
+@@ -2133,7 +2133,7 @@ The \c DOCSET_PUBLISHER_NAME tag identifies the documentation publisher.
+ Qt Help Project / Namespace.
++ Qt Help Project / Namespace.
+ ]]>
+
+
+@@ -2142,7 +2142,7 @@ The \c DOCSET_PUBLISHER_NAME tag identifies the documentation publisher.
+ Qt Help Project / Virtual Folders.
++ Qt Help Project / Virtual Folders.
+ ]]>
+
+
+@@ -2150,7 +2150,7 @@ The \c DOCSET_PUBLISHER_NAME tag identifies the documentation publisher.
+
+ Qt Help Project / Custom Filters.
++ Qt Help Project / Custom Filters.
+ ]]>
+
+
+@@ -2159,7 +2159,7 @@ The \c DOCSET_PUBLISHER_NAME tag identifies the documentation publisher.
+ Qt Help Project / Custom Filters.
++ Qt Help Project / Custom Filters.
+ ]]>
+
+
+@@ -2167,7 +2167,7 @@ The \c DOCSET_PUBLISHER_NAME tag identifies the documentation publisher.
+
+ Qt Help Project / Filter Attributes.
++ Qt Help Project / Filter Attributes.
+ ]]>
+
+
+@@ -2295,7 +2295,7 @@ The \c DOCSET_PUBLISHER_NAME tag identifies the documentation publisher.
+
+ ../mathjax. The default value points to
+ the MathJax Content Delivery Network so you can quickly see the result without
+ installing MathJax. However, it is strongly recommended to install a local
+- copy of MathJax from http://www.mathjax.org before deployment.
++ copy of MathJax from https://www.mathjax.org before deployment.
+ ]]>
+
+
+@@ -2427,7 +2427,7 @@ See the section \ref extsearch for details.
+ the search results.
+
Doxygen ships with an example indexer (\c doxyindexer) and
+ search engine (doxysearch.cgi) which are based on the open source search
+- engine library Xapian.
++ engine library Xapian.
+
See the section \ref extsearch for details.
+ ]]>
+
+@@ -2440,7 +2440,7 @@ See the section \ref extsearch for details.
+ is enabled.
+
Doxygen ships with an example indexer (\c doxyindexer) and
+ search engine (doxysearch.cgi) which are based on the open source search
+- engine library Xapian.
++ engine library Xapian.
+ See the section \ref extsearch for details.
+ ]]>
+
+@@ -2681,7 +2681,7 @@ or
+
+
+@@ -2886,7 +2886,7 @@ front of it.
+
+ &2
- exit 1
-fi
-
-js_files="$(echo "$jsdir"/doxygen/*.js)"
-
-if test -z "$buildroot" ; then
- # Only absolute links are possible because the final installation
- # destination is unknown.
- if test -z "$subdir"; then
- subdir="."
- fi
- find "$subdir" -type f -name '*.js' \
- | while read js_file; do
- for js_file_ref in $js_files; do
- if cmp -s "$js_file_ref" "$js_file"; then
- ln -sf "$js_file_ref" "$js_file"
- break
- fi
- done
- done
-else
- # Create relative links.
- cd "$buildroot"
- abs_buildroot="$(readlink -f .)"
- cd "./$subdir"
-
- # Compute the number of ../ needed to reach the root directory.
- prefix=""
- while true; do
- p="$(readlink -f "${prefix:-.}")"
- if test "$p" = "$abs_buildroot"; then
- break
- elif test "$p" = "/"; then
- echo "error: Could not find buildroot directory" 1>&2
- exit 1
- elif test -z "$prefix"; then
- prefix=".."
- else
- prefix="../$prefix"
- fi
- done
-
- # Create relative links.
- find . -type f -name '*.js' -printf "%d %p\n" \
- | while read depth js_file; do
- for js_file_ref in $js_files; do
- if cmp -s "$js_file_ref" "$js_file"; then
- target_prefix="$prefix"
- i=1
- while test "$i" -lt "$depth"; do
- target_prefix="../$target_prefix"
- i=$(($i + 1))
- done
- ln -sf "$target_prefix$js_file_ref" "$js_file"
- fi
- done
- done
-fi
diff --git a/doxygen-xmlgen-regression.patch b/doxygen-xmlgen-regression.patch
new file mode 100644
index 0000000..8d72e8f
--- /dev/null
+++ b/doxygen-xmlgen-regression.patch
@@ -0,0 +1,24 @@
+From 0f02761a158a5e9ddbd5801682482af8986dbc35 Mon Sep 17 00:00:00 2001
+From: albert-github
+Date: Wed, 4 Jan 2017 12:24:55 +0100
+Subject: [PATCH] Bug 776791 - [1.8.13 Regression] Segfault building the
+ breathe docs
+
+Protected against NULL pointer of variable al
+---
+ src/xmlgen.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/xmlgen.cpp b/src/xmlgen.cpp
+index fe95c7a..70e198a 100644
+--- a/src/xmlgen.cpp
++++ b/src/xmlgen.cpp
+@@ -620,7 +620,7 @@ static void generateXMLForMember(MemberDef *md,FTextStream &ti,FTextStream &t,De
+ if (md->isInline()) t << "yes"; else t << "no";
+ t << "\"";
+
+- if (al->refQualifier!=RefQualifierNone)
++ if (al!=0 && al->refQualifier!=RefQualifierNone)
+ {
+ t << " refqual=\"";
+ if (al->refQualifier==RefQualifierLValue) t << "lvalue"; else t << "rvalue";
diff --git a/doxygen.spec b/doxygen.spec
index 7818615..6987a1d 100644
--- a/doxygen.spec
+++ b/doxygen.spec
@@ -1,142 +1,51 @@
-%if 0%{?fedora}
-%global xapian_core_support ON
-%global build_wizard ON
-%global system_spdlog ON
-%global system_fmt ON
-%else
-%global xapian_core_support OFF
-%global build_wizard OFF
-%global system_spdlog OFF
-%global system_fmt OFF
-%endif
-%global build_search %{xapian_core_support}
-%global clang_support ON
-%global system_sqlite3 ON
-
Summary: A documentation system for C/C++
Name: doxygen
-Epoch: 2
-Version: 1.15.0
-Release: 1%{?dist}
+Epoch: 1
+Version: 1.8.13
+Release: 9%{?dist}
+
# No version is specified.
-License: GPL-2.0-or-later
-Url: https://github.com/doxygen
-Source0: https://www.doxygen.nl/files/%{name}-%{version}.src.tar.gz
+License: GPL+
+Url: http://www.stack.nl/~dimitri/doxygen/index.html
+Source0: ftp://ftp.stack.nl/pub/users/dimitri/%{name}-%{version}.src.tar.gz
# this icon is part of kdesdk
-Source1: doxywizard.desktop
-# these icons are part of doxygen and converted from doxywizard.ico
-Source2: doxywizard-icons.tar.xz
-Source3: README.rpm-packaging
-Source4: doxygen-unbundler
+Source1: doxywizard.png
+Source2: doxywizard.desktop
-# upstream fixes
-
-BuildRequires: %{_bindir}/python3
-BuildRequires: perl-interpreter, perl-open
-BuildRequires: texlive-bibtex
-BuildRequires: web-assets-devel
-# Building an RPM package typically needs unbundling of Javascript assets.
-Requires: (js-doxygen if redhat-rpm-config)
+# upstream patches
+Patch100: https://github.com/doxygen/doxygen/pull/555.patch#/doxygen-xmlgen-regression.patch
+Patch101: doxygen-1.8.13-#775493.patch
+Patch102: doxygen-1.8.13-#776988.patch
+Patch103: doxygen-1.8.13-verticl_bar_latex.patch
+Patch104: doxygen-1.8.13-C#-property-initializer-parsing.patch
+Patch105: doxygen-1.8.13-non-reachable-links.patch
+BuildRequires: perl
%if ! 0%{?_module_build}
BuildRequires: tex(dvips)
BuildRequires: tex(latex)
-# From doc/manual.sty
-BuildRequires: tex(helvet.sty)
+BuildRequires: tex(multirow.sty)
BuildRequires: tex(sectsty.sty)
BuildRequires: tex(tocloft.sty)
-BuildRequires: tex(fontenc.sty)
-BuildRequires: tex(fancyhdr.sty)
-# From templates/latex/doxygen.sty
-BuildRequires: tex(alltt.sty)
-BuildRequires: tex(calc.sty)
-BuildRequires: tex(float.sty)
-BuildRequires: tex(verbatim.sty)
-BuildRequires: tex(xcolor.sty)
-BuildRequires: tex(fancyvrb.sty)
-BuildRequires: tex(tabularx.sty)
-BuildRequires: tex(multirow.sty)
-BuildRequires: tex(hanging.sty)
-BuildRequires: tex(ifpdf.sty)
-BuildRequires: tex(adjustbox.sty)
-BuildRequires: tex(amssymb.sty)
-BuildRequires: tex(stackengine.sty)
-BuildRequires: tex(ulem.sty)
-# From doc/doxygen_manual.tex
-BuildRequires: tex(ifthen.sty)
-BuildRequires: tex(array.sty)
-BuildRequires: tex(geometry.sty)
-BuildRequires: tex(makeidx.sty)
-BuildRequires: tex(natbib.sty)
-BuildRequires: tex(graphicx.sty)
-BuildRequires: tex(multicol.sty)
-BuildRequires: tex(float.sty)
-BuildRequires: tex(geometry.sty)
-BuildRequires: tex(listings.sty)
-BuildRequires: tex(color.sty)
-BuildRequires: tex(xcolor.sty)
-BuildRequires: tex(textcomp.sty)
-BuildRequires: tex(wasysym.sty)
-BuildRequires: tex(import.sty)
-BuildRequires: tex(appendix.sty)
-BuildRequires: tex(hyperref.sty)
-BuildRequires: tex(pspicture.sty)
-BuildRequires: tex(inputenc.sty)
-BuildRequires: tex(mathptmx.sty)
-BuildRequires: tex(courier.sty)
-# From src/latexgen.cpp
-BuildRequires: tex(fixltx2e.sty)
-BuildRequires: tex(ifxetex.sty)
-BuildRequires: tex(caption.sty)
-BuildRequires: tex(etoc.sty)
-# From src/util.cpp
-BuildRequires: tex(newunicodechar.sty)
-# From templates/latex/tabu_doxygen.sty
-BuildRequires: tex(varwidth.sty)
BuildRequires: tex(xtab.sty)
+BuildRequires: tex(import.sty)
BuildRequires: tex(tabu.sty)
+BuildRequires: tex(appendix.sty)
BuildRequires: /usr/bin/epstopdf
BuildRequires: texlive-epstopdf
BuildRequires: ghostscript
BuildRequires: gettext
BuildRequires: desktop-file-utils
BuildRequires: graphviz
-%endif
+%else
BuildRequires: zlib-devel
+%endif
BuildRequires: flex
BuildRequires: bison
BuildRequires: cmake
-BuildRequires: git
-%if "x%{?xapian_core_support}" == "xON"
BuildRequires: xapian-core-devel
-%endif
-%if "x%{?clang_support}" == "xON"
-BuildRequires: llvm-devel
-BuildRequires: clang-devel
-%else
-BuildRequires: gcc-c++ gcc
-%endif
-%if "%{system_spdlog}" == "ON"
-BuildRequires: spdlog-devel
-%else
-# SPDLOG_VER* defined in deps/spdlog/include/spdlog/version.h
-Provides: bundled(spdlog) = 1.14.1
-%endif
-%if "%{system_sqlite3}" == "ON"
-BuildRequires: sqlite-devel
-%else
-# SQLITE_VERSION defined in deps/sqlite3/sqlite3.h
-Provides: bundled(sqlite) = 3.42.0
-%endif
-%if "%{system_fmt}" == "ON"
-BuildRequires: fmt-devel
-%else
-# deps/fmt/README.md
-Provides: bundled(fmt) = 10.2.1
-%endif
-Requires: perl-interpreter
-Requires: graphviz
+Requires: perl
%description
Doxygen can generate an online class browser (in HTML) and/or a
@@ -145,194 +54,117 @@ documentation is extracted directly from the sources. Doxygen can
also be configured to extract the code structure from undocumented
source files.
-%package -n js-doxygen
-Summary: Javascript files used by Doxygen
-Requires: web-assets-filesystem
-BuildArch: noarch
-%description -n js-doxygen
-Javascript files for use by locally installed Doxygen documentation.
-
-%if "x%{build_wizard}" == "xON"
+%if ! 0%{?_module_build}
%package doxywizard
Summary: A GUI for creating and editing configuration files
Requires: %{name} = %{epoch}:%{version}-%{release}
-BuildRequires: qt6-qtbase-devel
-BuildRequires: qt6-qtsvg-devel
-
+BuildRequires: qt4-devel
%description doxywizard
Doxywizard is a GUI for creating and editing configuration files that
are used by doxygen.
-%endif
-%if ! 0%{?_module_build}
%package latex
Summary: Support for producing latex/pdf output from doxygen
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: tex(latex)
-Requires: tex(dvips)
-Requires: texlive-wasy
%if 0%{?fedora} > 17 || 0%{?rhel} > 6
-# From doc/manual.sty
-Requires: tex(helvet.sty)
+Requires: tex(multirow.sty)
Requires: tex(sectsty.sty)
Requires: tex(tocloft.sty)
-Requires: tex(fontenc.sty)
-Requires: tex(fancyhdr.sty)
-# From templates/latex/doxygen.sty
-Requires: tex(alltt.sty)
-Requires: tex(calc.sty)
-Requires: tex(float.sty)
-Requires: tex(verbatim.sty)
-Requires: tex(xcolor.sty)
-Requires: tex(fancyvrb.sty)
-Requires: tex(tabularx.sty)
-Requires: tex(multirow.sty)
-Requires: tex(hanging.sty)
-Requires: tex(ifpdf.sty)
-Requires: tex(adjustbox.sty)
-Requires: tex(amssymb.sty)
-Requires: tex(stackengine.sty)
-Requires: tex(ulem.sty)
-# From doc/doxygen_manual.tex
-Requires: tex(ifthen.sty)
-Requires: tex(array.sty)
-Requires: tex(geometry.sty)
-Requires: tex(makeidx.sty)
-Requires: tex(natbib.sty)
-Requires: tex(graphicx.sty)
-Requires: tex(multicol.sty)
-Requires: tex(float.sty)
-Requires: tex(geometry.sty)
-Requires: tex(listings.sty)
-Requires: tex(color.sty)
-Requires: tex(xcolor.sty)
-Requires: tex(textcomp.sty)
-Requires: tex(wasysym.sty)
-Requires: tex(import.sty)
-Requires: tex(appendix.sty)
-Requires: tex(hyperref.sty)
-Requires: tex(pspicture.sty)
-Requires: tex(inputenc.sty)
-Requires: tex(mathptmx.sty)
-Requires: tex(courier.sty)
-# From src/latexgen.cpp
-Requires: tex(fixltx2e.sty)
-Requires: tex(ifxetex.sty)
-Requires: tex(caption.sty)
-Requires: tex(etoc.sty)
-# From src/util.cpp
-Requires: tex(newunicodechar.sty)
-# From templates/latex/tabu_doxygen.sty
-Requires: tex(varwidth.sty)
-# I'm 99% sure this isn't needed anymore since
-# doxygen has a local fork of tabu... but it doesn't seem to be hurting anything.
-Requires: tex(tabu.sty)
-# There also does not seem to be any references to xtab in the code... but eh.
Requires: tex(xtab.sty)
-# Explicitly called binaries
-Requires: texlive-bibtex
-Requires: texlive-makeindex
-Requires: texlive-epstopdf
+Requires: tex(import.sty)
+Requires: tex(tabu.sty)
+Requires: tex(appendix.sty)
+Requires: texlive-epstopdf-bin
%endif
-
%description latex
%{summary}.
%endif
%prep
-%autosetup -p1 -a2
+%autosetup -p1
+
+# convert into utf-8
+iconv --from=ISO-8859-1 --to=UTF-8 LANGUAGE.HOWTO > LANGUAGE.HOWTO.new
+touch -r LANGUAGE.HOWTO LANGUAGE.HOWTO.new
+mv LANGUAGE.HOWTO.new LANGUAGE.HOWTO
-cp %{SOURCE3} .
%build
-%cmake \
- -Dbuild_wizard=%{build_wizard} \
- -DBUILD_SHARED_LIBS=OFF \
- -DCMAKE_INSTALL_PREFIX:PATH=%{_prefix} \
- -Dbuild_search=%{build_search} \
- -Duse_libclang=%{clang_support} \
- -DMAN_INSTALL_DIR=%{_mandir}/man1 \
- -Dbuild_doc=OFF \
- -DPYTHON_EXECUTABLE=%{_bindir}/python3 \
- -Dbuild_xmlparser=ON \
- -Duse_sys_sqlite3=%{system_sqlite3} \
- -Duse_sys_spdlog=%{system_spdlog} \
- -Duse_sys_fmt=%{system_fmt}
-%cmake_build %{?_smp_mflags}
+mkdir -p %{_target_platform}
+pushd %{_target_platform}
+%if ! 0%{?_module_build}
+%cmake \
+ -Dbuild_doc=ON \
+ -Dbuild_wizard=ON \
+ -Dbuild_xmlparser=ON \
+ -Dbuild_search=ON \
+ -DMAN_INSTALL_DIR=%{_mandir}/man1 \
+ -DCMAKE_INSTALL_PREFIX:PATH=%{_prefix} \
+ -DBUILD_SHARED_LIBS=OFF \
+ ..
+%else
+%cmake \
+ -Dbuild_doc=OFF \
+ -Dbuild_wizard=OFF \
+ -Dbuild_xmlparser=ON \
+ -Dbuild_search=OFF \
+ -DMAN_INSTALL_DIR=%{_mandir}/man1 \
+ -DCMAKE_INSTALL_PREFIX:PATH=%{_prefix} \
+ -DBUILD_SHARED_LIBS=OFF \
+ ..
+%endif
+popd
+
+%if ! 0%{?_module_build}
+make docs %{?_smp_mflags} -C %{_target_platform}
+%else
+mkdir -p *-redhat-linux-gnu/latex
+touch *-redhat-linux-gnu/latex/doxygen_manual.pdf
+%endif
+make %{?_smp_mflags} -C %{_target_platform}
%install
-%cmake_install
+make install DESTDIR=%{buildroot} -C %{_target_platform}
+
+install -m644 -p -D %{SOURCE1} %{buildroot}%{_datadir}/pixmaps/doxywizard.png
# install man pages
mkdir -p %{buildroot}/%{_mandir}/man1
cp doc/*.1 %{buildroot}/%{_mandir}/man1/
-
-%if "x%{build_wizard}" == "xOFF"
+%if 0%{?_module_build}
rm -f %{buildroot}/%{_mandir}/man1/doxywizard.1*
-%else
-# install icons
-icondir=%{buildroot}%{_datadir}/icons/hicolor
-mkdir -m755 -p $icondir/{16x16,32x32,48x48,128x128}/apps
-install -m644 -p -D doxywizard-6.png $icondir/16x16/apps/doxywizard.png
-install -m644 -p -D doxywizard-5.png $icondir/32x32/apps/doxywizard.png
-install -m644 -p -D doxywizard-4.png $icondir/48x48/apps/doxywizard.png
-install -m644 -p -D doxywizard-3.png $icondir/128x128/apps/doxywizard.png
-desktop-file-install --dir=%{buildroot}%{_datadir}/applications %{SOURCE1}
-%endif
-
-%if "x%{?xapian_core_support}" == "xOFF"
-rm -f %{buildroot}/%{_mandir}/man1/doxyindexer.1* %{buildroot}/%{_mandir}/man1/doxysearch.1*
%endif
# remove duplicate
rm -rf %{buildroot}/%{_docdir}/packages
-# Install the asset files.
-install -m644 -D --target-directory=%{buildroot}%{_jsdir}/doxygen templates/html/*.js
-
-# Generate the macros file. Expand version/release/%%_jsdir.
-mkdir -p %{buildroot}%{_rpmconfigdir}/macros.d
-cat > %{buildroot}%{_rpmconfigdir}/macros.d/macros.doxygen <<'EOF'
-%%doxygen_js_requires() Requires: js-doxygen >= %{version}-%{release}
-%%doxygen_unbundle_buildroot() %%{_rpmconfigdir}/redhat/doxygen-unbundler "%{_jsdir}" "%%{buildroot}" %%[ %%# == 0 ? "%%{_docdir}" : "%%1"]
-%%doxygen_unbundle() %{_rpmconfigdir}/redhat/doxygen-unbundler "%{_jsdir}" "" %%*
-EOF
-
- # Install the unbundler script.
-install -m755 -D --target-directory=%{buildroot}%{_rpmconfigdir}/redhat %{SOURCE4}
-
-%check
-%ctest
+%if ! 0%{?_module_build}
+desktop-file-install --dir=%{buildroot}%{_datadir}/applications %{SOURCE2}
+%endif
%files
-%doc LANGUAGE.HOWTO README.md README.rpm-packaging
-%license LICENSE
+%doc LANGUAGE.HOWTO README.md
%if ! 0%{?_module_build}
-%if "x%{?xapian_core_support}" == "xON"
+%doc %{_target_platform}/latex/doxygen_manual.pdf
+%doc %{_target_platform}/html
%{_bindir}/doxyindexer
%{_bindir}/doxysearch*
%endif
-%endif
%{_bindir}/doxygen
%{_mandir}/man1/doxygen.1*
-%if "x%{?xapian_core_support}" == "xON"
%{_mandir}/man1/doxyindexer.1*
%{_mandir}/man1/doxysearch.1*
-%endif
-%{_rpmconfigdir}/macros.d/macros.doxygen
-%{_rpmconfigdir}/redhat/doxygen-unbundler
-%if "x%{build_wizard}" == "xON"
+
+%if ! 0%{?_module_build}
%files doxywizard
%{_bindir}/doxywizard
%{_mandir}/man1/doxywizard*
%{_datadir}/applications/doxywizard.desktop
-%{_datadir}/icons/hicolor/*/apps/doxywizard.png
%endif
-
-%files -n js-doxygen
-%{_jsdir}/doxygen/*
+%{_datadir}/pixmaps/doxywizard.png
%if ! 0%{?_module_build}
%files latex
@@ -340,305 +172,6 @@ install -m755 -D --target-directory=%{buildroot}%{_rpmconfigdir}/redhat %{SOURCE
%endif
%changelog
-* Thu Nov 13 2025 Than Ngo - 2:1.15.0-1
-- Update to 1.15.0
-
-* Wed Jul 23 2025 Fedora Release Engineering - 2:1.14.0-4
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
-
-* Wed Jun 25 2025 Than Ngo - 2:1.14.0-3
-- Upstream fix for input buffer overflow
-
-* Wed May 28 2025 Yaakov Selkowitz - 2:1.14.0-2
-- Use bundled spdlog on RHEL, redux
-
-* Sun May 25 2025 Than Ngo - 2:1.14.0-1
-- Fix rhbz#2368381, update to 1.14.0
-
-* Tue Feb 11 2025 Yaakov Selkowitz - 2:1.13.2-5
-- Use bundled spdlog on RHEL
-
-* Mon Feb 10 2025 Than Ngo - 2:1.13.2-4
-- built with system sqlite3 and spdlog
-
-* Sat Feb 08 2025 Than Ngo - 2:1.13.2-3
-- Introduce js-doxygen subpackage and unbundle Javascript during RPM builds
-- Use system spdlog and sqlite3
-
-* Thu Jan 16 2025 Fedora Release Engineering - 2:1.13.2-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
-
-* Mon Jan 13 2025 Than Ngo - 2:1.13.2-1
-- Fix rhbz#2336720, Update to 1.13.2
-- Fix rhbz#2336536, FTBFS in ignition-transport
-
-* Fri Jan 03 2025 Than Ngo - 2:1.13.1-1
-- Fix rhbz#2335266, Update to 1.13.1
-
-* Thu Jan 02 2025 Than Ngo - 2:1.13.0-1
-- Fix rhbz#2334703, Update to 1.13.0
-
-* Mon Oct 28 2024 Than Ngo - 2:1.12.0-3
-- Fix rhbz#2295788, Non-reproducible file names in doxygen output
-
-* Mon Oct 28 2024 Than Ngo - 2:1.12.0-2
-- Fix rhbz#x2322116, broken markdown links to anchors
-
-* Wed Aug 07 2024 Than Ngo - 2:1.12.0-1
-- update to 1.12.0
-
-* Wed Jul 17 2024 Fedora Release Engineering - 2:1.11.0-5
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
-
-* Fri Jun 14 2024 Than Ngo - 2:1.11.0-4
-- fixed rhbz#2292250, update license
-
-* Fri May 31 2024 Than Ngo - 2:1.11.0-3
-- removed workaround for debuginfo
-
-* Wed May 29 2024 Than Ngo - 2:1.11.0-2
-- fixed rhbz#2283362, fix buffer overflow
-
-* Tue May 21 2024 Than Ngo - 2:1.11.0-1
-- update to 1.11.0
-
-* Wed Jan 24 2024 Fedora Release Engineering - 2:1.10.0-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
-
-* Fri Jan 19 2024 Than Ngo - 2:1.10.0-2
-- don't use clang to build doxygen as workaround for a bug in gcc-14
-
-* Tue Dec 26 2023 Than Ngo - 1.10.0-1
-- bz#2255826, update to 1.10
-
-* Mon Sep 11 2023 Than Ngo - 1.9.8-1
-- fix bz#2235035, update to 1.9.8
-
-* Wed Jul 19 2023 Fedora Release Engineering - 2:1.9.7-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
-
-* Tue May 30 2023 Than Ngo - 2:1.9.7-2
-- disable build_wizard for eln
-- fixed broken unicode test
-
-* Fri May 19 2023 Than Ngo - 2:1.9.7-1
-- fix #2208417, rebase to 1.9.7
-
-* Fri Mar 10 2023 Than Ngo - 2:1.9.6-7
-- replace obsolescent egrep with grep -E
-
-* Fri Feb 17 2023 Than Ngo - 2:1.9.6-6
-- migrated to SPDX license
-
-* Wed Jan 25 2023 Than Ngo - 2:1.9.6-5
-- rebuilt against new ghostscript-10
-
-* Fri Jan 20 2023 Than Ngo - 2:1.9.6-4
-- fixed bz#2162170, add Require on texlive-wasy
-
-* Thu Jan 19 2023 Fedora Release Engineering - 2:1.9.6-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
-
-* Wed Jan 18 2023 Than Ngo - 2:1.9.6-2
-- fixed bz#2161515 - doxygen FTBFS if _module_build is 1
-
-* Tue Jan 03 2023 Than Ngo - 2:1.9.6-1
-- fixed bz#2156564, update to 1.9.6
-
-* Sun Sep 18 2022 Pete Walter - 2:1.9.5-2
-- Rebuild for llvm 15
-
-* Fri Sep 09 2022 Than Ngo - 2:1.9.5-1
-- 1.9.5
-
-* Thu Aug 04 2022 Than Ngo - 2:1.9.4-2
-- Fixed #2113876, Failed to build LaTex output
-
-* Thu Jul 21 2022 Fedora Release Engineering - 2:1.9.4-1.1
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
-
-* Fri May 06 2022 Than Ngo - 2:1.9.4-1
-- 1.9.4
-
-* Thu Feb 17 2022 Than Ngo - 2:1.9.4-0.20220217gite18f715e
-- update to 1.9.4 snapshot
-
-* Thu Jan 20 2022 Fedora Release Engineering - 2:1.9.1-13
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
-
-* Wed Oct 27 2021 Than Ngo - 2:1.9.1-12
-- revert 1.9.1, noarch package built differently on different architectures
-
-* Wed Oct 27 2021 Than Ngo - 1:1.9.2-4
-- update
-
-* Thu Oct 07 2021 Tom Stellard - 1:1.9.2-3
-- Rebuild for llvm-13.0.0
-
-* Sun Sep 12 2021 Mattias Ellert - 1:1.9.2-2
-- Use predictable and reproducible filenames (rhbz#2000138)
-
-* Thu Aug 19 2021 Than Ngo - 1:1.9.2-1
-- rebase to 1.9.2
-
-* Tue Aug 17 2021 Björn Esser - 1:1.9.1-11
-- Rebuild for clang-13.0.0
-
-* Wed Jul 21 2021 Fedora Release Engineering - 1:1.9.1-10
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
-
-* Tue Mar 30 2021 Jonathan Wakely - 1:1.9.1-9
-- Rebuilt for removed libstdc++ symbol (#1937698)
-
-* Sun Mar 21 2021 Than Ngo - 1:1.9.1-8
-- update source
-
-* Mon Feb 22 2021 Than Ngo - 1:1.9.1-7
-- drop test-suite
-
-* Wed Feb 10 2021 Than Ngo - 1:1.9.1-6
-- fixed Coverity issues
-- fixed crash in docparser
-
-* Tue Jan 26 2021 Fedora Release Engineering - 1:1.9.1-5
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
-
-* Fri Jan 22 2021 Tom Stellard - 1:1.9.1-4
-- Rebuild for clang-11.1.0
-
-* Tue Jan 19 2021 Than Ngo - 1.9.1-3
-- fixed doxygen crashes when parsing config file part2
-
-
-* Tue Jan 19 2021 Than Ngo - 1.9.1-2
-- fixed bz#1916161, crashes when parsing config file
-
-* Mon Jan 11 2021 Than Ngo - 1.9.1-1
-- update to 1.9.1
-
-* Mon Jan 11 2021 Than Ngo - 1.8.20-6
-- drop BR on ImageMagick in RHEL
-
-* Tue Sep 29 2020 Than Ngo - 1.8.20-5
-- backport upstream patches
-
-* Thu Sep 17 2020 Than Ngo - 1.8.20-4
-- Fix doxygen crash
-
-* Tue Sep 15 2020 Mattias Ellert - 1:1.8.20-3
-- Fix doxygen producing different results on 32 and 64 bit architectures
-
-* Fri Aug 28 2020 Scott Talbert - 1:1.8.20-2
-- Fix issue with enums being defined in multiple files
-
-* Tue Aug 25 2020 Than Ngo - 1.8.20-1
-- update to 1.8.20
-
-* Sat Aug 01 2020 Fedora Release Engineering - 1:1.8.18-6
-- Second attempt - Rebuilt for
- https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
-
-* Mon Jul 27 2020 Fedora Release Engineering - 1:1.8.18-5
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
-
-* Wed Jul 08 2020 Than Ngo - 1.8.18-4
-- fixed link issue against new clang
-
-* Thu Jun 18 2020 Than Ngo - 1.8.18-3
-- fixed bz#1834591, enable clang support in fedora
-
-* Wed May 27 2020 Tom Callaway - 1.8.18-2
-- update tex dependencies
-
-* Mon May 25 2020 Than Ngo - 1.8.18-1
-- update to 1.8.18
-- backport fixes: buffer-overflow, memory leeks and md5 hash does not match for
- 2 diffferent runs
-
-* Thu Apr 02 2020 Björn Esser - 1:1.8.17-3
-- Fix string quoting for rpm >= 4.16
-
-* Tue Jan 28 2020 Fedora Release Engineering - 1:1.8.17-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
-
-* Tue Jan 14 2020 Than Ngo - 1:1.8.17-1
-- resolves #1786799, update to 1.8.17
-
-* Tue Dec 10 2019 Than Ngo - 1:1.8.16-3
-- fixed covscan issues
-
-* Mon Sep 16 2019 Than Ngo - 1:1.8.16-2
-- backpored upstream patch to fix #7248
-
-* Wed Sep 11 2019 Than Ngo - 1:1.8.16-1
-- resolves #1742614, update to 1.8.16
-
-* Wed Jul 24 2019 Fedora Release Engineering - 1:1.8.15-10
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
-
-* Tue Mar 19 2019 Christoph Junghans - 1:1.8.15-9
-- Incl. xml fix for c++11
-
-* Sat Mar 16 2019 Than Ngo - 1:1.8.15-8
-- added license file
-
-* Wed Mar 13 2019 Than Ngo - 1:1.8.15-7
-- added Requirement on dot
-
-* Thu Feb 14 2019 Than Ngo - 1:1.8.15-6
-- fixed bz#1677000, fixed multilib issue
-
-* Tue Feb 12 2019 Than Ngo - 1:1.8.15-5
-- fixed bz#1675288, doxygen 1.8.15 segfault
-
-* Fri Feb 08 2019 Than Ngo - 1:1.8.15-4
-- fixed bz#673228 - operator whitespace changes cause wxpython FTBFS
-- fixed bz#1673230 - BR on tex(newunicodechar.sty) in doxygen-latex
-
-* Tue Feb 05 2019 Than Ngo - 1:1.8.15-3
-- fixed bz#1671999, backported from upstream
-- added test for XML output with an empty TOC
-
-* Thu Jan 31 2019 Fedora Release Engineering - 1:1.8.15-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
-
-* Mon Jan 28 2019 Than Ngo - 1:1.8.15-1
-- update to 1.8.15
-
-* Thu Dec 06 2018 Than Ngo - 1:1.8.14-8
-- enable testing
-
-* Mon Jul 23 2018 Than Ngo - 1:1.8.14-7
-- add BR: gcc-c++ gcc
-
-* Thu Jul 12 2018 Fedora Release Engineering - 1:1.8.14-6
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
-
-* Wed Jun 27 2018 Than Ngo - 1:1.8.14-5
-- support Qt5
-
-* Wed Jun 20 2018 Than Ngo - 1.8.14-4
-- enble search addon on fedora
-
-* Mon Apr 30 2018 Than Ngo - 1.8.14-3
-- added missing BR on adjustbox.sty for refman
-
-* Wed Feb 07 2018 Fedora Release Engineering - 1:1.8.14-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
-
-* Fri Dec 29 2017 Than Ngo - 1:1.8.14-1
-- update to 1.8.14
-
-* Wed Aug 02 2017 Fedora Release Engineering - 1:1.8.13-12
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
-
-* Wed Jul 26 2017 Fedora Release Engineering - 1:1.8.13-11
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
-
-* Thu Jul 13 2017 Petr Pisar - 1:1.8.13-10
-- perl dependency renamed to perl-interpreter
-
-
* Tue Jul 04 2017 Than Ngo - 1:1.8.13-9
- backport to fix C# property initializer parsing
- backport to fix non reachable links and redirected links in documentation
diff --git a/sources b/sources
index 7883325..68d1ef2 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (doxywizard-icons.tar.xz) = 865a86d7535e64ad92e36ba1f901d51cd6b603e762e5c68761a45bc1f965a36e6a6c8d29468ecb2ec799f0add2347537723832aff6660c76af453f80a0a370ad
-SHA512 (doxygen-1.15.0.src.tar.gz) = e53cc8da6cf1fe3ca3b3637647ed6afa28365351eac81d010f6691d939df5e449b3d898a6f695dd850d12659dfd7018fc864071b30fbca5dd196dc094ec4371e
+SHA512 (doxygen-1.8.13.src.tar.gz) = 85da5bd28ad9f33a8e50fa92796817d31e59c024127cb647cb967e4321dd51378feaacdf099d578b7e6020fd646a3c63e99c77420e49e3894fc18ca89ba3e0a2
+SHA512 (doxywizard.png) = 42a7e5903bf27463d3b072cf043aef071b519b53054bbe647c522d5e499e02f554867ab5e9971b06493769cc17b9d1588462aeade284de1f9d579cf9f99e8851