cmake_minimum_required(VERSION 3.15)

# User is responsible to one mandatory option:
#   FREERTOS_PORT, if not specified and native port detected, uses the native compile.
#
# User is responsible for one library target:
#   freertos_config ,typcially an INTERFACE library
#
# DEPRECATED: FREERTOS_CONFIG_FILE_DIRECTORY - but still supported if no freertos_config defined for now.
#             May be removed at some point in the future.
# User can choose which heap implementation to use (either the implementations
# included with FreeRTOS [1..5] or a custom implementation ) by providing the
# option FREERTOS_HEAP. If the option is not set, the cmake will default to
# using heap_4.c.

# `freertos_config` target defines the path to FreeRTOSConfig.h and optionally other freertos based config files
if(NOT TARGET freertos_config )
    if (NOT DEFINED FREERTOS_CONFIG_FILE_DIRECTORY )

        message(FATAL_ERROR " freertos_config target not specified.  Please specify a cmake target that defines the include directory for FreeRTOSConfig.h:\n"
            "  add_library(freertos_config INTERFACE)\n"
            "  target_include_directories(freertos_config SYSTEM\n"
            "    INTERFACE\n"
            "      include) # The config file directory\n"
            "  target_compile_definitions(freertos_config\n"
            "    PUBLIC\n"
            "    projCOVERAGE_TEST=0)\n")
    else()
        message(WARNING " Using deprecated 'FREERTOS_CONFIG_FILE_DIRECTORY' - please update your project CMakeLists.txt file:\n"
            "  add_library(freertos_config INTERFACE)\n"
            "  target_include_directories(freertos_config SYSTEM\n"
            "    INTERFACE\n"
            "      include) # The config file directory\n"
            "  target_compile_definitions(freertos_config\n"
            "    PUBLIC\n"
            "    projCOVERAGE_TEST=0)\n")
    endif()
endif()

# Heap number or absolute path to custom heap implementation provided by user
set(FREERTOS_HEAP "4" CACHE STRING "FreeRTOS heap model number. 1 .. 5. Or absolute path to custom heap source file")

