phase1: ccache.sh: also overwrite dangling symlinks
authorJo-Philipp Wich <jo@mein.io>
Tue, 24 Jan 2017 13:47:33 +0000 (14:47 +0100)
committerJo-Philipp Wich <jo@mein.io>
Tue, 24 Jan 2017 13:47:42 +0000 (14:47 +0100)
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
phase1/ccache.sh

index 46081f3b202b87d1f616bc8c71c5d6da5ea61961..057733b001e9ad7600f163aa954292a2d734942a 100755 (executable)
@@ -11,7 +11,7 @@ grep -sq compiler_check "$HOME/.ccache/ccache.conf" || \
        echo "compiler_check = %compiler% -dumpmachine; %compiler% -dumpversion" >> "$HOME/.ccache/ccache.conf"
 
 for dir in $(make --no-print-directory val.TOOLCHAIN_DIR val.STAGING_DIR val.STAGING_DIR_HOST V=s | grep staging_dir/); do
-       if [ ! -L "$dir/ccache" ]; then
+       if [ ! -L "$dir/ccache" ] || [ -L "$dir/ccache" -a ! -d "$dir/ccache" ]; then
                mkdir -vp "$dir"
                rm -vrf "$dir/ccache"
                ln -vs "$HOME/.ccache" "$dir/ccache"