Makefile (514B)
1 CC ?= cc 2 OPT ?= -O2 3 CFLAGS ?= -Wall -Wextra -Wpedantic $(OPT) 4 CFLAGS += -std=c11 -I src 5 6 LIB := src/keccak-fast.c $(wildcard src/backend/*.c) 7 OUT := build 8 BINS := $(OUT)/kat $(OUT)/batch 9 10 .PHONY: default test bench clean 11 default: test 12 13 test: $(BINS) 14 @$(OUT)/kat 15 @$(OUT)/batch 16 17 bench: 18 @$(MAKE) --no-print-directory --directory bench run 19 20 $(OUT)/%: test/%.c $(LIB) | $(OUT) 21 @$(CC) $(CFLAGS) $< $(LIB) -o $@ 22 23 $(OUT): 24 @mkdir -p $(OUT) 25 26 clean: 27 rm -rf $(OUT) 28 @$(MAKE) --no-print-directory --directory bench clean