# FreeRTOS port option
if(NOT FREERTOS_PORT)
    message(WARNING " FREERTOS_PORT is not set. Please specify it from top-level CMake file (example):\n"
        "  set(FREERTOS_PORT GCC_ARM_CM4F CACHE STRING \"\")\n"
        " or from CMake command line option:\n"
        "  -DFREERTOS_PORT=GCC_ARM_CM4F\n"
        " \n"
        " Available port options:\n"
        " A_CUSTOM_PORT                    - Compiler: User Defined  Target: User Defined\n"
        " BCC_16BIT_DOS_FLSH186            - Compiler: BCC           Target: 16 bit DOS Flsh186\n"
        " BCC_16BIT_DOS_PC                 - Compiler: BCC           Target: 16 bit DOS PC\n"
        " CCS_ARM_CM3                      - Compiler: CCS           Target: ARM Cortex-M3\n"
        " CCS_ARM_CM4F                     - Compiler: CCS           Target: ARM Cortex-M4 with FPU\n"
        " CCS_ARM_CR4                      - Compiler: CCS           Target: ARM Cortex-R4\n"
        " CCS_MSP430X                      - Compiler: CCS           Target: MSP430X\n"
        " CODEWARRIOR_COLDFIRE_V1          - Compiler: CoreWarrior   Target: ColdFire V1\n"
        " CODEWARRIOR_COLDFIRE_V2          - Compiler: CoreWarrior   Target: ColdFire V2\n"
        " CODEWARRIOR_HCS12                - Compiler: CoreWarrior   Target: HCS12\n"
        " GCC_ARM_CA9                      - Compiler: GCC           Target: ARM Cortex-A9\n"
        " GCC_ARM_CA53_64_BIT              - Compiler: GCC           Target: ARM Cortex-A53 64 bit\n"
        " GCC_ARM_CA53_64_BIT_SRE          - Compiler: GCC           Target: ARM Cortex-A53 64 bit SRE\n"
        " GCC_ARM_CM0                      - Compiler: GCC           Target: ARM Cortex-M0\n"
        " GCC_ARM_CM3                      - Compiler: GCC           Target: ARM Cortex-M3\n"
        " GCC_ARM_CM3_MPU                  - Compiler: GCC           Target: ARM Cortex-M3 with MPU\n"
        " GCC_ARM_CM4_MPU                  - Compiler: GCC           Target: ARM Cortex-M4 with MPU\n"
        " GCC_ARM_CM4F                     - Compiler: GCC           Target: ARM Cortex-M4 with FPU\n"
        " GCC_ARM_CM7                      - Compiler: GCC           Target: ARM Cortex-M7\n"
        " GCC_ARM_CM23_NONSECURE           - Compiler: GCC           Target: ARM Cortex-M23 non-secure\n"
        " GCC_ARM_CM23_SECURE              - Compiler: GCC           Target: ARM Cortex-M23 secure\n"
        " GCC_ARM_CM23_NTZ_NONSECURE       - Compiler: GCC           Target: ARM Cortex-M23 non-trustzone non-secure\n"
        " GCC_ARM_CM33_NONSECURE           - Compiler: GCC           Target: ARM Cortex-M33 non-secure\n"
        " GCC_ARM_CM33_SECURE              - Compiler: GCC           Target: ARM Cortex-M33 secure\n"
        " GCC_ARM_CM33_NTZ_NONSECURE       - Compiler: GCC           Target: ARM Cortex-M33 non-trustzone non-secure\n"
        " GCC_ARM_CM33_TFM                 - Compiler: GCC           Target: ARM Cortex-M33 non-secure for TF-M\n"
        " GCC_ARM_CM35P_NONSECURE          - Compiler: GCC           Target: ARM Cortex-M35P non-secure\n"
        " GCC_ARM_CM35P_SECURE             - Compiler: GCC           Target: ARM Cortex-M35P secure\n"
        " GCC_ARM_CM35P_NTZ_NONSECURE      - Compiler: GCC           Target: ARM Cortex-M35P non-trustzone non-secure\n"
        " GCC_ARM_CM55_NONSECURE           - Compiler: GCC           Target: ARM Cortex-M55 non-secure\n"
        " GCC_ARM_CM55_SECURE              - Compiler: GCC           Target: ARM Cortex-M55 secure\n"
        " GCC_ARM_CM55_NTZ_NONSECURE       - Compiler: GCC           Target: ARM Cortex-M55 non-trustzone non-secure\n"
        " GCC_ARM_CM55_TFM                 - Compiler: GCC           Target: ARM Cortex-M55 non-secure for TF-M\n"
        " GCC_ARM_CM85_NONSECURE           - Compiler: GCC           Target: ARM Cortex-M85 non-secure\n"
        " GCC_ARM_CM85_SECURE              - Compiler: GCC           Target: ARM Cortex-M85 secure\n"
        " GCC_ARM_CM85_NTZ_NONSECURE       - Compiler: GCC           Target: ARM Cortex-M85 non-trustzone non-secure\n"
        " GCC_ARM_CM85_TFM                 - Compiler: GCC           Target: ARM Cortex-M85 non-secure for TF-M\n"
        " GCC_ARM_CR5                      - Compiler: GCC           Target: ARM Cortex-R5\n"
        " GCC_ARM_CRX_NOGIC                - Compiler: GCC           Target: ARM Cortex-Rx no GIC\n"
        " GCC_ARM7_AT91FR40008             - Compiler: GCC           Target: ARM7 Atmel AT91R40008\n"
        " GCC_ARM7_AT91SAM7S               - Compiler: GCC           Target: ARM7 Atmel AT91SAM7S\n"
        " GCC_ARM7_LPC2000                 - Compiler: GCC           Target: ARM7 LPC2000\n"
        " GCC_ARM7_LPC23XX                 - Compiler: GCC           Target: ARM7 LPC23xx\n"
        " GCC_ATMEGA323                    - Compiler: GCC           Target: ATMega323\n"
        " GCC_AVR32_UC3                    - Compiler: GCC           Target: AVR32 UC3\n"
        " GCC_COLDFIRE_V2                  - Compiler: GCC           Target: ColdFire V2\n"
        " GCC_CORTUS_APS3                  - Compiler: GCC           Target: CORTUS APS3\n"
        " GCC_H8S2329                      - Compiler: GCC           Target: H8S2329\n"
        " GCC_HCS12                        - Compiler: GCC           Target: HCS12\n"
        " GCC_IA32_FLAT                    - Compiler: GCC           Target: IA32 flat\n"
        " GCC_MICROBLAZE                   - Compiler: GCC           Target: MicroBlaze\n"
        " GCC_MICROBLAZE_V8                - Compiler: GCC           Target: MicroBlaze V8\n"
        " GCC_MICROBLAZE_V9                - Compiler: GCC           Target: MicroBlaze V9\n"
        " GCC_MSP430F449                   - Compiler: GCC           Target: MSP430F449\n"
        " GCC_NIOSII                       - Compiler: GCC           Target: NiosII\n"
        " GCC_PPC405_XILINX                - Compiler: GCC           Target: Xilinx PPC405\n"
        " GCC_PPC440_XILINX                - Compiler: GCC           Target: Xilinx PPC440\n"
        " GCC_RISC_V                       - Compiler: GCC           Target: RISC-V\n"
        " GCC_RISC_V_PULPINO_VEGA_RV32M1RM - Compiler: GCC           Target: RISC-V Pulpino Vega RV32M1RM\n"
        " GCC_RL78                         - Compiler: GCC           Target: Renesas RL78\n"
        " GCC_RX100                        - Compiler: GCC           Target: Renesas RX100\n"
        " GCC_RX200                        - Compiler: GCC           Target: Renesas RX200\n"
        " GCC_RX600                        - Compiler: GCC           Target: Renesas RX600\n"
        " GCC_RX600_V2                     - Compiler: GCC           Target: Renesas RX600 v2\n"
        " GCC_RX700_V3_DPFPU               - Compiler: GCC           Target: Renesas RX700 v3 with DPFPU\n"
        " GCC_STR75X                       - Compiler: GCC           Target: STR75x\n"
        " GCC_TRICORE_1782                 - Compiler: GCC           Target: TriCore 1782\n"
        " GCC_ARC_EM_HS                    - Compiler: GCC           Target: DesignWare ARC EM HS\n"
        " GCC_ARC_V1                       - Compiler: GCC           Target: DesignWare ARC v1\n"
        " GCC_ATMEGA                       - Compiler: GCC           Target: ATmega\n"
        " GCC_POSIX                        - Compiler: GCC           Target: Posix\n"
        " GCC_RP2040                       - Compiler: GCC           Target: RP2040 ARM Cortex-M0+\n"
        " GCC_XTENSA_ESP32                 - Compiler: GCC           Target: Xtensa ESP32\n"
        " GCC_AVRDX                        - Compiler: GCC           Target: AVRDx\n"
        " GCC_AVR_MEGA0                    - Compiler: GCC           Target: AVR Mega0\n"
        " IAR_78K0K                        - Compiler: IAR           Target: Renesas 78K0K\n"
        " IAR_ARM_CA5_NOGIC                - Compiler: IAR           Target: ARM Cortex-A5 no GIC\n"
        " IAR_ARM_CA9                      - Compiler: IAR           Target: ARM Cortex-A9\n"
        " IAR_ARM_CM0                      - Compiler: IAR           Target: ARM Cortex-M0\n"
        " IAR_ARM_CM3                      - Compiler: IAR           Target: ARM Cortex-M3\n"
        " IAR_ARM_CM4F                     - Compiler: IAR           Target: ARM Cortex-M4 with FPU\n"
        " IAR_ARM_CM4F_MPU                 - Compiler: IAR           Target: ARM Cortex-M4 with FPU and MPU\n"
        " IAR_ARM_CM7                      - Compiler: IAR           Target: ARM Cortex-M7\n"
        " IAR_ARM_CM23_NONSECURE           - Compiler: IAR           Target: ARM Cortex-M23 non-secure\n"
        " IAR_ARM_CM23_SECURE              - Compiler: IAR           Target: ARM Cortex-M23 secure\n"
        " IAR_ARM_CM23_NTZ_NONSECURE       - Compiler: IAR           Target: ARM Cortex-M23 non-trustzone non-secure\n"
        " IAR_ARM_CM33_NONSECURE           - Compiler: IAR           Target: ARM Cortex-M33 non-secure\n"
        " IAR_ARM_CM33_SECURE              - Compiler: IAR           Target: ARM Cortex-M33 secure\n"
        " IAR_ARM_CM33_NTZ_NONSECURE       - Compiler: IAR           Target: ARM Cortex-M33 non-trustzone non-secure\n"
        " IAR_ARM_CM35P_NONSECURE          - Compiler: IAR           Target: ARM Cortex-M35P non-secure\n"
        " IAR_ARM_CM35P_SECURE             - Compiler: IAR           Target: ARM Cortex-M35P secure\n"
        " IAR_ARM_CM35P_NTZ_NONSECURE      - Compiler: IAR           Target: ARM Cortex-M35P non-trustzone non-secure\n"
        " IAR_ARM_CM55_NONSECURE           - Compiler: IAR           Target: ARM Cortex-M55 non-secure\n"
        " IAR_ARM_CM55_SECURE              - Compiler: IAR           Target: ARM Cortex-M55 secure\n"
        " IAR_ARM_CM55_NTZ_NONSECURE       - Compiler: IAR           Target: ARM Cortex-M55 non-trustzone non-secure\n"
        " IAR_ARM_CM85_NONSECURE           - Compiler: IAR           Target: ARM Cortex-M85 non-secure\n"
        " IAR_ARM_CM85_SECURE              - Compiler: IAR           Target: ARM Cortex-M85 secure\n"
        " IAR_ARM_CM85_NTZ_NONSECURE       - Compiler: IAR           Target: ARM Cortex-M85 non-trustzone non-secure\n"
        " IAR_ARM_CRX_NOGIC                - Compiler: IAR           Target: ARM Cortex-Rx no GIC\n"
        " IAR_ATMEGA323                    - Compiler: IAR           Target: ATMega323\n"
        " IAR_ATMEL_SAM7S64                - Compiler: IAR           Target: Atmel SAM7S64\n"
        " IAR_ATMEL_SAM9XE                 - Compiler: IAR           Target: Atmel SAM9XE\n"
        " IAR_AVR_AVRDX                    - Compiler: IAR           Target: AVRDx\n"
        " IAR_AVR_MEGA0                    - Compiler: IAR           Target: AVR Mega0\n"
        " IAR_AVR32_UC3                    - Compiler: IAR           Target: AVR32 UC3\n"
        " IAR_LPC2000                      - Compiler: IAR           Target: LPC2000\n"
        " IAR_MSP430                       - Compiler: IAR           Target: MSP430\n"
        " IAR_MSP430X                      - Compiler: IAR           Target: MSP430X\n"
        " IAR_RISC_V                       - Compiler: IAR           Target: RISC-V\n"
        " IAR_RL78                         - Compiler: IAR           Target: Renesas RL78\n"
        " IAR_RX100                        - Compiler: IAR           Target: Renesas RX100\n"
        " IAR_RX600                        - Compiler: IAR           Target: Renesas RX600\n"
        " IAR_RX700_V3_DPFPU               - Compiler: IAR           Target: Renesas RX700 v3 with DPFPU\n"
        " IAR_RX_V2                        - Compiler: IAR           Target: Renesas RX v2\n"
        " IAR_STR71X                       - Compiler: IAR           Target: STR71x\n"
        " IAR_STR75X                       - Compiler: IAR           Target: STR75x\n"
        " IAR_STR91X                       - Compiler: IAR           Target: STR91x\n"
        " IAR_V850ES_FX3                   - Compiler: IAR           Target: Renesas V850ES/Fx3\n"
        " IAR_V850ES_HX3                   - Compiler: IAR           Target: Renesas V850ES/Hx3\n"
        " MIKROC_ARM_CM4F                  - Compiler: MikroC        Target: ARM Cortex-M4 with FPU\n"
        " MPLAB_PIC18F                     - Compiler: MPLAB         Target: PIC18F\n"
        " MPLAB_PIC24                      - Compiler: MPLAB         Target: PIC24\n"
        " MPLAB_PIC32MEC14XX               - Compiler: MPLAB         Target: PIC32MEC14xx\n"
        " MPLAB_PIC32MX                    - Compiler: MPLAB         Target: PIC32MX\n"
        " MPLAB_PIC32MZ                    - Compiler: MPLAB         Target: PIC32MZ\n"
        " MSVC_MINGW                       - Compiler: MSVC or MinGW Target: x86\n"
        " OWATCOM_16BIT_DOS_FLSH186        - Compiler: Open Watcom   Target: 16 bit DOS Flsh186\n"
        " OWATCOM_16BIT_DOS_PC             - Compiler: Open Watcom   Target: 16 bit DOS PC\n"
        " PARADIGM_TERN_EE_LARGE           - Compiler: Paradigm      Target: Tern EE large\n"
        " PARADIGM_TERN_EE_SMALL           - Compiler: Paradigm      Target: Tern EE small\n"
        " RENESAS_RX100                    - Compiler: Renesas       Target: RX100\n"
        " RENESAS_RX200                    - Compiler: Renesas       Target: RX200\n"
        " RENESAS_RX600                    - Compiler: Renesas       Target: RX600\n"
        " RENESAS_RX600_V2                 - Compiler: Renesas       Target: RX600 v2\n"
        " RENESAS_RX700_V3_DPFPU           - Compiler: Renesas       Target: RX700 v3 with DPFPU\n"
        " RENESAS_SH2A_FPU                 - Compiler: Renesas       Target: SH2A with FPU\n"
        " ROWLEY_MSP430F449                - Compiler: Rowley        Target: MSP430F449\n"
        " RVDS_ARM_CA9                     - Compiler: RVDS          Target: ARM Cortex-A9\n"
        " RVDS_ARM_CM0                     - Compiler: RVDS          Target: ARM Cortex-M0\n"
        " RVDS_ARM_CM3                     - Compiler: RVDS          Target: ARM Cortex-M3\n"
        " RVDS_ARM_CM4_MPU                 - Compiler: RVDS          Target: ARM Cortex-M4 with MPU\n"
        " RVDS_ARM_CM4F                    - Compiler: RVDS          Target: ARM Cortex-M4 with FPU\n"
        " RVDS_ARM_CM7                     - Compiler: RVDS          Target: ARM Cortex-M7\n"
        " RVDS_ARM7_LPC21XX                - Compiler: RVDS          Target: ARM7 LPC21xx\n"
        " SDCC_CYGNAL                      - Compiler: SDCC          Target: Cygnal\n"
        " SOFTUNE_MB91460                  - Compiler: Softune       Target: MB91460\n"
        " SOFTUNE_MB96340                  - Compiler: Softune       Target: MB96340\n"
        " TASKING_ARM_CM4F                 - Compiler: Tasking       Target: ARM Cortex-M4 with FPU\n"
        " CDK_THEAD_CK802                  - Compiler: CDK           Target: T-head CK802\n"
        " XCC_XTENSA                       - Compiler: XCC           Target: Xtensa\n"
        " WIZC_PIC18                       - Compiler: WizC          Target: PIC18")
    # Native FREERTOS_PORT for Linux and Windows MINGW builds
    if(UNIX)
        message(STATUS " Auto-Detected Unix, setting FREERTOS_PORT=GCC_POSIX")
        set(FREERTOS_PORT GCC_POSIX CACHE STRING "FreeRTOS port name")
    elseif(MINGW)
        message(STATUS " Auto-Detected MINGW, setting FREERTOS_PORT=MSVC_MINGW")
        set(FREERTOS_PORT MSVC_MINGW CACHE STRING "FreeRTOS port name")
    endif()
