From b297d0233b0f50d57e5917082751a9bde99cf4ff Mon Sep 17 00:00:00 2001 From: Khalil Estell Date: Sat, 13 Dec 2025 06:05:26 -0800 Subject: [PATCH] Add carve out for coroutine support For some reason LLVM 20 cannot build coroutines for cortex-m0, m0plus, and m1. There is a tail call optimization that causes the linker to crash. This simply removes those architectures when coroutines are needed. --- .github/workflows/package_and_upload_all.yml | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/.github/workflows/package_and_upload_all.yml b/.github/workflows/package_and_upload_all.yml index 5236fc3..1b524ac 100644 --- a/.github/workflows/package_and_upload_all.yml +++ b/.github/workflows/package_and_upload_all.yml @@ -40,6 +40,9 @@ on: modules_support_needed: type: boolean default: False + coroutine_support_needed: + type: boolean + default: False ci_ref: type: string default: "5.x.y" @@ -144,6 +147,18 @@ jobs: - name: 📦 Build packages for all Cortex-M architectures working-directory: target-repo + if: ${{ inputs.coroutine_support_needed == true }} + run: | + bash ../ci-repo/scripts/baremetal_package.sh \ + --dir ${{ inputs.dir }} \ + --version ${{ inputs.version }} \ + --compiler-profile hal/tc/llvm \ + --conan-version ${{ inputs.conan_version }} \ + --arch-list cortex-m3,cortex-m4,cortex-m4f,cortex-m7f,cortex-m7d,cortex-m23,cortex-m33,cortex-m33f,cortex-m35pf,cortex-m55,cortex-m85 + + - name: 📦 Build packages for all Cortex-M architectures + working-directory: target-repo + if: ${{ inputs.coroutine_support_needed == false }} run: | bash ../ci-repo/scripts/baremetal_package.sh \ --dir ${{ inputs.dir }} \