Template for C TDD that uses the cpputest framework/test harness. This template uses Makefiles instead of CMake
Go to file Use this template
Jake Goodwin 50116f3d7b Added new stuff to readme todo.
added startup and cmsis stuff to todo list.
2025-01-20 19:49:41 -08:00
.template_files fixed issue with external linkage of "C" files 2024-03-20 16:10:10 -07:00
build Added empty dirs and hidden placeholders 2024-03-06 20:57:41 -08:00
components Added componets dir. 2025-01-20 19:48:06 -08:00
cpputest@c3625dc668 added cpputest as a git-submodule 2024-03-06 21:29:39 -08:00
docs Added empty dirs and hidden placeholders 2024-03-06 20:57:41 -08:00
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
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 added more files to ignore 2024-03-12 22:38:22 -07:00
.gitmodules added cpputest as a git-submodule 2024-03-06 21:29:39 -08:00
CMakeLists.txt Added ASM to languages 2025-01-20 19:48:47 -08:00
Doxyfile Simplified project name. 2024-11-10 06:35:47 -08:00
README.md Added new stuff to readme todo. 2025-01-20 19:49:41 -08:00
compile_commands.json added the compile commands symlink 2024-03-12 22:39:28 -07:00
example.ld Added an example linker file for ref 2024-11-10 12:49:15 -08:00
linker.ld copied over logic from cortex-M4 example repo 2025-01-19 21:36:36 -08:00
otto.sh removed filecheck for formatting file. 2024-08-04 09:28:22 -07:00
setup.sh updated the build_cpputest() shell function 2024-03-06 21:47:04 -08:00
stm32-toolchain.cmake Created STM32 toolchain file 2024-11-07 00:36:49 -08:00

README.md

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