From 4fb3b7b9582e6d5e9c34e0f854ca28b520c94936 Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Oct 31 2019 06:47:12 +0000 Subject: import doxygen-1.8.5-4.el7 --- diff --git a/.doxygen.metadata b/.doxygen.metadata new file mode 100644 index 0000000..dd1b8d9 --- /dev/null +++ b/.doxygen.metadata @@ -0,0 +1,2 @@ +1fc5ceec21122fe5037edee4c308ac94b59ee33e SOURCES/doxygen-1.8.5.src.tar.gz +94bc89bf18be85776e9aa8951713d5de211ed0d8 SOURCES/doxywizard.png diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..463b8a4 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +SOURCES/doxygen-1.8.5.src.tar.gz +SOURCES/doxywizard.png diff --git a/SOURCES/doxygen-1.8.3-multilib.patch b/SOURCES/doxygen-1.8.3-multilib.patch new file mode 100644 index 0000000..7cb1c92 --- /dev/null +++ b/SOURCES/doxygen-1.8.3-multilib.patch @@ -0,0 +1,43 @@ +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) diff --git a/SOURCES/doxygen-1.8.5-CVE-2016-10245-cross-site-scripting.patch b/SOURCES/doxygen-1.8.5-CVE-2016-10245-cross-site-scripting.patch new file mode 100644 index 0000000..5b4cd9c --- /dev/null +++ b/SOURCES/doxygen-1.8.5-CVE-2016-10245-cross-site-scripting.patch @@ -0,0 +1,11 @@ +diff -up doxygen-1.8.5/src/search_opensearch.php.than doxygen-1.8.5/src/search_opensearch.php +--- doxygen-1.8.5/src/search_opensearch.php.than 2019-07-25 13:23:49.988957523 +0200 ++++ doxygen-1.8.5/src/search_opensearch.php 2019-07-25 13:24:16.842105308 +0200 +@@ -3,6 +3,7 @@ require "search-functions.php"; + + $mode = array_key_exists('v', $_GET)?$_GET['v']:""; + $query = array_key_exists('query', $_GET)?$_GET['query']:""; ++$query = preg_replace("/[^a-zA-Z0-9\-\_\.\x80-\xFF]/i", " ", $query ); + + $query_results = run_query($query); + diff --git a/SOURCES/doxygen-1.8.5-bz#1483569.patch b/SOURCES/doxygen-1.8.5-bz#1483569.patch new file mode 100644 index 0000000..7fd14be --- /dev/null +++ b/SOURCES/doxygen-1.8.5-bz#1483569.patch @@ -0,0 +1,98 @@ +diff -up doxygen-1.8.5/src/scanner.l.than doxygen-1.8.5/src/scanner.l +--- doxygen-1.8.5/src/scanner.l.than 2017-08-21 18:24:54.220442124 +0200 ++++ doxygen-1.8.5/src/scanner.l 2017-08-21 18:25:01.241178886 +0200 +@@ -191,6 +191,7 @@ static QCString g_delimiter; + static int g_column; + + static int g_fencedSize=0; ++static bool g_nestedComment=0; + + //----------------------------------------------------------------------------- + +@@ -6155,23 +6156,27 @@ OPERATOR "operator"{B}*({ARITHOP}|{ASSI + docBlockName.at(1)='}'; + } + g_fencedSize=0; ++ g_nestedComment=FALSE; + BEGIN(DocCopyBlock); + } + "<"{PRE}">" { + docBlock+=yytext; + docBlockName="
";
+                                           g_fencedSize=0;
++                                          g_nestedComment=FALSE;
+   					  BEGIN(DocCopyBlock);
+   					}
+ {CMD}("verbatim"|"latexonly"|"htmlonly"|"xmlonly"|"manonly"|"dot"|"code")/[^a-z_A-Z0-9]	{ // verbatim command (which could contain nested comments!)
+                                           docBlock+=yytext;
+ 				          docBlockName=&yytext[1];
+                                           g_fencedSize=0;
++                                          g_nestedComment=FALSE;
+   					  BEGIN(DocCopyBlock);
+   					}
+ "~~~"[~]*                     {
+                                           docBlock+=yytext;
+                                           g_fencedSize=yyleng;
++                                          g_nestedComment=FALSE;
+                                           BEGIN(DocCopyBlock);
+                                         }
+ {B}*""                  {
+@@ -6179,6 +6184,7 @@ OPERATOR  "operator"{B}*({ARITHOP}|{ASSI
+ 					  {
+ 					    docBlock+=yytext;
+ 					    docBlockName="";
++                                            g_nestedComment=FALSE;
+ 					    BEGIN(DocCopyBlock);
+ 					  }
+ 					  else
+@@ -6240,12 +6246,32 @@ OPERATOR  "operator"{B}*({ARITHOP}|{ASSI
+                                             docBlock+=indent;
+                                           }
+   					}
+-^{B}*+"*"/{BN}*		{ // start of a comment line
++^{B}*"*"+/{BN}+"*"{BN}*	{ // start of a comment line with two *'s
+   					  if (docBlockName=="code")
+                                           {
+                                             QCString indent;
+-                                            indent.fill(' ',computeIndent(yytext,0)-1);
+-                                            docBlock+=indent+"*";
++                                            indent.fill(' ',computeIndent(yytext,0));
++                                            docBlock+=indent;
++                                          }
++                                          else
++					  {
++					    REJECT;
++					  }
++  					}
++^{B}*"*"+/{BN}*		{ // start of a comment line with one *
++  					  if (docBlockName=="code")
++                                          {
++                                            QCString indent;
++                                            if (g_nestedComment) // keep * it is part of the code
++                                            {
++                                              indent.fill(' ',computeIndent(yytext,-1));
++                                              docBlock+=indent+"*";
++                                            }
++                                            else // remove * it is part of the comment block
++                                            {
++                                              indent.fill(' ',computeIndent(yytext,0));
++                                              docBlock+=indent;
++                                            }
+                                           }
+                                           else
+ 					  {
+@@ -6263,6 +6289,14 @@ OPERATOR  "operator"{B}*({ARITHOP}|{ASSI
+   					  docBlock+=yytext;
+   					}
+ "/*"|"*/"|"//"		{
++                                          if (yytext[1]=='*')
++                                          {
++                                            g_nestedComment=TRUE;
++                                          }
++                                          else if (yytext[0]=='*')
++                                          {
++                                            g_nestedComment=FALSE;
++                                          }
+   					  docBlock+=yytext;
+ 					}
+ \n			{ // newline
diff --git a/SOURCES/doxygen-1.8.5-config.patch b/SOURCES/doxygen-1.8.5-config.patch
new file mode 100644
index 0000000..8c4c7ba
--- /dev/null
+++ b/SOURCES/doxygen-1.8.5-config.patch
@@ -0,0 +1,79 @@
+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 
+ 
+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++
diff --git a/SOURCES/doxygen-1.8.5-html_timestamp_default_false.patch b/SOURCES/doxygen-1.8.5-html_timestamp_default_false.patch
new file mode 100644
index 0000000..fd90b4d
--- /dev/null
+++ b/SOURCES/doxygen-1.8.5-html_timestamp_default_false.patch
@@ -0,0 +1,12 @@
+diff -up doxygen-1.8.5/src/configoptions.cpp.html_timestamp_default_false doxygen-1.8.5/src/configoptions.cpp
+--- doxygen-1.8.5/src/configoptions.cpp.html_timestamp_default_false	2013-08-26 16:07:23.000000000 +0200
++++ doxygen-1.8.5/src/configoptions.cpp	2013-08-26 18:31:40.000000000 +0200
+@@ -1499,7 +1499,7 @@ void addConfigOptions(Config *cfg)
+               "to NO can help when comparing the output of multiple runs.\n"
+               "The default value is: YES.\n"
+               "This tag requires that the tag GENERATE_HTML is set to YES.",
+-              TRUE
++              FALSE
+              );
+   cb->addDependency("GENERATE_HTML");
+   //----
diff --git a/SOURCES/doxywizard.desktop b/SOURCES/doxywizard.desktop
new file mode 100644
index 0000000..f3d0a4f
--- /dev/null
+++ b/SOURCES/doxywizard.desktop
@@ -0,0 +1,6 @@
+[Desktop Entry]
+Type=Application
+Exec=doxywizard
+Name=Doxygen Wizard
+Icon=doxywizard
+Categories=Qt;Development;
diff --git a/SPECS/doxygen.spec b/SPECS/doxygen.spec
new file mode 100644
index 0000000..4b5f4d8
--- /dev/null
+++ b/SPECS/doxygen.spec
@@ -0,0 +1,541 @@
+Summary: A documentation system for C/C++
+Name:    doxygen
+Epoch:   1
+Version: 1.8.5
+Release: 4%{?dist}
+
+# No version is specified.
+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.png
+Source2: doxywizard.desktop
+
+Patch1: doxygen-1.8.5-config.patch
+Patch2: doxygen-1.8.5-html_timestamp_default_false.patch 
+Patch3: doxygen-1.8.3-multilib.patch
+Patch4: doxygen-1.8.5-bz#1483569.patch
+Patch5: doxygen-1.8.5-CVE-2016-10245-cross-site-scripting.patch
+
+BuildRequires: perl
+BuildRequires: tex(dvips)
+BuildRequires: tex(latex)
+# arg, no safe/virtual provides for these
+BuildRequires: /usr/bin/epstopdf
+# Work around strange dependences in epstopdf packages (RHBZ#991699)
+BuildRequires: texlive-epstopdf
+BuildRequires: ghostscript
+BuildRequires: gettext
+BuildRequires: flex
+BuildRequires: bison
+BuildRequires: desktop-file-utils
+
+%description
+Doxygen can generate an online class browser (in HTML) and/or a
+reference manual (in LaTeX) from a set of documented source files. The
+documentation is extracted directly from the sources. Doxygen can
+also be configured to extract the code structure from undocumented
+source files.
+
+%package doxywizard
+Summary: A GUI for creating and editing configuration files
+Requires: %{name} = %{epoch}:%{version}-%{release}
+BuildRequires: qt4-devel
+%description doxywizard
+Doxywizard is a GUI for creating and editing configuration files that
+are used by doxygen.
+
+%package latex
+Summary: Support for producing latex/pdf output from doxygen
+Requires: %{name} = %{epoch}:%{version}-%{release}
+Requires: tex(latex)
+%if 0%{?fedora} > 17 || 0%{?rhel} > 6
+Requires: tex(multirow.sty)
+Requires: tex(sectsty.sty)
+Requires: tex(tocloft.sty)
+Requires: tex(xtab.sty)
+%endif
+%description latex
+%{summary}.
+
+
+%prep
+%setup -q
+
+%patch1 -p1 -b .config
+%patch2 -p1 -b .html_timestamp_default_false
+%patch3 -p1 -b .multilib
+%patch4 -p1 -b .bz#1483569-incorrect-processing-of-code-blocks
+%patch5 -p1 -b .CVE-2016-10245-cross-site-scripting 
+
+# 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.HOWT
+
+
+%build
+unset QTDIR
+
+# not autoconf-based, can't use %%configure macro
+./configure \
+   --prefix %{_prefix} \
+   --shared \
+   --with-doxywizard \
+   --release
+
+# workaround for "Error: operand out of range", language.cpp needs to be splitted
+%ifarch ppc64
+make -C src Makefile.libdoxygen
+sed -i -e "s|-o ../objects/language.o|-fno-merge-constants -fsection-anchors -o ../objects/language.o|" src/Makefile.libdoxygen
+%endif
+
+make %{?_smp_mflags} all
+make docs
+
+
+%install
+make install DESTDIR=%{buildroot}
+make doxywizard_install DESTDIR=%{buildroot}
+
+install -m644 -p -D %{SOURCE1} %{buildroot}%{_datadir}/pixmaps/doxywizard.png
+install -m644 -p doc/doxywizard.1 %{buildroot}%{_mandir}/man1/
+
+desktop-file-install \
+   --dir=%{buildroot}%{_datadir}/applications %{SOURCE2}
+
+
+%files
+%doc LANGUAGE.HOWTO README.md examples
+%doc html
+%{_bindir}/doxygen
+%{_mandir}/man1/doxygen.1*
+
+%files doxywizard
+%{_bindir}/doxywizard
+%{_mandir}/man1/doxywizard*
+%{_datadir}/applications/doxywizard.desktop
+%{_datadir}/pixmaps/doxywizard.png
+
+%files latex
+# intentionally left blank
+
+
+%changelog
+* Mon Jul 29 2019 Than Ngo  - 1:1.8.5-4
+- Resolves: #1483569, incorrect processing of code blocks
+- Resolves: #1724173 - CVE-2016-10245, cross-site scripting
+
+* Fri Jan 24 2014 Daniel Mach  - 1:1.8.5-3
+- Mass rebuild 2014-01-24
+
+* Fri Dec 27 2013 Daniel Mach  - 1:1.8.5-2
+- Mass rebuild 2013-12-27
+
+* Wed Aug 28 2013 Than Ngo  - 1:1.8.5-1
+- 1.8.5
+
+* Thu Aug 01 2013 Than Ngo  - 1:1.8.4-3
+- backport upstream patches to fix issues:
+   * Generated XML is malformed
+   * Missing space before optional option in method argument list
+   * Closing ) of function in function documentation is in wrong color
+   * Segmentation fault parsing a fortran file
+
+* Mon Jun 24 2013 Than Ngo  - 1:1.8.4-2
+- backport upstream patch to fix endless loop
+
+* Tue May 21 2013 Than Ngo  - 1:1.8.4-1
+- 1.8.4
+
+* Wed Feb 13 2013 Fedora Release Engineering  - 1:1.8.3.1-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
+
+* Tue Jan 22 2013 Than Ngo  - 1.8.3.1-1
+- 1.8.3.1
+- fedora/rhel condition
+
+* Tue Jan 08 2013 Rex Dieter  - 1:1.8.3-3
+- -latex subpkg (#892288)
+- .spec cleanup
+
+* Thu Jan 03 2013 Rex Dieter  - 1:1.8.3-2
+- doxygen is missing dependencies for texlive update (#891452)
+- doxywizard: tighten dep on main pkg
+
+* Wed Jan 02 2013 Than Ngo  - 1:1.8.3-1
+- 1.8.3
+
+* Mon Aug 13 2012 Than Ngo  - 1:1.8.2-1
+- 1.8.2
+
+* Mon Jul 30 2012 Than Ngo  - 1:1.8.1.2-1
+- 1.8.1.2
+
+* Wed Jul 18 2012 Fedora Release Engineering  - 1:1.8.1.1-4
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
+
+* Wed Jun 20 2012 Than Ngo  - 1:1.8.1.1-3
+- bz#832525, fix multilib issue
+
+* Wed Jun 13 2012 Rex Dieter  1:1.8.1.1-2
+- make HTML_TIMESTAMP default FALSE
+
+* Mon Jun 11 2012 Than Ngo  - 1:1.8.1.1-1
+- 1.8.1.1
+
+* Wed Jun 06 2012 Than Ngo  - 1:1.8.1-1
+- 1.8.1
+
+* Mon Feb 27 2012 Than Ngo  - 1:1.8.0-1
+- 1.8.0
+
+* Wed Jan 18 2012 Than Ngo  - 1:1.7.6.1-2
+- bz#772523, add desktop file
+
+* Fri Dec 16 2011 Than Ngo  - 1:1.7.6.1-1
+- 1.7.6.1
+
+* Tue Dec 06 2011 Than Ngo  - 1:1.7.6-1
+- 1.7.6
+
+* Tue Nov 08 2011 Than Ngo  - 1:1.7.5.1-1
+- 1.7.5.1
+
+* Tue Aug 23 2011 Than Ngo  - 1:1.7.5-1
+- 1.7.5
+
+* Mon Jun 27 2011 Than Ngo  - 1:1.7.4-2
+- bz#688684, apply patch to fix crash when not generating man format
+
+* Tue Mar 29 2011 Than Ngo  - 1.7.4-1
+- 1.7.4
+
+* Tue Feb 08 2011 Fedora Release Engineering  - 1:1.7.3-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
+
+* Mon Jan 17 2011 Than Ngo  - 1.7.3-1
+- 1.7.3
+- bz#661107
+
+* Fri Nov 12 2010 Rex Dieter  - 1.7.2-2
+- Wrong Buildrequire to qt-devel (#651064)
+
+* Mon Oct 11 2010 Than Ngo  - 1.7.2-1
+- 1.7.2
+
+* Wed Sep 08 2010 Than Ngo  - 1:1.7.1-2
+- bz#629286, apply patch to fix broken thread handling
+- bz#627553, #define in included file in different directory not handled properly
+- Inherited documentation doesn't work in case of multiple inheritance
+
+* Mon Jul 19 2010 Than Ngo  - 1.7.1-1
+- 1.7.1
+
+* Fri Feb 12 2010 Than Ngo  - 1.6.2-1.svn20100208
+- fix #555526, snapshot 1.6.2-20100208
+
+* Mon Jan 04 2010 Than Ngo  - 1:1.6.2-1
+- 1.6.2
+
+* Fri Dec 18 2009 Than Ngo  - 1:1.6.1-4
+- drop _default_patch_fuzz
+
+* Fri Dec 18 2009 Than Ngo  - 1:1.6.1-3
+- bz#225709, merged review
+
+* Fri Dec 11 2009 Than Ngo  - 1:1.6.1-2
+- bz#225709, merged review 
+
+* Tue Aug 25 2009 Than Ngo  - 1.6.1-1
+- 1.6.1
+
+* Mon Aug 24 2009 Than Ngo  - 1.6.0-2
+- fix #516339, allow to enable/disable timstamp to avoid the multilib issue
+  HTMP_TIMESTAMP is disable by default
+
+* Fri Aug 21 2009 Than Ngo  - 1.6.0-1
+- 1.6.0
+
+* Mon Aug 10 2009 Ville Skyttä  - 1:1.5.9-3
+- Convert specfile to UTF-8.
+
+* Fri Jul 24 2009 Fedora Release Engineering  - 1:1.5.9-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
+
+* Fri Jul 03 2009 Than Ngo  - 1.5.9-1
+- 1.5.9
+
+* Tue Feb 24 2009 Fedora Release Engineering  - 1:1.5.8-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
+
+* Thu Feb 05 2009 Than Ngo  1.5.8-1
+- 1.5.8
+
+* Mon Oct 06 2008 Than Ngo  1.5.7.1-1
+- 1.5.7.1
+
+* Wed Jul 16 2008 Tom "spot" Callaway  1.5.6-3
+- fix license tag
+
+* Wed May 21 2008 Than Ngo  1.5.6-2
+- rebuild
+
+* Mon May 19 2008 Than Ngo  1.5.6-1
+- 1.5.6
+
+* Fri Mar 14 2008 Than Ngo  1.5.5-3
+- apply patch to not break partial include paths, thanks to Tim Niemueller
+
+* Wed Feb 20 2008 Than Ngo  1.5.5-2
+- apply patch to make doxygen using system libpng/zlib
+
+* Fri Feb 15 2008 Than Ngo  1.5.5-1
+- 1.5.5
+
+* Wed Nov 28 2007 Than Ngo  1.5.4-1
+- 1.5.4
+
+* Fri Aug 10 2007 Than Ngo  - 1:1.5.3-1
+- 1.5.3
+
+* Thu Apr 12 2007 Than Ngo  - 1:1.5.2-1
+- 1.5.2
+
+* Fri Nov 03 2006 Than Ngo  1:1.5.1-2
+- 1.5.1
+
+* Wed Jul 12 2006 Jesse Keating  - 1:1.4.7-1.1
+- rebuild
+
+* Mon Jun 12 2006 Than Ngo  1:1.4.7-1
+- update to 1.4.7
+
+* Thu Jun 08 2006 Than Ngo  1:1.4.6-5
+- fix build problem in mock #193358 
+
+* Fri May 12 2006 Than Ngo  1:1.4.6-4
+- apply patch to fix Doxygen crash on empty file #191392 
+- html docs #187177 
+
+* Wed Mar 08 2006 Than Ngo  1:1.4.6-3
+- fix typo bug #184400
+
+* Mon Mar 06 2006 Than Ngo  1:1.4.6-2
+- fix build problem #184042
+
+* Fri Feb 10 2006 Jesse Keating  - 1:1.4.6-1.2
+- bump again for double-long bug on ppc(64)
+
+* Tue Feb 07 2006 Jesse Keating  - 1:1.4.6-1.1
+- rebuilt for new gcc4.1 snapshot and glibc changes
+
+* Tue Jan 31 2006 Than Ngo  1.4.6-1
+- 1.4.6
+
+* Mon Dec 19 2005 Than Ngo  1.4.5-3
+- apply patch to fix build problem with gcc-4.1
+
+* Fri Dec 09 2005 Jesse Keating 
+- rebuilt
+
+* Fri Nov 18 2005 Bill Nottingham 
+- fix references to /usr/X11R6
+
+* Sat Oct 15 2005 Florian La Roche 
+- 1.4.5
+
+* Mon Sep 19 2005 Than Ngo  1:1.4.4-2
+- move doxywizard man page to subpackge doxywizard
+
+* Thu Jul 21 2005 Than Ngo  1:1.4.4-1
+- update to 1.4.4
+
+* Tue Jun 14 2005 Than Ngo  1.4.3-1
+- 1.4.3
+
+* Thu Mar 31 2005 Than Ngo  1:1.4.2-1
+- 1.4.2
+
+* Fri Mar 04 2005 Than Ngo  1:1.4.1-2
+- rebuilt against gcc-4
+
+* Wed Jan 19 2005 Than Ngo  1:1.4.1-1
+- update to 1.4.1
+
+* Sun Oct 10 2004 Than Ngo  1:1.3.9.1-1
+- update to 1.3.9.1
+
+* Wed Oct 06 2004 Than Ngo  1:1.3.9-1
+- update to 1.3.9
+
+* Sun Jul 25 2004 Than Ngo  1:1.3.8-1
+- update to 1.3.8
+
+* Tue Jun 15 2004 Elliot Lee 
+- rebuilt
+
+* Tue May 11 2004 Than Ngo  1.3.7-1
+- update to 1.3.7, bug #119340
+
+* Sun Apr 04 2004 Than Ngo  1:1.3.6-2
+- fix qt-mt linking problem
+
+* Thu Feb 26 2004 Than Ngo  1:1.3.6-1
+- update to 1.3.6
+- added more buildrequires, #110752
+
+* Fri Feb 13 2004 Elliot Lee 
+- rebuilt
+
+* Wed Dec 17 2003 Than Ngo  1:1.3.5-1
+- 1.3.5 release
+
+* Fri Sep 26 2003 Harald Hoyer  1:1.3.4-1
+- update to 1.3.4
+- doxsearch was removed
+
+* Tue Sep 23 2003 Florian La Roche 
+- allow compiling without qt/doxywizard
+
+* Wed Jun 04 2003 Elliot Lee 
+- rebuilt
+
+* Tue Jun  3 2003 Jeff Johnson 
+- add explicit epoch's where needed.
+
+* Tue May  6 2003 Than Ngo  1.3-1
+- 1.3
+
+* Wed Jan 22 2003 Tim Powers 
+- rebuilt
+
+* Fri Dec 27 2002 Than Ngo  1.2.18-2
+- use gnu install
+
+* Sat Nov  9 2002 Than Ngo  1.2.18-1.2
+- fix some build problem
+
+* Tue Oct 15 2002 Than Ngo  1.2.18-1
+- 1.2.18
+
+* Wed Aug 28 2002 Than Ngo  1.2.17-1
+- 1.2.17 fixes many major bugs
+
+* Sat Aug 10 2002 Elliot Lee 
+- rebuilt with gcc-3.2 (we hope)
+
+* Mon Jul 22 2002 Tim Powers 
+- rebuild using gcc-3.2-0.1
+
+* Fri Jun 21 2002 Tim Powers 
+- automated rebuild
+
+* Thu May 23 2002 Tim Powers 
+- automated rebuild
+
+* Tue Apr 16 2002 Bernhard Rosenkraenzer  1.2.13-5
+- rebuild against qt 3.0.3-10
+
+* Fri Mar  8 2002 Bernhard Rosenkraenzer  1.2.13-4
+- rebuild against qt 3.0.2
+
+* Tue Feb 26 2002 Than Ngo  1.2.14-2
+- rebuild against qt 2.3.2
+
+* Tue Feb 19 2002 Bernhard Rosenkraenzer  1.2.14-1
+- 1.2.14
+
+* Wed Jan 09 2002 Tim Powers 
+- automated rebuild
+
+* Sun Jan 06 2002 Than Ngo  1.2.13.1-1
+- update to 1.2.13.1
+- fixed build doxywizard with qt3
+
+* Sun Dec 30 2001 Jeff Johnson  1.2.13-1
+- update to 1.2.13
+
+* Sun Nov 18 2001 Than Ngo  1.2.12-1
+- update to 1.2.12
+- s/Copyright/License
+
+* Wed Sep 12 2001 Tim Powers 
+- rebuild with new gcc and binutils
+
+* Wed Jun 13 2001 Than Ngo 
+- update tp 1.2.8.1
+- make doxywizard as separat package
+- fix to use install as default
+
+* Tue Jun 05 2001 Than Ngo 
+- update to 1.2.8
+
+* Tue May 01 2001 Than Ngo 
+- update to 1.2.7
+- clean up specfile
+- patch to use RPM_OPT_FLAG
+
+* Wed Mar 14 2001 Jeff Johnson 
+- update to 1.2.6
+
+* Wed Feb 28 2001 Trond Eivind Glomsrød 
+- rebuild
+
+* Tue Dec 26 2000 Than Ngo 
+- update to 1.2.4
+- remove excludearch ia64
+- bzip2 sources
+
+* Mon Dec 11 2000 Than Ngo 
+- rebuild with the fixed fileutils
+
+* Mon Oct 30 2000 Jeff Johnson 
+- update to 1.2.3.
+
+* Sun Oct  8 2000 Jeff Johnson 
+- update to 1.2.2.
+- enable doxywizard.
+
+* Sat Aug 19 2000 Preston Brown 
+- 1.2.1 is latest stable, so we upgrade before Winston is released.
+
+* Wed Jul 12 2000 Prospector 
+- automatic rebuild
+
+* Tue Jul  4 2000 Jakub Jelinek 
+- Rebuild with new C++
+
+* Fri Jun 30 2000 Florian La Roche 
+- fix QTDIR detection
+
+* Fri Jun 09 2000 Preston Brown 
+- compile on x86 w/o optimization, revert when compiler fixed!!
+
+* Wed Jun 07 2000 Preston Brown 
+- use newer RPM macros
+
+* Tue Jun  6 2000 Jeff Johnson 
+- add to distro.
+
+* Tue May  9 2000 Tim Powers 
+- rebuilt for 7.0
+
+* Wed Feb  2 2000 Bernhard Rosenkraenzer 
+- recompile with current Qt (2.1.0/1.45)
+
+* Wed Jan  5 2000 Jeff Johnson 
+- update to 1.0.0.
+- recompile with qt-2.0.1 if available.
+- relocatable package.
+
+* Mon Nov  8 1999 Tim Powers 
+-updated to 0.49-991106
+
+* Tue Jul 13 1999 Tim Powers 
+- updated source
+- cleaned up some stuff in the spec file
+
+* Thu Apr 22 1999 Jeff Johnson 
+- Create Power Tools 6.0 package.