From owner-freebsd-current Fri Jul 19 5:52:15 2002 Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.FreeBSD.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 79EA237B400; Fri, 19 Jul 2002 05:52:07 -0700 (PDT) Received: from mailman.zeta.org.au (mailman.zeta.org.au [203.26.10.16]) by mx1.FreeBSD.org (Postfix) with ESMTP id 150D643E31; Fri, 19 Jul 2002 05:52:06 -0700 (PDT) (envelope-from bde@zeta.org.au) Received: from bde.zeta.org.au (bde.zeta.org.au [203.2.228.102]) by mailman.zeta.org.au (8.9.3/8.8.7) with ESMTP id WAA12677; Fri, 19 Jul 2002 22:52:03 +1000 Date: Fri, 19 Jul 2002 22:55:56 +1000 (EST) From: Bruce Evans X-X-Sender: bde@gamplex.bde.org To: Ruslan Ermilov Cc: arch@FreeBSD.org, Subject: Re: install -d -C (was: Re: cvs commit: src/share/man/man5 make.conf.5 src/share/examples/etc make.conf) In-Reply-To: <20020719121826.GA83942@sunbay.com> Message-ID: <20020719223359.W12927-100000@gamplex.bde.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG 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 majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message