| # |
| # This Source Code Form is subject to the terms of the Mozilla Public |
| # License, v. 2.0. If a copy of the MPL was not distributed with this |
| # file, You can obtain one at http://mozilla.org/MPL/2.0/. |
| |
| # NOTE: any ifdefs in this file must be defined on the gmake command line |
| # (if anywhere). They cannot come from Makefile or config.mk |
| |
| CORE_DEPTH = ../.. |
| |
| MODULE = nss |
| |
| # copied from Linux.mk. We have a chicken and egg issue here. We need to set |
| # Library name before we call the platform code in coreconf, but we need to |
| # Pick up the automatic setting of FREEBL_LOWHASH before we can set the |
| # Library name... so for now we mimic the code in Linux.mk to get the |
| # automatic setting early... |
| # |
| # On Linux 2.6 or later, build libfreebl3.so with no NSPR and libnssutil3.so |
| # dependencies by default. Set FREEBL_NO_DEPEND to 0 in the environment to |
| # override this. |
| # |
| # |
| include $(CORE_DEPTH)/coreconf/arch.mk |
| ifeq ($(OS_ARCH),Linux) |
| ifneq ($(OS_TARGET),Android) |
| ifeq (2.6,$(firstword $(sort 2.6 $(OS_RELEASE)))) |
| ifndef FREEBL_NO_DEPEND |
| FREEBL_NO_DEPEND = 1 |
| FREEBL_LOWHASH = 1 |
| endif |
| endif |
| endif |
| endif |
| |
| |
| LIBRARY_NAME = freebl |
| LIBRARY_VERSION = 3 |
| |
| ifdef FREEBL_CHILD_BUILD |
| ifdef USE_ABI32_INT32 |
| LIBRARY_NAME = freebl_32int |
| endif |
| ifdef USE_ABI32_INT64 |
| LIBRARY_NAME = freebl_32int64 |
| endif |
| ifdef USE_ABI32_FPU |
| LIBRARY_NAME = freebl_32fpu |
| endif |
| ifdef USE_ABI64_INT |
| LIBRARY_NAME = freebl_64int |
| endif |
| ifdef USE_ABI64_FPU |
| LIBRARY_NAME = freebl_64fpu |
| endif |
| ifdef FREEBL_LOWHASH |
| LIBRARY_NAME = freeblpriv |
| endif |
| ifdef USE_STUB_BUILD |
| # for the stub build, reset name to the default (from freeblpriv) |
| LIBRARY_NAME = freebl |
| endif |
| endif |
| |
| # if the library name contains _, we prefix the version with _ |
| ifneq (,$(findstring _,$(LIBRARY_NAME))) |
| LIBRARY_VERSION := _$(LIBRARY_VERSION) |
| endif |
| |
| MAPFILE = $(OBJDIR)/$(LIBRARY_NAME).def |
| |
| SOFTOKEN_LIBRARY_VERSION = 3 |
| |
| DEFINES += -DSHLIB_SUFFIX=\"$(DLL_SUFFIX)\" -DSHLIB_PREFIX=\"$(DLL_PREFIX)\" \ |
| -DSHLIB_VERSION=\"$(LIBRARY_VERSION)\" \ |
| -DSOFTOKEN_SHLIB_VERSION=\"$(SOFTOKEN_LIBRARY_VERSION)\" |
| |
| REQUIRES = |
| |
| EXPORTS = \ |
| blapit.h \ |
| shsign.h \ |
| ecl-exp.h \ |
| $(LOWHASH_EXPORTS) \ |
| $(NULL) |
| |
| PRIVATE_EXPORTS = \ |
| alghmac.h \ |
| blake2b.h \ |
| blapi.h \ |
| chacha20poly1305.h \ |
| hmacct.h \ |
| secmpi.h \ |
| secrng.h \ |
| ec.h \ |
| ecl.h \ |
| ecl-curve.h \ |
| eclt.h \ |
| $(NULL) |
| |
| MPI_HDRS = mpi-config.h mpi.h mpi-priv.h mplogic.h mpprime.h logtab.h mp_gf2m.h |
| MPI_SRCS = mpprime.c mpmontg.c mplogic.c mpi.c mp_gf2m.c |
| |
| |
| ECL_HDRS = ecl-exp.h ecl.h ecp.h ecl-priv.h |
| ECL_SRCS = ecl.c ecl_mult.c ecl_gf.c \ |
| ecp_aff.c ecp_jac.c ecp_mont.c \ |
| ec_naf.c ecp_jm.c ecp_256.c ecp_384.c ecp_521.c \ |
| ecp_256_32.c ecp_25519.c |
| SHA_SRCS = sha_fast.c |
| MPCPU_SRCS = mpcpucache.c |
| VERIFIED_SRCS = $(NULL) |
| |
| CSRCS = \ |
| freeblver.c \ |
| ldvector.c \ |
| sysrand.c \ |
| $(SHA_SRCS) \ |
| md2.c \ |
| md5.c \ |
| sha512.c \ |
| alghmac.c \ |
| rawhash.c \ |
| alg2268.c \ |
| arcfour.c \ |
| arcfive.c \ |
| crypto_primitives.c \ |
| blake2b.c \ |
| desblapi.c \ |
| des.c \ |
| drbg.c \ |
| chacha20poly1305.c \ |
| cts.c \ |
| ctr.c \ |
| blinit.c \ |
| fipsfreebl.c \ |
| gcm.c \ |
| hmacct.c \ |
| rijndael.c \ |
| aeskeywrap.c \ |
| camellia.c \ |
| dh.c \ |
| ec.c \ |
| ecdecode.c \ |
| pqg.c \ |
| dsa.c \ |
| rsa.c \ |
| rsapkcs.c \ |
| shvfy.c \ |
| tlsprfalg.c \ |
| seed.c \ |
| jpake.c \ |
| $(MPI_SRCS) \ |
| $(MPCPU_SRCS) \ |
| $(ECL_SRCS) \ |
| $(VERIFIED_SRCS) \ |
| $(STUBS_SRCS) \ |
| $(LOWHASH_SRCS) \ |
| $(EXTRA_SRCS) \ |
| $(NULL) |
| |
| ALL_CSRCS := $(CSRCS) |
| |
| ALL_HDRS = \ |
| alghmac.h \ |
| blake2b.h \ |
| blapi.h \ |
| blapit.h \ |
| des.h \ |
| ec.h \ |
| loader.h \ |
| rijndael.h \ |
| camellia.h \ |
| secmpi.h \ |
| sha_fast.h \ |
| sha256.h \ |
| shsign.h \ |
| vis_proto.h \ |
| seed.h \ |
| $(NULL) |
| |
| |
| ifdef AES_GEN_VAL |
| DEFINES += -DRIJNDAEL_GENERATE_VALUES |
| else |
| ifdef AES_GEN_VAL_M |
| DEFINES += -DRIJNDAEL_GENERATE_VALUES_MACRO |
| else |
| DEFINES += -DRIJNDAEL_INCLUDE_TABLES |
| endif |
| endif |