CMakeLists.txt 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. cmake_minimum_required(VERSION 3.22)
  2. #
  3. # This file is generated only once,
  4. # and is not re-generated if converter is called multiple times.
  5. #
  6. # User is free to modify the file as much as necessary
  7. #
  8. # Setup compiler settings
  9. set(CMAKE_C_STANDARD 11)
  10. set(CMAKE_C_STANDARD_REQUIRED ON)
  11. set(CMAKE_C_EXTENSIONS ON)
  12. # Define the build type
  13. if(NOT CMAKE_BUILD_TYPE)
  14. set(CMAKE_BUILD_TYPE "Debug")
  15. endif()
  16. # Set the project name
  17. set(CMAKE_PROJECT_NAME lora_bl)
  18. # Enable compile command to ease indexing with e.g. clangd
  19. set(CMAKE_EXPORT_COMPILE_COMMANDS TRUE)
  20. # Core project settings
  21. project(${CMAKE_PROJECT_NAME})
  22. message("Build type: " ${CMAKE_BUILD_TYPE})
  23. # Enable CMake support for ASM and C languages
  24. enable_language(C ASM)
  25. # Create an executable object type
  26. add_executable(${CMAKE_PROJECT_NAME}
  27. Core/Src/E104-BT5005A.c
  28. Core/Inc/E104-BT5005A.h)
  29. # Add STM32CubeMX generated sources
  30. add_subdirectory(cmake/stm32cubemx)
  31. # Link directories setup
  32. target_link_directories(${CMAKE_PROJECT_NAME} PRIVATE
  33. # Add user defined library search paths
  34. )
  35. # Add sources to executable
  36. target_sources(${CMAKE_PROJECT_NAME} PRIVATE
  37. # Add user sources here
  38. )
  39. # Add include paths
  40. target_include_directories(${CMAKE_PROJECT_NAME} PRIVATE
  41. # Add user defined include paths
  42. )
  43. # Add project symbols (macros)
  44. target_compile_definitions(${CMAKE_PROJECT_NAME} PRIVATE
  45. # Add user defined symbols
  46. )
  47. # Remove wrong libob.a library dependency when using cpp files
  48. list(REMOVE_ITEM CMAKE_C_IMPLICIT_LINK_LIBRARIES ob)
  49. # Add linked libraries
  50. target_link_libraries(${CMAKE_PROJECT_NAME}
  51. stm32cubemx
  52. # Add user defined libraries
  53. )