make.conf INSTALL knob

2001-04-25 Thread Eric D. Futch

I originally sent this to freebsd-stable but didn't get any replies.  It
has been reworded.

I ran across this while playing with the INSTALL knob in make.conf.  In
almost all of the Makefiles in src/ there is either -C or -c hard coded as
an argument to install.  This means that changes you make to the
flags for install via the INSTALL knob in make.conf, specifically -c or -C
are not upheld in the acutal Makefiles.  /etc/default/make.conf gives the
impression that the flags specified when setting INSTALL should acutally
be used when install is invoked.  This kind of seems like a violation of
POLA to me.  If you set INSTALL= install -C in make.conf... most people
would assume that it will apply the -C flag to every invokation of
install, which is not the case.

There are certain directories like src/include and src/kerberos* that have
-C hardcoded while others like src/etc have -c hardcoded in the Makefile.
I was wonder what exactly are the rammifications of removing all -c and -C
flags from the Makefile(s) where applicable and making -c the default flag
for install in /etc/defaults/make.conf.  Is there any specific reason why
certain areas of the source need to have -c or -C?

Additionally, I believe the INSTALL knob should be used only to allow you
to change the path/name of the install binary.  A new variable
INSTALLFLAGS should be introduced to specify the flags for install.

-- 
Eric Futch  New York Connect.Net, Ltd.
[EMAIL PROTECTED] Technical Support Staff
http://www.nyct.net (212) 293-2620
Bringing New York The Internet Service It Deserves
KNYC: 23-Apr-01 23:51 EDT: 59.0 F (15.0 C), clear, humidity 100%



To Unsubscribe: send mail to [EMAIL PROTECTED]
with unsubscribe freebsd-current in the body of the message



Re: make.conf INSTALL knob

2001-04-25 Thread Bruce Evans

On Wed, 25 Apr 2001, Eric D. Futch wrote:

 I originally sent this to freebsd-stable but didn't get any replies.  It
 has been reworded.
 
 I ran across this while playing with the INSTALL knob in make.conf.  In
 almost all of the Makefiles in src/ there is either -C or -c hard coded as
 an argument to install.  This means that changes you make to the
 flags for install via the INSTALL knob in make.conf, specifically -c or -C
 are not upheld in the acutal Makefiles.  /etc/default/make.conf gives the

Yes they are (or should be).  Some Makefiles just add more flags, as
required for correct operation.

 impression that the flags specified when setting INSTALL should acutally
 be used when install is invoked.  This kind of seems like a violation of
 POLA to me.  If you set INSTALL= install -C in make.conf... most people
 would assume that it will apply the -C flag to every invokation of
 install, which is not the case.

It works for me (I use INSTALL= install -C -D -D -p).

 There are certain directories like src/include and src/kerberos* that have
 -C hardcoded while others like src/etc have -c hardcoded in the Makefile.
 I was wonder what exactly are the rammifications of removing all -c and -C
 flags from the Makefile(s) where applicable and making -c the default flag
 for install in /etc/defaults/make.conf.  Is there any specific reason why
 certain areas of the source need to have -c or -C?

Yes.  Removing -c would mainly remove source files at install time (install
without -c or -C removes the source files).  Removing -C would mainly
make everything out of date by changing timestamps on installed headers.

 Additionally, I believe the INSTALL knob should be used only to allow you
 to change the path/name of the install binary.  A new variable
 INSTALLFLAGS should be introduced to specify the flags for install.

INSTALLFLAGS is an old variable that belongs to individual makefiles,
so it can't be used in make.conf.  There is little need for yet another
variable, since flags can always be added to INSTALL unless they are
order-dependent, and install(1) doesn't have [m]any order-dependent flags
that could usefully be set in make.conf.

Bruce


To Unsubscribe: send mail to [EMAIL PROTECTED]
with unsubscribe freebsd-current in the body of the message