1#=============================================================================== 2# @brief cmake file 3# Copyright (c) 2020 HiSilicon (Shanghai) Technologies CO., LIMITED. 4#=============================================================================== 5set(COMPONENT_NAME "lwip") 6 7set(CMAKE_LWIP_SOURCE_DIR 8 ${CMAKE_CURRENT_SOURCE_DIR}/lwip_v2.1.3) 9if("liteos_208_6_0_b017_cat1" IN_LIST TARGET_COMPONENT) 10 set(CMAKE_LWIP_ADAPTER_DIR 11 ${CMAKE_CURRENT_SOURCE_DIR}/lwip_adapter/liteos_207) 12elseif("liteos_208_5_0" IN_LIST TARGET_COMPONENT) 13 set(CMAKE_LWIP_ADAPTER_DIR 14 ${CMAKE_CURRENT_SOURCE_DIR}/lwip_adapter/liteos_207) 15elseif("liteos_207_0_0" IN_LIST TARGET_COMPONENT) 16 set(CMAKE_LWIP_ADAPTER_DIR 17 ${CMAKE_CURRENT_SOURCE_DIR}/lwip_adapter/liteos_207) 18elseif("liteos_206" IN_LIST TARGET_COMPONENT) 19 set(CMAKE_LWIP_ADAPTER_DIR 20 ${CMAKE_CURRENT_SOURCE_DIR}/lwip_adapter/liteos_206) 21elseif("freertos" IN_LIST TARGET_COMPONENT) 22 set(CMAKE_LWIP_ADAPTER_DIR 23 ${CMAKE_CURRENT_SOURCE_DIR}/lwip_adapter/freertos) 24elseif("alios_v3.3.0" IN_LIST TARGET_COMPONENT) 25 set(CMAKE_LWIP_ADAPTER_DIR 26 ${CMAKE_CURRENT_SOURCE_DIR}/lwip_adapter/alios) 27endif() 28 29set(CMAKE_LITEOS_DIR_V207 30 ${CMAKE_SOURCE_DIR}/kernel/liteos/liteos_v207.0.0) 31 32set(SOURCES 33 ${CMAKE_LWIP_SOURCE_DIR}/src/core/tcp_out.c 34 ${CMAKE_LWIP_SOURCE_DIR}/src/core/ipv4/autoip.c 35 ${CMAKE_LWIP_SOURCE_DIR}/src/core/ipv4/dhcps.c 36 ${CMAKE_LWIP_SOURCE_DIR}/src/core/ipv4/igmp.c 37 ${CMAKE_LWIP_SOURCE_DIR}/src/core/ipv4/icmp.c 38 ${CMAKE_LWIP_SOURCE_DIR}/src/core/ipv4/dhcp.c 39 ${CMAKE_LWIP_SOURCE_DIR}/src/core/lowpower.c 40 ${CMAKE_LWIP_SOURCE_DIR}/src/core/timeouts.c 41 ${CMAKE_LWIP_SOURCE_DIR}/src/core/ip6in4.c 42 ${CMAKE_LWIP_SOURCE_DIR}/src/core/debug.c 43 ${CMAKE_LWIP_SOURCE_DIR}/src/core/mdns.c 44 ${CMAKE_LWIP_SOURCE_DIR}/src/core/tcp_sack.c 45 ${CMAKE_LWIP_SOURCE_DIR}/src/core/tcp_in.c 46 ${CMAKE_LWIP_SOURCE_DIR}/src/core/altcp.c 47 ${CMAKE_LWIP_SOURCE_DIR}/src/core/tftpc.c 48 ${CMAKE_LWIP_SOURCE_DIR}/src/core/filter.c 49 ${CMAKE_LWIP_SOURCE_DIR}/src/core/sntp.c 50 ${CMAKE_LWIP_SOURCE_DIR}/src/core/altcp_tcp.c 51 ${CMAKE_LWIP_SOURCE_DIR}/src/core/def.c 52 ${CMAKE_LWIP_SOURCE_DIR}/src/core/dns.c 53 ${CMAKE_LWIP_SOURCE_DIR}/src/core/stats.c 54 ${CMAKE_LWIP_SOURCE_DIR}/src/core/ipv6/inet6.c 55 ${CMAKE_LWIP_SOURCE_DIR}/src/core/ipv6/mld6.c 56 ${CMAKE_LWIP_SOURCE_DIR}/src/core/ipv6/icmp6.c 57 ${CMAKE_LWIP_SOURCE_DIR}/src/core/ipv6/dhcp6.c 58 ${CMAKE_LWIP_SOURCE_DIR}/src/core/ipv6/ip6_frag.c 59 ${CMAKE_LWIP_SOURCE_DIR}/src/core/ipv6/ip6_addr.c 60 ${CMAKE_LWIP_SOURCE_DIR}/src/core/ipv6/ethip6.c 61 ${CMAKE_LWIP_SOURCE_DIR}/src/core/ipv6/nd6.c 62 ${CMAKE_LWIP_SOURCE_DIR}/src/core/ipv6/ip6.c 63 ${CMAKE_LWIP_SOURCE_DIR}/src/core/init.c 64 ${CMAKE_LWIP_SOURCE_DIR}/src/core/sys.c 65 ${CMAKE_LWIP_SOURCE_DIR}/src/core/nat64/nat64_addr.c 66 ${CMAKE_LWIP_SOURCE_DIR}/src/core/nat64/nat64_dns64.c 67 ${CMAKE_LWIP_SOURCE_DIR}/src/core/nat64/nat64_v4_dhcpc.c 68 ${CMAKE_LWIP_SOURCE_DIR}/src/core/nat64/nat64.c 69 ${CMAKE_LWIP_SOURCE_DIR}/src/core/altcp_alloc.c 70 ${CMAKE_LWIP_SOURCE_DIR}/src/netif/ifaddrs.c 71 ${CMAKE_LWIP_SOURCE_DIR}/src/netif/lowpan6_common.c 72 ${CMAKE_LWIP_SOURCE_DIR}/src/netif/lowpan6.c 73 ${CMAKE_LWIP_SOURCE_DIR}/src/api/if_api.c 74 ${CMAKE_LWIP_SOURCE_DIR}/src/api/netifapi.c 75 ${CMAKE_LWIP_SOURCE_DIR}/src/api/l3event.c 76 ${CMAKE_LWIP_SOURCE_DIR}/src/api/err.c 77 ${CMAKE_LWIP_SOURCE_DIR}/src/api/nat64_api.c 78 ${CMAKE_LWIP_SOURCE_DIR}/src/api/ethtool.c 79 ${CMAKE_LWIP_SOURCE_DIR}/src/api/netdb.c 80 ${CMAKE_LWIP_SOURCE_DIR}/src/api/nettool/ping.c 81 ${CMAKE_LWIP_SOURCE_DIR}/src/api/nettool/misc.c 82 ${CMAKE_LWIP_SOURCE_DIR}/src/api/nettool/ifconfig.c 83 ${CMAKE_LWIP_SOURCE_DIR}/src/api/nettool/utility.c 84 ${CMAKE_LWIP_SOURCE_DIR}/src/api/nettool/netstat.c 85) 86 87set(PUBLIC_HEADER 88 ${CMAKE_LWIP_SOURCE_DIR}/src/include 89 ${CMAKE_LWIP_ADAPTER_DIR}/src/include/lwip 90 ${CMAKE_LWIP_ADAPTER_DIR}/src/include 91) 92 93set(PRIVATE_HEADER 94 ${CMAKE_LWIP_SOURCE_DIR}/src/include 95 ${CMAKE_LWIP_SOURCE_DIR}/src/include/lwip/nettool 96 ${ROOT_DIR}/include/middleware/services/wifi 97) 98 99if("__ALIOS__" IN_LIST DEFINES) 100 list(APPEND PRIVATE_HEADER 101 ${ROOT_DIR}/kernel/alios/utils/libc/musl_1.2.3/include 102 ${ROOT_DIR}/kernel/alios/utils/libc/adapt/include 103 ${ROOT_DIR}/kernel/alios/utils/libc/adapt/musl_1.2.3/include 104 ) 105endif() 106 107set(PRIVATE_DEFINES 108 LOSCFG_BASE_CORE_USE_MULTI_LIST 109) 110 111set(PUBLIC_DEFINES 112 LWIP_CONFIG_FILE=\"lwip/lwipopts_default.h\" 113) 114 115# use this when you want to add ccflags like -include xxx 116set(COMPONENT_PUBLIC_CCFLAGS 117) 118 119set(COMPONENT_CCFLAGS 120 -Wno-error=logical-op 121 -Wno-error=sign-compare 122 -Wno-error=jump-misses-init 123 -Wno-sign-compare 124 -Wno-jump-misses-init 125 -Wno-error=unused-parameter 126 -Wno-unused-parameter 127 -Wno-unused-but-set-variable 128 -Wno-error=unused-variable 129) 130 131set(WHOLE_LINK 132 true 133) 134 135set(MAIN_COMPONENT 136 false 137) 138 139set(LIB_OUT_PATH ${BIN_DIR}/${CHIP}/libs/wifi/${TARGET_COMMAND}) 140 141build_component() 142 143set(COMPONENT_NAME "lwip_tcm") 144set(SOURCES 145 ${CMAKE_LWIP_SOURCE_DIR}/src/api/sockets.c 146 ${CMAKE_LWIP_SOURCE_DIR}/src/core/inet_chksum.c 147 ${CMAKE_LWIP_SOURCE_DIR}/src/core/ip.c 148 ${CMAKE_LWIP_SOURCE_DIR}/src/core/udp.c 149 ${CMAKE_LWIP_SOURCE_DIR}/src/core/ipv4/etharp.c 150 ${CMAKE_LWIP_SOURCE_DIR}/src/core/ipv4/ip4.c 151 ${CMAKE_LWIP_SOURCE_DIR}/src/core/ipv4/ip4_addr.c 152 ${CMAKE_LWIP_SOURCE_DIR}/src/core/ipv4/ip4_frag.c 153 ${CMAKE_LWIP_SOURCE_DIR}/src/core/ip_addr.c 154 ${CMAKE_LWIP_SOURCE_DIR}/src/core/pbuf.c 155 ${CMAKE_LWIP_SOURCE_DIR}/src/core/mem.c 156 ${CMAKE_LWIP_SOURCE_DIR}/src/core/memp.c 157 ${CMAKE_LWIP_SOURCE_DIR}/src/core/netif.c 158 ${CMAKE_LWIP_SOURCE_DIR}/src/core/tcp.c 159 ${CMAKE_LWIP_SOURCE_DIR}/src/core/raw.c 160 ${CMAKE_LWIP_SOURCE_DIR}/src/netif/ethernet.c 161 ${CMAKE_LWIP_SOURCE_DIR}/src/netif/driverif.c 162 ${CMAKE_LWIP_SOURCE_DIR}/src/api/netbuf.c 163 ${CMAKE_LWIP_SOURCE_DIR}/src/api/tcpip.c 164 ${CMAKE_LWIP_SOURCE_DIR}/src/api/api_msg.c 165 ${CMAKE_LWIP_SOURCE_DIR}/src/api/api_lib.c 166 ${CMAKE_LWIP_ADAPTER_DIR}/src/arch/sys_arch.c 167) 168 169set(COMPONENT_CCFLAGS 170 -Wno-error=logical-op 171 -Wno-error=sign-compare 172 -Wno-error=jump-misses-init 173 -Wno-sign-compare 174 -Wno-jump-misses-init 175 -Wno-error=unused-parameter 176 -Wno-unused-parameter 177 -Wno-unused-but-set-variable 178 -Wno-error=unused-variable 179) 180 181set(PRIVATE_HEADER 182 ${CMAKE_LWIP_SOURCE_DIR}/src/include 183 ${CMAKE_LWIP_SOURCE_DIR}/src/include/lwip/nettool 184 ${ROOT_DIR}/include/middleware/services/wifi 185) 186 187if("__ALIOS__" IN_LIST DEFINES) 188 list(APPEND PRIVATE_HEADER 189 ${ROOT_DIR}/kernel/alios/utils/libc/musl_1.2.3/include 190 ${ROOT_DIR}/kernel/alios/utils/libc/adapt/include 191 ${ROOT_DIR}/kernel/alios/utils/libc/adapt/musl_1.2.3/include 192 ) 193endif() 194 195set(WHOLE_LINK 196 true 197) 198 199set(LIB_OUT_PATH ${BIN_DIR}/${CHIP}/libs/wifi/${TARGET_COMMAND}) 200 201build_component() 202