32 lines
720 B
Bash
32 lines
720 B
Bash
|
#!/bin/bash
|
||
|
|
||
|
######################################################
|
||
|
# run *.nimble tasks using "nim" instead of "nimble" #
|
||
|
######################################################
|
||
|
|
||
|
# exit on command error
|
||
|
set -e
|
||
|
|
||
|
[ -z "$1" ] && { echo "usage: $0 task_name"; exit 1; }
|
||
|
|
||
|
F=""
|
||
|
for F in *.nimble; do
|
||
|
# get the first one
|
||
|
break
|
||
|
done
|
||
|
[ -z "$F" ] && { echo "No *.nimble file found."; exit 1; }
|
||
|
|
||
|
# "nim" seems to only run custom NimScript files if they have a "nims" extension
|
||
|
NIMS="${F%.nimble}.nims"
|
||
|
ln -s "$F" "$NIMS"
|
||
|
|
||
|
# delete the temporary symlink on script exit
|
||
|
cleanup() {
|
||
|
rm -rf "$NIMS"
|
||
|
}
|
||
|
trap cleanup EXIT
|
||
|
|
||
|
# can't have an "exec" here or the EXIT pseudo-signal won't be triggered
|
||
|
$(dirname $0)/env.sh nim "$1" "$NIMS"
|
||
|
|