Re: amd64 base/head r284673 fails to build on amd64 base/head r284639, pilot error?

From: Simon J. Gerraty <sjg_at_juniper.net>
Date: Sat, 1 Aug 2015 19:50:30 -0700
Bryan Drewery <bdrewery_at_FreeBSD.org> wrote:
> 1: subdir make
>   src.conf: STRIP=
>   rescue/rescue% make all
>   -> make -f OBJDIR/rescue.mk
> 
>  STRIP= is not passed down into rescue.mk, resulting in 'strip rescue'.

unless src.conf does .export STRIP, or submake reads src.conf for itself
this isn't surprising.
The result probably depends on whether /usr/share/mk or src/share/mk is
used.

> 
> 2. subdir make STRIP env override
>   rescue/rescue% make all STRIP=

Setting STRIP= (or anything) like that causes vastly different behavior
compared to 

env STRIP= make
or setting STRIP= in a makefile (eg src.conf)

When you do 'make STRIP=' the variable is handled differently,
it is put into a special context CMD which has higest priority
and is explicityl passed on to submakes via MAKEFLAGS.
The goal is to treat the setting as immutable (to the extent possible)
as required by posix.


>  STRIP= is passed down resulting in ' rescue'.
> 
> 3: buildworld
>  STRIP= from src.conf is passed down, resulting in ' rescue'.

buildworld tries to ensure that the tree's share/mk is used
so src.sys.mk is used and /etc/src.conf likely to be read.
Received on Sun Aug 02 2015 - 01:05:18 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:59 UTC