svn commit: r346341 - head/tools/build

Rodney W. Grimes freebsd at gndrsh.dnsmgr.net
Tue Sep 3 14:07:57 UTC 2019


> On Thu, Apr 18, 2019 at 8:46 AM Rodney W. Grimes
> <freebsd at gndrsh.dnsmgr.net> wrote:
> >
> > > In message <201904180107.x3I17QDc002945 at gndrsh.dnsmgr.net>, "Rodney W.
> > > Grimes"
> > > writes:
> > > > > Author: cy
> > > > > Date: Thu Apr 18 01:02:00 2019
> > > > > New Revision: 346341
> > > > > URL: https://svnweb.freebsd.org/changeset/base/346341
> > > > >
> > > > > Log:
> > > > >   As an interim measure until a more permanent solution is implemented
> > > > >   workaround the following error:
> > > > >
> > > > >   /usr/src/contrib/elftoolchain/strings/strings.c:198:55: error: use of
> > > > >   undeclared identifier
> > > > >   'FA_OPEN' fa = fileargs_init(argc, argv, O_RDONLY, 0, &rights, FA_OPEN);
> > > > >
> > > > >   Reported by:    O. Hartmann <ohartmann at walstatt.org>
> > > > >   Reported by:    Michael Butler <imb at protected-networks.net>
> > > > >   Reported by:    gjb@ & cy@ (implicit)
> > > > >   Reviewed by:    emaste@
> > > > >   Noted by:       rgrimes@
> > > > >
> > > > > Modified:
> > > > >   head/tools/build/Makefile
> > > > >
> > > > > Modified: head/tools/build/Makefile
> > > > > ===========================================================================
> > > > ===
> > > > > --- head/tools/build/Makefile     Thu Apr 18 00:38:54 2019        (r34634
> > > > 0)
> > > > > +++ head/tools/build/Makefile     Thu Apr 18 01:02:00 2019        (r34634
> > > > 1)
> > > > > @@ -59,9 +59,7 @@ INCS+=          capsicum_helpers.h
> > > > >  INCS+=           libcasper.h
> > > > >  .endif
> > > > >
> > > > > -.if !exists(/usr/include/casper/cap_fileargs.h)
> > > > >  CASPERINC+=      ${SRCTOP}/lib/libcasper/services/cap_fileargs/cap_filea
> > > > rgs.h
> > > > > -.endif
> > > >
> > > > As a further note, we should probably hunt for any thing
> > > > that is explicity looking at /usr/include/... in a Makefile,
> > > > as that is minimally missing a ${DESTDIR} argument.
> > > >
> > > > The above may of actually worked if it had been written:
> > > > .if !exists(${DESTDIR}/usr/include/casper/cap_fileargs.h)
> > > > someone may wish to test that.
> > > >
> > > > Also a pathname rooted at / without ${DESTDIR} is almost certainly a mistake.
> > >
> > > This is a better solution. I tested this in a tree with a duplicated
> > > environment: Problem solved. Before this is committed it should be
> > > tested on one of the universe machines.
> >
> > From what Ed just said this would also be wrong,
> > as well as CASPERINC+= above being wrong, if this
> > is being built for the host we should not be using
> > any headers from ${SRCTOP} at all.
> >
> > if capfileargs.h does not exist on the host that functionality
> > must not be compiled into the buildtool as the host does not
> > have this feature and attempting to use it from SRCTOP is wrong.
> >
> 
> Keep in mind that this is bootstrap; it's being built for the host
> system, but it will link against a version of libcasper that's been
> built in an earlier stage with the proper featureset.

Ok, flip flop again, if infact this is linked against a
library that implements the stuff from cap_fileargs.h then
infact the ${DESTDIR} addition so that the build peaks into
the cross build tree is correct, or what ever the equivelent
to DESTDIR is for that ?  BUILDDIR?  The point is it should
be picking this header up from the object tree, NOT from
the running system.


-- 
Rod Grimes                                                 rgrimes at freebsd.org




More information about the svn-src-all mailing list