#
# Copyright (c) 2006-2023, RT-Thread Development Team
#
# SPDX-License-Identifier: Apache-2.0
#
# Change Logs:
# Date           Author       Notes
# 2023-06-27     dejavudwh    the first version
#

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'

permissions:
  contents: read # to fetch code (actions/checkout)

jobs:
  build:
    runs-on: ubuntu-latest
    name: BSP Compilation with More Drivers

    steps:
      - uses: actions/checkout@v3
      - name: Set up Python
        uses: actions/setup-python@v3
        with:
          python-version: 3.8

      - name: Install Tools
        shell: bash
        run: |
          sudo apt-get update
          sudo apt-get -qq install gcc-multilib libncurses5 libncurses5-dev libncursesw5-dev scons
          sudo python -m pip install --upgrade pip -qq
          git config --global http.postBuffer 524288000
          git remote -v
          git fetch origin
          python -c "import tools.menuconfig; tools.menuconfig.touch_env()"

      - name: Install Arm ToolChains
        if: ${{ success() }}
        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
          /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: Bsp Scons Compile
        if: ${{ success() }}
        shell: bash
        run: |
          source ~/.env/env.sh
          #python tools/ci/compile_bsp_with_drivers.py