Date: Sat, 22 Jul 2000 22:46:13 -0700 From: Peter Wemm <peter@netplex.com.au> To: Brian Fundakowski Feldman <green@FreeBSD.org> Cc: "David O'Brien" <obrien@FreeBSD.org>, cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src Makefile.inc1 Message-ID: <200007230546.WAA19776@netplex.com.au> In-Reply-To: Message from Brian Fundakowski Feldman <green@FreeBSD.org> of "Sun, 23 Jul 2000 01:35:02 EDT." <Pine.BSF.4.21.0007230125490.565-100000@green.dyndns.org>
next in thread | previous in thread | raw e-mail | index | archive | help
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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200007230546.WAA19776>
