merging the embedded/main into nearby SDK

This commit is contained in:
Shweta
2023-06-05 23:19:07 +00:00
parent b7f7e7aeb9
commit ed2552b88b
36 changed files with 4593 additions and 206 deletions
+37 -3
View File
@@ -1,10 +1,15 @@
# Use MBEDTLS for test SSL implementation instead of OPENSSL
# Use MBEDTLS for test SSL i mplementation instead of OPENSSL
# Compiles in mbedtls implementation of a number of functions in se.h
NEARBY_PLATFORM_USE_MBEDTLS ?= 0
# Use the hardware SE to generate the secp256r1 secret. Alternatively, generate
# the secret in software.
NEARBY_PLATFORM_HAS_SE ?= 1
# Use Micro-ecc for test nearby_platform_GetSecp160r1PublicKey implementation
# instead of OPENSSL.
NEARBY_PLATFORM_USE_MICROECC ?= 1
CFLAGS_EXTRA ?=
CFLAGS += -g \
-MD \
@@ -17,9 +22,7 @@ CFLAGS += -g \
-DNEARBY_ALL_MODULE_DEBUG \
-DNEARBY_UNIT_TEST_ENABLED \
$(CFLAGS_EXTRA)
NEARBY_TRACE_LEVEL = VERBOSE
ifeq ($(OPTIMIZED_BUILD),1)
CFLAGS += -O2
else
@@ -30,10 +33,37 @@ ifeq ($(NEARBY_PLATFORM_USE_MBEDTLS),1)
CFLAGS += -DNEARBY_PLATFORM_USE_MBEDTLS
endif
ifeq ($(NEARBY_PLATFORM_USE_MICROECC),1)
CFLAGS += -DNEARBY_PLATFORM_USE_MICROECC
CFLAGS += -DuECC_ENABLE_VLI_API=1
CFLAGS += -DuECC_VLI_NATIVE_LITTLE_ENDIAN=1
CFLAGS += -DuECC_SUPPORTS_secp160r1=1
endif
ifeq ($(NEARBY_PLATFORM_HAS_SE),1)
CFLAGS += -DNEARBY_PLATFORM_HAS_SE
endif
ifdef NEARBY_FP_ENABLE_BATTERY_NOTIFICATION
CFLAGS += -DNEARBY_FP_ENABLE_BATTERY_NOTIFICATION=$(NEARBY_FP_ENABLE_BATTERY_NOTIFICATION)
endif
ifdef NEARBY_FP_ENABLE_ADDITIONAL_DATA
CFLAGS += -DNEARBY_FP_ENABLE_ADDITIONAL_DATA=$(NEARBY_FP_ENABLE_ADDITIONAL_DATA)
endif
ifdef NEARBY_FP_ENABLE_SPOT
CFLAGS += -DNEARBY_FP_ENABLE_SPOT=$(NEARBY_FP_ENABLE_SPOT)
endif
ifdef NEARBY_FP_MESSAGE_STREAM
CFLAGS += -DNEARBY_FP_MESSAGE_STREAM=$(NEARBY_FP_MESSAGE_STREAM)
endif
ifdef NEARBY_FP_RETROACTIVE_PAIRING
CFLAGS += -DNEARBY_FP_RETROACTIVE_PAIRING=$(NEARBY_FP_RETROACTIVE_PAIRING)
endif
TEST_INCLUDES = \
-I$(GTEST_DIR)/include -I$(GTEST_DIR) \
-I$(GMOCK_DIR)/include -I$(GMOCK_DIR) \
@@ -44,4 +74,8 @@ TEST_INCLUDES = \
ifeq ($(NEARBY_PLATFORM_USE_MBEDTLS),1)
TEST_INCLUDES += -I$(MBEDTLS_DIR)/include
endif
ifeq ($(NEARBY_PLATFORM_USE_MICROECC),1)
TEST_INCLUDES += -I$(MICROECC_DIR)
endif
+28
View File
@@ -9,6 +9,7 @@ TEST_SRCS := $(filter-out $(TEST_SRCS_EXCLUDE), $(TEST_SRCS))
TEST_OBJS += $(patsubst %.cc,$(OUT_DIR)/%.o,$(TEST_SRCS))
GLINUX_TARGET_SRCS := $(wildcard client/tests/glinux/*.cc)
MBEDTLS_TARGET_SRCS := $(wildcard common/source/mbedtls/*.c)
GTEST_SRCS = $(GTEST_DIR)/src/gtest-all.cc $(GMOCK_DIR)/src/gmock-all.cc
EMPTY_TARGET_SRCS := $(wildcard client/tests/empty_target/*.c)
@@ -26,6 +27,9 @@ ALL_TEST_OBJS += $(EMPTY_TARGET_OBJS)
ifeq ($(NEARBY_PLATFORM_USE_MBEDTLS),1)
ALL_TEST_OBJS += $(MBEDTLS_TARGET_OBJS)
endif
ifeq ($(NEARBY_PLATFORM_USE_MICROECC), 1)
ALL_TEST_OBJS += $(MICROECC_TARGET_OBJS)
endif
# The glinux target layer
$(GLINUX_TARGET_OBJS) : $(OUT_DIR)/%.o: %.cc
@@ -34,6 +38,7 @@ $(GLINUX_TARGET_OBJS) : $(OUT_DIR)/%.o: %.cc
ifeq ($(NEARBY_PLATFORM_USE_MBEDTLS),1)
# Mbed TLS interface files
$(MBEDTLS_TARGET_OBJS) : $(OUT_DIR)/%.o: %.c
@echo "mbedtls"
$(call compile_c,$(TEST_INCLUDES) -I. -std=c99 -c $(CFLAGS))
endif
@@ -60,11 +65,16 @@ TARGET_OBJS ?= $(GLINUX_TARGET_OBJS)
ifeq ($(NEARBY_PLATFORM_USE_MBEDTLS),1)
TARGET_OBJS += $(MBEDTLS_TARGET_OBJS)
endif
ifeq ($(NEARBY_PLATFORM_USE_MICROECC), 1)
TARGET_OBJS += $(MICROECC_TARGET_OBJS)
endif
TARGET_OS_SRCS := $(wildcard client/tests/gLinux/*.cc)
TARGET_MBEDTLS_SRCS += $(wildcard common/source/mbedtls/*.c)
TARGET_MICROECC_SRCS += $(wildcard common/source/micro-ecc/*.c)
TARGET_OS_OBJS ?= $(patsubst %.cc,$(OUT_DIR)/%.o,$(TARGET_OS_SRCS))
TARGET_MBEDTLS_OBJS ?= $(patsubst %.c,$(OUT_DIR)/%.o,$(TARGET_MBEDTLS_SRCS))
TARGET_MICROECC_OBJS ?= $(patsubst %.c,$(OUT_DIR)/%.o,$(TARGET_MICROECC_SRCS))
$(TARGET_OS_OBJS) : $(OUT_DIR)/%.o: %.cc
$(call compile_c,$(TEST_INCLUDES) -I. -std=c++14 $(CFLAGS))
$(TARGET_MBED_OBJS) : $(OUT_DIR)/%.o: %.c
@@ -75,6 +85,9 @@ ALL_TEST_OBJS += $(TARGET_OS_OBJS)
ifeq ($(NEARBY_PLATFORM_USE_MBEDTLS),1)
ALL_TEST_OBJS += $(TARGET_MBEDTLS_OBJS)
endif
ifeq ($(NEARBY_PLATFORM_USE_MICROECC), 1)
ALL_TEST_OBJS += $(TARGET_MICROECC_OBJS)
endif
ALL_OBJS += $(ALL_TEST_OBJS)
# Must include the .d files for test sources here since gLinux.rules is included
@@ -85,11 +98,20 @@ EMPTY_TARGET_TEST = $(OUT_DIR)/client/tests/empty_target_test
$(EMPTY_TARGET_TEST) : TARGET_OBJS = $(EMPTY_TARGET_OBJS)
$(EMPTY_TARGET_TEST) : $(EMPTY_TARGET_OBJS)
TEST_BINARIES = $(patsubst %.cc,$(OUT_DIR)/%,$(TEST_SRCS))
TEST_DEPS = $(NAME) $(GTEST_OBJS) $(GLINUX_TARGET_OBJS)
ifeq ($(NEARBY_PLATFORM_USE_MBEDTLS),1)
TEST_DEPS += $(MBEDTLS_TARGET_OBJS)
$(TEST_BINARIES) : $(NAME) $(GTEST_OBJS) $(GLINUX_TARGET_OBJS) $(MBEDTLS_TARGET_OBJS)
else
$(TEST_BINARIES) : $(NAME) $(GTEST_OBJS) $(GLINUX_TARGET_OBJS)
endif
ifeq ($(NEARBY_PLATFORM_USE_MICROECC), 1)
TEST_DEPS += $(MICROECC_TARGET_OBJS)
endif
$(TEST_BINARIES) : $(TEST_DEPS)
$(TEST_BINARIES) : $(TARGET_OS_OBJS)
LIBS ?= -L $(OUT_DIR) -lnearby -lcrypto -lssl -lpthread -lstdc++
@@ -102,7 +124,13 @@ $(TEST_BINARIES) : $(MBEDTLS_LIBS)
LIBS += -L $(MBEDTLS_DIR)/library -lmbedtls -lmbedcrypto
endif
ifeq ($(NEARBY_PLATFORM_USE_MICROECC), 1)
LIBS += -L $(MICROECC_OUT_DIR) -lmicro-ecc
$(TEST_BINARIES) : $(MICROECC_OUT_DIR)/libmicro-ecc.a
endif
$(TEST_BINARIES) : % : %.o
@echo "Compiling test binaries"
mkdir -p $(dir $@)
$(CC) -o $@ $< \
$(CFLAGS) \