On Fri, 19 Jul 2002, Ruslan Ermilov wrote:

> On Fri, Jul 19, 2002 at 03:05:37PM +0300, Ruslan Ermilov wrote:
> > ...
> > On Fri, Jul 19, 2002 at 09:21:14PM +1000, Bruce Evans wrote:
> > > On Thu, 18 Jul 2002, Ruslan Ermilov wrote:
> > >
> > > > ru          2002/07/18 05:07:49 PDT
> > > >
> > > >   Modified files:
> > > >     etc                  Makefile
> > [...]
> > > >     usr.sbin/ypserv      Makefile
> > > >   Log:
> > > >   s/${INSTALL} -c/${INSTALL} ${COPY}/
> > >
> > > Strongly unapproved by: bde.
> > >
> > > This change is to help work around the foot-shooting of making -d
> > > incompatible with -C and -p in install(1)'s flags.  It abuses the old
> > > ...
> > Since its first revision (install.1,v 1.7 and install.c,v 1.16 they
> > were incompatible).  Later on, in rev. 1.26, it was made a no-op,

I think this makes -c vs -d moot.

> > just to support "INSTALL=install -C" in /etc/make.conf.

-C is not really like -c.  It really means "unbreak the default of !-c,
and preserve certain metadata".  Preserving the metadata is the main
point of this option, but IIRC it was made as much like -c as possible
just as a first attempt to kill -c.

> > OpenBSD merged these changes and since then they still have them
> > incompatible.

That was probably a mistake.  Certainly merging it all back was.  -C
is our (half my) flag, so we should know its intended use :-).

> > There are two ways to proceed:
> >
> > 1.  Rename COPY to INSTALL_COPY (that was my plan), optionally giving
> >     it by default an empty value.  This shouldn't harm third-party
> >     makefiles as -c is now an effective no-op.  But this would make
> >     us even more compatible with OpenBSD that has:
> >
> > : INSTALL_COPY    The old usage of this flag is obsolescent since install(1)
> > :                 now copies by default.  However, it can also be used to
> > :                 specify that a file not be copied unless it is different
> > :                 (via the -p option).  See install(1) for details.  This
> > :                 is to be used when building our own install script so
> > :                 that the entire system can either be installed with copies,
> > :                 or copy-if-different using a single knob. [-c]
> >
> OTOH, if we go this way we can get rid of ugly ${COPY} completely.

I'd like to get rid of it too.  But not in RELENG_4.  -c has been the default
for long enough now in -current.  As you know, there are various problems
in using the correctly named variable for install(1)'s flags (INSTALLFLAGS)
to actually hold install's flags in a general way (mainly, this variable
already exists and is used in a non-general way).  However, the old hack
of putting the flags in the same variable as the command still works well
except for the -[Cp] vs -d conflict.  This depends on the flags not being
order-dependent.

> > 2.  Make again -C an allowed (ignored) option in the -d case.  This would
> >     make us again incompatible with OpenBSD.
> >
> > I do not have a technical problem doing either, I'd just like to know
> > what do others think about this.
>
> I'm not sure what's the better way, please help me out.  :-)

I've complained to you before about this :-).  Now I'm interested in getting
other ideas about it.

Bruce


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

Reply via email to