commit:     bb73d2900a3e83433ee1ea76c19f5d17be096821
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Jan  4 04:13:57 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Jan  4 04:32:00 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bb73d290

dev-scheme/guile: fix configure w/ clang 16 (3.0.x)

Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../files/guile-3.0.8-configure-clang16.patch      | 32 ++++++++++++++++++++++
 .../{guile-3.0.8.ebuild => guile-3.0.8-r1.ebuild}  | 20 ++++++++++----
 2 files changed, 47 insertions(+), 5 deletions(-)

diff --git a/dev-scheme/guile/files/guile-3.0.8-configure-clang16.patch 
b/dev-scheme/guile/files/guile-3.0.8-configure-clang16.patch
new file mode 100644
index 000000000000..6a4cc770dfae
--- /dev/null
+++ b/dev-scheme/guile/files/guile-3.0.8-configure-clang16.patch
@@ -0,0 +1,32 @@
+https://src.fedoraproject.org/rpms/guile30/c/47f608ff4988547350e722606890698e3ec59e95?branch=rawhide
+
+Avoid implicit ints in the guile_cv_localtime_cache check.  It cause
+the check to always fail with strict(er) C99 compilers that do not
+support implicit int.
+
+Submitted upstream:
+
+  <https://lists.gnu.org/archive/html/bug-guile/2022-12/msg00017.html>
+  <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=60022>
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -1086,7 +1086,7 @@ AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <time.h>
+ # include <stdlib.h>
+ #endif
+ extern char **environ;
+-unset_TZ ()
++int unset_TZ ()
+ {
+   char **from, **to;
+   for (to = from = environ; (*to = *from); from++)
+@@ -1095,7 +1095,7 @@ unset_TZ ()
+ }
+ char TZ_GMT0[] = "TZ=GMT0";
+ char TZ_PST8[] = "TZ=PST8";
+-main()
++int main()
+ {
+   time_t now = time ((time_t *) 0);
+   int hour_GMT0, hour_unset;
+

diff --git a/dev-scheme/guile/guile-3.0.8.ebuild 
b/dev-scheme/guile/guile-3.0.8-r1.ebuild
similarity index 89%
rename from dev-scheme/guile/guile-3.0.8.ebuild
rename to dev-scheme/guile/guile-3.0.8-r1.ebuild
index ae641ae3cfb4..9b6beb93e876 100644
--- a/dev-scheme/guile/guile-3.0.8.ebuild
+++ b/dev-scheme/guile/guile-3.0.8-r1.ebuild
@@ -1,8 +1,10 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
 
+inherit autotools
+
 MAJOR="3.0"
 DESCRIPTION="GNU Ubiquitous Intelligent Language for Extensions"
 HOMEPAGE="https://www.gnu.org/software/guile/";
@@ -31,15 +33,23 @@ BDEPEND="
        sys-devel/libtool
        sys-devel/gettext"
 
+# guile generates ELF files without use of C or machine code
+# It's false positive. bug #677600
+QA_PREBUILT='*[.]go'
+
+DOCS=( GUILE-VERSION HACKING README )
+
 PATCHES=(
        "${FILESDIR}/${PN}-2.2.3-gentoo-sandbox.patch"
+       "${FILESDIR}/${P}-configure-clang16.patch"
 )
 
-# guile generates ELF files without use of C or machine code
-# It's a portage's false positive. bug #677600
-QA_PREBUILT='*[.]go'
+src_prepare() {
+       default
 
-DOCS=( GUILE-VERSION HACKING README )
+       # Can drop once guile-3.0.8-configure-clang16.patch merged
+       eautoreconf
+}
 
 src_configure() {
        # see bug #676468

Reply via email to