1 #
2 # This file is the makefile for building mailbox.
3 #
4 include $(PDK_INSTALL_PATH)/ti/build/Rules.make
6 MODULE_NAME = freertos
8 SRCDIR = freertos/dpl/$(ISA)
9 SRCDIR += freertos/portable/TI_CGT/$(ISA)
10 SRCDIR += ${FREERTOS_KERNEL_INSTALL_PATH}/FreeRTOS-Kernel/ \
11 ${FREERTOS_KERNEL_INSTALL_PATH}/FreeRTOS-Kernel/portable/MemMang \
12 ${FREERTOS_LABS_INSTALL_PATH}/FreeRTOS-Plus-POSIX/FreeRTOS-Plus-POSIX/source
14 INCDIR = freertos/config/$(SOC)/$(ISA) dpl
15 INCDIR += ${FREERTOS_KERNEL_INSTALL_PATH}/FreeRTOS-Kernel/include \
16 freertos/portable/TI_CGT/$(ISA) \
17 ${FREERTOS_LABS_INSTALL_PATH}/FreeRTOS-Plus-POSIX/include \
18 ${FREERTOS_LABS_INSTALL_PATH}/FreeRTOS-Plus-POSIX/include/private \
19 ${FREERTOS_LABS_INSTALL_PATH}/FreeRTOS-Plus-POSIX/FreeRTOS-Plus-POSIX/include \
20 ${FREERTOS_LABS_INSTALL_PATH}/FreeRTOS-Plus-POSIX/FreeRTOS-Plus-POSIX/include/portable
22 # List all the external components/interfaces, whose interface header files
23 # need to be included for this component
24 INCLUDE_EXTERNAL_INTERFACES = pdk
26 # Common source files and CFLAGS across all platforms and cores
27 SRCS_COMMON += \
28 tasks.c \
29 timers.c \
30 queue.c \
31 list.c \
32 heap_4.c \
33 FreeRTOS_POSIX_clock.c \
34 FreeRTOS_POSIX_mqueue.c \
35 FreeRTOS_POSIX_pthread_barrier.c \
36 FreeRTOS_POSIX_pthread_cond.c \
37 FreeRTOS_POSIX_pthread_mutex.c \
38 FreeRTOS_POSIX_pthread.c \
39 FreeRTOS_POSIX_sched.c \
40 FreeRTOS_POSIX_semaphore.c \
41 FreeRTOS_POSIX_timer.c \
42 FreeRTOS_POSIX_unistd.c \
43 FreeRTOS_POSIX_utils.c \
44 port.c
46 #ISA specific C files
47 ifeq ($(ISA),$(filter $(ISA), c66))
48 SRCS_COMMON += \
49 Hwi.c
50 endif
52 ifeq ($(ISA),$(filter $(ISA), r5f))
53 SRCS_COMMON += \
54 Hwi.c
55 endif
57 #ISA specific assembly files
58 ifeq ($(ISA),$(filter $(ISA), c66))
59 SRCS_ASM_COMMON := \
60 Hwi_asm_switch.asm \
61 Hwi_disp_always.asm \
62 Hwi_intcIsrDispatch.asm \
63 TaskSupport_asm.asm
64 endif
66 ifeq ($(ISA),$(filter $(ISA), r5f))
67 SRCS_ASM_COMMON := \
68 portASM.asm \
69 Hwi_handlers_asm.asm
71 endif
73 CFLAGS_LOCAL_COMMON = $(PDK_CFLAGS)
75 PACKAGE_SRCS_COMMON = freertos.mak freertos_component.mk makefile
76 PACKAGE_SRCS_COMMON += freertos
77 PACKAGE_SRCS_COMMON += test
79 # Core/SoC/platform specific source files and CFLAGS
80 # Example:
81 # SRCS_<core/SoC/platform-name> =
82 # CFLAGS_LOCAL_<core/SoC/platform-name> =
84 # Include common make files
85 ifeq ($(MAKERULEDIR), )
86 #Makerule path not defined, define this and assume relative path from ROOTDIR
87 MAKERULEDIR := $(ROOTDIR)/ti/build/makerules
88 export MAKERULEDIR
89 endif
90 include $(MAKERULEDIR)/common.mk
92 # OBJs and libraries are built by using rule defined in rules_<target>.mk
93 # and need not be explicitly specified here
95 # Nothing beyond this point