about summary refs log tree commit diff stats
path: root/build/latex/academia/build.sh
diff options
context:
space:
mode:
Diffstat (limited to 'build/latex/academia/build.sh')
-rwxr-xr-xbuild/latex/academia/build.sh30
1 files changed, 23 insertions, 7 deletions
diff --git a/build/latex/academia/build.sh b/build/latex/academia/build.sh
index 1206ee7..c67ad52 100755
--- a/build/latex/academia/build.sh
+++ b/build/latex/academia/build.sh
@@ -1,14 +1,30 @@
 #!/usr/bin/env sh
 
-# if no parameter is given, use 'dst' as destination directory
-if [ -z "$1" ]; then
-    dst=build
-else
-    dst="$1"
-fi
+file="./%INIT_APPLICATION_NAME.tex"
+dst=build
+
+clear=false
+
+for arg in "$@"; do
+    case "$arg" in
+    "--clear")
+        clear=true
+        ;;
+    --*)
+        echo "No such option: '$arg'"
+        exit 2
+        ;;
+    *)
+        file="$arg"
+        ;;
+    esac
+done
 
 # find all directories which are not the destination dir or inside it
 find . -type d -not -name "$dst" -not -path "./$dst/*" -printf '%P\n' | while IFS= read -r dir; do
     mkdir --parents "$dst/$dir"
 done
-latexmk -outdir="$dst" -file-line-error -pdflatex -recorder "./%INIT_APPLICATION_NAME.tex"
+
+test "$clear" = true && rm "$dst/${file%tex}out"
+
+latexmk -outdir="$dst" -file-line-error -pdflatex -recorder "$file"