* update doxygen to 1.12.0-2

This commit is contained in:
Alexander Baldeck 2024-09-22 21:40:07 +02:00
parent 652f7c1442
commit f7f6eafd9f
4 changed files with 65 additions and 55 deletions

50
doxygen/.SRCINFO Normal file
View File

@ -0,0 +1,50 @@
pkgbase = doxygen
pkgdesc = Documentation system for C++, C, Java, IDL and PHP
pkgver = 1.12.0
pkgrel = 2
url = http://www.doxygen.nl
arch = x86_64
license = GPL-2.0-or-later
makedepends = clang
makedepends = cmake
makedepends = flex
makedepends = fmt
makedepends = gcc-libs
makedepends = ghostscript
makedepends = glibc
makedepends = graphviz
makedepends = llvm
makedepends = python
makedepends = qt6-base
makedepends = spdlog
makedepends = sqlite
makedepends = texlive-fontsrecommended
makedepends = texlive-fontutils
makedepends = texlive-latexextra
makedepends = texlive-plaingeneric
source = doxygen-1.12.0.tar.gz::https://github.com/doxygen/doxygen/archive/Release_1_12_0.tar.gz
source = https://github.com/doxygen/doxygen/commit/7857c88d.patch
sha512sums = be2bbbfca619dac78096d54378b95ecc786b9ff23b801c2be52c3536d067e4a299d96952ff92ec1fad13751b77f494ab9971435411dd7b40537d0b0f3797dedc
sha512sums = 7e1c018ba1cd57f10c24deb496e79a182a250603473986ef7feb3fc2c1ced1fc6fe270a15c489301fe762eb83a192bc31935935ef2418415d36ec347f064765c
b2sums = 566082eef7abd0f6750eac1f0ae0cc310752a14c6f1a512c84b5423125f0312a6258f2d5c7c3028fa475c33314985daac68b02f8e1482015dd6f9f8f664ff9e3
b2sums = fb6c70cf899f96457fbedb582b4cd5bc196d0e809212ccd099aebacde698327f91abb1d32539c096620d303b516b3654881e4a380670df521892511966e23f97
pkgname = doxygen
depends = clang
depends = fmt
depends = libfmt.so
depends = gcc-libs
depends = glibc
depends = spdlog
depends = libspdlog.so
depends = sqlite
depends = libsqlite3.so
optdepends = graphviz: for caller/callee graph generation
optdepends = qt6-base: for doxywizard
optdepends = texlive-fontsrecommended: for generating LaTeX, Postscript and PDF output
optdepends = texlive-fontutils: for generating LaTeX, Postscript and PDF output
optdepends = texlive-latexextra: for generating LaTeX, Postscript and PDF output
optdepends = texlive-plaingeneric: for generating LaTeX, Postscript and PDF output
pkgname = doxygen-docs
pkgdesc = Developer documentation for doxygen

6
doxygen/.nvchecker.toml Normal file
View File

@ -0,0 +1,6 @@
[doxygen]
source = "git"
git = "https://github.com/doxygen/doxygen"
prefix = "Release_"
from_pattern = "_"
to_pattern = "."

View File

@ -1,41 +0,0 @@
From 28b51a7f199d003b309e9dab52457759d5fd7691 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jakub=20Klinkovsk=C3=BD?=
<1289205+lahwaacz@users.noreply.github.com>
Date: Thu, 23 May 2024 21:05:56 +0200
Subject: [PATCH] Fix buffer overflow in Markdown parser
This fixes a buffer overflow that happened when parsing a bad Markdown
file with an unclosed emphasis nested in other elements, such as
```markdown
> __af_err af_flip(af_array *out, const af_array in, const unsigned dim)__
```
This snippet comes from the ArrayFire repository [1]. The problem was
found after the refactoring [2] that introduced std::string_view in the
code. The `std::string_view::operator[]` has bounds checking enabled
when the macro `_GLIBCXX_ASSERTIONS` is defined, which is the case of
Arch Linux build system.
[1] https://github.com/arrayfire/arrayfire/blob/0a25d36238aa1eee3b775d3584937ca65b0a1807/docs/pages/matrix_manipulation.md
[2] https://github.com/doxygen/doxygen/commit/f4e37514325abe4aa6aeecbc96e9e3e027885aef
---
src/markdown.cpp | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/src/markdown.cpp b/src/markdown.cpp
index 10429edd57..df00900b0d 100644
--- a/src/markdown.cpp
+++ b/src/markdown.cpp
@@ -661,6 +661,11 @@ size_t Markdown::Private::findEmphasisChar(std::string_view data, char c, size_t
data[i]!='\\' && data[i]!='@' &&
!(data[i]=='/' && data[i-1]=='<') && // html end tag also ends emphasis
data[i]!='\n') i++;
+ // avoid overflow (unclosed emph token)
+ if (i==size)
+ {
+ return 0;
+ }
//printf("findEmphasisChar: data=[%s] i=%d c=%c\n",data,i,data[i]);
// not counting escaped chars or characters that are unlikely

