From owner-freebsd-current Mon Jul 29 2:50:36 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 D3E5D37B400; Mon, 29 Jul 2002 02:50:25 -0700 (PDT) Received: from whale.sunbay.crimea.ua (whale.sunbay.crimea.ua [212.110.138.65]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8C2D343E31; Mon, 29 Jul 2002 02:46:58 -0700 (PDT) (envelope-from ru@whale.sunbay.crimea.ua) Received: (from ru@localhost) by whale.sunbay.crimea.ua (8.11.6/8.11.2) id g6T9kUX09501; Mon, 29 Jul 2002 12:46:30 +0300 (EEST) (envelope-from ru) Date: Mon, 29 Jul 2002 12:46:30 +0300 From: Ruslan Ermilov To: Bruce Evans Cc: arch@FreeBSD.org, current@FreeBSD.org Subject: Re: install -d -C (was: Re: cvs commit: src/share/man/man5 make.conf.5 src/share/examples/etc make.conf) Message-ID: <20020729094629.GA94086@sunbay.com> References: <20020719121826.GA83942@sunbay.com> <20020719223359.W12927-100000@gamplex.bde.org> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="wRRV7LY7NUeQGEoC" Content-Disposition: inline In-Reply-To: <20020719223359.W12927-100000@gamplex.bde.org> User-Agent: Mutt/1.3.99i 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 --wRRV7LY7NUeQGEoC Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Jul 19, 2002 at 10:55:56PM +1000, Bruce Evans wrote: > On Fri, 19 Jul 2002, Ruslan Ermilov wrote: >=20 > > 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 o= ld > > > > ... > > > 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, >=20 > I think this makes -c vs -d moot. >=20 > > > just to support "INSTALL=3Dinstall -C" in /etc/make.conf. >=20 > -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. >=20 > > > OpenBSD merged these changes and since then they still have them > > > incompatible. >=20 > That was probably a mistake. Certainly merging it all back was. -C > is our (half my) flag, so we should know its intended use :-). >=20 > > > 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 ins= tall(1) > > > : now copies by default. However, it can also be use= d to > > > : specify that a file not be copied unless it is diff= erent > > > : (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. >=20 > I'd like to get rid of it too. But not in RELENG_4. -c has been the def= ault > for long enough now in -current. As you know, there are various problems > in using the correctly named variable for install(1)'s flags (INSTALLFLAG= S) > 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. >=20 OK, -[CpS] are now ignored with -d, and I've dropped support for COPY. I have a question. Why COPY can't be removed from RELENG_4 as well? Ports that use COPY (there are many of them) will see it as an empty string. Cheers, --=20 Ruslan Ermilov Sysadmin and DBA, ru@sunbay.com Sunbay Software AG, ru@FreeBSD.org FreeBSD committer, +380.652.512.251 Simferopol, Ukraine http://www.FreeBSD.org The Power To Serve http://www.oracle.com Enabling The Information Age --wRRV7LY7NUeQGEoC Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.7 (FreeBSD) iD8DBQE9RQ71Ukv4P6juNwoRApooAJ4pu7z2j4/woTNcpiSnjPJmFEXE1QCghr6Q iEBbokwr85ltx7LdB8WD1pk= =rh4K -----END PGP SIGNATURE----- --wRRV7LY7NUeQGEoC-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message