DXR is a code search and navigation tool aimed at making sense of large projects. It supports full-text and regex searches as well as structural queries.

Mercurial (c68fe15a81fc)

VCS Links

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193
#
# 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 = \
	cmac.h \
	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 \
	cmac.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 \
	jpake.c \
	$(MPI_SRCS) \
	$(MPCPU_SRCS) \
	$(ECL_SRCS) \
	$(VERIFIED_SRCS) \
	$(STUBS_SRCS) \
	$(LOWHASH_SRCS) \
	$(EXTRA_SRCS) \
	$(NULL)

ALL_CSRCS := $(CSRCS)

ALL_HDRS =  \
	cmac.h \
	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