elseif((FREERTOS_PORT STREQUAL "A_CUSTOM_PORT") AND (NOT TARGET freertos_kernel_port) )
    message(FATAL_ERROR " FREERTOS_PORT is set to A_CUSTOM_PORT. Please specify the custom port target with all necessary files. For example:\n"
    " Assuming a directory of:\n"
    "  FreeRTOSCustomPort/\n"
    "    CMakeLists.txt\n"
    "    port.c\n"
    "    portmacro.h\n"
    " Where FreeRTOSCustomPort/CMakeLists.txt is a modified version of:\n"
    "   add_library(freertos_kernel_port STATIC)\n"
    "   target_sources(freertos_kernel_port\n"
    "     PRIVATE\n"
    "       port.c\n"
    "       portmacro.h)\n"
    "   target_include_directories(freertos_kernel_port\n"
    "     PUBLIC\n"
    "      .)\n"
    "   target_link_libraries(freertos_kernel_port\n"
    "     PRIVATE\n"
    "       freertos_kernel)")
endif()

########################################################################
# Overall Compile Options
# Note the compile option strategy is to error on everything and then
# Per library opt-out of things that are warnings/errors.
# This ensures that no matter what strategy for compilation you take, the
# builds will still occur.
#
# Only tested with GNU and Clang.
# Other options are https://cmake.org/cmake/help/latest/variable/CMAKE_LANG_COMPILER_ID.html#variable:CMAKE_%3CLANG%3E_COMPILER_ID
# Naming of compilers translation map:
#
#   FreeRTOS    | CMake
#   -------------------
#   CCS         | ?TBD?
#   GCC         | GNU, Clang, *Clang Others?
#   IAR         | IAR
#   Keil        | ARMCC
#   MSVC        | MSVC # Note only for MinGW?
#   Renesas     | ?TBD?

