Debian Bug report logs - #1015418
gnucap: ftbfs with LTO (link time optimization) enabled

version graph

Package: src:gnucap; Maintainer for src:gnucap is Debian Electronics Team <[email protected]>;

Reported by: Matthias Klose <[email protected]>

Date: Tue, 19 Jul 2022 16:56:52 UTC

Severity: minor

Tags: experimental, sid, trixie

Found in version gnucap/1:0.36~20171003-1.1

Fixed in version gnucap/1:20230520-dev-1

Done: Felix Salfelder <[email protected]>

Reply or subscribe to this bug.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to Debian Electronics Team <[email protected]>:
Bug#1015418; Package src:gnucap. (Tue, 19 Jul 2022 16:56:53 GMT) (full text, mbox, link).


Acknowledgement sent to Matthias Klose <[email protected]>:
New Bug report received and forwarded. Copy sent to Debian Electronics Team <[email protected]>. (Tue, 19 Jul 2022 16:56:53 GMT) (full text, mbox, link).


Message #5 received at [email protected] (full text, mbox, reply):

From: Matthias Klose <[email protected]>
To: [email protected]
Subject: gnucap: ftbfs with LTO (link time optimization) enabled
Date: Tue, 19 Jul 2022 16:52:37 +0000
Package: src:gnucap
Version: 1:0.36~20171003-1.1
Severity: minor
Tags: sid bookworm
User: [email protected]
Usertags: ftbfs-lto

This package currently fails to build (at least on the amd64
architecture) with link time optimizations enabled.  For a background
for LTO please see

https://wiki.debian.org/ToolChain/LTO

The goal is to enable this optimization by default in an upcoming
Debian release in dpkg-buildflags for 64bit architectures.  The goal
is to get this package to build with link time optimizations, or to
explicitly disable link time optimizations for this package build.

To reproduce the build failure, enable the lto optimization in
testing/unstable by adding "optimize=+lto" to DEB_BUILD_MAINT_OPTIONS
in the debian/rules file, or if this macro is unset, just set it:

export DEB_BUILD_MAINT_OPTIONS = optimize=+lto

Please try to fix the build with lto enabled, fixing the packaging or
forwarding the issue upstream. If the issue cannot be fixed,
explicitly disallow building the package with lto by adding to your
rules file:

export DEB_BUILD_MAINT_OPTIONS = optimize=-lto

or adding that string to your existing setting of DEB_BUILD_MAINT_OPTIONS.

The full build log can be found at:
http://qa-logs.debian.net/2022/06/09/dpkglto/gnucap_0.36~20171003-1.1_unstable_dpkglto.log
The last lines of the build log are at the end of this report.

[...]
   68 |   OMSTREAM& operator=(const OMSTREAM& x)  {_mask = x._mask; return *this;}
      |             ^~~~~~~~
c++ -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -DUNIX -O2 -DNDEBUG -I. -I../include -I../../include -W -c ../measure_at.cc
In file included from ../../include/mode.h:27,
                 from ../../include/u_opt.h:27,
                 from ../../include/l_dispatcher.h:29,
                 from ../../include/globals.h:24,
                 from ../measure_at.cc:23:
../../include/io_.h: In member function ‘OMSTREAM OMSTREAM::operator-(const OMSTREAM&)’:
../../include/io_.h:74:56: warning: implicitly-declared ‘constexpr OMSTREAM::OMSTREAM(const OMSTREAM&)’ is deprecated [-Wdeprecated-copy]
   74 |   OMSTREAM operator-(const OMSTREAM& y) {OMSTREAM x = *this; return x.detach(y);}
      |                                                        ^~~~
../../include/io_.h:68:13: note: because ‘OMSTREAM’ has user-provided ‘OMSTREAM& OMSTREAM::operator=(const OMSTREAM&)’
   68 |   OMSTREAM& operator=(const OMSTREAM& x)  {_mask = x._mask; return *this;}
      |             ^~~~~~~~
../../include/io_.h:74:79: warning: implicitly-declared ‘constexpr OMSTREAM::OMSTREAM(const OMSTREAM&)’ is deprecated [-Wdeprecated-copy]
   74 |   OMSTREAM operator-(const OMSTREAM& y) {OMSTREAM x = *this; return x.detach(y);}
      |                                                                               ^
../../include/io_.h:68:13: note: because ‘OMSTREAM’ has user-provided ‘OMSTREAM& OMSTREAM::operator=(const OMSTREAM&)’
   68 |   OMSTREAM& operator=(const OMSTREAM& x)  {_mask = x._mask; return *this;}
      |             ^~~~~~~~
