From 3a587564e6443d0825b28124de291e4c196a35ce Mon Sep 17 00:00:00 2001 From: Than Ngo Date: Thu, 13 Nov 2025 17:10:42 +0100 Subject: [PATCH 1/2] Update to 1.15.0 --- .gitignore | 1 + doxygen-input-buffer-overflow.patch | 88 ----------------------------- doxygen.spec | 24 ++++---- sources | 2 +- 4 files changed, 13 insertions(+), 102 deletions(-) delete mode 100644 doxygen-input-buffer-overflow.patch diff --git a/.gitignore b/.gitignore index dda132d..a007b45 100644 --- a/.gitignore +++ b/.gitignore @@ -68,3 +68,4 @@ doxygen-1.7.1.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/doxygen-input-buffer-overflow.patch b/doxygen-input-buffer-overflow.patch deleted file mode 100644 index 207f71c..0000000 --- a/doxygen-input-buffer-overflow.patch +++ /dev/null @@ -1,88 +0,0 @@ -commit f519f8f92d3925f2b58a93e555da3720c09af56c -Author: albert-github -Date: Sun Jun 22 12:35:03 2025 +0200 - - Input buffer overflow - - When having a, very, long string as an argument in e.g. PHP or C++ we get am error like: - ``` - input buffer overflow, can't enlarge buffer because scanner uses REJECT - ``` - which can be overcome by enlarging the lex buffers (CMake option `enlarge_lex_buffers`) but is also possible to limit the search pattern from a `+` pattern to a number of elements `{1,n}` pattern. - - For PHP the string argument should, analogous to C++ not be a copy rule but a skip rule (`scanner.l`) - -diff --git a/src/code.l b/src/code.l -index a2020eb14..4fb0c0fd5 100644 ---- a/src/code.l -+++ b/src/code.l -@@ -1279,10 +1279,10 @@ ENDQopt ("const"|"volatile"|"sealed"|"override")({BN}+("const"|"volatile"|"seale - yyextra->inForEachExpression = FALSE; - BEGIN( SkipStringS ); - } --[^\"\\\r\n]* { -+[^\"\\\r\n]{1,100} { - yyextra->code->codify(yytext); - } --[^\'\\\r\n]* { -+[^\'\\\r\n]{1,100} { - yyextra->code->codify(yytext); - } - {CPPC}|{CCS} { -diff --git a/src/pre.l b/src/pre.l -index dc155aa6f..9edf21727 100644 ---- a/src/pre.l -+++ b/src/pre.l -@@ -607,10 +607,10 @@ WSopt [ \t\r]* - outputChar(yyscanner,*yytext); - BEGIN( CopyStringFtn ); - } --[^\"\\\r\n]+ { -+[^\"\\\r\n]{1,1000} { - outputArray(yyscanner,yytext,yyleng); - } --[^\"\r\n]+ { -+[^\"\r\n]{1,1000} { - outputArray(yyscanner,yytext,yyleng); - } - \"\" { -@@ -623,7 +623,7 @@ WSopt [ \t\r]* - outputChar(yyscanner,*yytext); - BEGIN( CopyLine ); - } --[^\"\\\r\n]+ { -+[^\"\\\r\n]{1,1000} { - outputArray(yyscanner,yytext,yyleng); - } - \\. { -@@ -633,7 +633,7 @@ WSopt [ \t\r]* - outputChar(yyscanner,*yytext); - BEGIN( CopyLine ); - } --[^\'\\\r\n]+ { -+[^\'\\\r\n]{1,1000} { - outputArray(yyscanner,yytext,yyleng); - } - \\. { -@@ -652,7 +652,7 @@ WSopt [ \t\r]* - BEGIN( CopyLine ); - } - } --[^)]+ { -+[^)]{1,1000} { - outputArray(yyscanner,yytext,yyleng); - } - . { -diff --git a/src/scanner.l b/src/scanner.l -index a6a70d25c..3c8b887d4 100644 ---- a/src/scanner.l -+++ b/src/scanner.l -@@ -5141,7 +5141,7 @@ NONLopt [^\n]* - if (yyextra->insidePHP) - { - yyextra->lastCopyArgStringContext=YY_START; -- BEGIN(CopyArgPHPString); -+ BEGIN(SkipPHPString); - } - } - "<="|">="|"<=>" { diff --git a/doxygen.spec b/doxygen.spec index dc59bc0..7818615 100644 --- a/doxygen.spec +++ b/doxygen.spec @@ -16,8 +16,8 @@ Summary: A documentation system for C/C++ Name: doxygen Epoch: 2 -Version: 1.14.0 -Release: 4%{?dist} +Version: 1.15.0 +Release: 1%{?dist} # No version is specified. License: GPL-2.0-or-later Url: https://github.com/doxygen @@ -30,8 +30,6 @@ Source3: README.rpm-packaging Source4: doxygen-unbundler # upstream fixes -# fix input buffer overflow -Patch1: doxygen-input-buffer-overflow.patch BuildRequires: %{_bindir}/python3 BuildRequires: perl-interpreter, perl-open @@ -158,7 +156,8 @@ Javascript files for use by locally installed Doxygen documentation. %package doxywizard Summary: A GUI for creating and editing configuration files Requires: %{name} = %{epoch}:%{version}-%{release} -BuildRequires: qt5-qtbase-devel +BuildRequires: qt6-qtbase-devel +BuildRequires: qt6-qtsvg-devel %description doxywizard Doxywizard is a GUI for creating and editing configuration files that @@ -244,11 +243,6 @@ Requires: texlive-epstopdf %prep %autosetup -p1 -a2 -# 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 @@ -296,8 +290,8 @@ rm -f %{buildroot}/%{_mandir}/man1/doxyindexer.1* %{buildroot}/%{_mandir}/man1/d rm -rf %{buildroot}/%{_docdir}/packages # Install the asset files. -install -m644 -D --target-directory=%{buildroot}%{_jsdir}/doxygen \ - templates/html/*.js +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' @@ -305,7 +299,8 @@ cat > %{buildroot}%{_rpmconfigdir}/macros.d/macros.doxygen <<'EOF' %%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 the unbundler script. install -m755 -D --target-directory=%{buildroot}%{_rpmconfigdir}/redhat %{SOURCE4} %check @@ -345,6 +340,9 @@ 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 diff --git a/sources b/sources index 2757144..7883325 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (doxywizard-icons.tar.xz) = 865a86d7535e64ad92e36ba1f901d51cd6b603e762e5c68761a45bc1f965a36e6a6c8d29468ecb2ec799f0add2347537723832aff6660c76af453f80a0a370ad -SHA512 (doxygen-1.14.0.src.tar.gz) = b042f7f731cd17bea55f7393dd90433f49fa296a61054950c2e1457ff1d57e218706cbc4f5248f42c2242bf1acccd91e88cf545ca394a31a4d2d8b7f5954baa9 +SHA512 (doxygen-1.15.0.src.tar.gz) = e53cc8da6cf1fe3ca3b3637647ed6afa28365351eac81d010f6691d939df5e449b3d898a6f695dd850d12659dfd7018fc864071b30fbca5dd196dc094ec4371e From 85c97611b98da4745fe26a06a6a0b6a1c218f49a Mon Sep 17 00:00:00 2001 From: Than Ngo Date: Fri, 28 Nov 2025 16:27:54 +0100 Subject: [PATCH 2/2] Fix rhbz#2416173, Rebuilt against llvm-21 --- doxygen.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/doxygen.spec b/doxygen.spec index dc59bc0..ec551d2 100644 --- a/doxygen.spec +++ b/doxygen.spec @@ -17,7 +17,7 @@ Summary: A documentation system for C/C++ Name: doxygen Epoch: 2 Version: 1.14.0 -Release: 4%{?dist} +Release: 5%{?dist} # No version is specified. License: GPL-2.0-or-later Url: https://github.com/doxygen @@ -345,6 +345,9 @@ install -m755 -D --target-directory=%{buildroot}%{_rpmconfigdir}/redhat %{SOURCE %endif %changelog +* Fri Nov 28 2025 Than Ngo - 2:1.14.0-5 +- Fix rhbz#2416173, Rebuilt against llvm-21 + * Wed Jul 23 2025 Fedora Release Engineering - 2:1.14.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild