From owner-freebsd-ppc@freebsd.org Tue Jun 20 08:37:46 2017 Return-Path: Delivered-To: freebsd-ppc@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C8F07D92D4F for ; Tue, 20 Jun 2017 08:37:46 +0000 (UTC) (envelope-from markmi@dsl-only.net) Received: from asp.reflexion.net (outbound-mail-211-175.reflexion.net [208.70.211.175]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8D0B3791D5 for ; Tue, 20 Jun 2017 08:37:45 +0000 (UTC) (envelope-from markmi@dsl-only.net) Received: (qmail 22319 invoked from network); 20 Jun 2017 08:37:44 -0000 Received: from unknown (HELO mail-cs-01.app.dca.reflexion.local) (10.81.19.1) by 0 (rfx-qmail) with SMTP; 20 Jun 2017 08:37:44 -0000 Received: by mail-cs-01.app.dca.reflexion.local (Reflexion email security v8.40.1) with SMTP; Tue, 20 Jun 2017 04:37:44 -0400 (EDT) Received: (qmail 17984 invoked from network); 20 Jun 2017 08:37:44 -0000 Received: from unknown (HELO iron2.pdx.net) (69.64.224.71) by 0 (rfx-qmail) with (AES256-SHA encrypted) SMTP; 20 Jun 2017 08:37:44 -0000 Received: from [192.168.1.114] (c-76-115-7-162.hsd1.or.comcast.net [76.115.7.162]) by iron2.pdx.net (Postfix) with ESMTPSA id 9E1D3EC8A8B; Tue, 20 Jun 2017 01:37:43 -0700 (PDT) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\)) Subject: Re: svn commit: r320127 - in head: . share/mk From: Mark Millard In-Reply-To: <20170620095434.48a8f8eb3d62df4ae65cf095@bidouilliste.com> Date: Tue, 20 Jun 2017 01:37:43 -0700 Cc: manu@FreeBSD.org, svn-src-head@freebsd.org, Ed Maste , Warner Losh , FreeBSD PowerPC ML Content-Transfer-Encoding: quoted-printable Message-Id: <1577D8FE-84FE-43F7-9B30-EDC8ED698DAD@dsl-only.net> References: <9BF6B86D-4CBC-4502-8EB7-849E3461CA4C@dsl-only.net> <20170620095434.48a8f8eb3d62df4ae65cf095@bidouilliste.com> To: Emmanuel Vadot X-Mailer: Apple Mail (2.3273) X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 20 Jun 2017 08:37:46 -0000 On 2017-Jun-20, at 12:54 AM, Emmanuel Vadot = wrote: > On Tue, 20 Jun 2017 00:31:30 -0700 > Mark Millard wrote: >=20 >> [Because powerpc64 (and pweorpc) buildworld is broken for >> clang 4 as of the INO64 changes I've been using >> devel/powerpc64-xtoolchain-gcc and its devel/powerpc64-gcc >> recently.] >>=20 >> Emmanuel Vadot manu at FreeBSD.org wrote/committed on Tue Jun 20 = 02:09:52 UTC 2017 >>=20 >>> Author: manu >>> Date: Tue Jun 20 02:09:50 2017 >>> New Revision: 320127 >>> URL:=20 >>> https://svnweb.freebsd.org/changeset/base/320127 >>>=20 >>>=20 >>> Log: >>> Switch back to the BSDL DTC (Device Tree Compiler). >>> The BSDL dtc has grown the needed features (overlays mostly) and is = able to >>> compile all of our base DTS. >>> You can use WITH_GPL_DTC is you need the GPL one or DTC=3D in = make.conf(5) >>> to specify an alternate location for the compiler to use. >>>=20 >>> Discussed with: emaste, imp >>>=20 >>> Modified: >>> head/UPDATING >>> head/share/mk/src.opts.mk >>=20 >> Unfortunately now devel/powerpc64-gcc no longer completes buildworld >> (this is a libc++ based amd64 -> powerpc64 cross build as I = experiment >> with libc++ capable compilers for powerpc64): >>=20 >> --- input_buffer.o --- >> /usr/src/usr.bin/dtc/input_buffer.cc:658:2: error: 'result' does not = name a type >> result operator()() override >> ^~~~~~ >> . . . >> --- all_subdir_usr.bin --- >> *** [input_buffer.o] Error code 1 >=20 > Hello Mark, >=20 > Could you report the issue upstream please : > https://github.com/davidchisnall/dtc ? >=20 > As soon as it's fixed I'll update our in-tree copy. >=20 > Thanks, Sure. But I probably know what the problem is: a missing keyword. . . (So more than powerpc64 is likely going to have problems with the source code.) FYI: The code structure is: typedef unsigned long long valty; . . . struct expression { . . . typedef std::pair result; . . . }; . . . struct binary_operator_base : public expression { using expression::expression; . . . }; . . . template struct binary_operator : public binary_operator_base { . . . }; . . . template struct divmod : public binary_operator<5, T> { using binary_operator<5, T>::binary_operator; using binary_operator_base::result; result operator()() override { result r =3D (*binary_operator_base::rhs)(); if (r.second && (r.first =3D=3D 0)) { expression::loc.report_error("Division by = zero"); return {0, false}; } return binary_operator<5, T>::operator()(); } }; Looks to me that there is a "typename" missing: using binary_operator_base::result; should be: using typename binary_operator_base::result; So making that change and trying the buildworld buildkernel again results in. . . buildworld completed and buildkernel is in process So it looks like I was right. >> make[4]: stopped in /usr/src/usr.bin/dtc >> .ERROR_TARGET=3D'input_buffer.o' >> = .ERROR_META_FILE=3D'/usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc6= 4/usr/src/usr.bin/dtc/input_buffer.o.meta' >> .MAKE.LEVEL=3D'4' >> MAKEFILE=3D'' >> .MAKE.MODE=3D'meta missing-filemon=3Dyes missing-meta=3Dyes = silent=3Dyes verbose' >> . . . >> --- all_subdir_usr.bin --- >>=20 >> make[4]: stopped in /usr/src/usr.bin/dtc >> .ERROR_TARGET=3D'input_buffer.o' >> = .ERROR_META_FILE=3D'/usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc6= 4/usr/src/usr.bin/dtc/input_buffer.o.meta' >> .MAKE.LEVEL=3D'4' >> MAKEFILE=3D'' >> .MAKE.MODE=3D'meta missing-filemon=3Dyes missing-meta=3Dyes = silent=3Dyes verbose' >> _ERROR_CMD=3D'/usr/local/bin/powerpc64-unknown-freebsd12.0-g++ = -isystem = /usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/src/tmp/usr/in= clude/c++/v1 -std=3Dc++11 -nostdinc++ -isystem = /usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/src/tmp/usr/in= clude = -L/usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/src/tmp/usr/= lib = -B/usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/src/tmp/usr/= lib = --sysroot=3D/usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/sr= c/tmp -B/usr/local/powerpc64-freebsd/bin/ -O2 -pipe -g = -fstack-protector-strong -Wsystem-headers -Wall -Wno-format-y2k -W = -Wno-unused-parameter -Wpointer-arith -Wno-uninitialized = -Wno-error=3Daddress -Wno-error=3Darray-bounds -Wno-error=3Dattributes = -Wno-error=3Dbool-compare -Wno-error=3Dcast-align -Wno-error=3Dclobbered = -Wno-error=3Denum-compare -Wno-error=3Dextra -Wno-error=3Dinline = -Wno-error=3Dlogical-not-parentheses -Wno-error=3Dstrict-aliasing = -Wno-error=3Duninitialized -Wno-error=3Dunused-but-set-variable = -Wno-error=3Dunused-function -Wno-error=3Dunused-value = -Wno-error=3Dstrict-overflow -Wno-error=3Dmisleading-indentation = -Wno-error=3Dnonnull-compare -Wno-error=3Dshift-negative-value = -Wno-error=3Dtautological-compare -Wno-error=3Dunused-const-variable -v = -std=3Dc++11 -fno-rtti -fno-exceptions -c = /usr/src/usr.bin/dtc/input_buffer.cc -o input_buffer.o;' >> .CURDIR=3D'/usr/src/usr.bin/dtc' >> .MAKE=3D'make' >> = .OBJDIR=3D'/usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/src= /usr.bin/dtc' >> .TARGETS=3D'all' >> = DESTDIR=3D'/usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/src= /tmp' >> LD_LIBRARY_PATH=3D'' >> MACHINE=3D'powerpc' >> MACHINE_ARCH=3D'powerpc64' >> = MAKEOBJDIRPREFIX=3D'/usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc6= 4' >> MAKESYSPATH=3D'/usr/src/share/mk' >> MAKE_VERSION=3D'20170510' >> = PATH=3D'/usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/src/tm= p/legacy/usr/sbin:/usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/= usr/src/tmp/legacy/usr/bin:/usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.p= owerpc64/usr/src/tmp/legacy/bin:/usr/obj/powerpc64vtsc_xtoolchain-gcc/powe= rpc.powerpc64/usr/src/tmp/usr/sbin:/usr/obj/powerpc64vtsc_xtoolchain-gcc/p= owerpc.powerpc64/usr/src/tmp/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin' >> SRCTOP=3D'/usr/src' >> = OBJTOP=3D'/usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/src'= >> .MAKE.MAKEFILES=3D'/usr/src/share/mk/sys.mk = /usr/src/share/mk/local.sys.env.mk /usr/src/share/mk/src.sys.env.mk = /root/src.configs/src.conf.powerpc64-xtoolchain-gcc.amd64-host = /usr/src/share/mk/bsd.mkopt.mk /usr/src/share/mk/bsd.suffixes.mk = /root/src.configs/make.conf /usr/src/share/mk/local.sys.mk = /usr/src/share/mk/src.sys.mk /dev/null /usr/src/usr.bin/dtc/Makefile = /usr/src/share/mk/bsd.prog.mk /usr/src/share/mk/bsd.init.mk = /usr/src/share/mk/bsd.opts.mk /usr/src/share/mk/bsd.cpu.mk = /usr/src/share/mk/local.init.mk /usr/src/share/mk/src.init.mk = /usr/src/usr.bin/dtc/../Makefile.inc /usr/src/share/mk/bsd.own.mk = /usr/src/share/mk/bsd.compiler.mk /usr/src/share/mk/bsd.compiler.mk = /usr/src/share/mk/bsd.libnames.mk /usr/src/share/mk/src.libnames.mk = /usr/src/share/mk/src.opts.mk /usr/src/share/mk/bsd.nls.mk = /usr/src/share/mk/bsd.confs.mk /usr/src/share/mk/bsd.files.mk = /usr/src/share/mk/bsd.incs.mk /usr/src/share/mk/bsd.links.mk = /usr/src/share/mk/bsd.man.mk /usr/src/share/mk/bsd.dep.mk = /usr/src/share/mk/bsd.clang-analyze.mk /usr/src/share/mk/bsd.obj.mk = /usr/src/share/mk/bsd.subdir.mk /usr/src/share/mk/bsd.sys.mk' >> .PATH=3D'. /usr/src/usr.bin/dtc' >> --- all_subdir_libexec --- >> *** [all_subdir_libexec] Error code 2 >>=20 >>=20 >> # Meta data file = /usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/src/usr.bin/dt= c/input_buffer.o.meta >> CMD /usr/local/bin/powerpc64-unknown-freebsd12.0-g++ -isystem = /usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/src/tmp/usr/in= clude/c++/v1 -std=3Dc++11 -nostdinc++ -isystem = /usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/src/tmp/usr/in= clude = -L/usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/src/tmp/usr/= lib = -B/usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/src/tmp/usr/= lib = --sysroot=3D/usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/sr= c/tmp -B/usr/local/powerpc64-freebsd/bin/ -O2 -pipe -g = -fstack-protector-strong -Wsystem-headers -Wall -Wno-format-y2k -W = -Wno-unused-parameter -Wpointer-arith -Wno-uninitialized = -Wno-error=3Daddress -Wno-error=3Darray-bounds -Wno-error=3Dattributes = -Wno-error=3Dbool-compare -Wno-error=3Dcast-align -Wno-error=3Dclobbered = -Wno-error=3Denum-compare -Wno-error=3Dextra -Wno-error=3Dinline = -Wno-error=3Dlogical-not-parentheses -Wno-error=3Dstrict-aliasing = -Wno-error=3Duninitialized -Wno-error=3Dunused-but-set-variable = -Wno-error=3Dunused-function -Wno-error=3Dunused-value = -Wno-error=3Dstrict-overflow -Wno-error=3Dmisleading-indentation = -Wno-error=3Dnonnull-compare -Wno-error=3Dshift-negative-value = -Wno-error=3Dtautological-compare -Wno-error=3Dunused-const-variable -v = -std=3Dc++11 -fno-rtti -fno-exceptions -c = /usr/src/usr.bin/dtc/input_buffer.cc -o input_buffer.o >> CWD = /usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/src/usr.bin/dt= c >> TARGET input_buffer.o >> -- command output -- >> Using built-in specs. >> COLLECT_GCC=3D/usr/local/bin/powerpc64-unknown-freebsd12.0-g++ >> Target: powerpc64-unknown-freebsd12.0 >> Configured with: = /usr/obj/portswork/usr/ports/devel/powerpc64-gcc/work/gcc-6.3.0/configure = --target=3Dpowerpc64-unknown-freebsd12.0 --disable-nls = --enable-languages=3Dc,c++ --without-headers --with-gmp=3D/usr/local = --with-pkgversion=3D'FreeBSD Ports Collection for powerpc64' = --with-system-zlib --with-gcc-include-dir=3D/usr/include/c++/v1/ = --with-as=3D/usr/local/bin/powerpc64-freebsd-as = --with-ld=3D/usr/local/bin/powerpc64-freebsd-ld --prefix=3D/usr/local = --localstatedir=3D/var --mandir=3D/usr/local/man = --infodir=3D/usr/local/info/ --build=3Damd64-unknown-freebsd12.0 >> Thread model: posix >> gcc version 6.3.0 (FreeBSD Ports Collection for powerpc64)=20 >> COLLECT_GCC_OPTIONS=3D'-isystem' = '/usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/src/tmp/usr/i= nclude/c++/v1' '-std=3Dc++11' '-nostdinc++' '-isystem' = '/usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/src/tmp/usr/i= nclude' = '-L/usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/src/tmp/usr= /lib' '-B' = '/usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/src/tmp/usr/l= ib' '-B' '/usr/local/powerpc64-freebsd/bin/' '-O2' '-pipe' '-g' = '-fstack-protector-strong' '-Wsystem-headers' '-Wall' '-Wno-format-y2k' = '-Wextra' '-Wno-unused-parameter' '-Wpointer-arith' '-Wno-uninitialized' = '-Wno-error=3Daddress' '-Wno-error=3Darray-bounds' = '-Wno-error=3Dattributes' '-Wno-error=3Dbool-compare' = '-Wno-error=3Dcast-align' '-Wno-error=3Dclobbered' = '-Wno-error=3Denum-compare' '-Wno-error=3Dextra' '-Wno-error=3Dinline' = '-Wno-error=3Dlogical-not-parentheses' '-Wno-error=3Dstrict-aliasing' = '-Wno-error=3Duninitialized' '-Wno-error=3Dunused-but-set-variable' = '-Wno-error=3Dunused-function' '-Wno-error=3Dunused-value' = '-Wno-error=3Dstrict-overflow' '-Wno-error=3Dmisleading-indentation' = '-Wno-error=3Dnonnull-compare' '-Wno-error=3Dshift-negative-value' = '-Wno-error=3Dtautological-compare' '-Wno-error=3Dunused-const-variable' = '-v' '-std=3Dc++11' '-fno-rtti' '-fno-exceptions' '-c' '-o' = 'input_buffer.o' '-shared-libgcc' >> /usr/local/libexec/gcc/powerpc64-unknown-freebsd12.0/6.3.0/cc1plus = -quiet -nostdinc++ -v -isysroot = /usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/src/tmp = -isystem = /usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/src/tmp/usr/in= clude/c++/v1 -isystem = /usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/src/tmp/usr/in= clude /usr/src/usr.bin/dtc/input_buffer.cc -quiet -dumpbase = input_buffer.cc -auxbase-strip input_buffer.o -g -O2 -Wsystem-headers = -Wall -Wno-format-y2k -Wextra -Wno-unused-parameter -Wpointer-arith = -Wno-uninitialized -Wno-error=3Daddress -Wno-error=3Darray-bounds = -Wno-error=3Dattributes -Wno-error=3Dbool-compare -Wno-error=3Dcast-align = -Wno-error=3Dclobbered -Wno-error=3Denum-compare -Wno-error=3Dextra = -Wno-error=3Dinline -Wno-error=3Dlogical-not-parentheses = -Wno-error=3Dstrict-aliasing -Wno-error=3Duninitialized = -Wno-error=3Dunused-but-set-variable -Wno-error=3Dunused-function = -Wno-error=3Dunused-value -Wno-error=3Dstrict-overflow = -Wno-error=3Dmisleading-indentation -Wno-error=3Dnonnull-compare = -Wno-error=3Dshift-negative-value -Wno-error=3Dtautological-compare = -Wno-error=3Dunused-const-variable -std=3Dc++11 -std=3Dc++11 -version = -fstack-protector-strong -fno-rtti -fno-exceptions -o - | >> /usr/local/bin/powerpc64-freebsd-as -v --traditional-format -a64 = -mppc64 -many -o input_buffer.o >> GNU assembler version 2.28 (powerpc64-freebsd) using BFD version (GNU = Binutils) 2.28 >> GNU C++11 (FreeBSD Ports Collection for powerpc64) version 6.3.0 = (powerpc64-unknown-freebsd12.0) >> compiled by GNU C version 4.2.1 Compatible FreeBSD Clang 4.0.0 = (tags/RELEASE_400/final 297347), GMP version 6.1.2, MPFR version = 3.1.5-p2, MPC version 1.0.3, isl version none >> GGC heuristics: --param ggc-min-expand=3D100 --param = ggc-min-heapsize=3D131072 >> ignoring nonexistent directory = "/usr/local/lib/gcc/powerpc64-unknown-freebsd12.0/6.3.0/../../../../powerp= c64-unknown-freebsd12.0/sys-include" >> ignoring nonexistent directory = "/usr/local/lib/gcc/powerpc64-unknown-freebsd12.0/6.3.0/../../../../powerp= c64-unknown-freebsd12.0/include" >> #include "..." search starts here: >> #include <...> search starts here: >> = /usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/src/tmp/usr/in= clude/c++/v1 >> = /usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/src/tmp/usr/in= clude >> /usr/local/lib/gcc/powerpc64-unknown-freebsd12.0/6.3.0/include >> /usr/local/lib/gcc/powerpc64-unknown-freebsd12.0/6.3.0/include-fixed >> End of search list. >> GNU C++11 (FreeBSD Ports Collection for powerpc64) version 6.3.0 = (powerpc64-unknown-freebsd12.0) >> compiled by GNU C version 4.2.1 Compatible FreeBSD Clang 4.0.0 = (tags/RELEASE_400/final 297347), GMP version 6.1.2, MPFR version = 3.1.5-p2, MPC version 1.0.3, isl version none >> GGC heuristics: --param ggc-min-expand=3D100 --param = ggc-min-heapsize=3D131072 >> Compiler executable checksum: 47621bba5ca992f7e7897909a81561ae >> /usr/src/usr.bin/dtc/input_buffer.cc:658:2: error: 'result' does not = name a type >> result operator()() override >> ^~~~~~ >> In file included from = /usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/src/tmp/usr/in= clude/c++/v1/unordered_set:323:0, >> from /usr/src/usr.bin/dtc/input_buffer.hh:39, >> from /usr/src/usr.bin/dtc/input_buffer.cc:33: >> = /usr/obj/powerpc64vtsc_xtoolchain-gcc/powerpc.powerpc64/usr/src/tmp/usr/in= clude/c++/v1/__hash_table:1943:1: warning: always_inline function might = not be inlinable [-Wattributes] >> __hash_table<_Tp, _Hash, _Equal, = _Alloc>::__emplace_unique_key_args(_Key const& __k, _Args&&... __args) >> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> *** Error code 1 =3D=3D=3D Mark Millard markmi at dsl-only.net