diff --git a/.github/workflows/bsp_buildings.yml b/.github/workflows/bsp_buildings.yml index 8a17fb08e07..eb18aa0755e 100644 --- a/.github/workflows/bsp_buildings.yml +++ b/.github/workflows/bsp_buildings.yml @@ -41,14 +41,23 @@ jobs: RTT_TOOL_CHAIN: "sourcery-arm" SUB_RTT_BSP: - "stm32/stm32f407-rt-spark" + - RTT_BSP: "simulator" + RTT_TOOL_CHAIN: "gcc" + SUB_RTT_BSP: + - "simulator" + + - RTT_BSP: "ESP32C3" + RTT_TOOL_CHAIN: "sourcery-riscv32-esp32" + SUB_RTT_BSP: + - "ESP32_C3" - RTT_BSP: "RTduino/Arduino Libraries (STM32F412 Nucleo)" RTT_TOOL_CHAIN: "sourcery-arm" SUB_RTT_BSP: - "stm32/stm32f412-st-nucleo" - - RTT_BSP: "RTduino/Arduino Libraries (Raspberry Pico)" - RTT_TOOL_CHAIN: "sourcery-arm" - SUB_RTT_BSP: - - "raspberry-pico" + - RTT_BSP: "llvm-arm" + RTT_TOOL_CHAIN: "llvm-arm" + SUB_RTT_BSP: + - "stm32/stm32l475-atk-pandora" - RTT_BSP: "others_at32_hc32_ht32" RTT_TOOL_CHAIN: "sourcery-arm" SUB_RTT_BSP: @@ -109,6 +118,13 @@ jobs: - "hc32l136" - "yichip/yc3121-pos" - "fm33lc026" + - RTT_BSP: "riscv-none" + RTT_TOOL_CHAIN: "sourcery-riscv-none-embed" + SUB_RTT_BSP: + - "k210" + - "wch/risc-v/ch32v208w-r0" + - "wch/risc-v/ch32v307v-r1" + - "wch/risc-v/yd-ch32v307vct6" - RTT_BSP: "stm32l4" RTT_TOOL_CHAIN: "sourcery-arm" SUB_RTT_BSP: @@ -130,6 +146,12 @@ jobs: - "stm32/stm32l496-ali-developer" - "stm32/stm32l496-st-nucleo" - "stm32/stm32l496-st-discovery" + - RTT_BSP: "mips" + RTT_TOOL_CHAIN: "sourcery-mips" + SUB_RTT_BSP: + - "loongson/ls1bdev" + - "loongson/ls2kdev" + - "loongson/ls1cdev" - RTT_BSP: "stm32f0_f1" RTT_TOOL_CHAIN: "sourcery-arm" SUB_RTT_BSP: @@ -339,12 +361,7 @@ jobs: - "microchip/same70" - "smartfusion2" - "maxim/max32660-evsys" - - RTT_BSP: "mips" - RTT_TOOL_CHAIN: "sourcery-mips" - SUB_RTT_BSP: - - "loongson/ls1bdev" - - "loongson/ls2kdev" - - "loongson/ls1cdev" + - RTT_BSP: "aarch64" RTT_TOOL_CHAIN: "sourcery-aarch64" SUB_RTT_BSP: @@ -353,13 +370,10 @@ jobs: - "raspberry-pi/raspi4-64" #- "rockchip/rk3568" too long #- "phytium/aarch64" too long - - RTT_BSP: "riscv-none" - RTT_TOOL_CHAIN: "sourcery-riscv-none-embed" - SUB_RTT_BSP: - - "k210" - - "wch/risc-v/ch32v208w-r0" - - "wch/risc-v/ch32v307v-r1" - - "wch/risc-v/yd-ch32v307vct6" +# - RTT_BSP: "RTduino/Arduino Libraries (Raspberry Pico)" +# RTT_TOOL_CHAIN: "sourcery-arm" +# SUB_RTT_BSP: +# - "raspberry-pico" - RTT_BSP: "riscv64-unknown" RTT_TOOL_CHAIN: "sourcery-riscv64-unknown-elf" SUB_RTT_BSP: @@ -378,18 +392,7 @@ jobs: - "hpmicro/hpm5301evklite" - "hpmicro/hpm6800evk" - "hpmicro/hpm6e00evk" - - RTT_BSP: "llvm-arm" - RTT_TOOL_CHAIN: "llvm-arm" - SUB_RTT_BSP: - - "stm32/stm32l475-atk-pandora" - - RTT_BSP: "simulator" - RTT_TOOL_CHAIN: "gcc" - SUB_RTT_BSP: - - "simulator" - - RTT_BSP: "ESP32C3" - RTT_TOOL_CHAIN: "sourcery-riscv32-esp32" - SUB_RTT_BSP: - - "ESP32_C3" + - RTT_BSP: "i386-unknown" RTT_TOOL_CHAIN: "sourcery-i386-unknown-elf" SUB_RTT_BSP: @@ -420,16 +423,26 @@ jobs: echo "RTT_ROOT=${{ github.workspace }}" >> $GITHUB_ENV echo "RTT_CC=gcc" >> $GITHUB_ENV echo "export PATH=~/.env/tools/scripts:$PATH" > ~/.env/env.sh - + - name: Cache GCC Arm Toolchain + if: ${{ matrix.legs.RTT_TOOL_CHAIN == 'sourcery-arm'}} + id: cache-gcc-arm + uses: actions/cache@main + with: + path: /opt/gcc-arm-none-eabi-10-2020-q4-major + key: ${{ runner.os }}-arm-none-eabi-10-2020-q4-major - name: Install Arm ToolChains - if: ${{ matrix.legs.RTT_TOOL_CHAIN == 'sourcery-arm' && success() }} + if: ${{ matrix.legs.RTT_TOOL_CHAIN == 'sourcery-arm' && (steps.cache-gcc-arm.outputs.cache-hit != 'true') }} shell: bash run: | wget -q https://github.com/RT-Thread/toolchains-ci/releases/download/v1.3/gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2 sudo tar xjf gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2 -C /opt + - name: Install Arm ToolChains2 + if: ${{ matrix.legs.RTT_TOOL_CHAIN == 'sourcery-arm'}} + shell: bash + run: | /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 diff --git a/.github/workflows/compile_bsp_with_drivers.yml b/.github/workflows/compile_bsp_with_drivers.yml index 38287ec560d..7221e83ddda 100644 --- a/.github/workflows/compile_bsp_with_drivers.yml +++ b/.github/workflows/compile_bsp_with_drivers.yml @@ -13,20 +13,7 @@ name: BSP compilation with more drivers # Controls when the action will run. Triggers the workflow on push or pull request # events but only for the master branch on: - push: - branches: - - master - paths-ignore: - - documentation/** - - '**/README.md' - - '**/README_zh.md' - pull_request: - branches: - - master - paths-ignore: - - documentation/** - - '**/README.md' - - '**/README_zh.md' + workflow_dispatch: #disable permissions: contents: read # to fetch code (actions/checkout) @@ -66,5 +53,5 @@ jobs: if: ${{ success() }} shell: bash run: | - # source ~/.env/env.sh - # python tools/ci/compile_bsp_with_drivers.py + source ~/.env/env.sh + python tools/ci/compile_bsp_with_drivers.py diff --git a/tools/ci/bsp_buildings.py b/tools/ci/bsp_buildings.py index 99ce680e8cb..5d4454e1f7f 100644 --- a/tools/ci/bsp_buildings.py +++ b/tools/ci/bsp_buildings.py @@ -50,10 +50,6 @@ def build_bsp(bsp, scons_args=''): cd {rtt_root} scons -C bsp/{bsp} -j{nproc} {scons_args} - cd {rtt_root}/bsp/{bsp} - scons -c > /dev/null - rm -rf packages - """ success = True os.chdir(rtt_root) @@ -67,14 +63,14 @@ def build_bsp(bsp, scons_args=''): nproc = multiprocessing.cpu_count() os.chdir(rtt_root) - cmd = f'scons -C bsp/{bsp} -j{nproc} {scons_args}' + cmd = f'scons -C bsp/{bsp} -j12 {scons_args}' __, res = run_cmd(cmd, output_info=True) if res != 0: success = False os.chdir(f'{rtt_root}/bsp/{bsp}') - run_cmd('scons -c', output_info=False) + #run_cmd('scons -c', output_info=False) #pkg_dir = os.path.join(rtt_root, 'bsp', bsp, 'packages') #shutil.rmtree(pkg_dir, ignore_errors=True)