Bug#1037765: maildir-utils: ftbfs with GCC-13
On 2023-07-15, at 12:19:47 +0100, Jeremy Sowden wrote: > On 2023-07-15, at 07:29:54 -0300, David Bremner wrote: > > Matthias Klose writes: > > > Package: src:maildir-utils > > > Version: 1.8.14-1 > > > Severity: normal > > > Tags: sid trixie > > > User: debian-...@lists.debian.org > > > Usertags: ftbfs-gcc-13 > > > > > > [This bug is targeted to the upcoming trixie release] > > > > > > Please keep this issue open in the bug tracker for the package it > > > was filed for. If a fix in another package is required, please > > > file a bug for the other package (or clone), and add a block in > > > this package. Please keep the issue open until the package can be > > > built in a follow-up test rebuild. > > > > I suspect we should probably move to a new upstream version rather > > than adding yet another patch. > > I did start looking at what would be involved and the new upstream > version 1.10 has removed the deprecated autootools-based > [build-system] which is used in the 1.8 package, so I decided to leave > alone. :) > > > However, if for some reason we want to stay with 1.8.14, it looks > > like this specific issue is fixed by upstream commit > > > >ce9446465260bd108bcf554cf503f72304f4276b > > The diff in that commit is: > > diff --git a/lib/utils/mu-error.hh b/lib/utils/mu-error.hh > index 55a8002c71e2..6472ce83b4d4 100644 > --- a/lib/utils/mu-error.hh > +++ b/lib/utils/mu-error.hh > @@ -22,6 +22,7 @@ > >#include >#include > +#include > >#include "mu-utils-format.hh" >#include > > which is all that is needed to fix the FTBFS. > > > I attach a version with conflicts resolved (although I don't know the > > codebase well enough to say if my resolution is correct). With that > > patch the code builds, but the build still fails with mu4e.info and > > mu4e-guile.info not being installed. > > > > dh_missing: warning: usr/share/info/mu-guile.info exists in debian/tmp > > but is not installed to anywhere > > dh_missing: warning: usr/share/info/mu4e.info exists in debian/tmp but > > is not installed to anywhere > > dh_missing: error: missing files, aborting > > The following debhelper tools have reported what they installed > > (with files per package) > > * dh_elpa: maildir-utils (0), mu4e (25) > > * dh_install: maildir-utils (6), mu4e (0) > > * dh_installdocs: maildir-utils (3), mu4e (0) > > * dh_installman: maildir-utils (0), mu4e (0) > > The source package in the archive contains a couple of files which are > missing from the Salsa repo: > > [azazel@ulthar:/space/azazel/tmp/maildir-utils-1.8.14] $ cat > debian/maildir-utils.info > usr/share/info/mu-* > [azazel@ulthar:/space/azazel/tmp/maildir-utils-1.8.14] $ cat > debian/mu4e.info > usr/share/info/mu4e* > > I'll create a PR to add a patch and the missing .info files. https://salsa.debian.org/emacsen-team/maildir-utils/-/merge_requests/2 J. signature.asc Description: PGP signature
Bug#1037765: maildir-utils: ftbfs with GCC-13
On 2023-07-15, at 07:29:54 -0300, David Bremner wrote: > Matthias Klose writes: > > > Package: src:maildir-utils > > Version: 1.8.14-1 > > Severity: normal > > Tags: sid trixie > > User: debian-...@lists.debian.org > > Usertags: ftbfs-gcc-13 > > > > [This bug is targeted to the upcoming trixie release] > > > > Please keep this issue open in the bug tracker for the package it > > was filed for. If a fix in another package is required, please > > file a bug for the other package (or clone), and add a block in this > > package. Please keep the issue open until the package can be built in > > a follow-up test rebuild. > > I suspect we should probably move to a new upstream version rather than > adding yet another patch. I did start looking at what would be involved and the new upstream version 1.10 has removed the deprecated autootools-based which is used in the 1.8 package, so I decided to leave alone. :) > However, if for some reason we want to stay with 1.8.14, it looks like > this specific issue is fixed by upstream commit > >ce9446465260bd108bcf554cf503f72304f4276b The diff in that commit is: diff --git a/lib/utils/mu-error.hh b/lib/utils/mu-error.hh index 55a8002c71e2..6472ce83b4d4 100644 --- a/lib/utils/mu-error.hh +++ b/lib/utils/mu-error.hh @@ -22,6 +22,7 @@ #include #include +#include #include "mu-utils-format.hh" #include which is all that is needed to fix the FTBFS. > I attach a version with conflicts resolved (although I don't know the > codebase well enough to say if my resolution is correct). With that > patch the code builds, but the build still fails with mu4e.info and > mu4e-guile.info not being installed. > > dh_missing: warning: usr/share/info/mu-guile.info exists in debian/tmp > but is not installed to anywhere > dh_missing: warning: usr/share/info/mu4e.info exists in debian/tmp but is > not installed to anywhere > dh_missing: error: missing files, aborting > The following debhelper tools have reported what they installed > (with files per package) > * dh_elpa: maildir-utils (0), mu4e (25) > * dh_install: maildir-utils (6), mu4e (0) > * dh_installdocs: maildir-utils (3), mu4e (0) > * dh_installman: maildir-utils (0), mu4e (0) > > The source package in the archive contains a couple of files which are missing from the Salsa repo: [azazel@ulthar:/space/azazel/tmp/maildir-utils-1.8.14] $ cat debian/maildir-utils.info usr/share/info/mu-* [azazel@ulthar:/space/azazel/tmp/maildir-utils-1.8.14] $ cat debian/mu4e.info usr/share/info/mu4e* I'll create a PR to add a patch and the missing .info files. J. > From: =?utf-8?q?Arsen_Arsenovi=C4=87?= > Date: Sat, 21 Jan 2023 19:39:09 +0100 > Subject: mu-error: Add missing include > MIME-Version: 1.0 > Content-Type: text/plain; charset="utf-8" > Content-Transfer-Encoding: 8bit > > GCC 13s libstdc++ reduced its dependency on some headers like , so > it's > no longer transitively included through various headers. Include it > explicitly. > > See also: https://gcc.gnu.org/gcc-13/porting_to.html#header-dep-changes > > ../lib/utils/mu-error.hh:36:26: error: ‘uint32_t’ does not name a type > 36 | static constexpr uint32_t SoftError = 1 << 23; > | ^~~~ > --- > lib/utils/mu-error.hh | 13 +++-- > 1 file changed, 11 insertions(+), 2 deletions(-) > > diff --git a/lib/utils/mu-error.hh b/lib/utils/mu-error.hh > index c67fc5a..d3e2fc4 100644 > --- a/lib/utils/mu-error.hh > +++ b/lib/utils/mu-error.hh > @@ -21,8 +21,10 @@ > #define MU_ERROR_HH__ > > #include > +#include > +#include > + > #include "mu-utils-format.hh" > -#include "mu-util.h" > #include > > namespace Mu { > @@ -160,11 +162,18 @@ struct Error final : public std::exception { >* @param err GError** (or NULL) >*/ > void fill_g_error(GError **err) const noexcept{ > - g_set_error(err, MU_ERROR_DOMAIN, static_cast(code_), > + g_set_error(err, error_quark(), static_cast(code_), > "%s", what_.c_str()); > } > > private: > + static inline GQuark error_quark (void) { > + static GQuark error_domain = 0; > + if (G_UNLIKELY(error_domain == 0)) > + error_domain = g_quark_from_static_string("mu-error-quark"); > + return error_domain; > + } > + > const Code code_; > std::string what_; > }; signature.asc Description: PGP signature
Bug#1037765: maildir-utils: ftbfs with GCC-13
Matthias Klose writes: > Package: src:maildir-utils > Version: 1.8.14-1 > Severity: normal > Tags: sid trixie > User: debian-...@lists.debian.org > Usertags: ftbfs-gcc-13 > > [This bug is targeted to the upcoming trixie release] > > Please keep this issue open in the bug tracker for the package it > was filed for. If a fix in another package is required, please > file a bug for the other package (or clone), and add a block in this > package. Please keep the issue open until the package can be built in > a follow-up test rebuild. I suspect we should probably move to a new upstream version rather than adding yet another patch. However, if for some reason we want to stay with 1.8.14, it looks like this specific issue is fixed by upstream commit ce9446465260bd108bcf554cf503f72304f4276b I attach a version with conflicts resolved (although I don't know the codebase well enough to say if my resolution is correct). With that patch the code builds, but the build still fails with mu4e.info and mu4e-guile.info not being installed. dh_missing: warning: usr/share/info/mu-guile.info exists in debian/tmp but is not installed to anywhere dh_missing: warning: usr/share/info/mu4e.info exists in debian/tmp but is not installed to anywhere dh_missing: error: missing files, aborting The following debhelper tools have reported what they installed (with files per package) * dh_elpa: maildir-utils (0), mu4e (25) * dh_install: maildir-utils (6), mu4e (0) * dh_installdocs: maildir-utils (3), mu4e (0) * dh_installman: maildir-utils (0), mu4e (0) From: =?utf-8?q?Arsen_Arsenovi=C4=87?= Date: Sat, 21 Jan 2023 19:39:09 +0100 Subject: mu-error: Add missing include MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit GCC 13s libstdc++ reduced its dependency on some headers like , so it's no longer transitively included through various headers. Include it explicitly. See also: https://gcc.gnu.org/gcc-13/porting_to.html#header-dep-changes ../lib/utils/mu-error.hh:36:26: error: ‘uint32_t’ does not name a type 36 | static constexpr uint32_t SoftError = 1 << 23; | ^~~~ --- lib/utils/mu-error.hh | 13 +++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/lib/utils/mu-error.hh b/lib/utils/mu-error.hh index c67fc5a..d3e2fc4 100644 --- a/lib/utils/mu-error.hh +++ b/lib/utils/mu-error.hh @@ -21,8 +21,10 @@ #define MU_ERROR_HH__ #include +#include +#include + #include "mu-utils-format.hh" -#include "mu-util.h" #include namespace Mu { @@ -160,11 +162,18 @@ struct Error final : public std::exception { * @param err GError** (or NULL) */ void fill_g_error(GError **err) const noexcept{ - g_set_error(err, MU_ERROR_DOMAIN, static_cast(code_), + g_set_error(err, error_quark(), static_cast(code_), "%s", what_.c_str()); } private: + static inline GQuark error_quark (void) { + static GQuark error_domain = 0; + if (G_UNLIKELY(error_domain == 0)) + error_domain = g_quark_from_static_string("mu-error-quark"); + return error_domain; + } + const Code code_; std::string what_; };