configure: Don't create symlinks to nonexistent targets
authorPeter Maydell <peter.maydell@linaro.org>
Fri, 3 Jun 2011 16:10:40 +0000 (17:10 +0100)
committerStefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Fri, 24 Jun 2011 08:13:36 +0000 (09:13 +0100)
When we create the symlinks to source tree files, don't create them
if the file is not actually present in the source tree; this will
happen if the file is in a git submodule that wasn't checked out.

This also avoids the odd effect where an in-source-tree configure
will end up creating the missing file as a symlink to itself.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
configure

index 856b41e..4fa9a57 100755 (executable)
--- a/configure
+++ b/configure
@@ -3479,7 +3479,9 @@ for bios_file in $source_path/pc-bios/*.bin $source_path/pc-bios/*.rom $source_p
 done
 mkdir -p $DIRS
 for f in $FILES ; do
-    test -e $f || symlink $source_path/$f $f
+    if [ -e "$source_path/$f" ] && ! [ -e "$f" ]; then
+        symlink "$source_path/$f" "$f"
+    fi
 done
 
 # temporary config to build submodules