CMakeLists.txt 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. # This file was automatically generated for projects
  2. # without default 'CMakeLists.txt' file.
  3. ##################################################################
  4. ##################################################################
  5. execute_process(COMMAND git log --pretty=format:'%h' -n 1
  6. OUTPUT_VARIABLE GIT_REV
  7. ERROR_QUIET)
  8. string(TIMESTAMP BUILD_TIME "%Y-%m-%d %H:%M")
  9. # Check whether we got any revision (which isn't
  10. # always the case, e.g. when someone downloaded a zip
  11. # file from Github instead of a checkout)
  12. if ("${GIT_REV}" STREQUAL "")
  13. set(GIT_REV "N/A")
  14. set(GIT_DIFF "")
  15. set(GIT_TAG "N/A")
  16. set(GIT_BRANCH "N/A")
  17. else()
  18. execute_process(
  19. COMMAND bash -c "git diff --quiet --exit-code || echo +"
  20. OUTPUT_VARIABLE GIT_DIFF)
  21. execute_process(
  22. COMMAND git describe --exact-match --tags
  23. OUTPUT_VARIABLE GIT_TAG ERROR_QUIET)
  24. execute_process(
  25. COMMAND git rev-parse --abbrev-ref HEAD
  26. OUTPUT_VARIABLE GIT_BRANCH)
  27. string(STRIP "${GIT_REV}" GIT_REV)
  28. string(SUBSTRING "${GIT_REV}" 1 7 GIT_REV)
  29. string(STRIP "${GIT_DIFF}" GIT_DIFF)
  30. string(STRIP "${GIT_TAG}" GIT_TAG)
  31. string(STRIP "${GIT_BRANCH}" GIT_BRANCH)
  32. endif()
  33. set(VERSION "const char* GIT_REV=\"${GIT_REV}${GIT_DIFF}\";
  34. const char* GIT_TAG=\"${GIT_TAG}\";
  35. const char* GIT_BRANCH=\"${GIT_BRANCH}\";
  36. const char* BUILD_TIME=\"${BUILD_TIME}\";")
  37. if ("${GIT_TAG}" STREQUAL "") # Tag not set, show branch
  38. set(VERSION_HTML "Development-Branch: ${GIT_BRANCH} (Commit: ${GIT_REV}${GIT_DIFF})\n${GIT_REV}")
  39. else() # Tag is set, ignore branch
  40. set(VERSION_HTML "Release: ${GIT_TAG} (Commit: ${GIT_REV}${GIT_DIFF})\n${GIT_REV}")
  41. endif()
  42. if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/version.cpp)
  43. file(READ ${CMAKE_CURRENT_SOURCE_DIR}/version.cpp VERSION_)
  44. else()
  45. set(VERSION_ "")
  46. endif()
  47. if (NOT "${VERSION}" STREQUAL "${VERSION_}")
  48. file(WRITE ${CMAKE_CURRENT_SOURCE_DIR}/version.cpp "${VERSION}")
  49. file(WRITE ${CMAKE_CURRENT_SOURCE_DIR}/../sd-card/html/version.txt "${VERSION_HTML}")
  50. endif()
  51. #######################################################################
  52. #######################################################################
  53. FILE(GLOB_RECURSE app_sources ${CMAKE_SOURCE_DIR}/main/*.*)
  54. # idf_component_register(SRCS ${app_sources})
  55. idf_component_register(SRCS ${app_sources}
  56. INCLUDE_DIRS "."
  57. REQUIRES esp_psram)