mirror of
https://github.com/henrydcase/pqc.git
synced 2024-11-24 00:11:27 +00:00
b3f9d4f8d6
* Add McEliece reference implementations * Add Vec implementations of McEliece * Add sse implementations * Add AVX2 implementations * Get rid of stuff not supported by Mac ABI * restrict to two cores * Ditch .data files * Remove .hidden from all .S files * speed up duplicate consistency tests by batching * make cpuinfo more robust * Hope to stabilize macos cpuinfo without ccache * Revert "Hope to stabilize macos cpuinfo without ccache" This reverts commit 6129c3cabe1abbc8b956bc87e902a698e32bf322. * Just hardcode what's available at travis * Fixed-size types in api.h * namespace all header files in mceliece * Ditch operations.h * Get rid of static inline functions * fixup! Ditch operations.h
42 lines
1.3 KiB
Makefile
42 lines
1.3 KiB
Makefile
# This Makefile can be used with GNU Make or BSD Make
|
|
|
|
LIB = libmceliece348864_sse.a
|
|
|
|
SOURCES = aes256ctr.c benes.c bm.c controlbits.c decrypt.c encrypt.c fft.c \
|
|
fft_tr.c gf.c operations.c pk_gen.c sk_gen.c transpose.c util.c \
|
|
vec.c vec128.c \
|
|
consts.S syndrome_asm.S transpose_64x128_sp_asm.S \
|
|
transpose_64x64_asm.S update_asm.S vec128_mul_asm.S \
|
|
vec_mul_asm.S vec_reduce_asm.S
|
|
|
|
HEADERS = aes256ctr.h api.h benes.h bm.h controlbits.h crypto_hash.h \
|
|
decrypt.h encrypt.h fft.h fft_tr.h gf.h params.h \
|
|
pk_gen.h sk_gen.h transpose.h util.h vec128.h vec.h \
|
|
consts.inc powers.inc scalars_2x.inc scalars.inc
|
|
|
|
OBJECTS = aes256ctr.o benes.o bm.o controlbits.o decrypt.o encrypt.o fft.o \
|
|
fft_tr.o gf.o operations.o pk_gen.o transpose.o sk_gen.o util.o \
|
|
vec.o vec128.o \
|
|
consts.o syndrome_asm.o transpose_64x128_sp_asm.o \
|
|
transpose_64x64_asm.o update_asm.o vec128_mul_asm.o \
|
|
vec_mul_asm.o vec_reduce_asm.o
|
|
|
|
CFLAGS = -O3 -std=c99 -mpopcnt -mbmi -msse4.1 -Wall -Wextra -pedantic -Werror -Wpedantic \
|
|
-Wredundant-decls -Wvla -Wcast-align -Wmissing-prototypes \
|
|
-I../../../common/ $(EXTRAFLAGS)
|
|
|
|
all: $(LIB)
|
|
|
|
%.o: %.c $(HEADERS)
|
|
$(CC) $(CFLAGS) -c -o $@ $<
|
|
|
|
%.o: %.S
|
|
$(CC) -c -o $@ $<
|
|
|
|
$(LIB): $(OBJECTS)
|
|
$(AR) -r $@ $(OBJECTS)
|
|
|
|
clean:
|
|
$(RM) $(OBJECTS)
|
|
$(RM) $(LIB)
|