View File

@ -5,8 +5,8 @@
pkgbase=doxygen
pkgname=(doxygen doxygen-docs)
pkgver=1.11.0
pkgrel=4
pkgver=1.12.0
pkgrel=2
pkgdesc='Documentation system for C++, C, Java, IDL and PHP'
url='http://www.doxygen.nl'
arch=(x86_64 powerpc64le powerpc64 powerpc riscv64)
@ -31,11 +31,11 @@ makedepends=(
texlive-plaingeneric
)
source=(${pkgbase}-${pkgver}.tar.gz::https://github.com/doxygen/doxygen/archive/Release_${pkgver//./_}.tar.gz
10891-fix-buffer-overflow.patch)
sha512sums=('68ab2c8cf570216a7e917f686ec79361179cdc9868966fcc2722ebab49032e2bc9ac60192f101793f978ad2d7236d83c461ab4d2477f7704cf32a003b87311fb'
'bb48499a17254853522f58246a837113c27a3a960ecc42042f411eeab19faa46587e3d7af6dbdaaca78ec90ccccba8cd2f9e0457688a6b96eaba4c5799070455')
b2sums=('e98254aeec8ea7cedf6ec537e3d82cb898f55d435b95e58108c433f920432789fb7feba290b9a365f90ee56eec9120376b18ff26e31b1e4219b8f89f351daa8f'
'500304f5727316ee3e6114076525100d30613de1821108c3ed805e862602252de0b9439c0384acad6ba9d175ccab2f84cccafba5942740282ef388613d9d39a5')
https://github.com/doxygen/doxygen/commit/7857c88d.patch)
sha512sums=('be2bbbfca619dac78096d54378b95ecc786b9ff23b801c2be52c3536d067e4a299d96952ff92ec1fad13751b77f494ab9971435411dd7b40537d0b0f3797dedc'
'7e1c018ba1cd57f10c24deb496e79a182a250603473986ef7feb3fc2c1ced1fc6fe270a15c489301fe762eb83a192bc31935935ef2418415d36ec347f064765c')
b2sums=('566082eef7abd0f6750eac1f0ae0cc310752a14c6f1a512c84b5423125f0312a6258f2d5c7c3028fa475c33314985daac68b02f8e1482015dd6f9f8f664ff9e3'
'fb6c70cf899f96457fbedb582b4cd5bc196d0e809212ccd099aebacde698327f91abb1d32539c096620d303b516b3654881e4a380670df521892511966e23f97')
_pick() {
local p="$1" f d; shift
@ -48,13 +48,8 @@ _pick() {
}
prepare() {
cd ${pkgbase}-Release_${pkgver//./_}
# Install the man pages in the right place
sed -i 's:DESTINATION man/man1:DESTINATION "${CMAKE_INSTALL_PREFIX}/share/man/man1":g' \
doc/CMakeLists.txt
# Fix buffer overflow in Markdown parser https://github.com/doxygen/doxygen/pull/10891
patch -Np1 -i ../10891-fix-buffer-overflow.patch
cd $pkgbase-Release_${pkgver//./_}
patch -p1 -i ../7857c88d.patch # Fix build with fmt 11
}
build() {