Template for C TDD that uses the cpputest framework/test harness. This template uses Makefiles instead of CMake
Find a file Use this template
2025-01-22 20:11:10 -08:00
.template_files fixed issue with external linkage of "C" files 2024-03-20 16:10:10 -07:00
build
components Added componets dir. 2025-01-20 19:48:06 -08:00
cpputest@c3625dc668
docs
inc Added and included the "inc" directory in the project root. Also added in line to include the mocks dir 2024-06-14 13:38:04 -07:00
linker_scripts Added linker files from stm32cubeide for the g0b1 series. 2025-01-22 20:11:10 -08:00
mocks added an empty cmake file into mocks 2024-03-15 14:23:11 -07:00
src Setup /src/CmakeLists.txt for variable usage 2024-11-10 06:37:20 -08:00
tests Added comment for automation use. 2024-03-18 19:30:40 -07:00
.clang-format fixed cli flags 2024-08-04 09:27:15 -07:00
.gitignore
.gitmodules
CMakeLists.txt Added ASM to languages 2025-01-20 19:48:47 -08:00
compile_commands.json added the compile commands symlink 2024-03-12 22:39:28 -07:00
Doxyfile Simplified project name. 2024-11-10 06:35:47 -08:00
otto.sh removed filecheck for formatting file. 2024-08-04 09:28:22 -07:00
README.md Added new stuff to readme todo. 2025-01-20 19:49:41 -08:00
setup.sh
stm32-toolchain.cmake Added commented out sections for other common stm32 mcus 2025-01-20 19:50:22 -08:00

STM32 CMake+CppuTest Template

Requirements

  • An ARM compiler and linker.
  • Bash or a POSIX shell.
  • CMAKE version 3.20 or newer.
  • Cpputest 3.8 or newer.
  • Clangd LSP.
  • Git version control.

Instructions

  1. Clone/copy the repo locally.
  2. Check the requirements to make sure you're development enviroment is ready.
  3. Update the linker script files to target your current uC.
  4. Change line 45 of Doxyfile with the project name.

Running Tests

TODO

  • Create or copy a linker.ld file.
  • Add startup files.
  • Add messages for case where tool-chain is missing.
  • Check for FreeBSD & Linux compat.
  • Add CMSIS stuff.
  • Add in RTOS stuff.
  • Add in FreeRTOS submodule.
  • Add in Zephyr submodule.
  • Add STM32F4XX support
  • Add STM32G0B1 support
  • Add STM32F1XX support