add_compile_options(
    ### Gnu/Clang C Options
    $<$<COMPILE_LANG_AND_ID:C,GNU>:-fdiagnostics-color=always>
    $<$<COMPILE_LANG_AND_ID:C,Clang>:-fcolor-diagnostics>

    $<$<COMPILE_LANG_AND_ID:C,Clang,GNU>:-Wall>
    $<$<COMPILE_LANG_AND_ID:C,Clang,GNU>:-Wextra>
    $<$<COMPILE_LANG_AND_ID:C,Clang,GNU>:-Wpedantic>
    $<$<COMPILE_LANG_AND_ID:C,Clang,GNU>:-Werror>
    $<$<COMPILE_LANG_AND_ID:C,Clang>:-Weverything>

    # TODO: Add in other Compilers here.
)


########################################################################
add_subdirectory(portable)

add_library(freertos_kernel STATIC
    event_groups.c
    list.c
    queue.c
    stream_buffer.c
    tasks.c
    timers.c

    # If FREERTOS_HEAP is digit between 1 .. 5 - it is heap number, otherwise - it is path to custom heap source file
    $<IF:$<BOOL:$<FILTER:${FREERTOS_HEAP},EXCLUDE,^[1-5]$>>,${FREERTOS_HEAP},portable/MemMang/heap_${FREERTOS_HEAP}.c>
)

target_include_directories(freertos_kernel
    PUBLIC
        include
        # Note: DEPRECATED but still supported, may be removed in a future release.
        $<$<NOT:$<TARGET_EXISTS:freertos_config>>:${FREERTOS_CONFIG_FILE_DIRECTORY}>
)

target_link_libraries(freertos_kernel
    PUBLIC
        $<$<TARGET_EXISTS:freertos_config>:freertos_config>
        freertos_kernel_port
)

########################################################################
