use tabs for Makefile
[jackhill/mal.git] / Makefile
index 6404148..eb810be 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -77,11 +77,12 @@ DOCKERIZE =
 # Settings
 #
 
-IMPLS = ada awk bash c d chuck clojure coffee cpp crystal cs erlang elisp \
-       elixir es6 factor forth fsharp go groovy guile haskell haxe \
-       io java julia js kotlin logo lua make mal ocaml matlab miniMAL \
-       nim objc objpascal perl perl6 php plpgsql plsql ps python r \
-       racket rpython ruby rust scala swift swift3 tcl vb vhdl vimscript
+IMPLS = ada awk bash basic c d chuck clojure coffee clisp cpp crystal cs dart \
+       erlang elisp elixir es6 factor forth fsharp go groovy guile haskell \
+       haxe io java julia js kotlin logo lua make mal ocaml matlab miniMAL \
+       nim objc objpascal perl perl6 php pil plpgsql plsql powershell ps \
+       python r racket rpython ruby rust scala swift swift3 tcl vb vhdl \
+       vimscript
 
 step0 = step0_repl
 step1 = step1_read_print
@@ -108,12 +109,14 @@ regress_step9 = $(regress_step8) step9
 regress_stepA = $(regress_step9) stepA
 
 test_EXCLUDES += test^bash^step5   # never completes at 10,000
+test_EXCLUDES += test^basic^step5  # too slow, and limited to ints of 2^16
 test_EXCLUDES += test^logo^step5   # too slow for 10,000
 test_EXCLUDES += test^make^step5   # no TCO capability (iteration or recursion)
 test_EXCLUDES += test^mal^step5    # host impl dependent
 test_EXCLUDES += test^matlab^step5 # never completes at 10,000
 test_EXCLUDES += test^plpgsql^step5 # too slow for 10,000
 test_EXCLUDES += test^plsql^step5  # too slow for 10,000
+test_EXCLUDES += test^powershell^step5  # too slow for 10,000
 
 perf_EXCLUDES = mal  # TODO: fix this
 
@@ -144,14 +147,17 @@ STEP_TEST_FILES = $(strip $(wildcard \
 ada_STEP_TO_PROG =     ada/$($(1))
 awk_STEP_TO_PROG =     awk/$($(1)).awk
 bash_STEP_TO_PROG =    bash/$($(1)).sh
+basic_STEP_TO_PROG =   basic/$($(1)).bas
 c_STEP_TO_PROG =       c/$($(1))
 d_STEP_TO_PROG =       d/$($(1))
 chuck_STEP_TO_PROG =   chuck/$($(1)).ck
 clojure_STEP_TO_PROG = clojure/target/$($(1)).jar
 coffee_STEP_TO_PROG =  coffee/$($(1)).coffee
+clisp_STEP_TO_PROG = clisp/$($(1)).fas
 cpp_STEP_TO_PROG =     cpp/$($(1))
 crystal_STEP_TO_PROG = crystal/$($(1))
 cs_STEP_TO_PROG =      cs/$($(1)).exe
+dart_STEP_TO_PROG =    dart/$($(1)).dart
 elisp_STEP_TO_PROG =   elisp/$($(1)).el
 elixir_STEP_TO_PROG =  elixir/lib/mix/tasks/$($(1)).ex
 erlang_STEP_TO_PROG =  erlang/$($(1))
@@ -180,8 +186,10 @@ objpascal_STEP_TO_PROG = objpascal/$($(1))
 perl_STEP_TO_PROG =    perl/$($(1)).pl
 perl6_STEP_TO_PROG =   perl6/$($(1)).pl
 php_STEP_TO_PROG =     php/$($(1)).php
+pil_STEP_TO_PROG =     pil/$($(1)).l
 plpgsql_STEP_TO_PROG = plpgsql/$($(1)).sql
 plsql_STEP_TO_PROG =   plsql/$($(1)).sql
+powershell_STEP_TO_PROG =  powershell/$($(1)).ps1
 ps_STEP_TO_PROG =      ps/$($(1)).ps
 python_STEP_TO_PROG =  python/$($(1)).py
 r_STEP_TO_PROG =       r/$($(1)).r
@@ -247,6 +255,8 @@ get_argvtest_cmd = $(call get_run_prefix,$(1),$(2)) ../run_argv_test.sh
 vimscript_TEST_OPTS = --test-timeout 30
 ifeq ($(MAL_IMPL),vimscript)
 mal_TEST_OPTS = --start-timeout 60 --test-timeout 180
+else ifeq ($(MAL_IMPL),powershell)
+mal_TEST_OPTS = --start-timeout 60 --test-timeout 180
 endif
 
 # Derived lists