-define TESTBIN_TEMPLATE
-$(1)_TEST_BIN: $(2)
-endef
-
-$(foreach algo, $(ALGORITHMS), $(eval $(call TESTBIN_TEMPLATE, $(algo), $($(algo)_TEST_BIN))))
-
-#-------------------------------------------------------------------------------
-
-$(BLOCK_CIPHERS_OBJ): $(patsubst %,%_OBJ, $(BLOCK_CIPHERS))
-$(STREAM_CIPHERS_OBJ): $(patsubst %,%_OBJ, $(STREAM_CIPHERS))
-$(HASHES_OBJ): $(patsubst %,%_OBJ, $(HASHES))
-$(PRNGS_OBJ): $(patsubst %,%_OBJ, $(PRNGS))
-$(MACS_OBJ): $(patsubst %,%_OBJ, $(MACS))
-$(ENCODINGS_OBJ): $(patsubst %,%_OBJ, $(ENCODINGS))
-
-#-------------------------------------------------------------------------------
-
-define SIZE_TEMPLATE
-$(1)_size.txt: $(2)
- @echo "[size]: $(1)_size.txt"
- @$(SIZE) $(2) > $(1)_size.txt
-endef
-
-$(foreach algo, $(ALGORITHMS), $(eval $(call SIZE_TEMPLATE, $(STAT_DIR)$(call lc,$(algo)), $($(algo)_OBJ))))
-
-#-------------------------------------------------------------------------------
-
-define FLASH_TEMPLATE
-$(1)_FLASH: $(2)
- @echo "[flash]: $(2)"
- @$(FLASHCMD)$(call first,$(2))
-endef
-
-$(foreach algo, $(ALGORITHMS),$(eval $(call FLASH_TEMPLATE, $(algo), $(TESTBIN_DIR)main-$(call lc,$(algo))-test.hex) ))
-
-#-------------------------------------------------------------------------------
-
-define TESTRUN_TEMPLATE
-$(1)_TESTRUN: $(1)_FLASH
- @echo "[test]: $(1)"
- $(RUBY) $(GET_TEST) $(TESTPORT) $(TESTPORTBAUDR) 8 1 nessie $(TESTLOG_DIR)$(TESTPREFIX) $(2)
-endef
-
-$(foreach algo, $(ALGORITHMS),$(eval $(call TESTRUN_TEMPLATE, $(algo), $(call lc,$(algo)) )))
-
-all_testrun: $(foreach algo, $(ALGORITHMS), $(algo)_TESTRUN)
-
-#-------------------------------------------------------------------------------
-
-define LISTING_TEMPLATE
-$(1)_LIST: $(2)
-endef
-
-$(foreach algo, $(ALGORITHMS),$(eval $(call LISTING_TEMPLATE,$(call uc, $(algo)), \
- $(patsubst %,$(LIST_DIR)%, \
- $(patsubst $(BIN_DIR)%,%, \
- $(patsubst $(TESTBIN_DIR)%,%, \
- $(patsubst %.o,%.lst,$($(algo)_OBJ)))) ))))
-
-listings: $(patsubst %,%_LIST,$(ALGORITHMS))
-
-
-$(LIST_DIR)%.lst: $(TESTBIN_DIR)%.elf
- $(OBJDUMP) -h -S $< > $@
-
-$(LIST_DIR)%.lst: $(BIN_DIR)%.o
- $(OBJDUMP) -h -S $< > $@
-
-$(LIST_DIR)%.lst: $(TESTBIN_DIR)%.o
- $(OBJDUMP) -h -S $< > $@
-
-#-------------------------------------------------------------------------------
-
-.PHONY: cores
-cores: $(ALGORITHMS_OBJ)
-
-.PHONY: blockciphers
-blockciphers: $(patsubst %, %_OBJ, $(BLOCK_CIPHERS))
-
-.PHONY: streamciphers
-streamciphers: $(patsubst %, %_OBJ, $(STREAM_CIPHERS))
-
-.PHONY: hashes
-hashes: $(patsubst %, %_OBJ, $(HASHES))
-
-.PHONY: macs
-macs: $(patsubst %, %_OBJ, $(MACS))
-
-.PHONY: prngs
-prngs: $(patsubst %, %_OBJ, $(PRNGS))
-
-.PHONY: encodings
-encodings: $(patsubst %, %_OBJ, $(ENCODINGS))
-
-tests: $(ALGORITHMS_TEST_BIN) \
- $(ALGORITHMS_TEST_TARGET_ELF) \
- $(ALGORITHMS_TEST_TARGET_HEX)
-
-.PHONY: stats
-stats: $(SIZESTAT_FILE)
- @cat $(STAT_DIR)$(SIZESTAT_FILE)
-
-$(SIZESTAT_FILE): $(patsubst %, $(STAT_DIR)%_size.txt, $(ALGORITHMS_LC))
- $(RUBY) sumsize.rb $^ > $(STAT_DIR)$(SIZESTAT_FILE)
-
-#-------------------------------------------------------------------------------
-
-