Makefile revision 1.31
1# $OpenBSD: Makefile,v 1.31 2023/04/17 19:51:05 tb Exp $ 2 3PROGS += bn_add_sub 4PROGS += bn_cmp 5PROGS += bn_gcd 6PROGS += bn_general 7PROGS += bn_isqrt 8PROGS += bn_mod_exp 9PROGS += bn_mod_sqrt 10PROGS += bn_mont 11PROGS += bn_mul_div 12PROGS += bn_primes 13PROGS += bn_rand_interval 14PROGS += bn_shift 15PROGS += bn_test 16PROGS += bn_to_string 17PROGS += bn_unit 18PROGS += bn_word 19 20STATIC_LINK += bn_gcd 21STATIC_LINK += bn_isqrt 22STATIC_LINK += bn_mod_exp 23STATIC_LINK += bn_rand_interval 24STATIC_LINK += bn_test 25 26LDADD = -lcrypto 27DPADD = ${LIBCRYPTO} 28WARNINGS = Yes 29CFLAGS += -Wall -Wundef -Werror 30CFLAGS += -I${.CURDIR}/../../../../lib/libcrypto/bn/ 31CFLAGS += -I${.CURDIR}/../../../../lib/libcrypto/bn/arch/${MACHINE_CPU}/ 32 33# Use default targets from bsd.regress.mk unless overridden below 34REGRESS_TARGETS = ${PROGS:S/^/run-regress-/} 35 36# Verify that the bn_isqrt -C output isn't changed by accident. 37isqrt-print-tables: bn_isqrt 38 @./bn_isqrt -C 39.PHONY: isqrt-print-tables 40 41bn_isqrt_gen_tables.txt: bn_isqrt 42 ${.MAKE} -C ${.CURDIR} isqrt-print-tables > $@.tmp 43 mv -f $@.tmp $@ 44 45REGRESS_TARGETS += run-bn_isqrt_check_tables 46.PHONY: run-bn_isqrt_check_tables 47run-bn_isqrt_check_tables: bn_isqrt_gen_tables.txt 48 diff -pu ${.CURDIR}/bn_isqrt_tables.txt bn_isqrt_gen_tables.txt 49 50CLEANFILES += bn_isqrt_gen_tables.txt.tmp bn_isqrt_gen_tables.txt 51 52# bn_test is special, so override bsd.regress.mk's run-regress-bn_test 53run-regress-bn_test bn_test.out: bn_test 54 ./bn_test -out bn_test.out 55 56.if exists(/usr/local/bin/bc-gh) 57BC ?= bc-gh 58.endif 59BC ?= bc 60 61REGRESS_TARGETS += run-bc 62.PHONY: run-bc 63run-bc: bn_test.out 64 ${BC} < $> | tee bc.out | grep -v '^0$$' 65 ! grep -v '^test ' <bc.out | grep -v '^0$$' 66 67CLEANFILES += bn_test.out bc.out 68 69benchmark: bn_mul_div bn_shift 70 ./bn_mul_div --benchmark 71 ./bn_shift --benchmark 72.PHONY: benchmark 73 74.for p in ${STATIC_LINK} 75LDADD_$p += ${CRYPTO_INT} 76.endfor 77 78SRCS_bn_primes = bn_primes.c bn_small_primes.c 79 80.PATH: ${.CURDIR}/../../../../lib/libcrypto/bn 81 82.include <bsd.regress.mk> 83