Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 30 Dec 2017 19:12:39 +0000 (UTC)
From:      Alexey Dokuchaev <danfe@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r457632 - in head/lang/guile2: . files
Message-ID:  <201712301912.vBUJCdtc086342@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: danfe
Date: Sat Dec 30 19:12:39 2017
New Revision: 457632
URL: https://svnweb.freebsd.org/changeset/ports/457632

Log:
  Unbreak the build on architectures which still use GCC 4.2.1 as system
  compiler.  Guile attempts to redefine _Static_assert (in `lib/verify.h')
  based on compiler support, but its overrides do not play nice with our
  /usr/include/complex.h header file.
  
  Simply do not include `lib/verify.h' in `libguile/numbers.c' to avoid
  the problem.  Be conservative and conditionally inhibit including this
  header only when building with older versions of GCC (before 4.6.0).
  
  While here, move INFO knob where it logically belongs in the Makefile
  and add a couple of extra linefeeds to improve readability thereof.
  
  Tested on:	i386, powerpc, sparc64

Modified:
  head/lang/guile2/Makefile
  head/lang/guile2/files/patch-libguile_numbers.c

Modified: head/lang/guile2/Makefile
==============================================================================
--- head/lang/guile2/Makefile	Sat Dec 30 19:05:19 2017	(r457631)
+++ head/lang/guile2/Makefile	Sat Dec 30 19:12:39 2017	(r457632)
@@ -21,8 +21,6 @@ LIB_DEPENDS=	libgmp.so:math/gmp \
 CONFLICTS_INSTALL=	guile-[0-9]*
 
 MAKE_JOBS_UNSAFE=	yes
-BROKEN_powerpc64=	does not build: error: expected declaration specifiers or ... before __builtin_choose_expr
-BROKEN_sparc64=		fails to compile: errors in complex.h
 
 USES=		charsetfix gmake libtool makeinfo ncurses pathfix pkgconfig \
 		readline
@@ -32,13 +30,17 @@ CPPFLAGS+=	-I${LOCALBASE}/include
 LIBS+=		-L${LOCALBASE}/lib
 INSTALL_TARGET=	install-strip
 
+INFO=		guile r5rs
+
 PLIST_SUB=	GUILE_VER=${PORTVERSION:R}
 
 OPTIONS_DEFINE=	NLS THREADS
 OPTIONS_DEFAULT=THREADS
 OPTIONS_SUB=	yes
+
 NLS_CONFIGURE_ENABLE=	nls
 NLS_USES=	gettext
+
 THREADS_CONFIGURE_WITH=	threads
 THREADS_LIB_DEPENDS=	libgc-threaded.so:devel/boehm-gc-threaded
 THREADS_LIB_DEPENDS_OFF=	libgc.so:devel/boehm-gc
@@ -46,8 +48,6 @@ THREADS_LIB_DEPENDS_OFF=	libgc.so:devel/boehm-gc
 REINPLACE_FILES=	libguile/smob.c libguile/filesys.c libguile/gc.c \
 			libguile/mallocs.c libguile/eval.c \
 			libguile/gc-malloc.c libguile/ports.c
-
-INFO=		guile r5rs
 
 post-patch:
 	@cd ${WRKSRC} ; \

Modified: head/lang/guile2/files/patch-libguile_numbers.c
==============================================================================
--- head/lang/guile2/files/patch-libguile_numbers.c	Sat Dec 30 19:05:19 2017	(r457631)
+++ head/lang/guile2/files/patch-libguile_numbers.c	Sat Dec 30 19:12:39 2017	(r457632)
@@ -1,6 +1,18 @@
---- libguile/numbers.c.orig	2014-03-12 13:24:54 UTC
+--- libguile/numbers.c.orig	2016-12-15 00:03:33 UTC
 +++ libguile/numbers.c
-@@ -183,7 +183,7 @@ static double atanh (double x) { return 
+@@ -45,7 +45,11 @@
+ #  include <config.h>
+ #endif
+ 
++/* With old GCC, do not override _Static_assert: it conflicts with
++   #include <complex.h> below. */
++#if __clang__ || (__GNUC__ >= 4 && __GNUC_MINOR__ >= 6)
+ #include <verify.h>
++#endif
+ #include <assert.h>
+ 
+ #include <math.h>
+@@ -183,7 +187,7 @@ static double atanh (double x) { return 0.5 * log ((1 
  
  
  #if defined (GUILE_I)



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201712301912.vBUJCdtc086342>