From owner-svn-src-all@FreeBSD.ORG Thu Jan 1 17:32:48 2015 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 992D471A; Thu, 1 Jan 2015 17:32:48 +0000 (UTC) Received: from mho-01-ewr.mailhop.org (mho-03-ewr.mailhop.org [204.13.248.66]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5962164F20; Thu, 1 Jan 2015 17:32:47 +0000 (UTC) Received: from [73.34.117.227] (helo=ilsoft.org) by mho-01-ewr.mailhop.org with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.72) (envelope-from ) id 1Y6jc6-000GDq-IF; Thu, 01 Jan 2015 17:32:46 +0000 Received: from revolution.hippie.lan (revolution.hippie.lan [172.22.42.240]) by ilsoft.org (8.14.9/8.14.9) with ESMTP id t01HWjtp052935; Thu, 1 Jan 2015 10:32:45 -0700 (MST) (envelope-from ian@freebsd.org) X-Mail-Handler: Dyn Standard SMTP by Dyn X-Originating-IP: 73.34.117.227 X-Report-Abuse-To: abuse@dyndns.com (see http://www.dyndns.com/services/sendlabs/outbound_abuse.html for abuse reporting information) X-MHO-User: U2FsdGVkX1/VT4dGFQwKtfU3xqzeYlN3 Message-ID: <1420133565.85983.5.camel@freebsd.org> Subject: Re: svn commit: r276052 - head From: Ian Lepore To: Dimitry Andric Date: Thu, 01 Jan 2015 10:32:45 -0700 In-Reply-To: <9A1C084E-B491-4581-A21C-AAB82687C588@FreeBSD.org> References: <201412220452.sBM4qPAx096443@svn.freebsd.org> <68874DE1-3EAE-4A4D-9760-7661DA7AE846@FreeBSD.org> <1420130463.85983.0.camel@freebsd.org> <9A1C084E-B491-4581-A21C-AAB82687C588@FreeBSD.org> Content-Type: text/plain; charset="us-ascii" X-Mailer: Evolution 3.12.8 FreeBSD GNOME Team Port Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Garrett Cooper X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 17:32:48 -0000 On Thu, 2015-01-01 at 18:14 +0100, Dimitry Andric wrote: > On 01 Jan 2015, at 17:41, Ian Lepore wrote: > > > > On Thu, 2015-01-01 at 16:50 +0100, Dimitry Andric wrote: > >> On 22 Dec 2014, at 05:52, Garrett Cooper wrote: > >>> > >>> Author: ngie > >>> Date: Mon Dec 22 04:52:24 2014 > >>> New Revision: 276052 > >>> URL: https://svnweb.freebsd.org/changeset/base/276052 > >>> > >>> Log: > >>> Build selective portions of gnu/usr.bin/texinfo as part of build-tools to > >>> ensure that building on a host without makeinfo (i.e. a host where > >>> make delete-old -DWITHOUT_INFO was run), then building with MK_INFO == yes > >>> doesn't manifest in build errors when building info pages > >> .. > >>> @@ -1398,6 +1403,16 @@ build-tools: .MAKE > >>> ${MAKE} DIRPRFX=${_tool}/ depend && \ > >>> ${MAKE} DIRPRFX=${_tool}/ all > >>> .endfor > >>> +.for _tool in \ > >>> + ${_texinfo} > >>> + ${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all)"; \ > >>> + cd ${.CURDIR}/${_tool} && \ > >>> + ${MAKE} DIRPRFX=${_tool}/ obj && \ > >>> + ${MAKE} DIRPRFX=${_tool}/ depend && \ > >>> + ${MAKE} DIRPRFX=${_tool}/ all && \ > >>> + ${MAKE} DIRPRFX=${_tool}/ install DESTDIR=${WORLDTMP} > >>> +.endfor > >> > >> Strangely, this hunk seems to work incorrectly for non-native builds. > >> For example, I tried a TARGET=arm buildworld just now, and that dies > >> with the following error: > >> > >> [...] > >>>>> stage 2.3: build tools > >> [...] > >> ===> gnu/usr.bin/texinfo/makeinfo (obj,depend,all,install) > >> [...] > >> gzip -cn /usr/src/gnu/usr.bin/texinfo/makeinfo/../../../../contrib/texinfo/doc/makeinfo.1 > makeinfo.1.gz > >> sh /usr/src/tools/install.sh -s -o root -g wheel -m 555 makeinfo /usr/obj/arm.arm/arm.arm/usr/src/tmp/usr/bin/makeinfo > >> install: /usr/obj/arm.arm/arm.arm/usr/src/tmp/usr/bin/makeinfo: No such file or directory > >> *** Error code 71 > >> > >> Specifically, the /usr/obj/arm.arm/arm.arm directory is incorrect, there > >> should be only one "arm.arm" in that path. I don't really understand > >> how that value comes to pass, though. When I put an echo statement just > >> before the make install, which shows the values of ${_tool} and > >> ${WORLDTMP}, it prints: > >> > >> DEBUG: _tool=gnu/usr.bin/texinfo/makeinfo, WORLDTMP=/usr/obj/arm.arm/arm.arm/usr/src/tmp > >> > >> So for some strange reason, ${WORLDTMP} is incorrect at that point? I > >> think something is appending one path component too many... > >> > >> -Dimitry > >> > > > > try TARGET_ARCH=arm > > No, that does not help, unfortunately. The problem seems to be that in > Makefile.inc1, TMAKE is passing MAKEOBJDIRPREFIX=${OBJTREE} via its > environment, and this changes the value of WORLDTMP to an incorrect > value. > > At first it looked like I could just force the correct WORLDTMP value > via the command line instead, e.g. like this: > > Index: Makefile.inc1 > =================================================================== > --- Makefile.inc1 (revision 276480) > +++ Makefile.inc1 (working copy) > @@ -270,6 +270,7 @@ > TMAKE= MAKEOBJDIRPREFIX=${OBJTREE} \ > ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 \ > TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ > + WORLDTMP=${WORLDTMP} \ > DESTDIR= \ > BOOTSTRAPPING=${OSRELDATE} \ > SSP_CFLAGS= \ > > However, this leads to other problems further down the road, where it > gets errors installing parts of libllvmsupport and tblgen. > > So at this point, non-native builds with MK_INFO=yes are broken. > > -Dimitry > You seem to be implying that the whole process of cross building is broken, but it's not. I do this all day long every day. "make TARGET_ARCH=arm [make targets and other vars here]" works. Do you have something in make.conf or src.conf causing problems? -- Ian