../../include/io_.h: In member function ‘OMSTREAM OMSTREAM::operator+(const OMSTREAM&)’:
../../include/io_.h:75:56: warning: implicitly-declared ‘constexpr OMSTREAM::OMSTREAM(const OMSTREAM&)’ is deprecated [-Wdeprecated-copy]
   75 |   OMSTREAM operator+(const OMSTREAM& y) {OMSTREAM x = *this; return x.attach(y);}
      |                                                        ^~~~
../../include/io_.h:68:13: note: because ‘OMSTREAM’ has user-provided ‘OMSTREAM& OMSTREAM::operator=(const OMSTREAM&)’
   68 |   OMSTREAM& operator=(const OMSTREAM& x)  {_mask = x._mask; return *this;}
      |             ^~~~~~~~
../../include/io_.h:75:79: warning: implicitly-declared ‘constexpr OMSTREAM::OMSTREAM(const OMSTREAM&)’ is deprecated [-Wdeprecated-copy]
   75 |   OMSTREAM operator+(const OMSTREAM& y) {OMSTREAM x = *this; return x.attach(y);}
      |                                                                               ^
../../include/io_.h:68:13: note: because ‘OMSTREAM’ has user-provided ‘OMSTREAM& OMSTREAM::operator=(const OMSTREAM&)’
   68 |   OMSTREAM& operator=(const OMSTREAM& x)  {_mask = x._mask; return *this;}
      |             ^~~~~~~~
c++ -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -DUNIX -O2 -DNDEBUG -I. -I../include -I../../include -W -c ../signon.cc
In file included from ../signon.cc:24:
../../include/io_.h: In member function ‘OMSTREAM OMSTREAM::operator-(const OMSTREAM&)’:
../../include/io_.h:74:56: warning: implicitly-declared ‘constexpr OMSTREAM::OMSTREAM(const OMSTREAM&)’ is deprecated [-Wdeprecated-copy]
   74 |   OMSTREAM operator-(const OMSTREAM& y) {OMSTREAM x = *this; return x.detach(y);}
      |                                                        ^~~~
../../include/io_.h:68:13: note: because ‘OMSTREAM’ has user-provided ‘OMSTREAM& OMSTREAM::operator=(const OMSTREAM&)’
   68 |   OMSTREAM& operator=(const OMSTREAM& x)  {_mask = x._mask; return *this;}
      |             ^~~~~~~~
../../include/io_.h:74:79: warning: implicitly-declared ‘constexpr OMSTREAM::OMSTREAM(const OMSTREAM&)’ is deprecated [-Wdeprecated-copy]
   74 |   OMSTREAM operator-(const OMSTREAM& y) {OMSTREAM x = *this; return x.detach(y);}
      |                                                                               ^
../../include/io_.h:68:13: note: because ‘OMSTREAM’ has user-provided ‘OMSTREAM& OMSTREAM::operator=(const OMSTREAM&)’
   68 |   OMSTREAM& operator=(const OMSTREAM& x)  {_mask = x._mask; return *this;}
      |             ^~~~~~~~
../../include/io_.h: In member function ‘OMSTREAM OMSTREAM::operator+(const OMSTREAM&)’:
../../include/io_.h:75:56: warning: implicitly-declared ‘constexpr OMSTREAM::OMSTREAM(const OMSTREAM&)’ is deprecated [-Wdeprecated-copy]
   75 |   OMSTREAM operator+(const OMSTREAM& y) {OMSTREAM x = *this; return x.attach(y);}
      |                                                        ^~~~
../../include/io_.h:68:13: note: because ‘OMSTREAM’ has user-provided ‘OMSTREAM& OMSTREAM::operator=(const OMSTREAM&)’
   68 |   OMSTREAM& operator=(const OMSTREAM& x)  {_mask = x._mask; return *this;}
      |             ^~~~~~~~
../../include/io_.h:75:79: warning: implicitly-declared ‘constexpr OMSTREAM::OMSTREAM(const OMSTREAM&)’ is deprecated [-Wdeprecated-copy]
   75 |   OMSTREAM operator+(const OMSTREAM& y) {OMSTREAM x = *this; return x.attach(y);}
      |                                                                               ^
../../include/io_.h:68:13: note: because ‘OMSTREAM’ has user-provided ‘OMSTREAM& OMSTREAM::operator=(const OMSTREAM&)’
   68 |   OMSTREAM& operator=(const OMSTREAM& x)  {_mask = x._mask; return *this;}
      |             ^~~~~~~~
