# 
# 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/.

CORE_DEPTH = ../..

PRIVATE_EXPORTS = \
	ckhelper.h \
	devm.h     \
	devtm.h    \
	devt.h     \
	dev.h      \
	nssdevt.h  \
	nssdev.h   \
	$(NULL)

MODULE = nss

CSRCS =		        \
	devslot.c       \
	devtoken.c      \
	devutil.c       \
	ckhelper.c      \
	$(NULL)

REQUIRES = nspr

LIBRARY_NAME = nssdev
SHARED_LIBRARY = $(NULL)

# This part of the code, including all sub-dirs, can be optimized for size
export ALLOW_OPT_CODE_SIZE = 1
