| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- cmake_minimum_required(VERSION 3.5)
- include(${CMAKE_CURRENT_LIST_DIR}/../common/bin2array.cmake)
- set(TOOLCHAIN_PREFIX / CACHE PATH "Path to arm toolchain")
- set(STM32Cube_DIR / CACHE PATH "Path to STM32 hal library")
- set(FLASHER_DIR ${CMAKE_CURRENT_LIST_DIR}/../..)
- set(CMAKE_TOOLCHAIN_FILE ${FLASHER_DIR}/submodules/stm32-cmake/cmake/gcc_stm32.cmake)
- set(STM32_CHIP STM32F407VG)
- set(PORT STM32)
- project(stm32_flasher)
-
- enable_language(ASM)
- if(TARGET_SOC STREQUAL "ESP32_S2")
- set(binary_path ${CMAKE_CURRENT_LIST_DIR}/../binaries/ESP32_S2)
- elseif(TARGET_SOC STREQUAL "ESP8266")
- set(binary_path ${CMAKE_CURRENT_LIST_DIR}/../binaries/ESP8266)
- else()
- set(binary_path ${CMAKE_CURRENT_LIST_DIR}/../binaries/ESP32)
- endif()
- create_resources(${binary_path} Src/binaries.c)
- include_directories(${CMAKE_CURRENT_SOURCE_DIR} Inc)
-
- add_executable(${CMAKE_PROJECT_NAME}
- ../common/example_common.c
- Src/main.c
- Src/stm32f4xx_hal_msp.c
- Src/stm32f4xx_it.c
- Src/libc_compat.c
- Src/binaries.c)
- target_include_directories(${CMAKE_PROJECT_NAME} PRIVATE ../common)
- add_subdirectory(${FLASHER_DIR}/submodules ${CMAKE_BINARY_DIR}/submodules)
- add_subdirectory(${FLASHER_DIR} ${CMAKE_BINARY_DIR}/flasher)
- target_link_libraries(${CMAKE_PROJECT_NAME} PRIVATE stm_cube flasher)
-
- STM32_ADD_HEX_BIN_TARGETS(${CMAKE_PROJECT_NAME})
- add_custom_target(BuildBinary ALL)
- add_dependencies(BuildBinary ${CMAKE_PROJECT_NAME}.bin)
|