make[3]: Target 'gnucap-default-plugins.so' not remade because of errors.
make[3]: Leaving directory '/<<PKGBUILDDIR>>/apps/O'
make[2]: *** [Makefile:33: default] Error 2
make[2]: Leaving directory '/<<PKGBUILDDIR>>/apps'
make[1]: *** [debian/rules:55: override_dh_auto_build] Error 2
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:31: build] Error 2
dpkg-buildpackage: error: debian/rules build subprocess returned exit status 2



Information forwarded to Debian Electronics Team <[email protected]>:
Bug#1015418; Package src:gnucap. (Tue, 19 Jul 2022 18:54:03 GMT) (full text, mbox, link).


Acknowledgement sent to Felix Salfelder <[email protected]>:
Extra info received and forwarded to maintainer. Copy sent to Debian Electronics Team <[email protected]>. (Tue, 19 Jul 2022 18:54:03 GMT) (full text, mbox, link).


Message #10 received at [email protected] (full text, mbox, reply):

From: Felix Salfelder <[email protected]>
To: Matthias Klose <[email protected]>, [email protected]
Cc: [email protected]
Subject: Re: [Pkg-electronics-devel] Bug#1015418: gnucap: ftbfs with LTO (link time optimization) enabled
Date: Tue, 19 Jul 2022 20:11:10 +0200
On Tue, Jul 19, 2022 at 04:52:37PM +0000, Matthias Klose wrote:
> Package: src:gnucap
> Version: 1:0.36~20171003-1.1
> Severity: minor
> Tags: sid bookworm
> User: [email protected]
> Usertags: ftbfs-lto
> 
> This package currently fails to build (at least on the amd64
> architecture) with link time optimizations enabled.  For a background
> for LTO please see
> [..]
> The full build log can be found at:
> http://qa-logs.debian.net/2022/06/09/dpkglto/gnucap_0.36~20171003-1.1_unstable_dpkglto.log
> The last lines of the build log are at the end of this report.

Hi all.

The package fails to build due to a static construction order issue that
has been fixed upstream in 2020. This is unrelated to LTO. I set
optimize=+lto anyway, and it works (dpkg-dev 1.21.9).

Could anyone please upload 20210107 [1]? I don't have permission..

best wishes
felix

[1] https://salsa.debian.org/electronics-team/Gnucap/gnucap



Reply sent to Felix Salfelder <[email protected]>:
You have taken responsibility. (Wed, 24 May 2023 16:51:07 GMT) (full text, mbox, link).


Notification sent to Matthias Klose <[email protected]>:
Bug acknowledged by developer. (Wed, 24 May 2023 16:51:07 GMT) (full text, mbox, link).


Message #15 received at [email protected] (full text, mbox, reply):

From: Debian FTP Masters <[email protected]>
To: [email protected]
Subject: Bug#1015418: fixed in gnucap 1:20230520-dev-1
Date: Wed, 24 May 2023 16:49:45 +0000
Source: gnucap
Source-Version: 1:20230520-dev-1
Done: Felix Salfelder <[email protected]>

