On Sat, Jun 13, 2015 at 12:46:18PM +0200, Andreas Schwab wrote:
> /usr/bin/mkdir -p .; files=`echo ../../../../libgo/go/errors/errors.go | sed
> -e 's/[^ ]*\.gox//g'`; /bin/sh ./libtool --tag GO --mode=compile
> /daten/gcc/gcc-20150613/Build/./gcc/gccgo
> -B/daten/gcc/gcc-20150613/Build/./gcc/ -B/usr/powerpc64-linux/bin/
> -B/usr/powerpc64-linux/lib/ -isystem /usr/powerpc64-linux/include -isystem
> /usr/powerpc64-linux/sys-include -m32 -O2 -g -I . -c -fgo-pkgpath=`echo
> errors.lo | sed -e 's/.lo$//' -e 's/-go$//'` -o errors.lo $files
> libtool: compile: /daten/gcc/gcc-20150613/Build/./gcc/gccgo
> -B/daten/gcc/gcc-20150613/Build/./gcc/ -B/usr/powerpc64-linux/bin/
> -B/usr/powerpc64-linux/lib/ -isystem /usr/powerpc64-linux/include -isystem
> /usr/powerpc64-linux/sys-include -m32 -O2 -g -I . -c -fgo-pkgpath=errors
> ../../../../libgo/go/errors/errors.go
> go1: error: ‘-fsplit-stack’ currently only supported on PowerPC64 GNU/Linux
> with glibc-2.18 or later
> go1: error: ‘-fsplit-stack’ is not supported by this compiler configuration
> make[2]: *** [errors.lo] Error 1
> make[2]: Leaving directory
> `/daten/gcc/gcc-20150613/Build/powerpc64-linux/32/libgo'
> make[1]: *** [all-recursive] Error 1
This untested patch ought to fix the problem, I think. My BE test
environment had gold installed but not a sufficietly recent glibc.
The LE test environment of course didn't build any 32-bit multilibs.
Oops.
* configure.ac (libgo_cv_c_split_stack_supported): Unset for powerpc.
* configure: Regenerate.
diff --git a/libgo/configure.ac b/libgo/configure.ac
index 7c403a5..2ddcdfd 100644
--- a/libgo/configure.ac
+++ b/libgo/configure.ac
@@ -366,6 +366,13 @@ esac
AC_SUBST(OSCFLAGS)
dnl Use -fsplit-stack when compiling C code if available.
+case "$target" in
+ powerpc*-*-*)
+ # Don't use cached value. Support is available only for 64-bit,
+ # so the result from a 64-bit multilib is not valid for 32-bit.
+ unset libgo_cv_c_split_stack_supported
+ ;;
+esac
AC_CACHE_CHECK([whether -fsplit-stack is supported],
[libgo_cv_c_split_stack_supported],
[CFLAGS_hold=$CFLAGS
--
Alan Modra
Australia Development Lab, IBM