]> git.xonotic.org Git - xonotic/xonotic.git/blobdiff - misc/tools/cached-converter.sh
use vid_soft properly
[xonotic/xonotic.git] / misc / tools / cached-converter.sh
index c5b3bef7311eaa57fdeac63d74bd8182d065ad9c..d50348fcc162578cf6c8fca72d14f89a5831018c 100755 (executable)
@@ -49,7 +49,15 @@ cached()
        if [ x"$infile1/../$infile2" = x"$lastinfiles" ]; then
                sum=$lastinfileshash
        else
-               if [ -n "$git_src_repo" ]; then
+               evil=false
+               for infile in "$infile1" "$infile2"; do
+                       case "$infile" in
+                               */background_l2.tga)
+                                       evil=true
+                                       ;;
+                       esac
+               done
+               if [ -n "$git_src_repo" ] && ! $evil; then
                        sum=`( cd "$git_src_repo"; git rev-parse --revs-only HEAD:"${infile1#./}" | grep . ) || git hash-object "$infile1"`
                        if [ -n "$infile2" ]; then
                                sum=$sum`( cd "$git_src_repo"; git rev-parse --revs-only HEAD:"${infile2#./}" | grep . ) || git hash-object "$infile2"`
@@ -68,14 +76,14 @@ cached()
        tempfile1="${name1%/*}/new-${name1##*/}"
        [ -z "$outfile2" ] || tempfile2="${name2%/*}/new-${name2##*/}"
        if [ -f "$name1" ] && { [ -z "$outfile2" ] || [ -f "$name2" ]; }; then
-               case "$outfile1" in */*) mkdir -p "${outfile1%/*}"; esac && { ln "$name1" "$outfile1" 2>/dev/null || cp "$name1" "$outfile1"; }
-               [ -z "$outfile2" ] || { case "$outfile2" in */*) mkdir -p "${outfile2%/*}"; esac && { ln "$name2" "$outfile2" 2>/dev/null || cp "$name2" "$outfile2"; }; }
+               case "$outfile1" in */*) mkdir -p "${outfile1%/*}"; esac && { ln -f "$name1" "$outfile1" 2>/dev/null || cp "$name1" "$outfile1"; }
+               [ -z "$outfile2" ] || { case "$outfile2" in */*) mkdir -p "${outfile2%/*}"; esac && { ln -f "$name2" "$outfile2" 2>/dev/null || cp "$name2" "$outfile2"; }; }
                conv=true
        elif "$method" "$infile1" "$infile2" "$tempfile1" "$tempfile2" "$@"; then
                mv "$tempfile1" "$name1"
                [ -z "$outfile2" ] || mv "$tempfile2" "$name2"
-               case "$outfile1" in */*) mkdir -p "${outfile1%/*}"; esac && { ln "$name1" "$outfile1" 2>/dev/null || cp "$name1" "$outfile1"; }
-               [ -z "$outfile2" ] || { case "$outfile2" in */*) mkdir -p "${outfile2%/*}"; esac && { ln "$name2" "$outfile2" 2>/dev/null || cp "$name2" "$outfile2"; }; }
+               case "$outfile1" in */*) mkdir -p "${outfile1%/*}"; esac && { ln -f "$name1" "$outfile1" 2>/dev/null || cp "$name1" "$outfile1"; }
+               [ -z "$outfile2" ] || { case "$outfile2" in */*) mkdir -p "${outfile2%/*}"; esac && { ln -f "$name2" "$outfile2" 2>/dev/null || cp "$name2" "$outfile2"; }; }
                conv=true
        else
                rm -f "$tempfile1"
@@ -263,7 +271,7 @@ for F in "$@"; do
 
        pm=
        case "$f" in
-               ./particles/*) # deluxemap
+               ./particles/particlefont) # particlefont uses premultiplied alpha
                        pm=_premul
                        ;;
        esac