CMakeLists.txt 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. idf_component_register(
  2. SRCS
  3. "src/aes67.c"
  4. "src/aes67_ptp.c"
  5. "src/aes67_rtp.c"
  6. "src/aes67_sap.c"
  7. "src/aes67_sdp.c"
  8. "src/aes67_session.c"
  9. "src/aes67_audio.c"
  10. "src/aes67_convert.c"
  11. "src/aes67_net.c"
  12. "src/aes67_mdns.c"
  13. "src/aes67_hw_timer.c"
  14. "src/aes67_l2tap_rx.c"
  15. "src/aes67_webui.c"
  16. # Bundled third-party: a minimal IEEE-1588 PTP daemon (Apache NuttX
  17. # ptpd, ported to ESP-IDF by Espressif) and the EMAC time wrapper from
  18. # the ESP-IDF ethernet/ptp example. Vendored here so the component is
  19. # self-contained on the Component Registry. See third_party/*/README.md
  20. # and the SPDX headers for provenance and licensing.
  21. "third_party/ptpd/ptpd.c"
  22. "third_party/esp_eth_time/esp_eth_time.c"
  23. INCLUDE_DIRS
  24. "include"
  25. PRIV_INCLUDE_DIRS
  26. "private_include"
  27. "third_party/ptpd"
  28. "third_party/ptpd/include"
  29. "third_party/esp_eth_time"
  30. PRIV_REQUIRES
  31. esp_eth
  32. esp_netif
  33. esp_timer
  34. esp_driver_i2s
  35. mdns
  36. lwip
  37. esp_psram
  38. esp_mm
  39. esp_http_server
  40. EMBED_FILES
  41. "web/index.html.gz"
  42. )
  43. # ptpd.c is a third-party port with intentionally-unused helpers behind
  44. # Kconfig; silence that one warning for the bundled file only.
  45. set_source_files_properties(
  46. third_party/ptpd/ptpd.c
  47. PROPERTIES COMPILE_OPTIONS "-Wno-unused-function"
  48. )
  49. # Gzip the web frontend for embedding in flash
  50. add_custom_command(
  51. OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/web/index.html.gz
  52. COMMAND gzip -9 -k -f ${CMAKE_CURRENT_SOURCE_DIR}/web/index.html
  53. DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/web/index.html
  54. COMMENT "Compressing web/index.html -> index.html.gz"
  55. )