The Problem:

root@FreeBSDx64:/usr/src # make -j 7 CROSS_TOOLCHAIN=powerpc64-gcc buildworld 
buildkernel KERNCONF=GENERIC64-NODBG TARGET=powerpc TARGET_ARCH=powerpc64
. . .
--- bt_split.So ---
/usr/local/bin/powerpc64-portbld-freebsd11.0-gcc -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/ -fpic -DPIC  -O2 -pipe   
-I/usr/src/lib/libc/include -I/usr/src/lib/libc/../../include 
-I/usr/src/lib/libc/powerpc64 -DNLS  -D__DBINTERFACE_PRIVATE 
-I/usr/src/lib/libc/../../contrib/gdtoa 
-I/usr/src/lib/libc/../../contrib/libc-vis -DINET6 
-I/usr/obj/powerpc.powerpc64/usr/src/lib/libc -I/usr/src/lib/libc/resolv 
-D_ACL_PRIVATE -DPOSIX_MISTAKE -I/usr/src/lib/libc/../libmd 
-I/usr/src/lib/libc/../../contrib/jemalloc/include 
-I/usr/src/lib/libc/../../contrib/tzcode/stdtime -I/usr/src/lib/libc/stdtime  
-I/usr/src/lib/libc/locale -DBROKEN_DES -DPORTMAP -DDES_BUILTIN 
-I/usr/src/lib/libc/rpc -DYP -DNS_CACHING -DSYMBOL_VERSIONING -std=gnu99 
-fstack-protector -Wsystem-headers -Werror -Wall -Wno-format-y2k 
-Wno-uninitialized -Wno-pointer-sign   -I/usr/src/li
 b/libutil -I/usr/src/lib/msun/powerpc -I/usr/src/lib/msun/src -c 
/usr/src/lib/libc/db/btree/bt_split.c -o bt_split.So
. . .
--- bt_split.So ---
/usr/src/lib/libc/db/btree/bt_split.c: In function '__bt_split':
/usr/src/lib/libc/db/btree/bt_split.c:240:8: error: dereferencing type-punned 
pointer will break strict-aliasing rules [-Werror=strict-aliasing]
        bt_preserve(t, *(pgno_t *)bl->bytes) == RET_ERROR)
        ^
/usr/src/lib/libc/db/btree/bt_split.c: In function 'bt_broot':
/usr/src/lib/libc/db/btree/bt_split.c:548:7: error: dereferencing type-punned 
pointer will break strict-aliasing rules [-Werror=strict-aliasing]
       bt_preserve(t, *(pgno_t *)bl->bytes) == RET_ERROR)
       ^
. . .
--- bt_split.So ---
cc1: all warnings being treated as errors
*** [bt_split.So] Error code 1

make[4]: stopped in /usr/src/lib/libc
1 error
. . .


The context details follow.

Mac OS X 10.10.5 using a VirtualBox V5.0.4 VM with. . .
root@FreeBSDx64:/usr/src # freebsd-version -ku; uname -aKU
11.0-CURRENT
11.0-CURRENT
FreeBSD FreeBSDx64 11.0-CURRENT FreeBSD 11.0-CURRENT #0 r288459: Sat Oct  3 
03:42:08 PDT 2015     root@FreeBSDx64:/usr/obj/usr/src/sys/GENERIC-NODEBUG  
amd64 1100079 1100079

root@FreeBSDx64:/usr/src # svnlite info /usr/src
Path: .
Working Copy Root Path: /usr/src
URL: https://svn.freebsd.org/base/head
Relative URL: ^/head
Repository Root: https://svn.freebsd.org/base
Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Revision: 288459
Node Kind: directory
Schedule: normal
Last Changed Author: gjb
Last Changed Rev: 288459
Last Changed Date: 2015-10-01 12:48:10 -0700 (Thu, 01 Oct 2015)

root@FreeBSDx64:/usr/src # svnlite info /usr/ports
Path: /usr/ports
Working Copy Root Path: /usr/ports
URL: https://svn.freebsd.org/ports/head
Relative URL: ^/head
Repository Root: https://svn.freebsd.org/ports
Repository UUID: 35697150-7ecd-e111-bb59-0022644237b5
Revision: 398559
Node Kind: directory
Schedule: normal
Last Changed Author: jbeich
Last Changed Rev: 398559
Last Changed Date: 2015-10-03 17:42:55 -0700 (Sat, 03 Oct 2015)

root@FreeBSDx64:/usr/src # portmaster --list-origins
net/avahi
devel/boost-all
lang/clang37
ports-mgmt/dialog4ports
lang/gcc5
devel/git-lite
x11/lumina
www/midori
net/netatalk3
ports-mgmt/pkg
ports-mgmt/portmaster
devel/powerpc64-xtoolchain-gcc
devel/qtcreator
security/sudo
mail/thunderbird
emulators/virtualbox-ose-additions

Very little is non-default source code. . .

root@FreeBSDx64:/usr/src # svnlite status /usr/src
M       /usr/src/lib/csu/powerpc64/Makefile
?       /usr/src/sys/arm/conf/RPI2-NODBG
?       /usr/src/sys/powerpc/conf/GENERIC64-NODBG

root@FreeBSDx64:/usr/src # svnlite status /usr/ports
?       /usr/ports/ion

root@FreeBSDx64:/usr/src # more /usr/src/sys/powerpc/conf/GENERIC64-NODBG 
. . . (comments omitted) . . .

include GENERIC64

ident   GENERIC-NODBG

nooptions       INVARIANTS
nooptions       INVARIANT_SUPPORT
nooptions       WITNESS
nooptions       WITNESS_SKIPSPIN
nooptions       DEADLKRES


The following is my personal, local workaround for 
/usr/src/lib/csu/powerpc64/Makefile forcing use of the gcc command even when 
the context does not have one.

root@FreeBSDx64:/usr/src # svnlite diff /usr/src
Index: /usr/src/lib/csu/powerpc64/Makefile
===================================================================
--- /usr/src/lib/csu/powerpc64/Makefile (revision 288459)
+++ /usr/src/lib/csu/powerpc64/Makefile (working copy)
@@ -13,8 +13,8 @@
 # clang doesn't support -mlongcall, and testing shows a clang linked with a
 # clang-built csu segfaults, this must currently be compiled with gcc.  Once
 # clang supports -mlongcall, or we get a fixed ld, this can be revisited.
-CC:=           gcc
-COMPILER_TYPE:=        gcc
+CC?=           $(XCC)
+#COMPILER_TYPE:=       gcc

 FILES=         ${OBJS}
 FILESMODE=     ${LIBMODE}


===
Mark Millard
markmi at dsl-only.net

_______________________________________________
freebsd-toolchain@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-toolchain
To unsubscribe, send any mail to "freebsd-toolchain-unsubscr...@freebsd.org"

Reply via email to