# 
# 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 = \
	pkix_tools.h \
	pkix_error.h \
	pkix_logger.h \
	pkix_list.h \
	$(NULL)

MODULE = nss

CSRCS = \
	pkix_tools.c \
	pkix_error.c \
	pkix_logger.c \
	pkix_list.c \
	pkix_errpaths.c \
	$(NULL)

LIBRARY_NAME = pkixutil
SHARED_LIBRARY = $(NULL)
