On 9/14/20 9:56 AM, Max Reitz wrote:
On macOS, (out of the box) readlink does not have -f.  We do not really
need readlink here, though, it was just a replacement for realpath
(which is not available on our BSD test systems), which we needed to
make the $(dirname) into an absolute path.

Instead of using either, just use "cd; pwd" like is done for
$source_iotests.

Fixes: b1cbc33a3971b6bb005d5ac3569feae35a71de0f
        ("iotests: Allow running from different directory")
Suggested-by: Peter Maydell <peter.mayd...@linaro.org>
Reported-by: Claudio Fontana <cfont...@suse.de>
Reported-by: Thomas Huth <th...@redhat.com>
Signed-off-by: Max Reitz <mre...@redhat.com>
---
  tests/qemu-iotests/check | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tests/qemu-iotests/check b/tests/qemu-iotests/check
index e14a1f354d..678b6e4910 100755
--- a/tests/qemu-iotests/check
+++ b/tests/qemu-iotests/check
@@ -44,7 +44,7 @@ then
          _init_error "failed to obtain source tree name from check symlink"
      fi
      source_iotests=$(cd "$source_iotests"; pwd) || _init_error "failed to enter 
source tree"
-    build_iotests=$(readlink -f $(dirname "$0"))
+    build_iotests=$(cd "$(dirname "$0")"; pwd)

If CDPATH is set, this can produce wrong results. Do we care? Probably not, since (as you point out), $source_iotests has the same bug, and no one has complained yet.

--
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3226
Virtualization:  qemu.org | libvirt.org


Reply via email to