Bug in make setting wrong MAKESYSPATH

Simon J. Gerraty sjg at juniper.net
Wed May 24 17:05:02 UTC 2017


Thomas Mueller <mueller6722 at twc.com> wrote:
> For building the system, MAKESYSPATH should be $SRCDIR/share/mk , to be in sync.
> 
> I tried "make -V MAKESYSPATH" from several SRCDIRs, and that's what happened.

Yes.  If you look at share/mk/src.sys.env.mk
it detects that it was found via a .../ path, and replaces it in
MAKESYSPATH with the actual location - otherwise some makefiles break.

> So maybe I have to set MAKESYSPATH every time I am in ports, don't
> know if this would work from /etc/make.conf (need to experiment).

Probably not, because sys.mk will have already been found before that
ie. the damage may already have been done
 
> I wonder what would happen if there is no FreeBSD installation at all
> on partition where ports tree is located.

An error like:

make: no system rules (sys.mk).

> 
> > Yes, but requires you to keep /usr/share/mk in sync with whatever you a
> > building, tricky if you build head, stable/10 and stable/11 on the
> > same box.
> 
> I don't think you have to do that, since I find that MAKESYSPATH
> becomes $SRCDIR/share/mk .

Per above; that's due to the default .../share/mk
I was speaking about alternatives to that magic value.

Thanks
--sjg


More information about the freebsd-current mailing list