]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - processor-sdk/pdk.git/blob - packages/ti/kernel/freertos.mak
freertos: support for j721e,j7200,am65xx SoCs
[processor-sdk/pdk.git] / packages / ti / kernel / freertos.mak
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
13         
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