mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2025-10-17 02:07:48 -04:00
* Implement Kernel Unit Test Framework with CMock * Add Readme.md to unit tests * Add Posix build checker to git actions * Add Ruby requirement * Fix file header checks * Fix header checks * Add color output to test runs
51 lines
1.3 KiB
Makefile
51 lines
1.3 KiB
Makefile
# Various directory locations
|
|
|
|
UT_ROOT_DIR_REL :=.
|
|
UT_ROOT_DIR := $(abspath $(UT_ROOT_DIR_REL))
|
|
|
|
BUILD_DIR := $(UT_ROOT_DIR)/build
|
|
DOC_DIR := $(BUILD_DIR)/doc
|
|
COVERAGE_DIR := $(BUILD_DIR)/coverage
|
|
BIN_DIR := $(BUILD_DIR)/bin
|
|
GENERATED_DIR := $(BUILD_DIR)/generated
|
|
LIB_DIR := $(BUILD_DIR)/lib
|
|
|
|
|
|
FREERTOS_DIR_REL := ../../../FreeRTOS
|
|
FREERTOS_DIR := $(abspath $(FREERTOS_DIR_REL))
|
|
|
|
KERNEL_DIR_REL := ../../../FreeRTOS/Source
|
|
KERNEL_DIR := $(abspath $(KERNEL_DIR_REL))
|
|
|
|
CMOCK_DIR := $(UT_ROOT_DIR)/CMock
|
|
CMOCK_SRC_DIR := $(CMOCK_DIR)/src
|
|
UNITY_DIR := $(CMOCK_DIR)/vendor/unity
|
|
UNITY_SRC_DIR := $(UNITY_DIR)/src
|
|
UNITY_INC_DIR := $(UNITY_DIR)/src
|
|
UNITY_BIN_DIR := $(UNITY_DIR)/auto
|
|
|
|
CMOCK_EXEC_DIR := $(CMOCK_DIR)/lib
|
|
|
|
# Include directory location
|
|
INCLUDE_DIR := -I$(KERNEL_DIR)/include -I. -I$(UT_ROOT_DIR)/config
|
|
INCLUDE_DIR += -I$(UNITY_INC_DIR)
|
|
INCLUDE_DIR += -I$(CMOCK_SRC_DIR)
|
|
|
|
CPPFLAGS :=
|
|
CFLAGS := $(INCLUDE_DIR) -O0 -ggdb -pthread --std=c99
|
|
LDFLAGS := -L$(LIB_DIR) -lunity -lcmock -Wl,-rpath,$(LIB_DIR) -pthread -lgcov
|
|
|
|
export BUILD_DIR
|
|
export DOC_DIR
|
|
export GENERATED_DIR
|
|
export COVERAGE_DIR
|
|
export BIN_DIR
|
|
export UNITS
|
|
export CFLAGS
|
|
export LDFLAGS
|
|
export CPPFLAGS
|
|
export CMOCK_EXEC_DIR
|
|
export KERNEL_DIR
|
|
export UNITY_BIN_DIR
|
|
export LIB_DIR
|
|
|