git / moonbite-core / src/crypto/blake3/Makefile.testing · raw

# This Makefile is only for testing. C callers should follow the instructions# in ./README.md to incorporate these C files into their existing build.NAME=blake3CC=gccCFLAGS=-O3 -Wall -Wextra -std=c11 -pedantic -fstack-protector-strong -D_FORTIFY_SOURCE=2 -fPIE -fvisibility=hiddenLDFLAGS=-pie -Wl,-z,relro,-z,nowTARGETS=ASM_TARGETS=EXTRAFLAGS=-Wa,--noexecstackifdef BLAKE3_NO_SSE2EXTRAFLAGS += -DBLAKE3_NO_SSE2elseTARGETS += blake3_sse2.oASM_TARGETS += blake3_sse2_x86-64_unix.Sendififdef BLAKE3_NO_SSE41EXTRAFLAGS += -DBLAKE3_NO_SSE41elseTARGETS += blake3_sse41.oASM_TARGETS += blake3_sse41_x86-64_unix.Sendififdef BLAKE3_NO_AVX2EXTRAFLAGS += -DBLAKE3_NO_AVX2elseTARGETS += blake3_avx2.oASM_TARGETS += blake3_avx2_x86-64_unix.Sendififdef BLAKE3_NO_AVX512EXTRAFLAGS += -DBLAKE3_NO_AVX512elseTARGETS += blake3_avx512.oASM_TARGETS += blake3_avx512_x86-64_unix.Sendififdef BLAKE3_USE_NEONEXTRAFLAGS += -DBLAKE3_USE_NEONTARGETS += blake3_neon.oendifall: blake3.c blake3_dispatch.c blake3_portable.c main.c $(TARGETS)	$(CC) $(CFLAGS) $(EXTRAFLAGS) $^ -o $(NAME) $(LDFLAGS)blake3_sse2.o: blake3_sse2.c	$(CC) $(CFLAGS) $(EXTRAFLAGS) -c $^ -o $@ -msse2blake3_sse41.o: blake3_sse41.c	$(CC) $(CFLAGS) $(EXTRAFLAGS) -c $^ -o $@ -msse4.1blake3_avx2.o: blake3_avx2.c	$(CC) $(CFLAGS) $(EXTRAFLAGS) -c $^ -o $@ -mavx2blake3_avx512.o: blake3_avx512.c	$(CC) $(CFLAGS) $(EXTRAFLAGS) -c $^ -o $@ -mavx512f -mavx512vlblake3_neon.o: blake3_neon.c	$(CC) $(CFLAGS) $(EXTRAFLAGS) -c $^ -o $@test: CFLAGS += -DBLAKE3_TESTING -fsanitize=address,undefinedtest: all	./test.pyasm: blake3.c blake3_dispatch.c blake3_portable.c main.c $(ASM_TARGETS)	$(CC) $(CFLAGS) $(EXTRAFLAGS) $^ -o $(NAME) $(LDFLAGS)test_asm: CFLAGS += -DBLAKE3_TESTING -fsanitize=address,undefined test_asm: asm	./test.pyexample: example.c blake3.c blake3_dispatch.c blake3_portable.c $(ASM_TARGETS)	$(CC) $(CFLAGS) $(EXTRAFLAGS) $^ -o $@ $(LDFLAGS)clean: 	rm -f $(NAME) *.o