diff --git a/Makefile b/Makefile index a5b01fa44b103f71de3c1755f1772c00c6f5347a..3db89f8480a30c51929ce88a091f86bd620436dc 100644 --- a/Makefile +++ b/Makefile @@ -7,6 +7,9 @@ JAVA_DEPENDENCIES= :btypes.jar CPP_CODE_GEN_FLAGS=-l cpp -mc true CPPC ?= clang++ CPPFLAGS ?= -std=c++14 -O1 -flto +TS_CODE_GEN_FLAGS=-l ts -mc true +TSC ?= tsc +TSCFLAGS=--target ES6 --moduleResolution node RS_CODE_GEN_FLAGS=-l rs -mc true STRATEGY=mixed THREADS=1 @@ -22,23 +25,34 @@ btypes_primitives: btypes_big_integer: cd btypes_big_integer && ./gradlew check && ./gradlew fatJar && cp build/libs/btypes_big_integer-all.jar ../btypes.jar && cd .. +refresh: + ./gradlew eclipse --refresh-dependencies + + ifndef LANGUAGE echo "LANGUAGE is not set" else ifeq ($(LANGUAGE), java) %: java -jar B2Program-all-0.1.0-SNAPSHOT.jar $(JAVA_CODE_GEN_FLAGS) -f $(DIRECTORY)/$@.mch - cp $(DIRECTORY)/*.java . + @if [ "$(DIRECTORY)" != "." ]; then cp $(DIRECTORY)/*.java .; fi javac -cp .$(JAVA_DEPENDENCIES) $@.java java -cp .$(JAVA_DEPENDENCIES) $@ $(STRATEGY) $(THREADS) $(CACHING) endif ifeq ($(LANGUAGE), cpp) %: java -jar B2Program-all-0.1.0-SNAPSHOT.jar $(CPP_CODE_GEN_FLAGS) -f $(DIRECTORY)/$@.mch - cp $(DIRECTORY)/*.cpp . - $(CPPC) $(CPPFLAGS) -o $@.exec $@.cpp + @if [ "$(DIRECTORY)" != "." ]; then cp $(DIRECTORY)/*.cpp .; fi + $(CPPC) $(CPPFLAGS) -o $@.exec $@.cpp -ftemplate-depth=16000 ./$@.exec $(STRATEGY) $(THREADS) $(CACHING) endif +ifeq ($(LANGUAGE), ts) +%: + java -jar B2Program-all-0.1.0-SNAPSHOT.jar $(TS_CODE_GEN_FLAGS) -f $(DIRECTORY)/$@.mch + @if [ "$(DIRECTORY)" != "." ]; then cp $(DIRECTORY)/*.ts .; fi + $(TSC) $(TSCFLAGS) $@.ts + node $@.js $(STRATEGY) $(THREADS) $(CACHING) +endif ifneq (,$(findstring $(LANGUAGE), rs|RS|rust|Rust)) %: java -jar B2Program-all-0.1.0-SNAPSHOT.jar $(RS_CODE_GEN_FLAGS) -f $(DIRECTORY)/$@.mch