Date: Sat, 23 Jan 2016 03:25:53 -0800 From: Mark Millard <markmi@dsl-only.net> To: FreeBSD PowerPC ML <freebsd-ppc@freebsd.org>, FreeBSD Toolchain <freebsd-toolchain@freebsd.org> Subject: powerpc64-gcc unable to compile clang 3.8.0 from clang380-import -r294609 via buildworld Message-ID: <67523280-9F20-4638-BF24-1BFAE8583805@dsl-only.net>
next in thread | raw e-mail | index | archive | help
I tried a buildworld that included building clang and lldb based on = using powerpc64-xtoolchain-gcc/powerpc64-gcc as a cross compiler. It = failed, see below. This might indicate a more general gcc 5.x vs. clang = 3.8.0 source code mismatch. This was my first try. This could have been = true for some time. --- CFG.o --- /usr/local/bin/powerpc64-portbld-freebsd11.0-g++ -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.po werpc64/usr/src/tmp -B/usr/local/powerpc64-freebsd/bin/ = -I/usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1 = -std=3Dgnu++11 = -L/usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/../lib/libc++ = --sysroot=3D/usr /obj/xtoolchain/powerpc.powerpc64/usr/src/tmp = -B/usr/local/powerpc64-freebsd/bin/ -O2 -pipe = -I/usr/src/lib/clang/libclanganalysis/../../../contrib/llvm/include = -I/usr/src/lib/clang/libclanganalysis/../../../contrib/llvm /tools/clang/include = -I/usr/src/lib/clang/libclanganalysis/../../../contrib/llvm/tools/clang/li= b/Analysis -I. = -I/usr/src/lib/clang/libclanganalysis/../../../contrib/llvm/../../lib/clan= g/include -DLLVM_ON_UNIX -DLLVM_ON_FREEBSD -D__STDC_LIMIT_MACROS = -D__STDC_CONSTANT_MACROS -DCLANG_ENABLE_ARCMT = -DCLANG_ENABLE_STATIC_ANALYZER -fno-strict-aliasing = -DLLVM_DEFAULT_TARGET_TRIPLE=3D\"powerpc64-unknown-freebsd11.0\" = -DLLVM_HOST_TRIPLE=3D\"powerpc64 -unknown-freebsd11.0\" -DDEFAULT_SYSROOT=3D\"\" -MD -MP -MF.depend.CFG.o = -MTCFG.o -fstack-protector-strong -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 -std=3Dc++11 -fno-exceptions -fno-rtti = -c = /usr/src/lib/clang/libclanganalysis/../../../contrib/llvm/tools/clang/lib/= Analysis/CFG.cpp -o CFG.o . . . --- all_subdir_libclanganalysis --- = /usr/src/lib/clang/libclanganalysis/../../../contrib/llvm/tools/clang/lib/= Analysis/CFG.cpp: In member function 'std::__1::unique_ptr<clang::CFG> = {anonymous}::CFGBuilder::buildCFG(const clang::Decl*, clang::Stmt*)': = /usr/src/lib/clang/libclanganalysis/../../../contrib/llvm/tools/clang/lib/= Analysis/CFG.cpp:1046:45: error: no matching function for call to = 'reverse(clang::CXXConstructorDecl::init_const_range)' for (auto *I : llvm::reverse(CD->inits())) { ^ (not the only error reported for CFG.cpp=E2=80=99s compile, I just = listed the first). I do not know if the -std=3Dgnu++11 that is automatically used is = causing variations in the language definition in use or not. I do this sort of thing with 11.0-CURRENT now and have been for a long = time, including building clang 3.7.1 and its lldb via powerpc64-gcc in = more recent times. But powerpc64-gcc has historically rejected the clang = extras so I=E2=80=99ve used WITHOUT_CLANG_EXTRAS=3D historically. Some context notes: Empty make.conf via __MAKE_CONF use. scr.conf: (actually: used via SRC_ENV_CONF=3D) TO_TYPE=3Dpowerpc64 TOOLS_TO_TYPE=3D${TO_TYPE} FROM_TYPE=3Damd64 TOOLS_FROM_TYPE=3Dx86_64 VERSION_CONTEXT=3D11.0 # KERNCONF=3DGENERIC64vtsc-NODEBUG TARGET=3Dpowerpc .if ${.MAKE.LEVEL} =3D=3D 0 TARGET_ARCH=3D${TO_TYPE} .export TARGET_ARCH .endif # WITHOUT_CROSS_COMPILER=3D # # 1 thing that fails to build if attempted via gcc variants: WITHOUT_CLANG_EXTRAS=3D # WITH_FAST_DEPEND=3D WITH_LIBCPLUSPLUS=3D WITH_LIB32=3D WITH_BOOT=3D WITH_CLANG=3D WITH_CLANG_IS_CC=3D WITH_CLANG_FULL=3D WITH_LLDB=3D # WITHOUT_GCC=3D WITHOUT_GNUCXX=3D # NO_WERROR=3D MALLOC_PRODUCTION=3D #CFLAGS+=3D -DELF_VERBOSE # WITH_DEBUG=3D WITH_DEBUG_FILES=3D # # TOOLS_TO_TYPE based on ${TO_TYPE}-xtoolchain-gcc related bintutils... # CROSS_TOOLCHAIN=3D${TO_TYPE}-gcc X_COMPILER_TYPE=3Dgcc CROSS_BINUTILS_PREFIX=3D/usr/local/${TOOLS_TO_TYPE}-freebsd/bin/ # .if ${.MAKE.LEVEL} =3D=3D 0 = XCC=3D/usr/local/bin/${TOOLS_TO_TYPE}-portbld-freebsd${VERSION_CONTEXT}-gc= c = XCXX=3D/usr/local/bin/${TOOLS_TO_TYPE}-portbld-freebsd${VERSION_CONTEXT}-g= ++ = XCPP=3D/usr/local/bin/${TOOLS_TO_TYPE}-portbld-freebsd${VERSION_CONTEXT}-c= pp .export XCC .export XCXX .export XCPP XAS=3D/usr/local/${TOOLS_TO_TYPE}-freebsd/bin/as XAR=3D/usr/local/${TOOLS_TO_TYPE}-freebsd/bin/ar XLD=3D/usr/local/${TOOLS_TO_TYPE}-freebsd/bin/ld XNM=3D/usr/local/${TOOLS_TO_TYPE}-freebsd/bin/nm XOBJCOPY=3D/usr/local/${TOOLS_TO_TYPE}-freebsd/bin/objcopy XOBJDUMP=3D/usr/local/${TOOLS_TO_TYPE}-freebsd/bin/objdump XRANLIB=3D/usr/local/${TOOLS_TO_TYPE}-freebsd/bin/ranlib XSIZE=3D/usr/local/${TOOLS_TO_TYPE}-freebsd/bin/size #NO-SUCH: XSTRINGS=3D/usr/local/${TOOLS_TO_TYPE}-freebsd/bin/strings XSTRINGS=3D/usr/local/bin/${TOOLS_TO_TYPE}-freebsd-strings .export XAS .export XAR .export XLD .export XNM .export XOBJCOPY .export XOBJDUMP .export XRANLIB .export XSIZE .export XSTRINGS .endif # # =46rom clang (via system)... # .if ${.MAKE.LEVEL} =3D=3D 0 CC=3D/usr/bin/clang -B/usr/local/${TOOLS_FROM_TYPE}-freebsd/bin CXX=3D/usr/bin/clang++ -B/usr/local/${TOOLS_FROM_TYPE}-freebsd/bin CPP=3D/usr/bin/clang-cpp -B/usr/local/${TOOLS_FROM_TYPE}-freebsd/bin .export CC .export CXX .export CPP .endif # # TOOLS_FROM_TYPE binutils... # .if ${.MAKE.LEVEL} =3D=3D 0 AS=3D/usr/local/${TOOLS_FROM_TYPE}-freebsd/bin/as AR=3D/usr/local/${TOOLS_FROM_TYPE}-freebsd/bin/ar LD=3D/usr/local/${TOOLS_FROM_TYPE}-freebsd/bin/ld NM=3D/usr/local/${TOOLS_FROM_TYPE}-freebsd/bin/nm OBJCOPY=3D/usr/local/${TOOLS_FROM_TYPE}-freebsd/bin/objcopy OBJDUMP=3D/usr/local/${TOOLS_FROM_TYPE}-freebsd/bin/objdump RANLIB=3D/usr/local/${TOOLS_FROM_TYPE}-freebsd/bin/ranlib SIZE=3D/usr/local/${TOOLS_FROM_TYPE}-freebsd/bin/size #NO-SUCH: STRINGS=3D/usr/local/${TOOLS_FROM_TYPE}-freebsd/bin/strings STRINGS=3D/usr/local/bin/${TOOLS_FROM_TYPE}-freebsd-strings .export AS .export AR .export LD .export NM .export OBJCOPY .export OBJDUMP .export RANLIB .export SIZE .export STRINGS .endif =3D=3D=3D Mark Millard markmi at dsl-only.net
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?67523280-9F20-4638-BF24-1BFAE8583805>