X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?p=laserbrain_demo;a=blobdiff_plain;f=tools%2Fprepare_data;h=7106581af138c5a7a2a8cb592a144201b14fa602;hp=c1bf5f804785a69cf1efa92a09bd5fe92ed02d27;hb=0429831551b044dc8e4d6ba7c842e1ce4761ed69;hpb=8b3ce77b133bbac9979e75a6c88f6b86559d2705 diff --git a/tools/prepare_data b/tools/prepare_data index c1bf5f8..7106581 100755 --- a/tools/prepare_data +++ b/tools/prepare_data @@ -4,6 +4,7 @@ indir=datasrc descfile=$indir/datadesc outdir=data filter=$1 +force_update=false process() { @@ -34,6 +35,14 @@ copy() fi } +for arg; do + case "$arg" in + -f) + force=true + ;; + esac +done + if [ -z "$filter" ]; then filter='.*' fi @@ -47,14 +56,23 @@ while read line; do fname=$(basename $path) op=$(echo $line | awk -F : '{ print $2; }' | xargs) - if [ "$op" = nop ]; then - echo copying $fname - mkdir -p $outdir/$(dirname $path) - copy $indir/$path $outdir/$path - else - echo processing $fname - mkdir -p $outdir/$(dirname $path) - process $indir/$path $outdir/$path "$op" - fi + infile=$indir/$path + outfile=$outdir/$path + + if $force_update; then + touch "$infile" + fi + + if [ "$infile" -nt "$outfile" ]; then + if [ "$op" = nop ]; then + echo copying $fname + mkdir -p $outdir/$(dirname $path) + copy $indir/$path $outdir/$path + else + echo processing $fname + mkdir -p $outdir/$(dirname $path) + process $indir/$path $outdir/$path "$op" + fi + fi fi done <$descfile