git: 6edecd95cb41 - main - lang/guile: fix build on powerpc

From: Piotr Kubaj <pkubaj_at_FreeBSD.org>
Date: Thu, 03 Feb 2022 13:45:55 UTC
The branch main has been updated by pkubaj:

URL: https://cgit.FreeBSD.org/ports/commit/?id=6edecd95cb410b25f9f1b3d408e92fac57508be7

commit 6edecd95cb410b25f9f1b3d408e92fac57508be7
Author:     Piotr Kubaj <pkubaj@FreeBSD.org>
AuthorDate: 2022-02-03 13:39:44 +0000
Commit:     Piotr Kubaj <pkubaj@FreeBSD.org>
CommitDate: 2022-02-03 13:39:44 +0000

    lang/guile: fix build on powerpc
    
    1. Same as with guile2, remove the broken 32-bit big-endian bootstrap.
    2. As reported in https://debbugs.gnu.org/cgi/bugreport.cgi?bug=45214,
    add "-Oresolve-primitives -Ocps" to GUILE_OPTIMIZATIONS.
---
 lang/guile/Makefile                                |  7 +++++++
 lang/guile/files/extra-patch-bootstrap_Makefile.in | 11 +++++++++++
 2 files changed, 18 insertions(+)

diff --git a/lang/guile/Makefile b/lang/guile/Makefile
index 85ba27157bca..fbe30cd86534 100644
--- a/lang/guile/Makefile
+++ b/lang/guile/Makefile
@@ -45,11 +45,18 @@ THREADS_CONFIGURE_WITH=	threads
 THREADS_LIB_DEPENDS=	libgc-threaded.so:devel/boehm-gc-threaded
 THREADS_LIB_DEPENDS_OFF=	libgc.so:devel/boehm-gc
 
+.include <bsd.port.options.mk>
+
+.if ${ARCH} == powerpc
+EXTRA_PATCHES=	${FILESDIR}/extra-patch-bootstrap_Makefile.in
+.endif
+
 post-patch:
 	@${REINPLACE_CMD} -e 's|sys/time.h sys/timeb.h|sys/time.h |g' \
 		${WRKSRC}/configure
 	@${REINPLACE_CMD} -e 's|-i -e|-i.bak -e|' \
 		${WRKSRC}/libguile/Makefile.in
+	@${RM} -r ${WRKSRC}/prebuilt/32-bit-big-endian
 
 post-patch-THREADS-on:
 	@${REINPLACE_CMD} -e 's|bdw-gc|bdw-gc-threaded|g' ${WRKSRC}/configure
diff --git a/lang/guile/files/extra-patch-bootstrap_Makefile.in b/lang/guile/files/extra-patch-bootstrap_Makefile.in
new file mode 100644
index 000000000000..b5c56900c963
--- /dev/null
+++ b/lang/guile/files/extra-patch-bootstrap_Makefile.in
@@ -0,0 +1,11 @@
+--- bootstrap/Makefile.in.orig	2022-02-02 15:41:58 UTC
++++ bootstrap/Makefile.in
+@@ -1751,7 +1751,7 @@ top_builddir_absolute = @top_builddir_absolute@
+ top_srcdir = @top_srcdir@
+ top_srcdir_absolute = @top_srcdir_absolute@
+ GUILE_WARNINGS = -W0
+-GUILE_OPTIMIZATIONS = -O1
++GUILE_OPTIMIZATIONS = -O1 -Oresolve-primitives -Ocps
+ GOBJECTS = $(SOURCES:%.scm=%.go)
+ nobase_noinst_DATA = $(GOBJECTS)
+ CLEANFILES = $(GOBJECTS)