svn commit: r364190 - head/tools/build

Alexander Richardson arichardson at freebsd.org
Thu Aug 13 16:34:21 UTC 2020


On Thu, 13 Aug 2020 at 17:28, Jessica Clarke <jrtc27 at freebsd.org> wrote:
>
> On 13 Aug 2020, at 17:22, Rodney W. Grimes <freebsd at gndrsh.dnsmgr.net> wrote:
> >
> >> Author: arichardson
> >> Date: Thu Aug 13 14:14:46 2020
> >> New Revision: 364190
> >> URL: https://svnweb.freebsd.org/changeset/base/364190
> >>
> >> Log:
> >>  Add pwd to the list of tools that are linked to $WORLDTMP/legacy
> >
> > Since "sh" is already in this list, and our "sh" has a builtin pwd
> > that does the correct thing with pwd -P this should not be needed.
> >
> > Or are we contininue to use the host "sh" for far too long?
> >
> > For me from ancient days of hand bootstrapping BSD sources onto
> > another system sh(1) and make(1) are the first 2 tools to get
> > working.
>
> The issue is that r364174 used `env pwd -P` rather than just `pwd -P`. With
> that fixed, this should be revertible; even if the bootstrap sh isn't being
> used at this point, I don't know of any contemporary sh-compatible shell that
> doesn't implement pwd as a builtin (but surely we are using the bootstrap sh by
> this point otherwise BUILD_WITH_STRICT_TMPPATH would have complained about sh).
>
> Jess

I'll change it to use pwd instead of env pwd shortly and also revert
the change that added pwd to the linked tools since using the shell
builtin with -P is fine.
We are not bootstrapping sh yet, but instead copying it from /usr/bin
since it is not (yet) possible to bootstrap the base system sh on
macOS&Linux.

Alex

>
> >>  After r364166 and r364174, crunchgen needs a pwd binary in $PATH instead
> >>  of using a hardcoded absolute path. This commit is needed for
> >>  BUILD_WITH_STRICT_TMPPATH builds (currently not on by default).
> >>
> >> Modified:
> >>  head/tools/build/Makefile
> >>
> >> Modified: head/tools/build/Makefile
> >> ==============================================================================
> >> --- head/tools/build/Makefile        Thu Aug 13 13:59:31 2020        (r364189)
> >> +++ head/tools/build/Makefile        Thu Aug 13 14:14:46 2020        (r364190)
> >> @@ -113,8 +113,8 @@ SYSINCS+=        ${SRCTOP}/sys/sys/font.h
> >> # Linux/MacOS since we only use flags that are supported by all of them.
> >> _host_tools_to_symlink=      basename bzip2 bunzip2 chmod chown cmp comm cp date dd \
> >>      dirname echo env false find fmt gzip gunzip head hostname id ln ls \
> >> -    mkdir mv nice patch rm realpath sh sleep stat tee touch tr true uname \
> >> -    uniq wc which
> >> +    mkdir mv nice patch pwd rm realpath sh sleep stat tee touch tr true \
> >> +    uname uniq wc which
> >>
> >> # We also need a symlink to the absolute path to the make binary used for
> >> # the toplevel makefile. This is not necessarily the same as `which make`
> >>
> >
> > --
> > Rod Grimes                                                 rgrimes at freebsd.org


More information about the svn-src-all mailing list