Stefan Sperling wrote on Wed, Jun 15, 2011 at 19:54:48 +0200: > On Wed, Jun 15, 2011 at 06:28:28PM +0100, Philip Martin wrote: > > Stefan Sperling <s...@elego.de> writes: > > >> Is cmp as portable as diff? Is it always available with the same > > >> behaviour? autoconf generates calls to diff, so we know that using diff > > >> will work anywhere that autoconf works. As far as I can tell autoconf > > >> doesn't use cmp. > > > > > >>From the cmp man page: > > > > > > HISTORY > > > "A cmp command appeared in Version 1 AT&T UNIX." > > > > > > I would say that's ancient enough to be supported anywhere :) > > > > Do they all support -s? > > Very likely. The -s option was present in Unix 7th Edition: > http://minnie.tuhs.org/cgi-bin/utree.pl?file=V7/usr/src/cmd/cmp.c > It was likely also in 4.4BSD or earlier. NetBSD had the option in 1995.
And Peter observed on IRC that even cmp's that don't support -s will still DTRT. (eg, if they error out, the non-zero exit code would signify a no-op file replace)