from /var/tmp/portage/sys-fs/cryfs-0.9.7/work/src/cpp-utils/crypto/symmetric/ciphers.cpp:1: /var/tmp/portage/sys-fs/cryfs-0.9.7/work/vendor/spdlog/spdlog/fmt/bundled/format.h: In member function ‘void fmt::internal::ArgFormatterBase<Impl, Char>::visit_char(int)’: /var/tmp/portage/sys-fs/cryfs-0.9.7/work/vendor/spdlog/spdlog/fmt/bundled/format.h:2236:24: error: expected unqualified-id before numeric constant const unsigned CHAR_WIDTH = 1; ^ make[2]: *** [src/cpp-utils/CMakeFiles/cpp-utils.dir/build.make:63: src/cpp-utils/CMakeFiles/cpp-utils.dir/crypto/symmetric/ciphers.cpp.o] Error 1 ------------------------------------------------------------------- This is an unstable amd64 chroot image at a tinderbox (==build bot) name: desktop-gcc5_20170517-212644 ------------------------------------------------------------------- gcc-config -l: [1] x86_64-pc-linux-gnu-5.4.0 * Available Python interpreters, in order of preference: [1] python3.4 [2] python3.6 (fallback) [3] python2.7 (fallback) [4] pypy3 (fallback) Available Ruby profiles: [1] ruby21 (with Rubygems) [2] ruby22 (with Rubygems) * java-config: The following VMs are available for generation-2:
Created attachment 474112 [details] emerge-info.txt
Created attachment 474114 [details] config.log.tbz2
Created attachment 474116 [details] emerge-history.txt
Created attachment 474118 [details] environment
Created attachment 474120 [details] etc.portage.tbz2
Created attachment 474122 [details] sys-fs:cryfs-0.9.7:20170524-201611.log
Created attachment 474124 [details] temp.tbz2
I have the same problem here. Looking at the preprocessed files one sees that const unsigned CHAR_WIDTH = 1; gets expanded into const unsigned 8 = 1; So, some header file seems to define CHAR_WIDTH as a numeric constant. Probably, one has to rename this variable to something which is not a macro name. In general, it's not a good idea to use all-caps names.
Fixed by update spdlog by this commit: https://github.com/cryfs/cryfs/commit/f1c6fa044f44e33c0c9e6eab78877d47ac4c87be I download commit as patch ( https://github.com/cryfs/cryfs/commit/f1c6fa044f44e33c0c9e6eab78877d47ac4c87be.patch ) to /etc/portage/patches/sys-fs/cryfs-0.9.7
It is sad that cryfs is bundling an outdated version of dev-libs/spdlog when we have 0.14.0 in tree...
We can't have this package continue to be broken like this. kde-plasma/plasma-vault-5.11.0 is going to depend on cryfs, and this bug will be a major blocker very soon (tomorrow). If it can't be unbundled right now, could you at least look into packaging a current snapshot of cryfs that comes with a fixed version of spdlog?
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3f3cbd0450b9aeb2ebfc1c5719545ca70b88780c commit 3f3cbd0450b9aeb2ebfc1c5719545ca70b88780c Author: Johannes Huber <johu@gentoo.org> AuthorDate: 2017-10-11 18:07:03 +0000 Commit: Johannes Huber <johu@gentoo.org> CommitDate: 2017-10-11 19:15:13 +0000 sys-fs/cryfs: Fix build Adds upstream patch to update internal copy of spdlog. Reported-by: Toralf Förster <toralf@gentoo.org> Thanks-to: Jerzy Kołosowski <jerzy@kolosowscy.pl> Closes: https://bugs.gentoo.org/619602 Package-Manager: Portage-2.3.11, Repoman-2.3.3 sys-fs/cryfs/Manifest | 1 + sys-fs/cryfs/cryfs-0.9.7.ebuild | 9 ++++++--- 2 files changed, 7 insertions(+), 3 deletions(-)