1# Copyright 2017 The Fuchsia Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5LOCAL_DIR := $(GET_LOCAL_DIR)
6
7MODULE := $(LOCAL_DIR)
8
9ULIB_DIR := third_party/ulib/uboringssl
10SRC_DIR := $(ULIB_DIR)/crypto
11
12KERNEL_INCLUDES += $(ULIB_DIR)/include
13
14# Kernel doesn't support the FPU operations needed for hardware acceleration.  It also doesn't have
15# pthreads, so synchronization MUST be handled explicitly (e.g. see kernel/lib/crypto/prng.cpp).
16MODULE_COMPILEFLAGS += \
17    -DOPENSSL_NO_ASM \
18    -DOPENSSL_NO_THREADS_CORRUPT_MEMORY_AND_LEAK_SECRETS_IF_THREADED \
19
20MODULE_SRCS := \
21    $(SRC_DIR)/chacha/chacha.c \
22    $(SRC_DIR)/fipsmodule/sha/sha256.c \
23
24include make/module.mk
25