1add_library( freertos_plus_tcp_port STATIC )
2
3target_sources( freertos_plus_tcp_port
4  PRIVATE
5    BufferManagement/BufferAllocation_${FREERTOS_PLUS_TCP_BUFFER_ALLOCATION}.c
6    # TODO: There's NetworkInterface/pic32mzef that has it's own BufferAllocation_2.c
7)
8
9target_include_directories( freertos_plus_tcp_port
10  PUBLIC
11    # Using Cmake to detect except for unknown compilers.
12    $<$<STREQUAL:${FREERTOS_PLUS_TCP_COMPILER},CCS>:${CMAKE_CURRENT_SOURCE_DIR}/Compiler/CCS>
13    $<$<C_COMPILER_ID:CCS>:${CMAKE_CURRENT_SOURCE_DIR}/Compiler/CCS>
14    $<$<C_COMPILER_ID:GNU,Clang,ARMClang>:${CMAKE_CURRENT_SOURCE_DIR}/Compiler/GCC>
15    $<$<C_COMPILER_ID:Tasking>:${CMAKE_CURRENT_SOURCE_DIR}/Compiler/Tasking>
16    $<$<C_COMPILER_ID:IAR>:${CMAKE_CURRENT_SOURCE_DIR}/Compiler/IAR>
17    $<$<C_COMPILER_ID:ARMCC>:${CMAKE_CURRENT_SOURCE_DIR}/Compiler/Keil>
18    $<$<C_COMPILER_ID:MSVC>:${CMAKE_CURRENT_SOURCE_DIR}/Compiler/MSVC>
19    $<$<STREQUAL:${FREERTOS_PLUS_TCP_COMPILER},Renesas>:${CMAKE_CURRENT_SOURCE_DIR}/Compiler/Renesas>
20)
21
22target_compile_options( freertos_plus_tcp_port
23  PRIVATE
24    $<$<COMPILE_LANG_AND_ID:C,Clang>:-Wno-cast-align>
25    $<$<COMPILE_LANG_AND_ID:C,Clang>:-Wno-extra-semi-stmt>
26    $<$<COMPILE_LANG_AND_ID:C,GNU>:-Wno-pedantic> # Strange definition for STATIC_ASSERT
27)
28
29target_link_libraries( freertos_plus_tcp_port
30  PRIVATE
31    freertos_kernel
32    freertos_plus_tcp
33    freertos_plus_tcp_network_if
34)
35
36#------------------------------------------------------------------------------
37add_subdirectory(NetworkInterface)
38