Makefile (2940B)
1 .SUFFIXES: .o .c 2 3 TINY_SHA3_PATH=/home/olikru/packages/tiny_sha3 4 5 CC=clang 6 SOURCES=\ 7 fors.c\ 8 hash.c\ 9 ht.c\ 10 slh.c\ 11 utils.c\ 12 wotsp.c\ 13 xmss.c 14 BENCHSOURCE=bench.c 15 CLCOMMON=clcommon.c 16 KEYGENSOURCE=keygen.c 17 SIGNSOURCE=sign.c 18 VERIFSOURCE=verif.c 19 DEPS=\ 20 context.h\ 21 utils.h\ 22 wotsp.h\ 23 hash.h\ 24 address.h\ 25 xmss.h\ 26 ht.h\ 27 fors.h\ 28 slh.h\ 29 clcommon.h 30 CFLAGS+=-std=c99 -pedantic -Wall -Werror -Wstrict-prototypes 31 CFLAGS+=-Wmissing-prototypes -Wmissing-declarations -Wshadow 32 CFLAGS+=-Wpointer-arith -Wcast-qual -Wsign-compare 33 CFLAGS+=-O2 -g 34 #CFLAGS+=-O3 -DNDEBUG 35 CFLAGS+=-fstack-protector-all -Wtype-limits -fno-common 36 CFLAGS+=-fno-builtin 37 CFLAGS+=-I$(TINY_SHA3_PATH) -I/usr/local/include 38 LDFLAGS=-L/usr/local/lib -lcrypto 39 BUILDDIR=build 40 41 all: $(BUILDDIR) keygen sign verif 42 43 $(BUILDDIR): 44 mkdir -p $(BUILDDIR) 45 46 keygen: $(DEPS) 47 $(CC) $(CFLAGS) -DSLH_DSA_SHAKE_128S -o $(BUILDDIR)/keygen_shake_128s $(SOURCES) $(TINY_SHA3_PATH)/sha3.c $(CLCOMMON) $(KEYGENSOURCE) $(LDFLAGS) 48 49 sign: $(DEPS) 50 $(CC) $(CFLAGS) -DSLH_DSA_SHAKE_128S -o $(BUILDDIR)/sign_shake_128s $(SOURCES) $(TINY_SHA3_PATH)/sha3.c $(CLCOMMON) $(SIGNSOURCE) $(LDFLAGS) 51 52 verif: $(DEPS) 53 $(CC) $(CFLAGS) -DSLH_DSA_SHAKE_128S -o $(BUILDDIR)/verif_shake_128s $(SOURCES) $(TINY_SHA3_PATH)/sha3.c $(CLCOMMON) $(VERIFSOURCE) $(LDFLAGS) 54 55 benchmarks: $(DEPS) 56 $(CC) $(CFLAGS) -DSLH_DSA_SHAKE_128S -o $(BUILDDIR)/benchmark_shake_128s $(SOURCES) $(TINY_SHA3_PATH)/sha3.c $(BENCHSOURCE) $(LDFLAGS) 57 $(CC) $(CFLAGS) -DSLH_DSA_SHAKE_128F -o $(BUILDDIR)/benchmark_shake_128f $(SOURCES) $(TINY_SHA3_PATH)/sha3.c $(BENCHSOURCE) $(LDFLAGS) 58 $(CC) $(CFLAGS) -DSLH_DSA_SHAKE_192S -o $(BUILDDIR)/benchmark_shake_192s $(SOURCES) $(TINY_SHA3_PATH)/sha3.c $(BENCHSOURCE) $(LDFLAGS) 59 $(CC) $(CFLAGS) -DSLH_DSA_SHAKE_192F -o $(BUILDDIR)/benchmark_shake_192f $(SOURCES) $(TINY_SHA3_PATH)/sha3.c $(BENCHSOURCE) $(LDFLAGS) 60 $(CC) $(CFLAGS) -DSLH_DSA_SHAKE_256S -o $(BUILDDIR)/benchmark_shake_256s $(SOURCES) $(TINY_SHA3_PATH)/sha3.c $(BENCHSOURCE) $(LDFLAGS) 61 $(CC) $(CFLAGS) -DSLH_DSA_SHAKE_256F -o $(BUILDDIR)/benchmark_shake_256f $(SOURCES) $(TINY_SHA3_PATH)/sha3.c $(BENCHSOURCE) $(LDFLAGS) 62 $(CC) $(CFLAGS) -DSLH_DSA_SHA2_128S -o $(BUILDDIR)/benchmark_sha2_128s $(SOURCES) $(TINY_SHA3_PATH)/sha3.c $(BENCHSOURCE) $(LDFLAGS) 63 $(CC) $(CFLAGS) -DSLH_DSA_SHA2_128F -o $(BUILDDIR)/benchmark_sha2_128f $(SOURCES) $(TINY_SHA3_PATH)/sha3.c $(BENCHSOURCE) $(LDFLAGS) 64 $(CC) $(CFLAGS) -DSLH_DSA_SHA2_192S -o $(BUILDDIR)/benchmark_sha2_192s $(SOURCES) $(TINY_SHA3_PATH)/sha3.c $(BENCHSOURCE) $(LDFLAGS) 65 $(CC) $(CFLAGS) -DSLH_DSA_SHA2_192F -o $(BUILDDIR)/benchmark_sha2_192f $(SOURCES) $(TINY_SHA3_PATH)/sha3.c $(BENCHSOURCE) $(LDFLAGS) 66 $(CC) $(CFLAGS) -DSLH_DSA_SHA2_256S -o $(BUILDDIR)/benchmark_sha2_256s $(SOURCES) $(TINY_SHA3_PATH)/sha3.c $(BENCHSOURCE) $(LDFLAGS) 67 $(CC) $(CFLAGS) -DSLH_DSA_SHA2_256F -o $(BUILDDIR)/benchmark_sha2_256f $(SOURCES) $(TINY_SHA3_PATH)/sha3.c $(BENCHSOURCE) $(LDFLAGS) 68 69 clean: 70 rm -rf $(BUILDDIR)