--- /dev/null
+###############################################################################
+# IPFire.org - An Open Source Firewall Solution #
+# Copyright (C) - IPFire Development Team <info@ipfire.org> #
+###############################################################################
+
+name = doxygen
+version = 1.8.4
+release = 1
+
+groups = Development/Tools
+url = http://www.stack.nl/~dimitri/doxygen/index.html
+license = GPL+
+summary = A documentation system for C/C++.
+
+description
+ Doxygen can generate an online class browser (in HTML) and/or a
+ reference manual (in LaTeX) from a set of documented source files.
+end
+
+source_dl = ftp://ftp.stack.nl/pub/users/dimitri/
+sources = %{name}-%{version}.src.tar.gz
+
+build
+ requires
+ /usr/bin/perl
+ bison
+ flex
+ end
+
+ # Not autoconf-based, so we cannot use our default configure macro.
+ configure_options = \
+ --prefix %{prefix} \
+ --shared \
+ --release
+
+ # Use or CFLAGS.
+ make_build_targets += \
+ CFLAGS="%{CFLAGS}"
+end
+
+packages
+ package %{name}
+
+ package %{name}-debuginfo
+ template DEBUGINFO
+ end
+end
--- /dev/null
+commit 5e056236c9ef3b3675d014cab43480700027d60b
+Author: Dimitri van Heesch <dimitri@stack.nl>
+Date: Thu May 30 20:01:15 2013 +0200
+
+ Bug 701295 - Doxygen 1.8.4 goes into an endless loop
+
+diff --git a/src/util.cpp b/src/util.cpp
+index 0d70d43..0c36fc0 100644
+--- a/src/util.cpp
++++ b/src/util.cpp
+@@ -1843,11 +1843,15 @@ int findParameterList(const QString &name)
+ ++templateDepth;
+ pos=nextOpenPos-1;
+ }
+- else
++ else if (nextClosePos!=-1)
+ {
+ --templateDepth;
+ pos=nextClosePos-1;
+ }
++ else // more >'s than <'s, see bug701295
++ {
++ return -1;
++ }
+ }
+ else
+ {
--- /dev/null
+diff -up doxygen-1.8.1.1/src/configoptions.cpp.html_timestamp_off.patch doxygen-1.8.1.1/src/configoptions.cpp
+--- doxygen-1.8.1.1/src/configoptions.cpp.html_timestamp_off.patch 2012-06-09 06:41:04.000000000 -0500
++++ doxygen-1.8.1.1/src/configoptions.cpp 2012-06-13 13:31:15.291500215 -0500
+@@ -1270,7 +1270,7 @@ void addConfigOptions(Config *cfg)
+ "If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML\n"
+ "page will contain the date and time when the page was generated. Setting\n"
+ "this to NO can help when comparing the output of multiple runs.",
+- TRUE
++ FALSE
+ );
+ cb->addDependency("GENERATE_HTML");
+ //----
--- /dev/null
+diff -up doxygen-1.8.3/src/htmlgen.cpp.multilib doxygen-1.8.3/src/htmlgen.cpp
+--- doxygen-1.8.3/src/htmlgen.cpp.multilib 2012-12-25 11:27:52.000000000 +0100
++++ doxygen-1.8.3/src/htmlgen.cpp 2013-01-02 17:08:57.559028518 +0100
+@@ -125,6 +125,17 @@ static unsigned char tab_b_png[36] =
+ 205, 207, 209, 211, 213, 217, 219, 206, 188
+ };
+
++static unsigned char nav_g_png[95] = {
++0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
++0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x06,
++0x08, 0x06, 0x00, 0x00, 0x00, 0x02, 0x10, 0xf4, 0x31, 0x00, 0x00, 0x00,
++0x26, 0x49, 0x44, 0x41, 0x54, 0x78, 0x01, 0xed, 0xdd, 0x31, 0x0d, 0x00,
++0x00, 0x08, 0x03, 0xc1, 0x4f, 0x48, 0x17, 0x66, 0x84, 0xe1, 0x5f, 0x0d,
++0x2d, 0x3e, 0x7e, 0xb8, 0xe5, 0x4d, 0x20, 0x69, 0xcb, 0x4d, 0xe8, 0xc0,
++0x83, 0x07, 0x07, 0x0f, 0x53, 0x00, 0xbd, 0xfc, 0x82, 0x3c, 0x05, 0x00,
++0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
++};
++
+ // hovering tab background luma
+ static unsigned char tab_h_png[36] =
+ {
+@@ -824,6 +835,7 @@ static ColoredImgDataItem colored_tab_da
+ { "tab_s.png", 1, 36, tab_s_png, 0 },
+ { "nav_h.png", 1, 12, header_png, 0 },
+ { "nav_f.png", 1, 56, func_header_png, 0 },
++ { "nav_g.png", 1, 6, nav_g_png, 0 },
+ { "bc_s.png", 8, 30, bc_s_png, bc_s_a_png },
+ { "doxygen.png", 104,31, doxygen_png, doxygen_a_png },
+ { "closed.png", 9, 9, closed_png, closed_a_png },
+@@ -1502,13 +1514,6 @@ void HtmlGenerator::writeTabData()
+ Doxygen::indexList->addStyleSheetFile("tabs.css");
+ QCString dname=Config_getString("HTML_OUTPUT");
+ writeColoredImgData(dname,colored_tab_data);
+-
+- {
+- unsigned char shadow[6] = { 5, 5, 5, 5, 5, 5 };
+- unsigned char shadow_alpha[6] = { 80, 60, 40, 20, 10, 0 };
+- ColoredImage img(1,6,shadow,shadow_alpha,0,0,100);
+- img.save(dname+"/nav_g.png");
+- }
+ }
+
+ void HtmlGenerator::writeSearchData(const char *dir)
--- /dev/null
+diff -up doxygen-1.8.4/addon/doxywizard/Makefile.in.config doxygen-1.8.4/addon/doxywizard/Makefile.in
+--- doxygen-1.8.4/addon/doxywizard/Makefile.in.config 2013-01-05 16:35:52.000000000 +0100
++++ doxygen-1.8.4/addon/doxywizard/Makefile.in 2013-05-21 12:22:49.689166894 +0200
+@@ -10,8 +10,6 @@
+ # See the GNU General Public License for more details.
+ #
+
+-QMAKE=qmake $(MKSPECS)
+-
+ all: Makefile.doxywizard
+ $(MAKE) -f Makefile.doxywizard
+
+@@ -29,11 +27,11 @@ distclean: Makefile.doxywizard
+ $(RM) Makefile.doxywizard
+
+ install:
+- $(INSTTOOL) -d $(INSTALL)/bin
+- $(INSTTOOL) -m 755 ../../bin/doxywizard $(INSTALL)/bin
+- $(INSTTOOL) -d $(INSTALL)/$(MAN1DIR)
++ $(INSTTOOL) -d $(DESTDIR)$(INSTALL)/bin
++ $(INSTTOOL) -m 755 ../../bin/doxywizard $(DESTDIR)$(INSTALL)/bin
++ $(INSTTOOL) -d $(DESTDIR)$(INSTALL)/$(MAN1DIR)
+ cat ../../doc/doxywizard.1 | sed -e "s/DATE/$(DATE)/g" -e "s/VERSION/$(VERSION)/g" > doxywizard.1
+- $(INSTTOOL) -m 644 doxywizard.1 $(INSTALL)/$(MAN1DIR)/doxywizard.1
++ $(INSTTOOL) -m 644 doxywizard.1 $(DESTDIR)$(INSTALL)/$(MAN1DIR)/doxywizard.1
+ rm doxywizard.1
+
+ FORCE:
+diff -up doxygen-1.8.4/configure.config doxygen-1.8.4/configure
+--- doxygen-1.8.4/configure.config 2013-05-19 12:05:39.000000000 +0200
++++ doxygen-1.8.4/configure 2013-05-21 12:25:43.570743493 +0200
+@@ -296,9 +296,10 @@ if test "$f_wizard" = YES; then
+ if test -z "$QTDIR"; then
+ echo " QTDIR environment variable not set!"
+ printf " Checking for Qt..."
+- for d in /usr/{lib,share,qt}/{qt-4,qt4,qt,qt*,4} /usr; do
++ for d in /usr/{lib64,lib,share,qt}/{qt-4,qt4,qt,qt*,4} /usr; do
+ if test -x "$d/bin/qmake"; then
+ QTDIR=$d
++ QMAKE=$d/bin/qmake
+ fi
+ done
+ else
+@@ -606,6 +607,8 @@ INSTTOOL = $f_insttool
+ DOXYDOCS = ..
+ DOCDIR = $f_docdir
+ QTDIR = $QTDIR
++QMAKE = $QMAKE
++MAN1DIR = share/man/man1
+ EOF
+
+ if test "$f_dot" != NO; then
+diff -up doxygen-1.8.4/Makefile.in.config doxygen-1.8.4/Makefile.in
+--- doxygen-1.8.4/Makefile.in.config 2013-04-25 21:38:39.000000000 +0200
++++ doxygen-1.8.4/Makefile.in 2013-05-21 12:22:49.689166894 +0200
+@@ -53,8 +53,6 @@ distclean: clean
+
+ DATE=$(shell date "+%B %Y")
+
+-MAN1DIR = man/man1
+-
+ install: doxywizard_install doxysearch_install
+ $(INSTTOOL) -d $(DESTDIR)/$(INSTALL)/bin
+ $(INSTTOOL) -m 755 bin/doxygen $(DESTDIR)/$(INSTALL)/bin
+diff -up doxygen-1.8.4/tmake/lib/linux-g++/tmake.conf.config doxygen-1.8.4/tmake/lib/linux-g++/tmake.conf
+--- doxygen-1.8.4/tmake/lib/linux-g++/tmake.conf.config 2012-12-22 19:49:04.000000000 +0100
++++ doxygen-1.8.4/tmake/lib/linux-g++/tmake.conf 2013-05-21 12:22:49.689166894 +0200
+@@ -11,7 +11,7 @@ TMAKE_CC = gcc
+ TMAKE_CFLAGS = -pipe
+ TMAKE_CFLAGS_WARN_ON = -Wall -W
+ TMAKE_CFLAGS_WARN_OFF =
+-TMAKE_CFLAGS_RELEASE = -O2
++TMAKE_CFLAGS_RELEASE = $(RPM_OPT_FLAGS)
+ TMAKE_CFLAGS_DEBUG = -g
+ TMAKE_CFLAGS_SHLIB = -fPIC
+ TMAKE_CFLAGS_YACC = -Wno-unused -Wno-parentheses
+@@ -27,12 +27,12 @@ TMAKE_CXXFLAGS_YACC = $$TMAKE_CFLAGS_YAC
+
+ TMAKE_INCDIR =
+ TMAKE_LIBDIR =
+-TMAKE_INCDIR_X11 = /usr/X11R6/include
+-TMAKE_LIBDIR_X11 = /usr/X11R6/lib
+-TMAKE_INCDIR_QT = $(QTDIR)/include
+-TMAKE_LIBDIR_QT = $(QTDIR)/lib
+-TMAKE_INCDIR_OPENGL = /usr/X11R6/include
+-TMAKE_LIBDIR_OPENGL = /usr/X11R6/lib
++TMAKE_INCDIR_X11 =
++TMAKE_LIBDIR_X11 =
++TMAKE_INCDIR_QT =
++TMAKE_LIBDIR_QT =
++TMAKE_INCDIR_OPENGL =
++TMAKE_LIBDIR_OPENGL =
+
+ TMAKE_LINK = g++
+ TMAKE_LINK_SHLIB = g++