manifest.mn (4176B)
1 # 2 # This Source Code Form is subject to the terms of the Mozilla Public 3 # License, v. 2.0. If a copy of the MPL was not distributed with this 4 # file, You can obtain one at http://mozilla.org/MPL/2.0/. 5 6 # NOTE: any ifdefs in this file must be defined on the gmake command line 7 # (if anywhere). They cannot come from Makefile or config.mk 8 9 CORE_DEPTH = ../.. 10 11 MODULE = nss 12 13 # copied from Linux.mk. We have a chicken and egg issue here. We need to set 14 # Library name before we call the platform code in coreconf, but we need to 15 # Pick up the automatic setting of FREEBL_LOWHASH before we can set the 16 # Library name... so for now we mimic the code in Linux.mk to get the 17 # automatic setting early... 18 # 19 # On Linux 2.6 or later, build libfreebl3.so with no NSPR and libnssutil3.so 20 # dependencies by default. Set FREEBL_NO_DEPEND to 0 in the environment to 21 # override this. 22 # 23 # 24 include $(CORE_DEPTH)/coreconf/arch.mk 25 ifeq ($(OS_ARCH),Linux) 26 ifneq ($(OS_TARGET),Android) 27 ifeq (2.6,$(firstword $(sort 2.6 $(OS_RELEASE)))) 28 ifndef FREEBL_NO_DEPEND 29 FREEBL_NO_DEPEND = 1 30 FREEBL_LOWHASH = 1 31 endif 32 endif 33 endif 34 endif 35 36 37 LIBRARY_NAME = freebl 38 LIBRARY_VERSION = 3 39 40 ifdef FREEBL_CHILD_BUILD 41 ifdef USE_ABI32_INT32 42 LIBRARY_NAME = freebl_32int 43 endif 44 ifdef USE_ABI32_INT64 45 LIBRARY_NAME = freebl_32int64 46 endif 47 ifdef USE_ABI32_FPU 48 LIBRARY_NAME = freebl_32fpu 49 endif 50 ifdef USE_ABI64_INT 51 LIBRARY_NAME = freebl_64int 52 endif 53 ifdef USE_ABI64_FPU 54 LIBRARY_NAME = freebl_64fpu 55 endif 56 ifdef FREEBL_LOWHASH 57 LIBRARY_NAME = freeblpriv 58 endif 59 ifdef USE_STUB_BUILD 60 # for the stub build, reset name to the default (from freeblpriv) 61 LIBRARY_NAME = freebl 62 endif 63 endif 64 65 # if the library name contains _, we prefix the version with _ 66 ifneq (,$(findstring _,$(LIBRARY_NAME))) 67 LIBRARY_VERSION := _$(LIBRARY_VERSION) 68 endif 69 70 MAPFILE = $(OBJDIR)/$(LIBRARY_NAME).def 71 72 SOFTOKEN_LIBRARY_VERSION = 3 73 74 DEFINES += -DSHLIB_SUFFIX=\"$(DLL_SUFFIX)\" -DSHLIB_PREFIX=\"$(DLL_PREFIX)\" \ 75 -DSHLIB_VERSION=\"$(LIBRARY_VERSION)\" \ 76 -DSOFTOKEN_SHLIB_VERSION=\"$(SOFTOKEN_LIBRARY_VERSION)\" 77 78 # We only support one parameter set, Kyber768, which has K=3. If we decide 79 # to support more parameters, we'll need to build separate objects from 80 # kyber-pqcrystals-ref.c using different values of KYBER_K. 81 DEFINES += -DKYBER_K=3 82 83 REQUIRES = 84 85 EXPORTS = \ 86 blapit.h \ 87 shsign.h \ 88 ecl-exp.h \ 89 $(LOWHASH_EXPORTS) \ 90 $(NULL) 91 92 PRIVATE_EXPORTS = \ 93 cmac.h \ 94 alghmac.h \ 95 blake2b.h \ 96 blapi.h \ 97 chacha20poly1305.h \ 98 hmacct.h \ 99 secmpi.h \ 100 secrng.h \ 101 ec.h \ 102 ecl.h \ 103 ecl-curve.h \ 104 eclt.h \ 105 $(NULL) 106 107 MPI_HDRS = mpi-config.h mpi.h mpi-priv.h mplogic.h mpprime.h logtab.h mp_gf2m.h 108 MPI_SRCS = mpprime.c mpmontg.c mplogic.c mpi.c mp_gf2m.c 109 110 111 ECL_HDRS = ecl-exp.h ecl.h ecl-priv.h 112 ECL_SRCS = ecp_25519.c ecp_secp256r1.c ecp_secp384r1.c ecp_secp521r1.c 113 SHA_SRCS = sha_fast.c 114 MPCPU_SRCS = mpcpucache.c 115 VERIFIED_SRCS = $(NULL) 116 117 CSRCS = \ 118 freeblver.c \ 119 ldvector.c \ 120 sysrand.c \ 121 $(SHA_SRCS) \ 122 md2.c \ 123 md5.c \ 124 sha512.c \ 125 sha3.c \ 126 shake.c \ 127 cmac.c \ 128 alghmac.c \ 129 rawhash.c \ 130 arcfour.c \ 131 arcfive.c \ 132 crypto_primitives.c \ 133 blake2b.c \ 134 desblapi.c \ 135 des.c \ 136 drbg.c \ 137 chacha20poly1305.c \ 138 cts.c \ 139 ctr.c \ 140 blinit.c \ 141 fipsfreebl.c \ 142 gcm.c \ 143 hmacct.c \ 144 rijndael.c \ 145 aeskeywrap.c \ 146 camellia.c \ 147 dh.c \ 148 ec.c \ 149 ecdecode.c \ 150 pqg.c \ 151 dsa.c \ 152 rsa.c \ 153 rsa_blind.c \ 154 rsapkcs.c \ 155 shvfy.c \ 156 tlsprfalg.c \ 157 jpake.c \ 158 secmpi.c \ 159 kyber.c \ 160 ml_dsa.c \ 161 $(KYBER_PQCRYSTALS) \ 162 $(MPI_SRCS) \ 163 $(MPCPU_SRCS) \ 164 $(ECL_SRCS) \ 165 $(VERIFIED_SRCS) \ 166 $(STUBS_SRCS) \ 167 $(LOWHASH_SRCS) \ 168 $(EXTRA_SRCS) \ 169 $(NULL) 170 171 ifndef NSS_DISABLE_DEPRECATED_SEED 172 CSRCS += deprecated/seed.c 173 endif 174 175 ifndef NSS_DISABLE_DEPRECATED_RC2 176 CSRCS += deprecated/alg2268.c 177 endif 178 179 ALL_CSRCS := $(CSRCS) 180 181 ALL_HDRS = \ 182 cmac.h \ 183 alghmac.h \ 184 blake2b.h \ 185 blapi.h \ 186 blapit.h \ 187 des.h \ 188 ec.h \ 189 loader.h \ 190 rijndael.h \ 191 camellia.h \ 192 secmpi.h \ 193 sha_fast.h \ 194 sha256.h \ 195 shsign.h \ 196 vis_proto.h \ 197 seed.h \ 198 $(NULL) 199 200 201 ifdef AES_GEN_VAL 202 DEFINES += -DRIJNDAEL_GENERATE_VALUES 203 else 204 ifdef AES_GEN_VAL_M 205 DEFINES += -DRIJNDAEL_GENERATE_VALUES_MACRO 206 else 207 DEFINES += -DRIJNDAEL_INCLUDE_TABLES 208 endif 209 endif