[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>
diff --git a/third_party/pigweed b/third_party/pigweed
index 6699145..708d38c 160000
--- a/third_party/pigweed
+++ b/third_party/pigweed
@@ -1 +1 @@
-Subproject commit 66991455cfa0e1340903459fdf36ccde190342f9
+Subproject commit 708d38cc4d2f35c355b85e6026e847e2762912fd