CMakeLists.txt 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176
  1. set(include_dirs
  2. include/apps
  3. include/apps/sntp
  4. lwip/src/include
  5. port/esp32/include
  6. port/esp32/include/arch
  7. )
  8. set(srcs
  9. "apps/sntp/sntp.c"
  10. "lwip/src/api/api_lib.c"
  11. "lwip/src/api/api_msg.c"
  12. "lwip/src/api/err.c"
  13. "lwip/src/api/if_api.c"
  14. "lwip/src/api/netbuf.c"
  15. "lwip/src/api/netdb.c"
  16. "lwip/src/api/netifapi.c"
  17. "lwip/src/api/sockets.c"
  18. "lwip/src/api/tcpip.c"
  19. "lwip/src/apps/sntp/sntp.c"
  20. "lwip/src/apps/netbiosns/netbiosns.c"
  21. "lwip/src/core/def.c"
  22. "lwip/src/core/dns.c"
  23. "lwip/src/core/inet_chksum.c"
  24. "lwip/src/core/init.c"
  25. "lwip/src/core/ip.c"
  26. "lwip/src/core/mem.c"
  27. "lwip/src/core/memp.c"
  28. "lwip/src/core/netif.c"
  29. "lwip/src/core/pbuf.c"
  30. "lwip/src/core/raw.c"
  31. "lwip/src/core/stats.c"
  32. "lwip/src/core/sys.c"
  33. "lwip/src/core/tcp.c"
  34. "lwip/src/core/tcp_in.c"
  35. "lwip/src/core/tcp_out.c"
  36. "lwip/src/core/timeouts.c"
  37. "lwip/src/core/udp.c"
  38. "lwip/src/core/ipv4/autoip.c"
  39. "lwip/src/core/ipv4/dhcp.c"
  40. "lwip/src/core/ipv4/etharp.c"
  41. "lwip/src/core/ipv4/icmp.c"
  42. "lwip/src/core/ipv4/igmp.c"
  43. "lwip/src/core/ipv4/ip4.c"
  44. "lwip/src/core/ipv4/ip4_napt.c"
  45. "lwip/src/core/ipv4/ip4_addr.c"
  46. "lwip/src/core/ipv4/ip4_frag.c"
  47. "lwip/src/core/ipv6/dhcp6.c"
  48. "lwip/src/core/ipv6/ethip6.c"
  49. "lwip/src/core/ipv6/icmp6.c"
  50. "lwip/src/core/ipv6/inet6.c"
  51. "lwip/src/core/ipv6/ip6.c"
  52. "lwip/src/core/ipv6/ip6_addr.c"
  53. "lwip/src/core/ipv6/ip6_frag.c"
  54. "lwip/src/core/ipv6/mld6.c"
  55. "lwip/src/core/ipv6/nd6.c"
  56. "lwip/src/netif/ethernet.c"
  57. "lwip/src/netif/lowpan6.c"
  58. "lwip/src/netif/slipif.c"
  59. "lwip/src/netif/ppp/auth.c"
  60. "lwip/src/netif/ppp/ccp.c"
  61. "lwip/src/netif/ppp/chap-md5.c"
  62. "lwip/src/netif/ppp/chap-new.c"
  63. "lwip/src/netif/ppp/chap_ms.c"
  64. "lwip/src/netif/ppp/demand.c"
  65. "lwip/src/netif/ppp/eap.c"
  66. "lwip/src/netif/ppp/ecp.c"
  67. "lwip/src/netif/ppp/eui64.c"
  68. "lwip/src/netif/ppp/fsm.c"
  69. "lwip/src/netif/ppp/ipcp.c"
  70. "lwip/src/netif/ppp/ipv6cp.c"
  71. "lwip/src/netif/ppp/lcp.c"
  72. "lwip/src/netif/ppp/magic.c"
  73. "lwip/src/netif/ppp/mppe.c"
  74. "lwip/src/netif/ppp/multilink.c"
  75. "lwip/src/netif/ppp/ppp.c"
  76. "lwip/src/netif/ppp/pppapi.c"
  77. "lwip/src/netif/ppp/pppcrypt.c"
  78. "lwip/src/netif/ppp/pppoe.c"
  79. "lwip/src/netif/ppp/pppol2tp.c"
  80. "lwip/src/netif/ppp/pppos.c"
  81. "lwip/src/netif/ppp/upap.c"
  82. "lwip/src/netif/ppp/utils.c"
  83. "lwip/src/netif/ppp/vj.c"
  84. "port/esp32/hooks/tcp_isn_default.c"
  85. "port/esp32/hooks/lwip_default_hooks.c"
  86. "port/esp32/debug/lwip_debug.c"
  87. "port/esp32/freertos/sys_arch.c"
  88. "port/esp32/netif/dhcp_state.c"
  89. "port/esp32/netif/wlanif.c")
  90. if(CONFIG_LWIP_PPP_SUPPORT)
  91. list(APPEND srcs
  92. "lwip/src/netif/ppp/auth.c"
  93. "lwip/src/netif/ppp/ccp.c"
  94. "lwip/src/netif/ppp/chap-md5.c"
  95. "lwip/src/netif/ppp/chap-new.c"
  96. "lwip/src/netif/ppp/chap_ms.c"
  97. "lwip/src/netif/ppp/demand.c"
  98. "lwip/src/netif/ppp/eap.c"
  99. "lwip/src/netif/ppp/ecp.c"
  100. "lwip/src/netif/ppp/eui64.c"
  101. "lwip/src/netif/ppp/fsm.c"
  102. "lwip/src/netif/ppp/ipcp.c"
  103. "lwip/src/netif/ppp/ipv6cp.c"
  104. "lwip/src/netif/ppp/lcp.c"
  105. "lwip/src/netif/ppp/magic.c"
  106. "lwip/src/netif/ppp/mppe.c"
  107. "lwip/src/netif/ppp/multilink.c"
  108. "lwip/src/netif/ppp/ppp.c"
  109. "lwip/src/netif/ppp/pppapi.c"
  110. "lwip/src/netif/ppp/pppcrypt.c"
  111. "lwip/src/netif/ppp/pppoe.c"
  112. "lwip/src/netif/ppp/pppol2tp.c"
  113. "lwip/src/netif/ppp/pppos.c"
  114. "lwip/src/netif/ppp/upap.c"
  115. "lwip/src/netif/ppp/utils.c"
  116. "lwip/src/netif/ppp/vj.c"
  117. "lwip/src/netif/ppp/polarssl/arc4.c"
  118. "lwip/src/netif/ppp/polarssl/des.c"
  119. "lwip/src/netif/ppp/polarssl/md4.c"
  120. "lwip/src/netif/ppp/polarssl/md5.c"
  121. "lwip/src/netif/ppp/polarssl/sha1.c")
  122. endif()
  123. if(CONFIG_ETH_ENABLED)
  124. list(APPEND srcs "port/esp32/netif/ethernetif.c")
  125. endif()
  126. if(CONFIG_VFS_SUPPORT_IO)
  127. list(APPEND srcs "port/esp32/vfs_lwip.c")
  128. else()
  129. list(APPEND srcs "port/esp32/no_vfs_syscalls.c")
  130. endif()
  131. if(CONFIG_OPENTHREAD_ENABLED)
  132. list(APPEND srcs "port/esp32/netif/openthreadif.c")
  133. endif()
  134. if(CONFIG_LWIP_ICMP)
  135. list(APPEND srcs
  136. "apps/ping/esp_ping.c"
  137. "apps/ping/ping.c"
  138. "apps/ping/ping_sock.c")
  139. endif()
  140. if(CONFIG_LWIP_DHCPS)
  141. list(APPEND srcs "apps/dhcpserver/dhcpserver.c")
  142. endif()
  143. idf_component_register(SRCS "${srcs}"
  144. INCLUDE_DIRS "${include_dirs}"
  145. LDFRAGMENTS linker.lf
  146. REQUIRES vfs esp_wifi
  147. PRIV_REQUIRES esp_eth esp_netif tcpip_adapter nvs_flash openthread)
  148. # lots of LWIP source files evaluate macros that check address of stack variables
  149. target_compile_options(${COMPONENT_LIB} PRIVATE -Wno-address)
  150. set_source_files_properties(
  151. lwip/src/netif/ppp/ppp.c
  152. PROPERTIES COMPILE_FLAGS
  153. -Wno-uninitialized
  154. )
  155. set_source_files_properties(
  156. lwip/src/netif/ppp/pppos.c
  157. PROPERTIES COMPILE_FLAGS
  158. -Wno-implicit-fallthrough
  159. )
  160. # "comparison is always false due to limited range of data type" warning
  161. # when setting CONFIG_LWIP_TCP_WND_DEFAULT to 65535
  162. set_source_files_properties(
  163. lwip/src/core/tcp.c
  164. PROPERTIES COMPILE_FLAGS
  165. -Wno-type-limits
  166. )