Merge branch 'main+jq' of https://github.com/alimpfard/mal into main+jq
[jackhill/mal.git] / Makefile
index 44e1ad8..a6a1c1e 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -63,7 +63,7 @@ matlab_MODE = octave
 python_MODE = python
 # scheme (chibi, kawa, gauche, chicken, sagittarius, cyclone, foment)
 scheme_MODE = chibi
-# wasmtime js node wace_libc wace_fooboot
+# wasmtime wasmer lucet wax  node warpy  wace_libc
 wasm_MODE = wasmtime
 
 # Path to loccount for counting LOC stats
@@ -92,9 +92,9 @@ DOCKERIZE =
 IMPLS = ada ada.2 awk bash basic bbc-basic c chuck clojure coffee common-lisp cpp crystal cs d dart \
        elisp elixir elm erlang es6 factor fantom forth fsharp go groovy gnu-smalltalk \
        guile haskell haxe hy io java js julia kotlin livescript logo lua make mal \
-       matlab miniMAL nasm nim objc objpascal ocaml perl perl6 php picolisp plpgsql \
-       plsql powershell ps python r racket rexx rpython ruby rust scala scheme skew \
-       swift swift3 swift4 tcl ts vala vb vhdl vimscript wasm yorick
+       matlab miniMAL nasm nim objc objpascal ocaml perl perl6 php picolisp pike plpgsql \
+       plsql powershell ps python python.2 r racket rexx rpython ruby rust scala scheme skew \
+       swift swift3 swift4 swift5 tcl ts vala vb vhdl vimscript wasm wren yorick zig jq
 
 EXTENSION = .mal
 
@@ -188,7 +188,7 @@ ada.2_STEP_TO_PROG =   ada.2/$($(1))
 awk_STEP_TO_PROG =     awk/$($(1)).awk
 bash_STEP_TO_PROG =    bash/$($(1)).sh
 basic_STEP_TO_PROG =   $(basic_STEP_TO_PROG_$(basic_MODE))
-bbc-basic_STEP_TO_PROG = bbc-basic/$($(1)).bbc
+bbc-basic_STEP_TO_PROG = bbc-basic/$($(1)).bas
 c_STEP_TO_PROG =       c/$($(1))
 chuck_STEP_TO_PROG =   chuck/$($(1)).ck
 clojure_STEP_TO_PROG = $(clojure_STEP_TO_PROG_$(clojure_MODE))
@@ -218,6 +218,7 @@ hy_STEP_TO_PROG =      hy/$($(1)).hy
 io_STEP_TO_PROG =      io/$($(1)).io
 java_STEP_TO_PROG =    java/target/classes/mal/$($(1)).class
 js_STEP_TO_PROG =      js/$($(1)).js
+jq_STEP_PROG =         jq/$($(1)).jq
 julia_STEP_TO_PROG =   julia/$($(1)).jl
 kotlin_STEP_TO_PROG =  kotlin/$($(1)).jar
 livescript_STEP_TO_PROG = livescript/$($(1)).js
@@ -236,11 +237,13 @@ perl_STEP_TO_PROG =    perl/$($(1)).pl
 perl6_STEP_TO_PROG =   perl6/$($(1)).pl
 php_STEP_TO_PROG =     php/$($(1)).php
 picolisp_STEP_TO_PROG = picolisp/$($(1)).l
+pike_STEP_TO_PROG =    pike/$($(1)).pike
 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
+python.2_STEP_TO_PROG = python.2/$($(1)).py
 r_STEP_TO_PROG =       r/$($(1)).r
 racket_STEP_TO_PROG =  racket/$($(1)).rkt
 rexx_STEP_TO_PROG =    rexx/$($(1)).rexxpp
@@ -253,15 +256,17 @@ skew_STEP_TO_PROG =    skew/$($(1)).js
 swift_STEP_TO_PROG =   swift/$($(1))
 swift3_STEP_TO_PROG =  swift3/$($(1))
 swift4_STEP_TO_PROG =  swift4/$($(1))
+swift5_STEP_TO_PROG =  swift5/$($(1))
 tcl_STEP_TO_PROG =     tcl/$($(1)).tcl
 ts_STEP_TO_PROG =      ts/$($(1)).js
 vala_STEP_TO_PROG =    vala/$($(1))
 vb_STEP_TO_PROG =      vb/$($(1)).exe
 vhdl_STEP_TO_PROG =    vhdl/$($(1))
 vimscript_STEP_TO_PROG = vimscript/$($(1)).vim
-wasm_STEP_TO_PROG =    wasm/$($(1)).wasm
+wasm_STEP_TO_PROG =    wasm/$($(1)).$(if $(filter lucet,$(wasm_MODE)),so,wasm)
+wren_STEP_TO_PROG =    wren/$($(1)).wren
 yorick_STEP_TO_PROG =  yorick/$($(1)).i
-
+zig_STEP_TO_PROG =     zig/$($(1))
 
 #
 # General settings and utility functions
@@ -491,7 +496,7 @@ stats: $(IMPL_STATS)
 $(IMPL_STATS):
        @$(foreach impl,$(word 2,$(subst ^, ,$(@))),\
          echo "Stats for $(impl):"; \
-         $(LOCCOUNT) -x "Makefile|node_modules" $(impl))
+         $(LOCCOUNT) -x "[sS]tep[0-9]_.*|[.]md$$|tests|examples|Makefile|package.json|tsconfig.json|Cargo.toml|project.clj|node_modules|getline.cs|terminal.cs|elm-stuff|objpascal/regexpr|rdyncall|swift/templates" $(impl))
 
 #
 # Utility functions