On 28 May 2016, at 06:18, Mark Millard <mar...@dsl-only.net> wrote:
...
> The -r300886 powerpc64 devel/powerpc64-gcc combination with no clang build 
> included has failed:
> 
> --- all_subdir_usr.bin ---
> endian.h(111): warning: bitwise operation on signed value possibly 
> nonportable [117]
> endian.h(127): warning: extra bits set to 0 in conversion of 'unsigned int' 
> to 'unsigned long long', op & [309]
> types.h(316): warning: bitwise operation on signed value possibly nonportable 
> [117]
> types.h(317): warning: bitwise operation on signed value possibly nonportable 
> [117]
> types.h(318): warning: bitwise operation on signed value possibly nonportable 
> [117]
> types.h(319): warning: bitwise operation on signed value possibly nonportable 
> [117]
> types.h(355): warning: conversion to 'unsigned int' due to prototype, arg #1 
> [259]
> types.h(355): warning: conversion from 'unsigned long long' to 'unsigned int' 
> may lose accuracy, arg #1 [298]
> types.h(355): warning: conversion to 'unsigned int' due to prototype, arg #1 
> [259]
> types.h(355): warning: conversion from 'unsigned long long' to 'unsigned int' 
> may lose accuracy, arg #1 [298]
> stdarg.h(40): syntax error [249]
> stdarg.h(98): syntax error [249]
> llib-lposix(307): syntax error [249]
> llib-lposix(308): syntax error [249]
> llib-lposix(309): syntax error [249]
> llib-lposix(309): cannot recover from previous errors [224]
> *** [llib-lposix.ln] Error code 1

For me, r300886 didn't build at all, when I tried:

CROSS_TOOLCHAIN=powerpc64-gcc TARGET=powerpc TARGET_ARCH=powerpc64 \
    __MAKE_CONF=/dev/null SRCCONF=/dev/null make buildworld

It always errors out at the very first file built for the libraries
stage:

--------------------------------------------------------------
>>> stage 4.2: building libraries
--------------------------------------------------------------
cd /usr/src;  CROSS_TOOLCHAIN="powerpc64-gcc" MAKEOBJDIRPREFIX=/usr/obj  
MACHINE_ARCH=i386  MACHINE=i386  CPUTYPE= 
GROFF_BIN_PATH=/usr/obj/usr/src/tmp/legacy/usr/bin  
GROFF_FONT_PATH=/usr/obj/usr/src/tmp/legacy/usr/share/groff_font  
GROFF_TMAC_PATH=/usr/obj/usr/src/tmp/legacy/usr/share/tmac 
CC="/usr/local/bin/powerpc64-portbld-freebsd11.0-gcc 
--sysroot=/usr/obj/usr/src/tmp -B/usr/local/powerpc64-freebsd/bin/" 
CXX="/usr/local/bin/powerpc64-portbld-freebsd11.0-g++  
--sysroot=/usr/obj/usr/src/tmp -B/usr/local/powerpc64-freebsd/bin/"  
CPP="/usr/local/bin/powerpc64-portbld-freebsd11.0-cpp 
--sysroot=/usr/obj/usr/src/tmp -B/usr/local/powerpc64-freebsd/bin/"  
AS="/usr/local/powerpc64-freebsd/bin/as" 
AR="/usr/local/powerpc64-freebsd/bin/ar" 
LD="/usr/local/powerpc64-freebsd/bin/ld" NM=/usr/local/powerpc64-freebsd/bin/nm 
 OBJDUMP=/usr/local/powerpc64-freebsd/bin/objdump 
OBJCOPY="/usr/local/powerpc64-freebsd/bin/objcopy"  
RANLIB=/usr/local/powerpc64-freebsd/bin/ranlib 
STRINGS=/usr/local/powerpc64-freebsd/bin/  
SIZE="/usr/local/powerpc64-freebsd/bin/size"  INSTALL="sh 
/usr/src/tools/install.sh"  
PATH=/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/usr/bin:/usr/obj/usr/src/tmp/legacy/bin:/usr/obj/usr/src/tmp/usr/sbin:/usr/obj/usr/src/tmp/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin
 make  -f Makefile.inc1 DESTDIR=/usr/obj/usr/src/tmp -DNO_FSCHG MK_HTML=no 
