Date: Thu, 1 Jan 2015 18:50:24 +0100 From: Dimitry Andric <dim@FreeBSD.org> To: Ian Lepore <ian@FreeBSD.org> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Garrett Cooper <ngie@FreeBSD.org> Subject: Re: svn commit: r276052 - head Message-ID: <AC80C56B-46E9-4831-9B5F-976E28498F1D@FreeBSD.org> In-Reply-To: <1420133565.85983.5.camel@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> <1420133565.85983.5.camel@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--Apple-Mail=_D6D1277E-2137-47B8-A279-2C466BC034CA Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii On 01 Jan 2015, at 18:32, Ian Lepore <ian@FreeBSD.org> wrote: >=20 > On Thu, 2015-01-01 at 18:14 +0100, Dimitry Andric wrote: >> On 01 Jan 2015, at 17:41, Ian Lepore <ian@freebsd.org> wrote: >>>=20 >>> On Thu, 2015-01-01 at 16:50 +0100, Dimitry Andric wrote: >>>> On 22 Dec 2014, at 05:52, Garrett Cooper <ngie@FreeBSD.org> wrote: >>>>>=20 >>>>> Author: ngie >>>>> Date: Mon Dec 22 04:52:24 2014 >>>>> New Revision: 276052 >>>>> URL: https://svnweb.freebsd.org/changeset/base/276052 >>>>>=20 >>>>> 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 =3D=3D yes >>>>> doesn't manifest in build errors when building info pages >>>> .. >>>>> @@ -1398,6 +1403,16 @@ build-tools: .MAKE >>>>> ${MAKE} DIRPRFX=3D${_tool}/ depend && \ >>>>> ${MAKE} DIRPRFX=3D${_tool}/ all >>>>> .endfor >>>>> +.for _tool in \ >>>>> + ${_texinfo} >>>>> + ${_+_}@${ECHODIR} "=3D=3D=3D> ${_tool} (obj,depend,all)"; \ >>>>> + cd ${.CURDIR}/${_tool} && \ >>>>> + ${MAKE} DIRPRFX=3D${_tool}/ obj && \ >>>>> + ${MAKE} DIRPRFX=3D${_tool}/ depend && \ >>>>> + ${MAKE} DIRPRFX=3D${_tool}/ all && \ >>>>> + ${MAKE} DIRPRFX=3D${_tool}/ install DESTDIR=3D${WORLDTMP} >>>>> +.endfor >>>>=20 >>>> Strangely, this hunk seems to work incorrectly for non-native = builds. >>>> For example, I tried a TARGET=3Darm buildworld just now, and that = dies >>>> with the following error: >>>>=20 >>>> [...] >>>>>>> stage 2.3: build tools >>>> [...] >>>> =3D=3D=3D> gnu/usr.bin/texinfo/makeinfo (obj,depend,all,install) >>>> [...] >>>> gzip -cn = /usr/src/gnu/usr.bin/texinfo/makeinfo/../../../../contrib/texinfo/doc/make= info.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 >>>>=20 >>>> 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: >>>>=20 >>>> DEBUG: _tool=3Dgnu/usr.bin/texinfo/makeinfo, = WORLDTMP=3D/usr/obj/arm.arm/arm.arm/usr/src/tmp >>>>=20 >>>> So for some strange reason, ${WORLDTMP} is incorrect at that point? = I >>>> think something is appending one path component too many... >>>>=20 >>>> -Dimitry >>>>=20 >>>=20 >>> try TARGET_ARCH=3Darm >>=20 >> No, that does not help, unfortunately. The problem seems to be that = in >> Makefile.inc1, TMAKE is passing MAKEOBJDIRPREFIX=3D${OBJTREE} via its >> environment, and this changes the value of WORLDTMP to an incorrect >> value. >>=20 >> At first it looked like I could just force the correct WORLDTMP value >> via the command line instead, e.g. like this: >>=20 >> Index: Makefile.inc1 >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >> --- Makefile.inc1 (revision 276480) >> +++ Makefile.inc1 (working copy) >> @@ -270,6 +270,7 @@ >> TMAKE=3D MAKEOBJDIRPREFIX=3D${OBJTREE} \ >> ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 \ >> TARGET=3D${TARGET} TARGET_ARCH=3D${TARGET_ARCH} \ >> + WORLDTMP=3D${WORLDTMP} \ >> DESTDIR=3D \ >> BOOTSTRAPPING=3D${OSRELDATE} \ >> SSP_CFLAGS=3D \ >>=20 >> However, this leads to other problems further down the road, where it >> gets errors installing parts of libllvmsupport and tblgen. >>=20 >> So at this point, non-native builds with MK_INFO=3Dyes are broken. >>=20 >> -Dimitry >>=20 >=20 > 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=3Darm [make targets and other vars here]" works. Do you = have > something in make.conf or src.conf causing problems? No, just MK_INFO=3Dyes, as I said. That is what Garrett tried to fix in this commit, but which only works for native builds. I'll be coming up with a fix shortly. -Dimitry --Apple-Mail=_D6D1277E-2137-47B8-A279-2C466BC034CA Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.26 iEYEARECAAYFAlSliOQACgkQsF6jCi4glqMP5wCfQMTZIwVyJYfNQfJvDnJeEnta c6sAni/rt/OBJejZ90F92pXlUI/8MNKx =jegm -----END PGP SIGNATURE----- --Apple-Mail=_D6D1277E-2137-47B8-A279-2C466BC034CA--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?AC80C56B-46E9-4831-9B5F-976E28498F1D>