SHELL = /bin/sh CC = clang # -Wunused-function is pretty annoying here, as everything is static and not # all parts of common.c are used in all the executables CFLAGS = -std=c99 -Wall -Wextra -Wno-unused-function \ -ggdb -fsanitize=address,undefined # -lpthread is only there for debugging (gdb & errno) # -lrt is only for glibc < 2.17 LDFLAGS = `pkg-config --libs libssl` -lpthread -lrt .PHONY: all clean .SUFFIXES: targets = zyklonb kike all: $(targets) clean: rm -f $(targets) kike-replies.c zyklonb: zyklonb.c common.c siphash.c $(CC) zyklonb.c siphash.c -o $@ $(CFLAGS) $(LDFLAGS) kike: kike.c common.c siphash.c kike-replies.c $(CC) kike.c siphash.c -o $@ $(CFLAGS) $(LDFLAGS) # Generates kike.msg as a by-product kike-replies.c: kike-replies $(SHELL) kike-gen-replies.sh < $< > $@