Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 1 Jan 2015 18:14:31 +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:  <9A1C084E-B491-4581-A21C-AAB82687C588@FreeBSD.org>
In-Reply-To: <1420130463.85983.0.camel@freebsd.org>
References:  <201412220452.sBM4qPAx096443@svn.freebsd.org> <68874DE1-3EAE-4A4D-9760-7661DA7AE846@FreeBSD.org> <1420130463.85983.0.camel@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help

--Apple-Mail=_20CB42F9-E5F4-4B56-9EE9-612255E247D6
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=us-ascii

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

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.

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
=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 \

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=3Dyes are broken.

-Dimitry


--Apple-Mail=_20CB42F9-E5F4-4B56-9EE9-612255E247D6
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

iEYEARECAAYFAlSlgH4ACgkQsF6jCi4glqMQAgCfdC5Vc0HQ1FSfNabSL1ruZYfy
vI0AoJttg1ffl94+TcOL8DvPLxWcA4nk
=eCK+
-----END PGP SIGNATURE-----

--Apple-Mail=_20CB42F9-E5F4-4B56-9EE9-612255E247D6--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?9A1C084E-B491-4581-A21C-AAB82687C588>