Alters the existing targets to use a boot.cc file instead of the
existing early_boot.c.
The name was updated to reflect the fact that it now contains a
pw_boot_PostMain() hook which is after early boot.
C++ was selected over C to give more language flexibility.
Change-Id: I18ca0b8720bf083d4f644f1ca994e8fd7adc89b6
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/16702
Commit-Queue: Ewout van Bekkum <ewout@google.com>
Reviewed-by: Armando Montanez <amontanez@google.com>
Reviewed-by: Keir Mierle <keir@google.com>
Require targets to explicitly import pigweed variable definitions. This
moves out some necessary logic from the BUILDCONFIG.gn file.
Change-Id: If9c9fe5a680cc9d897a0e8a55889873be618ed84
This change replaces the implicit overrides of the default GN target
types in BUILDCONFIG.gn with explicit pw_* versions. This is done to
allow Pigweed to build within larger GN projects without modifying their
BUILDCONFIG files.
Change-Id: I1d1e41d5e9bde8fe076f7031f3c2b98b9630ff70
Adds pw_PreStaticConstructorInit() to allow ARMv7-M targets that use
pw_boot to perform initialization before C++ static constructors are
run. Updates stm32f429i-disc1 to enable FPU before static constructors
so static constructors can safely perform FPU operations if necessary.
Change-Id: I66cfa82096719f59c42c84e4bafd0e1740002e09