1*05427f46SKyle Evans 2*05427f46SKyle Evans# STOP - This is not a general purpose library and is only for use by pkg(7) 3*05427f46SKyle Evans# to align with the implementation in pkg(8). 4*05427f46SKyle EvansLIB= pkgecc 5*05427f46SKyle EvansINTERNALLIB= 6*05427f46SKyle Evans 7*05427f46SKyle Evans.PATH: $(SRCTOP)/crypto/libecc 8*05427f46SKyle EvansSRCS+= pkg_libecc_rand.c 9*05427f46SKyle Evans 10*05427f46SKyle Evans# curves_mod_src 11*05427f46SKyle Evans.PATH: $(SRCTOP)/crypto/libecc/src/curves 12*05427f46SKyle EvansSRCS+= aff_pt.c \ 13*05427f46SKyle Evans aff_pt_montgomery.c \ 14*05427f46SKyle Evans ec_edwards.c \ 15*05427f46SKyle Evans ec_montgomery.c \ 16*05427f46SKyle Evans ec_params.c \ 17*05427f46SKyle Evans ec_shortw.c \ 18*05427f46SKyle Evans aff_pt_edwards.c \ 19*05427f46SKyle Evans curves.c \ 20*05427f46SKyle Evans prj_pt.c 21*05427f46SKyle Evans 22*05427f46SKyle Evans# utils_ec_src 23*05427f46SKyle Evans.PATH: $(SRCTOP)/crypto/libecc/src/utils 24*05427f46SKyle EvansSRCS+= print_curves.c 25*05427f46SKyle Evans 26*05427f46SKyle Evans# fp_mod_src 27*05427f46SKyle Evans.PATH: $(SRCTOP)/crypto/libecc/src/fp 28*05427f46SKyle EvansSRCS+= fp_add.c \ 29*05427f46SKyle Evans fp.c \ 30*05427f46SKyle Evans fp_montgomery.c \ 31*05427f46SKyle Evans fp_mul.c \ 32*05427f46SKyle Evans fp_mul_redc1.c \ 33*05427f46SKyle Evans fp_pow.c \ 34*05427f46SKyle Evans fp_rand.c \ 35*05427f46SKyle Evans fp_sqrt.c 36*05427f46SKyle Evans 37*05427f46SKyle Evans# nn_mod_src 38*05427f46SKyle Evans.PATH: $(SRCTOP)/crypto/libecc/src/nn 39*05427f46SKyle EvansSRCS+= nn_add.c \ 40*05427f46SKyle Evans nn.c \ 41*05427f46SKyle Evans nn_div.c \ 42*05427f46SKyle Evans nn_logical.c \ 43*05427f46SKyle Evans nn_modinv.c \ 44*05427f46SKyle Evans nn_mod_pow.c \ 45*05427f46SKyle Evans nn_mul.c \ 46*05427f46SKyle Evans nn_mul_redc1.c \ 47*05427f46SKyle Evans nn_rand.c 48*05427f46SKyle Evans 49*05427f46SKyle Evans# utils_arith_src 50*05427f46SKyle EvansSRCS+= utils.c \ 51*05427f46SKyle Evans utils_rand.c \ 52*05427f46SKyle Evans print_buf.c \ 53*05427f46SKyle Evans print_fp.c \ 54*05427f46SKyle Evans print_nn.c 55*05427f46SKyle Evans 56*05427f46SKyle Evans## libsign bits 57*05427f46SKyle Evans# hash_mod_src 58*05427f46SKyle Evans.PATH: $(SRCTOP)/crypto/libecc/src/hash 59*05427f46SKyle EvansSRCS+= hash_algs.c \ 60*05427f46SKyle Evans sm3.c \ 61*05427f46SKyle Evans streebog.c \ 62*05427f46SKyle Evans ripemd160.c \ 63*05427f46SKyle Evans belt-hash.c \ 64*05427f46SKyle Evans hmac.c \ 65*05427f46SKyle Evans bash224.c \ 66*05427f46SKyle Evans bash256.c \ 67*05427f46SKyle Evans bash384.c \ 68*05427f46SKyle Evans bash512.c \ 69*05427f46SKyle Evans bash.c \ 70*05427f46SKyle Evans sha224.c \ 71*05427f46SKyle Evans sha256.c \ 72*05427f46SKyle Evans sha3-224.c \ 73*05427f46SKyle Evans sha3-256.c \ 74*05427f46SKyle Evans sha3-384.c \ 75*05427f46SKyle Evans sha3-512.c \ 76*05427f46SKyle Evans sha384.c \ 77*05427f46SKyle Evans sha3.c \ 78*05427f46SKyle Evans sha512-224.c \ 79*05427f46SKyle Evans sha512-256.c \ 80*05427f46SKyle Evans sha512.c \ 81*05427f46SKyle Evans sha512_core.c \ 82*05427f46SKyle Evans shake256.c \ 83*05427f46SKyle Evans shake.c 84*05427f46SKyle Evans 85*05427f46SKyle Evans# sig_mod_src 86*05427f46SKyle Evans.PATH: $(SRCTOP)/crypto/libecc/src/sig 87*05427f46SKyle EvansSRCS+= decdsa.c \ 88*05427f46SKyle Evans ecdsa.c \ 89*05427f46SKyle Evans ecfsdsa.c \ 90*05427f46SKyle Evans ecgdsa.c \ 91*05427f46SKyle Evans eckcdsa.c \ 92*05427f46SKyle Evans ecosdsa.c \ 93*05427f46SKyle Evans ecrdsa.c \ 94*05427f46SKyle Evans ecsdsa.c \ 95*05427f46SKyle Evans eddsa.c \ 96*05427f46SKyle Evans fuzzing_ecdsa.c \ 97*05427f46SKyle Evans fuzzing_ecgdsa.c \ 98*05427f46SKyle Evans fuzzing_ecrdsa.c \ 99*05427f46SKyle Evans ecdsa_common.c \ 100*05427f46SKyle Evans ecsdsa_common.c \ 101*05427f46SKyle Evans sig_algs.c \ 102*05427f46SKyle Evans sm2.c \ 103*05427f46SKyle Evans bign_common.c \ 104*05427f46SKyle Evans bign.c \ 105*05427f46SKyle Evans dbign.c \ 106*05427f46SKyle Evans bip0340.c 107*05427f46SKyle Evans 108*05427f46SKyle Evans# key_mod_src 109*05427f46SKyle EvansSRCS+= ec_key.c 110*05427f46SKyle Evans 111*05427f46SKyle Evans# utils_sign_src 112*05427f46SKyle Evans.PATH: $(SRCTOP)/crypto/libecc/src/sig 113*05427f46SKyle EvansSRCS+= print_keys.c 114*05427f46SKyle Evans 115*05427f46SKyle Evans# ecdh_mod_src 116*05427f46SKyle Evans.PATH: $(SRCTOP)/crypto/libecc/src/ecdh 117*05427f46SKyle EvansSRCS+= ecccdh.c \ 118*05427f46SKyle Evans x25519_448.c 119*05427f46SKyle Evans 120*05427f46SKyle Evans# external_deps 121*05427f46SKyle Evans.PATH: $(SRCTOP)/crypto/libecc/src/external_deps 122*05427f46SKyle EvansSRCS+= print.c 123*05427f46SKyle Evans 124*05427f46SKyle EvansCONFLICTS= -Dsha256_init=_libecc_sha256_init \ 125*05427f46SKyle Evans -Dsha256_update=_libecc_sha256_update \ 126*05427f46SKyle Evans -Dsha256_final=_libecc_sha256_final \ 127*05427f46SKyle Evans -Dsha512_224_init=_libecc_sha512_224_init \ 128*05427f46SKyle Evans -Dsha512_256_init=_libecc_sha512_256_init 129*05427f46SKyle Evans 130*05427f46SKyle EvansCFLAGS= -I$(SRCTOP)/crypto/libecc/include \ 131*05427f46SKyle Evans -ffreestanding \ 132*05427f46SKyle Evans -fno-builtin \ 133*05427f46SKyle Evans -DUSE_WARN_UNUSED_RET \ 134*05427f46SKyle Evans -DWITH_STDLIB \ 135*05427f46SKyle Evans $(CONFLICTS) 136*05427f46SKyle Evans 137*05427f46SKyle Evans.include <bsd.lib.mk> 138