configure: Use -ef to compare paths
authorAkihiko Odaki <akihiko.odaki@daynix.com>
Mon, 11 Nov 2024 07:19:41 +0000 (16:19 +0900)
committerPaolo Bonzini <pbonzini@redhat.com>
Mon, 18 Nov 2024 12:44:54 +0000 (13:44 +0100)
configure checks if it is executed in the source directory by comparing
the literal paths, but there may be multiple representations of a
directory due to symbolic links. Use the -ef operator to tell if they
point to the same directory.

Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Link: https://lore.kernel.org/r/20241111-p-v1-1-001006c68b7e@daynix.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
configure

index 096b1fddb7031125c9228fb932fce9f09e1cdb39..18336376bff6421b83ee8eca620ff545d4b09777 100755 (executable)
--- a/configure
+++ b/configure
@@ -13,7 +13,7 @@ export CCACHE_RECACHE=yes
 # make source path absolute
 source_path=$(cd "$(dirname -- "$0")"; pwd)
 
-if test "$PWD" = "$source_path"
+if test "$PWD" -ef "$source_path"
 then
     echo "Using './build' as the directory for build output"