summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--examples/runall.sh35
1 files changed, 35 insertions, 0 deletions
diff --git a/examples/runall.sh b/examples/runall.sh
new file mode 100644
index 00000000..c476c6e1
--- /dev/null
+++ b/examples/runall.sh
@@ -0,0 +1,35 @@
+#!/bin/sh
+cc=gcc
+#cc=clang
+#cc='clang -c -DSTC_HEADER'
+#cc='cl -nologo'
+#cc='cl -nologo -TP'
+#cc='cl -nologo -std:c11'
+run=0
+if [ "$1" == '-h' -o "$1" == '--help' ]; then
+ echo usage: runall.sh [-run] [compiler + options]
+ exit
+fi
+if [ "$1" == '-run' ]; then
+ run=1
+ shift
+fi
+if [ ! -z "$1" ] ; then
+ cc=$@
+fi
+if [ $run = 0 ] ; then
+ for i in *.c ; do
+ echo $cc -I../include $i
+ $cc -I../include $i
+ done
+else
+ for i in *.c ; do
+ echo $cc -I../include $i
+ $cc -I../include $i
+ if [ -f $(basename -s .c $i).exe ]; then ./$(basename -s .c $i).exe; fi
+ if [ -f ./a.exe ]; then ./a.exe; fi
+ if [ -f ./a.out ]; then ./a.out; fi
+ done
+fi
+
+rm -f a.out *.o *.obj *.exe