third_party/freertos: CM4F port build targets

Adds build targets for the ARM GCC Cortex-M4F FreeRTOS port.

Change-Id: I3f732cd8ccabd6c37893af04dcf369a974e281a0
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/72960
Reviewed-by: Keir Mierle <keir@google.com>
Commit-Queue: Armando Montanez <amontanez@google.com>
diff --git a/third_party/freertos/BUILD.gn b/third_party/freertos/BUILD.gn
index 045d1bb..f297ef5 100644
--- a/third_party/freertos/BUILD.gn
+++ b/third_party/freertos/BUILD.gn
@@ -100,6 +100,24 @@
       pw_third_party_freertos_PORT,
     ]
   }
+
+  # ARM CM4F port of FreeRTOS.
+  config("arm_cm4f_includes") {
+    include_dirs = [ "$dir_pw_third_party_freertos/portable/GCC/ARM_CM4F" ]
+    visibility = [ ":arm_cm4f" ]
+  }
+
+  pw_source_set("arm_cm4f") {
+    public_configs = [
+      ":arm_cm4f_includes",
+      ":public_includes",
+    ]
+    public_deps = [ pw_third_party_freertos_CONFIG ]
+    public =
+        [ "$dir_pw_third_party_freertos/portable/GCC/ARM_CM4F/portmacro.h" ]
+    sources = [ "$dir_pw_third_party_freertos/portable/GCC/ARM_CM4F/port.c" ]
+    configs = [ ":disable_warnings" ]
+  }
 } else {
   group("freertos") {
   }