https://blogs.gentoo.org/ago/2020/07/04/gentoo-tinderbox/ Issue: mail-filter/opendkim-2.10.3-r32 fails to compile. Discovered on: arm64 (internal ref: tinderbox_arm64) System: GCC-15-SYSTEM (https://wiki.gentoo.org/wiki/Project:Tinderbox/Common_Issues_Helper#GCC-15) Info about the issue: https://wiki.gentoo.org/wiki/Project:Tinderbox/Common_Issues_Helper#CF0014
Created attachment 910499 [details] build.log build log and emerge --info
Created attachment 910500 [details] 1-config.log 1-config.log
This is a problem in the libmilter header: configure:19232: checking for libmilter/mfapi.h configure:19232: aarch64-unknown-linux-gnu-gcc -c -O2 -march=native -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0 conftest.c >&5 In file included from conftest.c:143: /usr/include/libmilter/mfapi.h:98:17: error: two or more data types in declaration specifiers 98 | typedef int bool; | ^~~~ The relevant code is, #if SM_CONF_STDBOOL_H # include <stdbool.h> #else /* SM_CONF_STDBOOL_H */ # ifndef __cplusplus # ifndef bool # ifndef __bool_true_false_are_defined typedef int bool; # define false 0 # define true 1 # define __bool_true_false_are_defined 1 # endif /* ! __bool_true_false_are_defined */ # endif /* bool */ # endif /* ! __cplusplus */ #endif /* SM_CONF_STDBOOL_H */ If including <stdbool.h> is a no-op under C23 it might suffice to set SM_CONF_STDBOOL_H to a truthy value.
stdbool.h is available with >=C99, so I think we can do that.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=29cbc6593419a67b45eacb870f25df68ad92ab61 commit 29cbc6593419a67b45eacb870f25df68ad92ab61 Author: Sam James <sam@gentoo.org> AuthorDate: 2024-11-25 12:04:15 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2024-11-25 12:04:15 +0000 mail-filter/libmilter: fix compat in headers with C23 Building mail-filter/opendkim without this patch would fail because mfapi.h doesn't include libmilter's own config header which defines SM_CONF_STDBOOL_H. We certainly only care about >= C99 compilers so we can just always take that path. Closes: https://bugs.gentoo.org/944138 Signed-off-by: Sam James <sam@gentoo.org> .../files/libmilter-1.0.2_p3-c23-bool.patch | 19 +++ mail-filter/libmilter/libmilter-1.0.2_p3-r3.ebuild | 138 +++++++++++++++++++++ 2 files changed, 157 insertions(+)
*** Bug 944899 has been marked as a duplicate of this bug. ***