From 11568d6df9113bb9e7c3d84de6914f335376bd6a Mon Sep 17 00:00:00 2001 From: Paolo Bonzini Date: Thu, 23 Dec 2010 11:43:58 +0100 Subject: [PATCH] move "ln -sf" emulation to a function "ln -sf" does not really do anything more than "ln -s" on Solaris. Signed-off-by: Paolo Bonzini Signed-off-by: Blue Swirl --- configure | 26 +++++++++++--------------- 1 file changed, 11 insertions(+), 15 deletions(-) diff --git a/configure b/configure index 134863b642..5bbf909f44 100755 --- a/configure +++ b/configure @@ -32,6 +32,12 @@ compile_prog() { $cc $QEMU_CFLAGS $local_cflags -o $TMPE $TMPC $LDFLAGS $local_ldflags >> config.log 2>&1 } +# symbolically link $1 to $2. Portable version of "ln -sf". +symlink() { + rm -f $2 + ln -s $1 $2 +} + # check whether a command is available to this shell (may be either an # executable or a builtin) has() { @@ -2811,8 +2817,7 @@ fi for d in libdis libdis-user; do mkdir -p $d - rm -f $d/Makefile - ln -s $source_path/Makefile.dis $d/Makefile + symlink $source_path/Makefile.dis $d/Makefile echo > $d/config.mak done if test "$static" = "no" -a "$user_pie" = "yes" ; then @@ -2876,12 +2881,7 @@ mkdir -p $target_dir/ide if test "$target" = "arm-linux-user" -o "$target" = "armeb-linux-user" -o "$target" = "arm-bsd-user" -o "$target" = "armeb-bsd-user" ; then mkdir -p $target_dir/nwfpe fi - -# -# don't use ln -sf as not all "ln -sf" over write the file/link -# -rm -f $target_dir/Makefile -ln -s $source_path/Makefile.target $target_dir/Makefile +symlink $source_path/Makefile.target $target_dir/Makefile echo "# Automatically generated by configure - do not modify" > $config_target_mak @@ -3250,10 +3250,8 @@ if test "$source_path_used" = "yes" ; then for dir in $DIRS ; do mkdir -p $dir done - # remove the link and recreate it, as not all "ln -sf" overwrite the link for f in $FILES ; do - rm -f $f - ln -s $source_path/$f $f + symlink $source_path/$f $f done fi @@ -3275,15 +3273,13 @@ for hwlib in 32 64; do d=libhw$hwlib mkdir -p $d mkdir -p $d/ide - rm -f $d/Makefile - ln -s $source_path/Makefile.hw $d/Makefile + symlink $source_path/Makefile.hw $d/Makefile echo "QEMU_CFLAGS+=-DTARGET_PHYS_ADDR_BITS=$hwlib" > $d/config.mak done d=libuser mkdir -p $d -rm -f $d/Makefile -ln -s $source_path/Makefile.user $d/Makefile +symlink $source_path/Makefile.user $d/Makefile if test "$static" = "no" -a "$user_pie" = "yes" ; then echo "QEMU_CFLAGS+=-fpie" > $d/config.mak fi