From owner-freebsd-toolchain@freebsd.org Thu Mar 31 22:02:33 2016 Return-Path: Delivered-To: freebsd-toolchain@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 0B9F7AE4AD1 for ; Thu, 31 Mar 2016 22:02:33 +0000 (UTC) (envelope-from markmi@dsl-only.net) Received: from asp.reflexion.net (outbound-mail-211-156.reflexion.net [208.70.211.156]) (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 BBB901208 for ; Thu, 31 Mar 2016 22:02:32 +0000 (UTC) (envelope-from markmi@dsl-only.net) Received: (qmail 17459 invoked from network); 31 Mar 2016 22:02:28 -0000 Received: from unknown (HELO rtc-sm-01.app.dca.reflexion.local) (10.81.150.1) by 0 (rfx-qmail) with SMTP; 31 Mar 2016 22:02:28 -0000 Received: by rtc-sm-01.app.dca.reflexion.local (Reflexion email security v7.90.1) with SMTP; Thu, 31 Mar 2016 18:02:35 -0400 (EDT) Received: (qmail 23771 invoked from network); 31 Mar 2016 22:02:34 -0000 Received: from unknown (HELO iron2.pdx.net) (69.64.224.71) by 0 (rfx-qmail) with SMTP; 31 Mar 2016 22:02:34 -0000 X-No-Relay: not in my network X-No-Relay: not in my network X-No-Relay: not in my network X-No-Relay: not in my network Received: from [192.168.1.8] (c-76-115-7-162.hsd1.or.comcast.net [76.115.7.162]) by iron2.pdx.net (Postfix) with ESMTPSA id EAFED1C4061; Thu, 31 Mar 2016 15:02:25 -0700 (PDT) Content-Type: text/plain; charset=windows-1252 Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\)) Subject: Re: svn commit: r297435 - head: still problems for stage 3 when gcc 4.2.1 is avoided (powerpc64 self-hosted build) From: Mark Millard In-Reply-To: <56FD9757.6040709@FreeBSD.org> Date: Thu, 31 Mar 2016 15:02:29 -0700 Cc: FreeBSD Current , FreeBSD Toolchain , FreeBSD PowerPC ML Content-Transfer-Encoding: quoted-printable Message-Id: <9E3033D5-F416-4B78-97C2-0A0AABF5A49E@dsl-only.net> References: <5A0ACA76-6F1D-4975-9E59-2A64BB8EFC77@dsl-only.net> <56FD9757.6040709@FreeBSD.org> To: Bryan Drewery X-Mailer: Apple Mail (2.3124) X-BeenThere: freebsd-toolchain@freebsd.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: Maintenance of FreeBSD's integrated toolchain List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 31 Mar 2016 22:02:33 -0000 > On 2016-Mar-31, at 2:32 PM, Bryan Drewery = wrote: >=20 > On 3/31/16 2:23 PM, Mark Millard wrote: >> I use the likes of: >>=20 >>>> # diff -rq /usr/include /usr/local/include | grep "^Files " >> to find what to rename for the duration of the system builds. >>=20 >> An example of what happens without the renames is below but I first = note the use of the name dwarf_errmsg in /usr/include vs. in = /usr/local/include (shown after the .h file rename but the build was = with the normal file name): >>=20 >=20 > Except for legacy, build-tools, bootstrap-tools, and cross-tools, none > of /usr/include or /usr/local/include is supposed to be included. In > those phases though it is intended that /usr/include is used. Not > /usr/local/include though. >=20 > What package is providing /usr/local/include/libdwarf.h? 'pkg which > /usr/local/include/libdwarf.h' I ask so I can install it and recreate > the issue and fix it. Here is the list for the things I renamed, including for dwarf.h : > # pkg which /usr/local/include/dwarf.h /usr/local/include/libdwarf.h = /usr/local/include/atf-c/defs.h /usr/local/include/iconv.h = /usr/local/include/histedit.h > /usr/local/include/dwarf.h was installed by package libdwarf-20130207 > /usr/local/include/libdwarf.h was installed by package = libdwarf-20130207 > /usr/local/include/atf-c/defs.h was installed by package atf-0.21 > /usr/local/include/iconv.h was not found in the database > /usr/local/include/histedit.h was installed by package = libedit-3.1.20150325_1 It looks like iconv.h is from something later removed but was not = cleaned out at the time. I have /usr/local/include/readline/ material = from the same time frame: > # ls -lt /usr/local/include/ > .. . . > -rw-r--r-- 1 root wheel 12733 Apr 22 2015 mpc.h > -rw-r--r-- 1 root wheel 9348 Mar 12 2015 renamed_iconv.h > drwxr-xr-x 2 root wheel 512 Mar 12 2015 readline > # ls -lt /usr/local/include/readline > total 80 > -rw-r--r-- 1 root wheel 3193 Mar 12 2015 rltypedefs.h > -rw-r--r-- 1 root wheel 2438 Mar 12 2015 rlconf.h > -rw-r--r-- 1 root wheel 1835 Mar 12 2015 rlstdc.h > -rw-r--r-- 1 root wheel 3046 Mar 12 2015 tilde.h > -rw-r--r-- 1 root wheel 10079 Mar 12 2015 history.h > -rw-r--r-- 1 root wheel 3163 Mar 12 2015 keymaps.h > -rw-r--r-- 1 root wheel 4577 Mar 12 2015 chardefs.h > -rw-r--r-- 1 root wheel 37802 Mar 12 2015 readline.h but "pkg which" reports those files as being from readline-6.3.8 . I guess I can just delete would would normally have been = /usr/local/include/iconv.h . Back to quoting the earlier message: > We likely just need to prioritize /usr/include over /usr/local/include > for these phases, which gcc49 may have backwards since it has its = prefix > set to /usr/local from the ports build. >=20 >>>> # find /usr/include/ -exec grep dwarf_errmsg {} \; -print >>>> #define dwarf_errmsg(error) dwarf_errmsg_(&error) >>>> const char *dwarf_errmsg_(Dwarf_Error *); >>>> /usr/include/libdwarf.h >>>> # find /usr/local/include/ -exec grep dwarf_errmsg {} \; -print >>>> char* dwarf_errmsg(Dwarf_Error /*error*/); >>>> /usr/local/include/renamed_libdwarf.h >>>> # >> So dwarf_errmsg is from /usr/local/include and dwarf_errmsg_ is from = /usr/include . >>=20 >> The failure shows references to dwarf_errmsg instead of dwarf_errmsg_ = --and dwarf_errmsg being undefined (dwarf_errno has similar issues): >>=20 >>>> -------------------------------------------------------------- >>>>>>>>>> stage 3: cross tools >>>> -------------------------------------------------------------- >>>> . . . >>>> --- ctfconvert.full --- >>>> /usr/local/bin/gcc49 -O2 -pipe = -I/usr/src/cddl/usr.bin/ctfconvert/../../../sys/cddl/compat/opensolaris = -I/usr/src/cddl/usr.bin/ctfconvert/../../../cddl/compat/opensolaris/includ= e -I/usr/src/cddl/usr.b >>>> in/ctfconvert/../../../cddl/contrib/opensolaris = -I/usr/src/cddl/usr.bin/ctfconvert/../../../sys/cddl/contrib/opensolaris = -I/usr/src/cddl/usr.bin/ctfconvert/../../../cddl/contrib/opensolaris/head = -I/us >>>> = r/src/cddl/usr.bin/ctfconvert/../../../cddl/contrib/opensolaris/tools/ctf/= common >>> = -I/usr/src/cddl/usr.bin/ctfconvert/../../../cddl/contrib/opensolaris/tools= /ctf/cvt >>> -I/usr/src/cddl/usr.bin/ctfconvert/. >>>> ./../../sys/cddl/contrib/opensolaris/uts/common = -DNEED_SOLARIS_BOOLEAN -g -std=3Dgnu99 = -I/usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/legacy/usr/include = -static -L/usr/obj/xtoolchain/powerpc.power >>>> pc64/usr/src/tmp/legacy/usr/lib -o ctfconvert.full alist.o ctf.o = ctfconvert.o dwarf.o fixup_tdescs.o hash.o iidesc.o input.o list.o = memory.o merge.o output.o st_parse.o stabs.o stack.o strtab.o symbol >>>> .o tdata.o traverse.o util.o -ldwarf -lelf -lelf -lz = -lpthread -legacy >>>> dwarf.o: In function `die_off': >>>> = /usr/src/cddl/usr.bin/ctfconvert/../../../cddl/contrib/opensolaris/tools/c= tf/cvt/dwarf.c:270: undefined reference to `dwarf_errmsg' >>>> dwarf.o: In function `die_sibling': >>>> = /usr/src/cddl/usr.bin/ctfconvert/../../../cddl/contrib/opensolaris/tools/c= tf/cvt/dwarf.c:288: undefined reference to `dwarf_errmsg' >>>> dwarf.o: In function `die_child': >>>> = /usr/src/cddl/usr.bin/ctfconvert/../../../cddl/contrib/opensolaris/tools/c= tf/cvt/dwarf.c:305: undefined reference to `dwarf_errmsg' >>>> dwarf.o: In function `die_tag': >>>> = /usr/src/cddl/usr.bin/ctfconvert/../../../cddl/contrib/opensolaris/tools/c= tf/cvt/dwarf.c:319: undefined reference to `dwarf_errmsg' >>>> dwarf.o: In function `die_unsigned': >>>> = /usr/src/cddl/usr.bin/ctfconvert/../../../cddl/contrib/opensolaris/tools/c= tf/cvt/dwarf.c:370: undefined reference to `dwarf_errmsg' >>>> = dwarf.o:/usr/src/cddl/usr.bin/ctfconvert/../../../cddl/contrib/opensolaris= /tools/ctf/cvt/dwarf.c:418: more undefined references to `dwarf_errmsg' = follow >>>> dwarf.o: In function `dw_read': >>>> = /usr/src/cddl/usr.bin/ctfconvert/../../../cddl/contrib/opensolaris/tools/c= tf/cvt/dwarf.c:1963: undefined reference to `dwarf_errno' >>>> = /usr/src/cddl/usr.bin/ctfconvert/../../../cddl/contrib/opensolaris/tools/c= tf/cvt/dwarf.c:1971: undefined reference to `dwarf_errmsg' >>>> = /usr/src/cddl/usr.bin/ctfconvert/../../../cddl/contrib/opensolaris/tools/c= tf/cvt/dwarf.c:1977: undefined reference to `dwarf_errmsg' >>>> collect2: error: ld returned 1 exit status >>>> *** [ctfconvert.full] Error code 1 >>=20 >=20 >=20 > --=20 > Regards, > Bryan Drewery =3D=3D=3D Mark Millard markmi at dsl-only.net