From 9b9578e876c79bef94b002e287c3dd59e2020bfa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89rico=20Nogueira?= Date: Sun, 29 Aug 2021 01:24:47 -0300 Subject: [PATCH 1/4] doxygen: update to 1.9.2. --- ...-Fix-memory-corruption-in-TextStream.patch | 40 +++++++++++++++++++ srcpkgs/doxygen/patches/fix-time64.patch | 19 --------- srcpkgs/doxygen/template | 5 ++- 3 files changed, 43 insertions(+), 21 deletions(-) create mode 100644 srcpkgs/doxygen/patches/0001-Fix-memory-corruption-in-TextStream.patch delete mode 100644 srcpkgs/doxygen/patches/fix-time64.patch diff --git a/srcpkgs/doxygen/patches/0001-Fix-memory-corruption-in-TextStream.patch b/srcpkgs/doxygen/patches/0001-Fix-memory-corruption-in-TextStream.patch new file mode 100644 index 000000000000..80c7ff16d17e --- /dev/null +++ b/srcpkgs/doxygen/patches/0001-Fix-memory-corruption-in-TextStream.patch @@ -0,0 +1,40 @@ +upstream PR: https://github.com/doxygen/doxygen/pull/8739 + +What was happening is that the TextStream object is reused for multiple +different files. Therefore, when one calls setStream(nullptr) or +setFile(nullptr), m_f or m_s will, respectively, still contain a pointer +to the previous member, which is used when one calls setFile() or +setStream() again, since these methods will call flush(). + +For example, a program doing + + s.setFile(f1); + s.setStream(nullptr); + fclose(f1); + s.setFile(f2); + +will call fwrite(f1, ...). This pattern can be observed in many parts of +Doxygen, so fixing it in TextStream itself by always zeroing the other +pointer is the simplest fix. + +diff --git a/src/textstream.h b/src/textstream.h +index 161ce7fe..38027ec0 100644 +--- a/src/textstream.h ++++ b/src/textstream.h +@@ -67,11 +67,13 @@ class TextStream final + { + flush(); + m_s = s; ++ m_f = nullptr; + } + + void setFile(FILE *f) + { + flush(); ++ m_s = nullptr; + m_f = f; + } + +-- +2.33.0 + diff --git a/srcpkgs/doxygen/patches/fix-time64.patch b/srcpkgs/doxygen/patches/fix-time64.patch deleted file mode 100644 index 4f9616b31a12..000000000000 --- a/srcpkgs/doxygen/patches/fix-time64.patch +++ /dev/null @@ -1,19 +0,0 @@ ---- a/qtools/qdatetime.cpp 2020-01-03 23:51:18.000000000 +0100 -+++ b/qtools/qdatetime.cpp 2020-12-02 10:48:03.245635836 +0100 -@@ -35,7 +35,6 @@ - ** - **********************************************************************/ - --#define gettimeofday __hide_gettimeofday - #include "qdatetime.h" - #include "qdatastream.h" - #include -@@ -55,8 +54,6 @@ - #elif defined(_OS_UNIX_) || defined(_OS_MAC_) - #include - #include --#undef gettimeofday --extern "C" int gettimeofday( struct timeval *, struct timezone * ); - #endif - - static const uint FIRST_DAY = 2361222; // Julian day for 1752/09/14 diff --git a/srcpkgs/doxygen/template b/srcpkgs/doxygen/template index 051c1568bbb2..8f5b986ceaf4 100644 --- a/srcpkgs/doxygen/template +++ b/srcpkgs/doxygen/template @@ -1,6 +1,6 @@ # Template file for 'doxygen' pkgname=doxygen -version=1.9.1 +version=1.9.2 revision=1 build_style=cmake configure_args="-DCMAKE_BUILD_TYPE=None" @@ -10,8 +10,9 @@ short_desc="Source code documentation generator tool" maintainer="Érico Nogueira " license="GPL-2.0-only" homepage="http://www.doxygen.org/" +changelog="https://www.doxygen.nl/manual/changelog.html" distfiles="http://doxygen.nl/files/doxygen-${version}.src.tar.gz" -checksum=67aeae1be4e1565519898f46f1f7092f1973cce8a767e93101ee0111717091d1 +checksum=060f254bcef48673cc7ccf542736b7455b67c110b30fdaa33512a5b09bbecee5 build_options="wizard" desc_option_wizard="build Qt5 GUI configuration tool, doxywizard" From 7a4e8c604b2480374d20f6eb62a446aa80523337 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89rico=20Nogueira?= Date: Sun, 29 Aug 2021 01:25:23 -0300 Subject: [PATCH 2/4] gnuradio: add hostmakedeps for doxygen-1.9.2. It's using a bunch of texlive stuff now. --- srcpkgs/gnuradio/template | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/srcpkgs/gnuradio/template b/srcpkgs/gnuradio/template index da2dfa89eefc..88dae590f8f5 100644 --- a/srcpkgs/gnuradio/template +++ b/srcpkgs/gnuradio/template @@ -1,12 +1,12 @@ # Template file for 'gnuradio' pkgname=gnuradio version=3.8.0.0 -revision=6 +revision=7 build_style=cmake conf_files="/etc/gnuradio/conf.d/*" configure_args="-DENABLE_INTERNAL_VOLK=OFF -DGR_PYTHON_DIR=/${py3_sitelib}" hostmakedepends="pkg-config doxygen swig python3-Mako python3-Sphinx - python3-cairo python3-numpy python3-yaml" + python3-cairo python3-numpy python3-yaml texlive texlive-latexextra texlive-dvi" makedepends="SDL-devel boost-devel fftw-devel gsl-devel jack-devel libgsm-devel libusb-devel volk-devel uhd-devel gtk+3-devel python3-devel python3-gobject-devel log4cpp-devel gmpxx-devel mpir-devel" From 1d23b63661f1ced5683dda6e56e5fe68786b35b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89rico=20Nogueira?= Date: Sun, 29 Aug 2021 22:06:11 -0300 Subject: [PATCH 3/4] signond: fix distfile. --- srcpkgs/signond/template | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/srcpkgs/signond/template b/srcpkgs/signond/template index 183c3b9481e7..9a2f0cff8c26 100644 --- a/srcpkgs/signond/template +++ b/srcpkgs/signond/template @@ -2,7 +2,7 @@ pkgname=signond version=8.60 revision=3 -wrksrc="signond-VERSION_${version}-4d195e4dc7a47ff5cb51e36a83d4d05808c5befe" +wrksrc="signond-VERSION_${version}" build_style=qmake configure_args="LIBDIR=/usr/lib" conf_files="/etc/signond.conf" @@ -12,8 +12,8 @@ short_desc="Daemon providing SSO over D-Bus for the gSSO framework" maintainer="John Rowley " license="LGPL-2.1-only" homepage="https://gitlab.com/accounts-sso/signond" -distfiles="https://gitlab.com/accounts-sso/signond/repository/archive.tar.gz?ref=VERSION_${version}>signond-${version}.tar.gz" -checksum=a9cd90cf3e8b1a8bdbe5acf46c797a817092e77946c69fc3ed3a76930f3a76aa +distfiles="${homepage}/-/archive/VERSION_${version}/signond-VERSION_${version}.tar.gz" +checksum=0da2a080e4b01f44855d1a519f828007a5c756ee93827db9098a1b4b880f28fe pre_configure() { if [ "$CROSS_BUILD" ]; then From 51cc7a9d91cb8e1dda989e15100b77ec6d45b35d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89rico=20Nogueira?= Date: Sun, 29 Aug 2021 22:06:44 -0300 Subject: [PATCH 4/4] libaccounts-qt5: fix distfile. --- srcpkgs/libaccounts-qt5/template | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/srcpkgs/libaccounts-qt5/template b/srcpkgs/libaccounts-qt5/template index 73c98fb72bd4..c135d770ce75 100644 --- a/srcpkgs/libaccounts-qt5/template +++ b/srcpkgs/libaccounts-qt5/template @@ -2,7 +2,7 @@ pkgname=libaccounts-qt5 version=1.16 revision=2 -wrksrc="libaccounts-qt-VERSION_${version}-525ec684cfa8d234f797d7e49e21c476eea04d8e" +wrksrc="libaccounts-qt-VERSION_${version}" build_style=qmake configure_args="LIBDIR=/usr/lib" hostmakedepends="pkg-config doxygen qt5-qmake qt5-host-tools" @@ -11,8 +11,8 @@ short_desc="Client library to the accounts database, with a Qt5-based API" maintainer="John Rowley " license="LGPL-2.1-only" homepage="https://gitlab.com/accounts-sso/libaccounts-qt" -distfiles="${homepage}/repository/archive.tar.gz?ref=VERSION_${version}>${pkgname}-${version}.tar.gz" -checksum=286eb02f936853e32e610003a2a332a12524050d226707e7630b6a29bd3bdf66 +distfiles="${homepage}/-/archive/VERSION_${version}/libaccounts-qt-VERSION_${version}.tar.gz" +checksum=3e527b151ee87e851b0f027214bda1353d8e48e10a5b54109f1e4b7d422a7de3 libaccounts-qt5-devel_package() { short_desc+=" - development files"