Date: Fri, 27 May 2016 21:18:00 -0700 From: Mark Millard <markmi@dsl-only.net> To: Dimitry Andric <dim@FreeBSD.org> Cc: FreeBSD Toolchain <freebsd-toolchain@freebsd.org>, FreeBSD PowerPC ML <freebsd-ppc@freebsd.org>, freebsd-ports@freebsd.org Subject: Re: 11.0-CURRENT -r300770 libc++ update vs. lang/powerpc64-xtoolchain-gcc: no go [self hosted powerpc64 context] Message-ID: <0C88C11C-154A-459B-98EB-2A80A166DBCE@dsl-only.net> In-Reply-To: <3BAE82F4-3BF4-4F02-9BFF-3F2290D3C82D@dsl-only.net> References: <95E2A9D6-8E1A-46FB-84FF-60927A6F1CE4@dsl-only.net> <8FAD594D-4349-4EA7-A712-D3792537FB1D@FreeBSD.org> <C5678741-F12B-4234-A194-AC2F0B0CDAB4@dsl-only.net> <42773110-C392-4168-9B94-6902807DB530@dsl-only.net> <3BAE82F4-3BF4-4F02-9BFF-3F2290D3C82D@dsl-only.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2016-May-27, at 6:04 PM, Mark Millard <markmi at dsl-only.net> wrote: > [Top posting failure results again.] >=20 > -r300886 for powerpc64 failed for each of: >=20 > = /usr/src/lib/clang/libclanganalysis/../../../contrib/llvm/tools/clang/lib/= Analysis/AnalysisDeclContext.cpp >=20 > = /usr/src/lib/clang/libclangarcmigrate/../../../contrib/llvm/tools/clang/li= b/ARCMigrate/ARCMT.cpp >=20 > with the likes of: >=20 >> --- all_subdir_lib/clang --- >> In file included from = /usr/src/lib/clang/libclanganalysis/../../../contrib/llvm/../../lib/clang/= include/llvm/Support/DataTypes.h:36:0, >> from = /usr/src/lib/clang/libclanganalysis/../../../contrib/llvm/include/llvm/ADT= /Hashing.h:48, >> from = /usr/src/lib/clang/libclanganalysis/../../../contrib/llvm/include/llvm/ADT= /ArrayRef.h:13, >> from = /usr/src/lib/clang/libclanganalysis/../../../contrib/llvm/include/llvm/ADT= /APInt.h:19, >> from = /usr/src/lib/clang/libclanganalysis/../../../contrib/llvm/include/llvm/ADT= /APFloat.h:20, >> from = /usr/src/lib/clang/libclanganalysis/../../../contrib/llvm/tools/clang/incl= ude/clang/AST/APValue.h:18, >> from = /usr/src/lib/clang/libclanganalysis/../../../contrib/llvm/tools/clang/incl= ude/clang/AST/Decl.h:17, >> from = /usr/src/lib/clang/libclanganalysis/../../../contrib/llvm/tools/clang/incl= ude/clang/Analysis/AnalysisContext.h:18, >> from = /usr/src/lib/clang/libclanganalysis/../../../contrib/llvm/tools/clang/lib/= Analysis/AnalysisDeclContext.cpp:15: >> = /usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/cmath= :309:9: error: '::signbit' has not been declared >> using ::signbit; >> ^ >> = /usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/cmath= :310:9: error: '::fpclassify' has not been declared >> using ::fpclassify; >> ^ >> = /usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/cmath= :311:9: error: '::isfinite' has not been declared >> using ::isfinite; >> ^ >> = /usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/cmath= :312:9: error: '::isinf' has not been declared >> using ::isinf; >> ^ >> = /usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/cmath= :313:9: error: '::isnan' has not been declared >> using ::isnan; >> ^ >> = /usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/cmath= :314:9: error: '::isnormal' has not been declared >> using ::isnormal; >> ^ >> = /usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/cmath= :315:9: error: '::isgreater' has not been declared >> using ::isgreater; >> ^ >> = /usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/cmath= :316:9: error: '::isgreaterequal' has not been declared >> using ::isgreaterequal; >> ^ >> = /usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/cmath= :317:9: error: '::isless' has not been declared >> using ::isless; >> ^ >> = /usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/cmath= :318:9: error: '::islessequal' has not been declared >> using ::islessequal; >> ^ >> = /usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/cmath= :319:9: error: '::islessgreater' has not been declared >> using ::islessgreater; >> ^ >> = /usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/cmath= :320:9: error: '::isunordered' has not been declared >> using ::isunordered; >> ^ >> = /usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/cmath= :321:9: error: '::isunordered' has not been declared >> using ::isunordered; >> ^ >> = /usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/cmath= :327:9: error: '::abs' has not been declared >> using ::abs; >> ^ >=20 > . . . (then later the other file gets similar results) . . . >=20 >> --- all_subdir_lib/clang --- >> In file included from = /usr/src/lib/clang/libclangarcmigrate/../../../contrib/llvm/../../lib/clan= g/include/llvm/Support/DataTypes.h:36:0, >> from = /usr/src/lib/clang/libclangarcmigrate/../../../contrib/llvm/include/llvm/A= DT/Hashing.h:48, >> from = /usr/src/lib/clang/libclangarcmigrate/../../../contrib/llvm/include/llvm/A= DT/ArrayRef.h:13, >> from = /usr/src/lib/clang/libclangarcmigrate/../../../contrib/llvm/include/llvm/A= DT/DenseMapInfo.h:17, >> from = /usr/src/lib/clang/libclangarcmigrate/../../../contrib/llvm/include/llvm/A= DT/DenseMap.h:17, >> from = /usr/src/lib/clang/libclangarcmigrate/../../../contrib/llvm/tools/clang/in= clude/clang/ARCMigrate/FileRemapper.h:14, >> from = /usr/src/lib/clang/libclangarcmigrate/../../../contrib/llvm/tools/clang/in= clude/clang/ARCMigrate/ARCMT.h:13, >> from = /usr/src/lib/clang/libclangarcmigrate/../../../contrib/llvm/tools/clang/li= b/ARCMigrate/Internals.h:13, >> from = /usr/src/lib/clang/libclangarcmigrate/../../../contrib/llvm/tools/clang/li= b/ARCMigrate/ARCMT.cpp:10: >> = /usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/cmath= :309:9: error: '::signbit' has not been declared >> using ::signbit; >> ^ > . . . (similar list) . . . >=20 >=20 > Based on (from a -v output): >=20 >> ignoring nonexistent directory = "/usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/local/include" >> ignoring nonexistent directory = "/usr/local/lib/gcc/powerpc64-portbld-freebsd11.0/5.3.0/../../../../powerp= c64-portbld-freebsd11.0/include" >> ignoring duplicate directory = "/usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include" >> #include "..." search starts here: >> #include <...> search starts here: >> /usr/src/lib/clang/libclanganalysis/../../../contrib/llvm/include >> = /usr/src/lib/clang/libclanganalysis/../../../contrib/llvm/tools/clang/incl= ude >> = /usr/src/lib/clang/libclanganalysis/../../../contrib/llvm/tools/clang/lib/= Analysis >> . >> = /usr/src/lib/clang/libclanganalysis/../../../contrib/llvm/../../lib/clang/= include >> /usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include >> /usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1 >> /usr/local/lib/gcc/powerpc64-portbld-freebsd11.0/5.3.0/include >> /usr/local/lib/gcc/powerpc64-portbld-freebsd11.0/5.3.0/include-fixed >> End of search list. >=20 > I could try building without clang being included if you want. >=20 > =3D=3D=3D > Mark Millard > markmi at dsl-only.net 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 make[5]: stopped in /usr/src/usr.bin/xlint/llib 1 error The -r300886 powerpc (non-64) system-clang based combination for = buildworld had no such problem and included rebuilding clang. So the = problems are apparently devel/powerpc64-gcc specific or at least = gcc-port specific. =3D=3D=3D Mark Millard markmi at dsl-only.net On 2016-May-27, at 4:40 PM, Mark Millard <markmi at dsl-only.net> wrote: > [I'm top posting the results of the failed build.] >=20 > It looks like the following has been addresses in -r300884. libcompat = also got a -isystem in -r300885. -r300886 did "Move external GCC = compiler hacks to bsd.sys.mk". >=20 > So I'll retry based on -r300886. >=20 >=20 >=20 > Failure details. . . >=20 >=20 > Both the powerpc64 lang/powerpc64-xtoolchain-gcc and powerpc clang = combinations failed for -r300875. The details are rather different this = time and might not be related to your libc++ changes. Both contexts got = the same error. >=20 > powerpc64 lang/powerpc64-xtoolchain-gcc: >=20 >> --- all_subdir_cddl/lib/libzpool --- >> In file included from = /usr/src/cddl/lib/libzpool/../../../sys/cddl/contrib/opensolaris/uts/commo= n/fs/zfs/arc.c:144:0: >> /usr/src/sys/vm/vm_pageout.h:77:8: error: unknown type name 'bool' >> extern bool vm_pageout_wanted; >> ^ >> /usr/src/sys/vm/vm_pageout.h:78:8: error: unknown type name 'bool' >> extern bool vm_pages_needed; >> ^ >=20 >=20 > The -v search list information was: >=20 >> ignoring nonexistent directory = "/usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/local/include" >> ignoring nonexistent directory = "/usr/local/lib/gcc/powerpc64-portbld-freebsd11.0/5.3.0/../../../../powerp= c64-portbld-freebsd11.0/include" >> ignoring duplicate directory = "/usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include" >> ignoring nonexistent directory = "/usr/src/cddl/lib/libzpool/../../../lib/libpthread/thread" >> ignoring nonexistent directory = "/usr/src/cddl/lib/libzpool/../../../lib/libpthread/sys" >> #include "..." search starts here: >> #include <...> search starts here: >> /usr/src/cddl/lib/libzpool/../../../sys/cddl/compat/opensolaris >> /usr/src/cddl/lib/libzpool/../../compat/opensolaris/include >> /usr/src/cddl/lib/libzpool/../../compat/opensolaris/lib/libumem >> = /usr/src/cddl/lib/libzpool/../../contrib/opensolaris/lib/libzpool/common >> = /usr/src/cddl/lib/libzpool/../../../sys/cddl/contrib/opensolaris/uts/commo= n/sys >> = /usr/src/cddl/lib/libzpool/../../../sys/cddl/contrib/opensolaris/uts/commo= n/fs/zfs >> = /usr/src/cddl/lib/libzpool/../../../sys/cddl/contrib/opensolaris/common/zf= s >> = /usr/src/cddl/lib/libzpool/../../../sys/cddl/contrib/opensolaris/uts/commo= n >> /usr/src/cddl/lib/libzpool/../../contrib/opensolaris/head >> /usr/src/cddl/lib/libzpool/../../lib/libumem >> /usr/src/cddl/lib/libzpool/../../contrib/opensolaris/lib/libnvpair >> /usr/src/cddl/lib/libzpool/../../../lib/libthr/arch/powerpc/include >> /usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include >> /usr/local/lib/gcc/powerpc64-portbld-freebsd11.0/5.3.0/include >> /usr/local/lib/gcc/powerpc64-portbld-freebsd11.0/5.3.0/include-fixed >> End of search list. >=20 > This was for: >=20 >> /usr/local/bin/powerpc64-portbld-freebsd11.0-gcc -isystem = /usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include = -L/usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/lib = --sysroot=3D/usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp = -B/usr/local/powerpc64-freebsd/bin/ -O2 -pipe = -I/usr/src/cddl/lib/libzpool/../../../sys/cddl/compat/opensolaris = -I/usr/src/cddl/lib/libzpool/../../compat/opensolaris/include = -I/usr/src/cddl/lib/libzpool/../../compat/opensolaris/lib/libumem = -I/usr/src/cddl/lib/libzpool/../../contrib/opensolaris/lib/libzpool/common= = -I/usr/src/cddl/lib/libzpool/../../../sys/cddl/contrib/opensolaris/uts/com= mon/sys = -I/usr/src/cddl/lib/libzpool/../../../sys/cddl/contrib/opensolaris/uts/com= mon/fs/zfs = -I/usr/src/cddl/lib/libzpool/../../../sys/cddl/contrib/opensolaris/common/= zfs = -I/usr/src/cddl/lib/libzpool/../../../sys/cddl/contrib/opensolaris/uts/com= mon -I/usr/src/cddl/lib/libzpool/../../contrib/opensolaris/head = -I/usr/src/cddl/lib/libzpool/../../lib/libumem = -I/usr/src/cddl/lib/libzpool/../../contrib/opensolaris/lib/libnvpair = -DWANTS_MUTEX_OWNED = -I/usr/src/cddl/lib/libzpool/../../../lib/libpthread/thread = -I/usr/src/cddl/lib/libzpool/../../../lib/libpthread/sys = -I/usr/src/cddl/lib/libzpool/../../../lib/libthr/arch/powerpc/include -g = -DDEBUG=3D1 -DNEED_SOLARIS_BOOLEAN -MD -MF.depend.arc.o -MTarc.o = -std=3Diso9899:1999 -fstack-protector-strong -Wno-pointer-sign = -Wno-error=3Dunused-function -Wno-error=3Denum-compare = -Wno-error=3Dlogical-not-parentheses -Wno-error=3Dbool-compare = -Wno-error=3Duninitialized -Wno-error=3Darray-bounds = -Wno-error=3Dclobbered -Wno-error=3Dcast-align -Wno-error=3Dextra = -Wno-error=3Dattributes -Wno-error=3Dinline = -Wno-error=3Dunused-but-set-variable -Wno-error=3Dunused-value = -Wno-error=3Dstrict-aliasing -Wno-error=3Daddress -Wno-unknown-pragmas = -v -c = /usr/src/cddl/lib/libzpool/../../../sys/cddl/contrib/opensolaris/uts/commo= n/fs/zfs/arc.c -o arc.o >=20 >=20 > powerpc sytem clang: >=20 >> --- all_subdir_cddl/lib/libzpool --- >> In file included from = /usr/src/cddl/lib/libzpool/../../../sys/cddl/contrib/opensolaris/uts/commo= n/fs/zfs/arc.c:144: >> = /usr/obj/clang/powerpc.powerpc/usr/src/tmp/usr/include/vm/vm_pageout.h:77:= 8: error: unknown type name 'bool' >> extern bool vm_pageout_wanted; >> ^ >> = /usr/obj/clang/powerpc.powerpc/usr/src/tmp/usr/include/vm/vm_pageout.h:78:= 8: error: unknown type name 'bool' >> extern bool vm_pages_needed; >> ^ >=20 > This was for: >=20 >> --- arc.o --- >> cc -O2 -pipe = -I/usr/src/cddl/lib/libzpool/../../../sys/cddl/compat/opensolaris = -I/usr/src/cddl/lib/libzpool/../../compat/opensolaris/include = -I/usr/src/cddl/lib/libzpool/../../compat/opensolaris/lib/libumem = -I/usr/src/cddl/lib/libzpool/../../contrib/opensolaris/lib/libzpool/common= = -I/usr/src/cddl/lib/libzpool/../../../sys/cddl/contrib/opensolaris/uts/com= mon/sys = -I/usr/src/cddl/lib/libzpool/../../../sys/cddl/contrib/opensolaris/uts/com= mon/fs/zfs = -I/usr/src/cddl/lib/libzpool/../../../sys/cddl/contrib/opensolaris/common/= zfs = -I/usr/src/cddl/lib/libzpool/../../../sys/cddl/contrib/opensolaris/uts/com= mon -I/usr/src/cddl/lib/libzpool/../../contrib/opensolaris/head = -I/usr/src/cddl/lib/libzpool/../../lib/libumem = -I/usr/src/cddl/lib/libzpool/../../contrib/opensolaris/lib/libnvpair = -DWANTS_MUTEX_OWNED = -I/usr/src/cddl/lib/libzpool/../../../lib/libpthread/thread = -I/usr/src/cddl/lib/libzpool/../../../lib/libpthread/sys = -I/usr/src/cddl/lib/libzpool/../../../lib/libthr/arch/powerpc/include -g = -DDEBUG=3D1 -DNEED_SOLARIS_BOOLEAN -MD -MF.depend.arc.o -MTarc.o = -std=3Diso9899:1999 -fstack-protector-strong -Wno-pointer-sign = -Wno-unknown-pragmas -Wno-empty-body -Wno-string-plus-int = -Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-value = -Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion = -Wno-unused-local-typedef -Wno-switch -Wno-switch-enum = -Wno-knr-promoted-parameter -Wno-parentheses -Qunused-arguments -c = /usr/src/cddl/lib/libzpool/../../../sys/cddl/contrib/opensolaris/uts/commo= n/fs/zfs/arc.c -o arc.o >=20 >=20 >=20 > =3D=3D=3D > Mark Millard > markmi@dsl-only.net >=20 > On 2016-May-27, at 2:56 PM, Mark Millard <markmi@dsl-only.net> wrote: >=20 >> On 2016-May-27, at 1:50 PM, Dimitry Andric <dim at FreeBSD.org> = wrote: >>>=20 >>> On 27 May 2016, at 01:53, Mark Millard <markmi at dsl-only.net> = wrote: >>>>=20 >>>> I do buildworld/buildkernel on a powerpc64 targeting itself via = lang/powerpc64-xtoolchain-gcc (a.k.a. lang/powerpc64-gcc for the most = part). [Getting that lang/powerpc64-gcc installed for self-hosted use = does take some work-around activity.] I have buildworld build clang (but = not use it). [I've been doing this with 11.0-CURRENT for a long time.] >>>>=20 >>>> Actually I use lang/gcc49 as the "system compiler" and = lang/powerpc64-gcc as the self-hosting so-called "cross compiler". (I = later list the src.conf content.) gcc4.2.1 is not installed. >>>>=20 >>>> Trying to go from: >>>>=20 >>>>> # uname -apKU >>>>> FreeBSD FBSDG5C0 11.0-CURRENT FreeBSD 11.0-CURRENT #36 r300531M: = Mon May 23 20:13:52 PDT 2016 = root@FBSDG5C0:/usr/obj/xtoolchain/powerpc.powerpc64/usr/src/sys/GENERIC64v= tsc-NODEBUG powerpc powerpc64 1100111 1100111 >>>>=20 >>>> (for which -r300531 built and installed fine this way) to -r300777 = now fails with errors such as: >>>>=20 >>>>> --- lib/libc++__L --- >>>>> In file included from = /usr/src/lib/libc++/../../contrib/libc++/include/iterator:346:0, >>>>> from = /usr/src/lib/libc++/../../contrib/libc++/include/memory:606, >>>>> from = /usr/src/lib/libc++/../../contrib/libc++/include/algorithm:628, >>>>> from = /usr/src/lib/libc++/../../contrib/libc++/src/algorithm.cpp:10: >>>>> /usr/src/lib/libc++/../../contrib/libc++/include/iosfwd:176:14: = error: 'mbstate_t' was not declared in this scope >>>>> typedef fpos<mbstate_t> streampos; >>>>> ^ >>>=20 >>> This is hopefully fixed by r300873 now. Can you please verify? >>>=20 >>> -Dimitry >>=20 >> buildworld/buildkernel started, based on -r300875 for powerpc64 = under/on powerpc64 FreeBSD via lang/powerpc-xtoolchain-gcc as the = so-called "cross compiler". If it completes successfully it takes about = 8 hours for what I normally include in such builds. >>=20 >> I've also started a clang-based buildworld for powerpc (non-64) under = powerpc FreeBSD as a cross check. (This environment involves work = arounds, such as changes to signal delivery to avoid clang's code = generation ABI violations in its stack handling. A clang based = buildkernel would not complete so I would use a separate gcc 4.2.1 = kernel build to get an overall system.) >>=20 >> =3D=3D=3D >> Mark Millard >> markmi at dsl-only.net >>=20 >>=20 >=20
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?0C88C11C-154A-459B-98EB-2A80A166DBCE>