From owner-cvs-all Sat Jul 22 22:46:20 2000 Delivered-To: cvs-all@freebsd.org Received: from netplex.com.au (adsl-63-207-30-186.dsl.snfc21.pacbell.net [63.207.30.186]) by hub.freebsd.org (Postfix) with ESMTP id 54E5637B8CF; Sat, 22 Jul 2000 22:46:14 -0700 (PDT) (envelope-from peter@netplex.com.au) Received: from netplex.com.au (peter@localhost [127.0.0.1]) by netplex.com.au (8.9.3/8.9.3) with ESMTP id WAA19776; Sat, 22 Jul 2000 22:46:13 -0700 (PDT) (envelope-from peter@netplex.com.au) Message-Id: <200007230546.WAA19776@netplex.com.au> X-Mailer: exmh version 2.1.1 10/15/1999 To: Brian Fundakowski Feldman Cc: "David O'Brien" , cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src Makefile.inc1 In-Reply-To: Message from Brian Fundakowski Feldman of "Sun, 23 Jul 2000 01:35:02 EDT." Date: Sat, 22 Jul 2000 22:46:13 -0700 From: Peter Wemm Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Brian Fundakowski Feldman wrote: > On Sat, 22 Jul 2000, David O'Brien wrote: > > > On Thu, Jul 20, 2000 at 03:53:53AM -0400, Brian Fundakowski Feldman wrote: > > > > This is arguably a bug in install(1), which should have an option to > > > > save a backup copy. > > > > > > I'd rather not make install(1) even more of a superset of the original > > > than it is. > > > > Why? DES's request sounds quite reasonable and would be useful in parts > > of our installation process. > > I didn't say it's not useful, I am merely stating that it's creeping > featurism, and I'd like not to do that. Unless it would allow me to > do it with less work, I don't see the point; the "less work" I don't > see because to me I could type > > target: > ${INSTALL} -C -p ${DESTDIR}${PROG} ${DESTDIR}${PROG}.old > > as quickly as > > target-replacing-install: > ${INSTALL} -C -B ${DESTDIR}${PROG}.old ${PROG} ${DESTDIR}${PROG} > > I don't see how you could do it just by replacing INSTALLFLAGS unless > you were simply installing just one single file. That's my reasoning > for believing it's not useful. If you can show me a way it really will > be useful, I won't deny it if it works. Consider: 1: cd libexec/rtld-elf; build a corrupt ld-elf.so.1 2: make install - working ld-elf.so.1 gets copied to ld-elf.so.1.old - bad ld-elf.so.1 gets installed as ld-elf.so.1 3: accidently do a second make install - bad ld-elf.so.1 gets copied over the good ld-elf.so.1.old - no change - the new ld-elf.so.1 is the same as the installed one so -C optimizes out the install. Note that we unconditionally destroyed our ld-elf.so.1.old. A working "install -C -B foo.bak ./foo /usr/libexec" would have saved us from this as it would mean that foo.bak would only have been clobbered at the point that -C detected a new unique version being installed and that there was something worth backing up. I still believe a backup option is worthwhile. The same weakness has cost me a working backup of /boot/loader, so I know the present 'manual copy' is too easy to go wrong. Cheers, -Peter -- Peter Wemm - peter@FreeBSD.org; peter@yahoo-inc.com; peter@netplex.com.au "All of this is for nothing if we don't go to the stars" - JMS/B5 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message