-DNO_LINT MK_MAN=no  MK_PROFILE=no MK_TESTS=no MK_TESTS_SUPPORT=yes libraries
cd /usr/src;  make -f Makefile.inc1 _prereq_libs;  make -f Makefile.inc1 
_startup_libs;  make -f Makefile.inc1 _prebuild_libs;  make -f Makefile.inc1 
_generic_libs
===> gnu/lib/libssp/libssp_nonshared (obj,all,install)
building static ssp_nonshared library
/usr/local/powerpc64-freebsd/bin/ar -crD libssp_nonshared.a 
`NM='/usr/local/powerpc64-freebsd/bin/nm' NMFLAGS='' lorder ssp-local.o  | 
tsort -q`
/usr/local/powerpc64-freebsd/bin/ranlib -D libssp_nonshared.a
sh /usr/src/tools/install.sh  -C -o root -g wheel -m 444   libssp_nonshared.a 
/usr/obj/usr/src/tmp/usr/lib/
===> gnu/lib/libgcc (obj,all,install)
LC_ALL=C awk -f /usr/src/gnu/lib/libgcc/../../../contrib/gcc/opt-functions.awk  
-f /usr/src/gnu/lib/libgcc/../../../contrib/gcc/opth-gen.awk  < optionlist > 
options.h
/usr/local/bin/powerpc64-portbld-freebsd11.0-gcc --sysroot=/usr/obj/usr/src/tmp 
-B/usr/local/powerpc64-freebsd/bin/ -c -O2 -pipe   -DIN_GCC -DIN_LIBGCC2 
-D__GCC_FLOAT_NOT_NEEDED  -DHAVE_GTHR_DEFAULT  
-I/usr/src/gnu/lib/libgcc/../../../contrib/gcclibs/include  
-I/usr/src/gnu/lib/libgcc/../../../contrib/gcc/config 
-I/usr/src/gnu/lib/libgcc/../../../contrib/gcc -I.  
-I/usr/src/gnu/lib/libgcc/../../usr.bin/cc/cc_tools -std=gnu99 
-Wno-error=unused-function -Wno-error=enum-compare 
-Wno-error=logical-not-parentheses -Wno-error=bool-compare 
-Wno-error=uninitialized -Wno-error=array-bounds -Wno-error=clobbered 
-Wno-error=cast-align -Wno-error=extra -Wno-error=attributes -Wno-error=inline 
-Wno-error=unused-but-set-variable -Wno-error=unused-value 
-Wno-error=strict-aliasing -Wno-error=address     -fvisibility=hidden 
-DHIDE_EXPORTS -fPIC -fexceptions -D__GLIBC__=3 -DElfW=__ElfN -o unwind-dw2.o 
/usr/src/gnu/lib/libgcc/../../../contrib/gcc/unwind-dw2.c
In file included from 
/usr/src/gnu/lib/libgcc/../../../contrib/gcc/tsystem.h:47:0,
                 from 
/usr/src/gnu/lib/libgcc/../../../contrib/gcc/unwind-dw2.c:32:
/usr/local/lib/gcc/powerpc64-portbld-freebsd11.0/5.3.0/include/stddef.h:56:24: 
fatal error: sys/_types.h: No such file or directory
compilation terminated.
*** Error code 1

This is because r300886 filters out the -isystem options that point to
${WORLDTMP}/usr/include.  When I build using r300885, it errors out
while building the atf-c++ libraries:

===> lib/atf/libatf-c++ (all)
/usr/local/bin/powerpc64-portbld-freebsd11.0-g++ -isystem 
/usr/obj/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1 -std=c++11  
-nostdinc++ -L/usr/obj/powerpc.powerpc64/usr/src/tmp/../lib/libc++ -isystem 
/usr/obj/powerpc.powerpc64/usr/src/tmp/usr/include 
-L/usr/obj/powerpc.powerpc64/usr/src/tmp/usr/lib 
--sysroot=/usr/obj/powerpc.powerpc64/usr/src/tmp 
-B/usr/local/powerpc64-freebsd/bin/  -O2 -pipe -DHAVE_CONFIG_H 
-I/usr/src/contrib/atf -I/usr/src/lib/atf/libatf-c++/../libatf-c -I. 
-DHAVE_CONFIG_H -MD -MF.depend.application.o -MTapplication.o 
-fstack-protector-strong -Wsystem-headers -Werror -Wall -Wno-format-y2k -W 
-Wno-unused-parameter -Wpointer-arith -Wno-uninitialized 
-Wno-error=unused-function -Wno-error=enum-compare 
-Wno-error=logical-not-parentheses -Wno-error=bool-compare 
-Wno-error=uninitialized -Wno-error=array-bounds -Wno-error=clobbered 
-Wno-error=cast-align -Wno-error=extra -Wno-error=attributes -Wno-error=inline 
-Wno-error=unused-but-set-variable -Wno-error=unused-value 
-Wno-error=strict-aliasing -Wno-error=address    -c 
/usr/src/contrib/atf/atf-c++/detail/application.cpp -o application.o
In file included from 
/usr/obj/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/memory:616:0,
                 from 
/usr/obj/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/algorithm:628,
                 from 
/usr/obj/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/string:439,
                 from 
/usr/obj/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/__locale:15,
                 from 
/usr/obj/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/ios:216,
                 from 
/usr/obj/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/ostream:138,
                 from /usr/src/contrib/atf/atf-c++/detail/application.hpp:29,
                 from /usr/src/contrib/atf/atf-c++/detail/application.cpp:26:
/usr/obj/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/atomic:571:0: error: 
"_Atomic" redefined [-Werror]
 #define _Atomic(x) __gcc_atomic::__gcc_atomic_t<x>
 ^
In file included from /usr/src/sys/sys/endian.h:32:0,
                 from 
/usr/obj/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/__config:96,
                 from 
/usr/obj/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/ostream:137,
                 from /usr/src/contrib/atf/atf-c++/detail/application.hpp:29,
                 from /usr/src/contrib/atf/atf-c++/detail/application.cpp:26:
/usr/src/sys/sys/cdefs.h:283:0: note: this is the location of the previous 
definition
 #define _Atomic(T)  struct { T volatile __val; }
 ^

It appears that there is a conflict between how sys/cdefs.h defines
_Atomic() and how the libc++ headers define it.  It looks like the
definition in the libc++ headers is more suitable for gcc, so maybe we
should disable our custom definition in sys/defs.h when an external gcc
is used?  Or at least, disable it when compiling for C++.

-Dimitry

Attachment: signature.asc
Description: Message signed with OpenPGP using GPGMail

Reply via email to