1
1
mirror of https://github.com/henrydcase/pqc.git synced 2024-11-27 09:51:30 +00:00
pqcrypto/crypto_kem/ledakemlt12/clean/Makefile
2019-05-19 19:40:38 +02:00

58 lines
1.6 KiB
Makefile

# This Makefile can be used with GNU Make or BSD Make
SL = 1
N0 = 2
DFR_SL_LEVEL = 1
LIB=libLEDAkem_sl$(SL)_N0$(N0)_clean.a
HEADERS=aes256.h api.h bf_decoding.h dfr_test.h gf2x_arith_mod_xPplusOne.h \
gf2x_arith.h gf2x_limbs.h H_Q_matrices_generation.h niederreiter_decrypt.h \
niederreiter_encrypt.h niederreiter_keygen.h niederreiter.h \
qc_ldpc_parameters.h rng.h sha3.h
OBJECTS=aes256.o bf_decoding.o dfr_test.o gf2x_arith_mod_xPplusOne.o \
gf2x_arith.o H_Q_matrices_generation.o kem.o niederreiter_decrypt.o \
niederreiter_encrypt.o niederreiter_keygen.o rng.o
CFLAGS=-O3 -Wall -Wextra -Wpedantic -Wvla -Wmissing-prototypes -std=c99 \
-DCATEGORY=$(SL) -DN0=$(N0) -DDFR_SL_LEVEL=$(DFR_SL_LEVEL) -I../../../common $(EXTRAFLAGS)
# TODO: -Werror
all: $(LIB)
%.o: %.c $(HEADERS)
$(CC) $(CFLAGS) -c -o $@ $<
$(LIB): $(OBJECTS)
$(AR) -r $@ $(OBJECTS)
clean:
$(RM) $(OBJECTS)
$(RM) $(LIB)
# old makefile
# CFLAGS = -DCATEGORY=$(SL) -DN0=$(N0) -DDFR_SL_LEVEL=$(DFR_SL_LEVEL) -DCPU_WORD_BITS=64 \
# -std=c11 -Wall -pedantic -Wmaybe-uninitialized -Wuninitialized \
# -march=native -O3 -g3
# LDFLAGS = -lm -lkeccak
# INCLUDES = -I./include
# SRCDIR = library
# OBJDIR = bin
#
# # Gathers the names of all C files
# CSRC = $(wildcard $(SRCDIR)/*.c)
# # Produces in $(COBJS) the names of .o object files for all C files
# COBJS = $(CSRC:$(SRCDIR)/%.c=$(OBJDIR)/%.o)
#
# $(OBJDIR)/%.o: $(SRCDIR)/%.c
# $(CC) -c $(CFLAGS) $(INCLUDES) $< -o $@
#
# .PHONY : all clean
#
# all: $(COBJS)
# ar rcs $(OBJDIR)/libLEDAkem_sl$(SL)_N0$(N0).a $(COBJS)
# clean:
# $(RM) $(OBJDIR)/*.o $(OBJDIR)/libLEDAkem_sl$(SL)_N0$(N0).a