ソースを参照

[add] llvm-arm workflows

guozhanxin 2 年 前
コミット
ca873fae30

+ 15 - 1
.github/workflows/action.yml

@@ -280,6 +280,10 @@ jobs:
                 - "bluetrum/ab32vg1-ab-prougen"
                 - "bouffalo_lab/bl60x"
                 - "bouffalo_lab/bl70x"
+         -  RTT_BSP: "llvm-arm" 
+            RTT_TOOL_CHAIN: "llvm-arm"
+            SUB_RTT_BSP:  
+                - "stm32/stm32l475-atk-pandora"
     steps:
       - uses: actions/checkout@v3
       - name: Set up Python
@@ -291,7 +295,7 @@ jobs:
         shell: bash
         run: |
           sudo apt-get update
-          sudo apt-get -qq install gcc-multilib libncurses5-dev scons
+          sudo apt-get -qq install gcc-multilib libncurses5 libncurses5-dev libncursesw5-dev scons
           sudo python -m pip install --upgrade pip -qq
           pip install requests -qq
           git config --global http.postBuffer 524288000
@@ -308,6 +312,16 @@ jobs:
           /opt/gcc-arm-none-eabi-10-2020-q4-major/bin/arm-none-eabi-gcc --version
           echo "RTT_EXEC_PATH=/opt/gcc-arm-none-eabi-10-2020-q4-major/bin" >> $GITHUB_ENV
 
+      - name: Install LLVM-Arm ToolChains
+        if: ${{ matrix.legs.RTT_TOOL_CHAIN == 'llvm-arm' && success() }}
+        shell: bash
+        run: |
+          wget -q https://github.com/ARM-software/LLVM-embedded-toolchain-for-Arm/releases/download/release-16.0.0/LLVMEmbeddedToolchainForArm-16.0.0-Linux-x86_64.tar.gz
+          sudo tar zxf LLVMEmbeddedToolchainForArm-16.0.0-Linux-x86_64.tar.gz -C /opt
+          /opt/LLVMEmbeddedToolchainForArm-16.0.0-Linux-x86_64/bin/clang --version
+          echo "RTT_CC=llvm-arm" >> $GITHUB_ENV
+          echo "RTT_EXEC_PATH=/opt/LLVMEmbeddedToolchainForArm-16.0.0-Linux-x86_64/bin" >> $GITHUB_ENV
+
       - name: Install AArch64 ToolChains
         if: ${{ matrix.legs.RTT_TOOL_CHAIN == 'sourcery-aarch64' && success() }}
         shell: bash

+ 1 - 1
components/libc/compilers/common/extension/SConscript

@@ -9,7 +9,7 @@ group = []
 
 src += Glob('*.c')
 
-if rtconfig.PLATFORM != 'gcc' and rtconfig.PLATFORM != 'llvm-arm':
+if rtconfig.PLATFORM not in ['gcc', 'llvm-arm']:
     group = DefineGroup('Compiler', src, depend = [''], CPPPATH = CPPPATH)
 
 list = os.listdir(cwd)