[roll third_party/pigweed] stm32cube: Add generic build script

This adds a generic stm32cube build script. The pw_package creates a
text file listing all of the relavent files in the repos. The python
script then reads the text file and lists the needed source files and
headers.

The python script also inserts a `pw_stm32cube_Init()` into the startup
scripts and converts .icf -> .ld linker scripts.

Although the API's are not guaranteed to be compatible across families,
many of the common API's (like GPIO) are identical. This CL adds a
common header, so that integrations targeting multiple families can be
built.

I have tested this integration on F2, F4, and L5 boards.

Original-Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/42924

third_party/pigweed Rolled-Commits: 66991455cfa0e13..708d38cc4d2f35c
Roller-URL: https://ci.chromium.org/b/8846334690477782560
Cq-Cl-Tag: roller-builder:pigweed-experimental-roller
Cq-Cl-Tag: roller-bid:8846334690477782560
CQ-Do-Not-Cancel-Tryjobs: true
Change-Id: Ib912c258824c3758f82af3d7c883ec90a3a6a0a4
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/experimental/+/46803
Reviewed-by: Pigweed Integration Roller <pigweed-integration-roller@pigweed.google.com.iam.gserviceaccount.com>
Commit-Queue: Pigweed Integration Roller <pigweed-integration-roller@pigweed.google.com.iam.gserviceaccount.com>
1 file changed
tree: d880522ad5136583d5bcad2549378e612388b654
  1. applications/
  2. build_overrides/
  3. pw_board_led/
  4. pw_board_led_arduino/
  5. pw_board_led_host/
  6. pw_board_led_stm32cubef4/
  7. pw_board_led_stm32f429i_disc1/
  8. pw_spin_delay/
  9. pw_spin_delay_arduino/
  10. pw_spin_delay_host/
  11. pw_spin_delay_stm32cubef4/
  12. pw_spin_delay_stm32f429i_disc1/
  13. pw_sys_io_stm32cubef4/
  14. targets/
  15. third_party/
  16. tools/
  17. .gitattributes
  18. .gitignore
  19. .gitmodules
  20. .gn
  21. activate.bat
  22. banner.txt
  23. bootstrap.bat
  24. bootstrap.sh
  25. BUILD.gn
  26. BUILDCONFIG.gn
  27. env_setup.json
  28. navbar.md
  29. PW_PLUGINS
  30. README.md
README.md

Pigweed Experimental

This repository contains experimental pigweed modules.

Repository setup

Clone this repo with --recursive to get all required submodules.

git clone --recursive https://pigweed.googlesource.com/pigweed/experimental

This will pull the Pigweed source repository into third_party/pigweed. If you already cloned but forgot to --recursive run git submodule update --init to pull all submodules.