bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

cmp/diff


From: Simon Josefsson
Subject: cmp/diff
Date: Sat, 26 Dec 2020 17:24:43 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux)

Hi!  I have noticed self-check failures of libidn on ArchLinux:

https://gitlab.com/libidn/libidn/-/jobs/932649011

The gnulib self-tests that fail are: test-binary-io.sh test-perror.sh
test-init.sh

https://gitlab.com/libidn/libidn/-/jobs/932649011/artifacts/file/libidn-1.36a/b/gltests/test-binary-io.sh.log
https://gitlab.com/libidn/libidn/-/jobs/932649011/artifacts/file/libidn-1.36a/b/gltests/test-perror.sh.log
https://gitlab.com/libidn/libidn/-/jobs/932649011/artifacts/file/libidn-1.36a/b/gltests/test-init.sh.log

Essentialy it boils down to:

../../gltests/test-binary-io.sh: line 8: cmp: command not found
test-init.sh: failed test: err not empty: ../../gltests/init.sh: line 648: cmp: 
command not found
../../gltests/test-perror.sh: line 14: diff: command not found

I was a little surprised ArchLinux do not have cmp/diff by default, but
I was surprised that nothing except these gnulib tests failed.

I am reading gnulib's DEPENDENCIES which says:

  * The comparison utilities 'cmp' and 'diff'.
    + Mandatory. Using the platform's native utilities gives good portability
      exposure, but you can also use GNU diffutils.
    + Homepage:
      https://www.gnu.org/software/diffutils/

I read the DEPENDENCIES file a bit more careful after noticing that it
has several mandatory dependencies that I find questionable, and I
noticed this in the beginning:

  The following packages are needed by maintainers for using
  'gnulib-tool'.

It doesn't say the packages are required for users building gnulib-based
packages.  I can live with having diffutils installed as a maintainer.
Was this subtle distinction intentional?

I sympathize with ArchLinux's decision to be minimal, so my preference
is to make things work when it appears to be so simple.

What do you think about rewriting these self-tests to avoid cmp/diff?

Does anyone know a good portable shell-based idiom for comparing files
instead of using cmp/diff?

I'm posting this instead of just fixing the self-tests because I have a
suspicion this has been discussed, and maybe it is time to revisit it.

/Simon

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]