Date: Mon, 6 Mar 2017 11:13:37 -0800 From: Bryan Drewery <bdrewery@FreeBSD.org> To: Ian Lepore <ian@freebsd.org>, rgrimes@freebsd.org Cc: Warner Losh <imp@bsdimp.com>, src-committers <src-committers@freebsd.org>, "svn-src-all@freebsd.org" <svn-src-all@freebsd.org>, "svn-src-head@freebsd.org" <svn-src-head@freebsd.org> Subject: Re: svn commit: r314709 - head Message-ID: <d871157c-7ded-4158-2984-92cb8c5dec0b@FreeBSD.org> In-Reply-To: <1488826707.18764.34.camel@freebsd.org> References: <201703061832.v26IWFw1089542@pdx.rh.CN85.dnsmgr.net> <1488826707.18764.34.camel@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --FtITRsg1kKcg9pA8CE2RLrO7GCBSetE9i Content-Type: multipart/mixed; boundary="KiqaAEmxfGQVLJ635roo52N4fntnh5xPR"; protected-headers="v1" From: Bryan Drewery <bdrewery@FreeBSD.org> To: Ian Lepore <ian@freebsd.org>, rgrimes@freebsd.org Cc: Warner Losh <imp@bsdimp.com>, src-committers <src-committers@freebsd.org>, "svn-src-all@freebsd.org" <svn-src-all@freebsd.org>, "svn-src-head@freebsd.org" <svn-src-head@freebsd.org> Message-ID: <d871157c-7ded-4158-2984-92cb8c5dec0b@FreeBSD.org> Subject: Re: svn commit: r314709 - head References: <201703061832.v26IWFw1089542@pdx.rh.CN85.dnsmgr.net> <1488826707.18764.34.camel@freebsd.org> In-Reply-To: <1488826707.18764.34.camel@freebsd.org> --KiqaAEmxfGQVLJ635roo52N4fntnh5xPR Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable On 3/6/17 10:58 AM, Ian Lepore wrote: > On Mon, 2017-03-06 at 10:32 -0800, Rodney W. Grimes wrote: >> [ Charset ISO-8859-1 unsupported, converting... ] >>> >>> On Sun, 2017-03-05 at 19:12 -0800, Bryan Drewery wrote: >>>> >>>> On 3/5/17 3:41 PM, Warner Losh wrote: >>>>> >>>>> >>>>> On Sun, Mar 5, 2017 at 2:16 PM, Bryan Drewery <bdrewery@freebsd >>>>> .org >>>>>> >>>>>> wrote: >>>>>> >>>>>> Author: bdrewery >>>>>> Date: Sun Mar??5 21:16:50 2017 >>>>>> New Revision: 314709 >>>>>> URL: https://svnweb.freebsd.org/changeset/base/314709 >>>>>> >>>>>> Log: >>>>>> ? Fix bootstrapping mtree after r313404 for older systems. >>>>>> >>>>>> ? r313404 made libnetbsd require sha384.h from libmd.??Libmd >>>>>> added it in >>>>>> ? r292782.??Update BOOTSTRAPPING to account for this. >>>>>> >>>>>> ? Reported by:??bde >>>>>> ? Reviewed by:??ngie >>>>>> >>>>>> Modified: >>>>>> ? head/Makefile.inc1 >>>>>> >>>>>> Modified: head/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=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >>>>>> --- head/Makefile.inc1??Sun Mar??5 19:56:20 >>>>>> 2017????????(r314708) >>>>>> +++ head/Makefile.inc1??Sun Mar??5 21:16:50 >>>>>> 2017????????(r314709) >>>>>> @@ -1618,10 +1618,12 @@ ${_bt}-usr.bin/m4: ${_bt}- >>>>>> lib/libopenbsd >>>>>> ?${_bt}-usr.bin/lex: ${_bt}-usr.bin/m4 >>>>>> ?.endif >>>>>> >>>>>> -.if ${BOOTSTRAPPING} < 1000026 >>>>>> -_nmtree=3D???????lib/libnetbsd \ >>>>> I've been trying to document the bootstrapping stuff inline >>>>> like >>>>> >>>>> # r313404 made libnetbsd require libmd >>>> Definitely.??I forgot about that.??I think my change is >>>> incomplete >>>> and >>>> need to chase down a 2nd failure report.??I'll add the comment >>>> once >>>> that >>>> is figured out. >>>> >>> I tracked this down to the fact that the prototype >>> >>> ? char * MD5FileChunk(const char *, char *, off_t, off_t); >>> >>> does not exist in /usr/include/sys/md5.h on older systems. ?I don't >>> see >>> any straightforward way to declare that a header file from the >>> /usr/include hierarchy is a bootstrap item that needs a newer >>> version >>> from the source tree being compiled. ?It looks like such a header >>> would >>> have to go into the obj/.../tmp/legacy/usr/include to get used in >>> the >>> boostrap compile, I just don't see how you get a file installed >>> there >>> early enough in bootstrap. >> One way around this is to use the old concept of /usr/include >> symlinks >> into the src tree, not sure if you can still do that or not, but >> something like >> (cd /usr/src/include; make install SHARED=3Dsymlinks) >> >> A bootstrapping regresssion test I use to run was to rm -r >> /usr/include/* >> before a buildworld run, that would find these issues so they could >> be fixed before they become forgotten. >> =20 >=20 > Making my live 10-stable system's /usr/include have symlinks into a 11-= > or 12- source tree is just not an option in any way. The first > question would be "which source tree" because I have like a dozen of > them, not a single one of them rooted at /usr/src (which is an empty > dir). >=20 > This can't be the first time in 30+ years that system header files had > to participate in the process of bootstrapping early build tools, but I= > don't see any machinery in Makefile.inc1 for dealing with it. >=20 > -- Ian >=20 We use some special hacks in some places. Such as most of the elftoolchain build. It just symlinks the minimal headers it needs into its .OBJDIR and uses -I${.OBJDIR} to pick them up. This is done rather than the legacy method so that we don't pollute all of the bootstrapping with these headers; we really want the system headers for all of bootstrapping where possible since we are building *current native system tools*. libmd is already violating this by including some source directories directly, but they should be harmless since they are really just prototypes for the libmd that is being built. > CFLAGS+=3D -I${.CURDIR} -I${SRCTOP}/sys/crypto/sha2 > CFLAGS+=3D -I${SRCTOP}/sys/crypto/skein In the case of the current bootstrap failure, it's probably more than just this 1 function that is causing problems, but what I'm suggesting is= at https://people.freebsd.org/~bdrewery/patches/libmd-sys-md5.h.patch --=20 Regards, Bryan Drewery --KiqaAEmxfGQVLJ635roo52N4fntnh5xPR-- --FtITRsg1kKcg9pA8CE2RLrO7GCBSetE9i Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQEcBAEBCgAGBQJYvbTiAAoJEDXXcbtuRpfPnLYH/jljvgjudvZGnm+7k7liXhV0 nHDDNRXWs+hPBGEZWJDUYoMyEWu75uIKnJwruNVhc2S0sF2KeA97OJX7eVQPkueB 2LEAjRI/033GfgErovrlNWN2x7n3Z5OtB2Jyxju0F3IXjIN6GzZnS6ZqvXCRErdc F+cDJ3FpQyV2qDDprhZ+tQIQ5P6kQU3PF8IXY/6KE9G7azmiE6fLR0mYj7v7b+3D mACaPobbhi4qoe1xmNdmRWl6xF8f4TLfSmlDkfOeznmYXaR9d76/DAzA7nZXMPVy KuZqmlgneSP5UqhJZqWzedNKVa2FTxxA55qk/gRYKrTQUJEEx3v2mAa1rqF7Q8A= =MeUf -----END PGP SIGNATURE----- --FtITRsg1kKcg9pA8CE2RLrO7GCBSetE9i--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?d871157c-7ded-4158-2984-92cb8c5dec0b>