Date: Tue, 4 Jun 2019 14:57:41 -0700 (PDT) From: "Rodney W. Grimes" <freebsd@gndrsh.dnsmgr.net> To: Enji Cooper <yaneurabeya@gmail.com> Cc: rgrimes@freebsd.org, Maxim Sobolev <sobomax@freebsd.org>, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r348540 - head Message-ID: <201906042157.x54LvfNV049942@gndrsh.dnsmgr.net> In-Reply-To: <059B57C6-874A-4E27-A7A7-4EEBDE45EA66@gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
> > On Jun 3, 2019, at 12:06 PM, Rodney W. Grimes <freebsd@gndrsh.dnsmgr.net> wrote: > > > >> Author: sobomax > >> Date: Mon Jun 3 15:34:00 2019 > >> New Revision: 348540 > >> URL: https://svnweb.freebsd.org/changeset/base/348540 > >> > >> Log: > >> Rollback the rest of the botched r348521. Re-work would be posted to > >> reviews. Sorry. > >> > >> Reported by: Enji Cooper > >> > >> Modified: > >> head/Makefile.inc1 > >> > >> Modified: head/Makefile.inc1 > >> ============================================================================== > >> --- head/Makefile.inc1 Mon Jun 3 15:32:42 2019 (r348539) > >> +++ head/Makefile.inc1 Mon Jun 3 15:34:00 2019 (r348540) > >> @@ -887,7 +887,7 @@ MTREEFLAGS+= -W > >> INSTALLFLAGS+= -h sha256 > >> .endif > >> .if defined(DB_FROM_SRC) || defined(NO_ROOT) > >> -IMAKE_INSTALL= INSTALL="${INSTALL} ${INSTALLFLAGS}" > >> +IMAKE_INSTALL= INSTALL="install ${INSTALLFLAGS}" > > > > This is a correct change, > > ngie please explain exactly why this is an exception to INSTALL?=install. > > There are edge cases I?ve had to work around in the build system in the past, where using $INSTALL would not work here, e.g., use ?INSTALL=true?. This would break that use. This holds valid for all places in the three that use INSTALL today, anything that INSTALL is set to must be something that knows how to ignore the flags it may get. This holds true not only for INSTALL but also for any other like variable name. Furthermore true is infact one of those commands that ignores all args and all flags so how can your example break that I want this to do nothing, but not fail? > There?s also absolutely no guarantee that ?$INSTALL? knows how to interpret "$INSTALLFLAGS?; FreeBSD?s install(1) however, used during make distribution, installworld, installkernel, etc, does support these flags. > The same goes for mtree as well; nmtree isn?t the same as the older version of mtree that?s on older (pre-9.x) systems (IIRC). It?s better to use known build/install tools to avoid maintenance/debugging burden. It would be far far better to not have this 1 hard coded install and mtree, and arguing that it is about not parsing -flags is not going to hold water, as that is already true of all the other places that this is done. > Thanks, > -Enji -- Rod Grimes rgrimes@freebsd.org
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201906042157.x54LvfNV049942>