| summaryrefslogtreecommitdiff |
path: root/sol-pretty-printer
diff options
Diffstat (limited to 'sol-pretty-printer')
| -rw-r--r-- | sol-pretty-printer/Makefile | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/sol-pretty-printer/Makefile b/sol-pretty-printer/Makefile new file mode 100644 index 0000000..4c5d954 --- /dev/null +++ b/sol-pretty-printer/Makefile @@ -0,0 +1,68 @@ +## Parameters ################################################################## +#### Where to find the solutions. +ifndef SOL_DIR +SOL_DIR = +endif + +#### Where to find the model's data +ifndef MODEL_DIR +MODEL_DIR = +endif + +#### Where to find the properties' pretty-print files +ifndef PROPERTY_FILES +PROPERTY_FILES = +endif + +#### Binaries +###### JRE binary +ifndef JAVA +JAVA = java +endif + +###### JDK binary +ifndef JAVAC +JAVAC = javac +endif + +## Parameters Sanity Check ##################################################### +ifeq ($(strip $(SOL_DIR)),) +$(error No SOL_DIR defined as parameter.) +endif + +ifeq ($(strip $(MODEL_DIR)),) +$(error No MODEL_DIR defined as parameter.) +endif + +ifeq ($(strip $(PROPERTY_FILES)),) +$(error No PROPERTY_FILES defined as parameter.) +endif + +ifeq ($(strip $(JAVA)),) +$(error No Java executable defined as parameter.) +endif + +ifeq ($(strip $(JAVAC)),) +$(error No Java compiler defined as parameter.) +endif + +################################################################################ +CLASSPATH = "./src/" + +## Makefile Magic ############################################################## +SOURCES = $(wildcard src/*.java) +CLASSES = $(SOURCES:.java=.class) + +SOLUTION_FILES = $(wildcard $(SOL_DIR)/*.sol) +PROPERTY_PP_FILES = $(PROPERTY_FILES:.pro=.pp) +SOLUTION_PP_PAIRS = \ + $(foreach sf,$(SOLUTION_FILES),"$(sf) $(filter %$(basename $(notdir $(sf))).pp,$(PROPERTY_PP_FILES))") + +run: $(SOLUTION_PP_PAIRS) $(MODEL_DIR)/structural.mod $(MODEL_DIR)/string_to_instr.map $(CLASSES) + $(JAVA) $(MODEL_DIR)/structural.mod $(MODEL_DIR)/string_to_instr.map $(SOLUTION_PP_PAIRS) + +%.class: %.java + $(JAVAC) -cp $(CLASSPATH) $< + +clean: + rm -f $(CLASSES) |


