mirror of
https://github.com/guanzhi/GmSSL.git
synced 2026-08-09 23:43:41 +08:00
add sphincs
This commit is contained in:
52
crypto/sphincs/Makefile
Normal file
52
crypto/sphincs/Makefile
Normal file
@@ -0,0 +1,52 @@
|
||||
SRC=$(wildcard *.c) $(wildcard primitives/*.c)
|
||||
OBJ=$(patsubst %.c, %.o, $(SRC))
|
||||
|
||||
CFLAGS_COMMON=-std=c89 -pedantic -Wall -Wextra -Wno-long-long -march=native
|
||||
LDFLAGS=-lcrypto
|
||||
|
||||
VERSION_S= -DPORS_k=24 -DMERKLE_h=5 -DGRAVITY_d=1 -DGRAVITY_c=10
|
||||
VERSION_M= -DPORS_k=32 -DMERKLE_h=5 -DGRAVITY_d=7 -DGRAVITY_c=15
|
||||
VERSION_L= -DPORS_k=28 -DMERKLE_h=5 -DGRAVITY_d=10 -DGRAVITY_c=14
|
||||
|
||||
VERSION=$(VERSION_S)
|
||||
|
||||
CFLAGS_COMMON+=$(VERSION)
|
||||
CFLAGS=$(CFLAGS_COMMON) -O3 -fomit-frame-pointer
|
||||
CFLAGS_SANITIZED=$(CFLAGS_COMMON) -fsanitize=address,undefined -g
|
||||
|
||||
KERNEL_NAME := $(shell uname -s)
|
||||
ifeq ($(KERNEL_NAME), Darwin)
|
||||
CFLAGS += -I/usr/local/opt/openssl/include
|
||||
LDFLAGS += -L/usr/local/opt/openssl/lib
|
||||
endif
|
||||
|
||||
all: help
|
||||
|
||||
help:
|
||||
@echo "Please choose a target:"
|
||||
@echo "\tanalyze\t\t runs static analyzers"
|
||||
@echo "\tbench\t\t runs speed benchmarks"
|
||||
@echo "\tclean\t\t cleans up"
|
||||
@echo "\tformat\t\t formats the code using .clang-format rules"
|
||||
|
||||
bench: $(SRC)
|
||||
$(CC) $(CFLAGS) $(LDFLAGS) $^ -o bench
|
||||
./bench
|
||||
|
||||
format:
|
||||
clang-format -i *.c *.h
|
||||
|
||||
analyze:
|
||||
cppcheck . --std=c89
|
||||
scan-build gcc -c $(CFLAGS_SANITIZED) *.c
|
||||
cppclean .
|
||||
rm -f *.o
|
||||
|
||||
cloc:
|
||||
cloc $(wildcard *.c) $(wildcard *.h)
|
||||
|
||||
clean:
|
||||
rm -f bench *.dSYM *.o
|
||||
|
||||
.PHONY: clean format analyze cloc bench
|
||||
|
||||
Reference in New Issue
Block a user