We believe that the bug you reported is fixed in the latest version of
gnucap, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Felix Salfelder <[email protected]> (supplier of updated gnucap package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Tue, 19 Jul 2022 00:00:00 +0000
Source: gnucap
Architecture: source
Version: 1:20230520-dev-1
Distribution: experimental
Urgency: medium
Maintainer: Debian Electronics Team <[email protected]>
Changed-By: Felix Salfelder <[email protected]>
Closes: 1015418
Changes:
 gnucap (1:20230520-dev-1) experimental; urgency=medium
 .
   * New development snapshot
   * follow change in version numbering
     package version is now YYYYMMDD
   * use autotools
     - simpler rules
     - fixed -dbg packages
   * libgnucap-dev: add dependency on corresponding default plugins
   * drop d/compat, depend on debhelper-compat 13 instead
     - require-root: no
     - d/not-installed
   * debian/control: Bump Standards-Version to 4.5.0
     Checked against
     https://www.debian.org/doc/packaging-manuals/upgrading-checklist.txt
   * leave abi version and soname untouched. It's experimental.
   * hardwire CXX in gnucap-conf (trouble with mixing compilers).
   * enable link time optimization explicitly (Closes: #1015418).
   * use manpages provided by upstream.
   * remove obsolete patch against runall. File is gone.
Checksums-Sha1:
 d038a681feac4b129c9ec46c433905224a0be6b2 2363 gnucap_20230520-dev-1.dsc
 bde874aa9639b178d06e60fead7c7bf8dad1cdbf 813644 gnucap_20230520-dev.orig.tar.gz
 3dc62e71e6ce04d6eda424a24674b7b5df1af2e7 27228 gnucap_20230520-dev-1.debian.tar.xz
 abcd78cc25297cd07872496bf2462bba033c6f4f 8352 gnucap_20230520-dev-1_amd64.buildinfo
Checksums-Sha256:
 56ee49cab39b57f0bc9209170c12df12efe786f8e85e934f2a19c2961a3d0c5b 2363 gnucap_20230520-dev-1.dsc
 2909111315113304139d14db0ffdb47782e3c0e14646840f3816e0bcbc71e846 813644 gnucap_20230520-dev.orig.tar.gz
 0d449611f7e06632664730462c14e68dd3b1f68d6274ec83791da9fc4671ef9f 27228 gnucap_20230520-dev-1.debian.tar.xz
 83ad09474ac1eb90bf52fee67defafcf6a6fb37c359d5d997f8fef169936182b 8352 gnucap_20230520-dev-1_amd64.buildinfo
Files:
 898967a1bb61b457ef9caf39ce8e593e 2363 electronics optional gnucap_20230520-dev-1.dsc
 2752caaf56a5ecb0d763c017a06f5bc7 813644 electronics optional gnucap_20230520-dev.orig.tar.gz
 b549bcd91205c0c029659fa03f4bb596 27228 electronics optional gnucap_20230520-dev-1.debian.tar.xz
 43728074b7b7937e728e1f03d895f409 8352 electronics optional gnucap_20230520-dev-1_amd64.buildinfo

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEHguq2FwiMqGzzpLrtwRxBYMLn6EFAmRuOrkACgkQtwRxBYML
n6GRsRAAl5kGRzMQ3BS7Xmsbgmzetx5OiSdy2CPXllQFMevOMX32iEWy0DWnQFp4
P8RELwFnSfosUQQCUUD2s7Dtt8lWiy6MxWd0pd262PnB8K+V9H8pUYSIT7VKGHXz
ljKy24t5kAnzWQcH+38KPjI8uPEpwhRf+zhAeOSlsTJFgIXu1jKBh/ooVTP9GQn8
Y1DYVDwF1r4cVgjFPAUX91jrckSCMqkvlp09uzLPSFujWYxgyQPXmMwgXBYmjloO
H/ypcOcIcnhrcAIw5m+9OAzA6K8bEnahVljwEz/rjMgmyuiA/AvBTxg+g/YJ5OUc
t8ok9/80sTVs2jxsTzGYsPKXtm3PdhM09Gagpbvo5iFsKn2m8o8DMkfxecn20AWn
YlM5gBa0+5mMbX1Xb1q09ZZyZ646ssiv8IrJCCAYp/vUvIetHzdWv6xbacr6e2rF
tcD6c/saRjRIk6L+ieqUVdysym1ErEq3xkPdT+vG03sVx/xP49B9mD09MIGhtHc0
M1MkUyDmxTqeR+lx7gvYy8yXok+xMFccjMiWVoUPKOj8BntRxoZvb+xkffjdv38E
i6wFT9CWyjED9tIMt5NBDgDnakeWseUYq0LZesbXIUzz1GuWGceqFzkTgRuwnaxa
jmzDQCtTQObxwmBGPBW8o6saZSKE6TQqcVyLMYvUocv2C55c+eE=
=uGgT
-----END PGP SIGNATURE-----




Removed tag(s) bookworm. Request was from Andreas Beckmann <[email protected]> to [email protected]. (Tue, 26 Sep 2023 16:33:34 GMT) (full text, mbox, link).


Added tag(s) experimental and trixie. Request was from Andreas Beckmann <[email protected]> to [email protected]. (Tue, 26 Sep 2023 16:33:34 GMT) (full text, mbox, link).


Send a report that this bug log contains spam.


Debian bug tracking system administrator <[email protected]>. Last modified: Tue May 13 12:56:56 2025; Machine Name: bembo

Debian Bug tracking system

Debbugs is free software and licensed under the terms of the GNU General Public License version 2. The current version can be obtained from https://bugs.debian.org/debbugs-source/.

Copyright © 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson, 2005-2017 Don Armstrong, and many other contributors.