update circle ci to build make (#2769)
* update build.py script to work with circleci * build make with circle ci * build vm for esp only * nrf imxrt with large resource * nrf imxrt with large resource * remove 2 of nrf boards
This commit is contained in:
46
.github/workflows/build.yml
vendored
46
.github/workflows/build.yml
vendored
@@ -51,7 +51,6 @@ jobs:
|
||||
# Build CMake
|
||||
# ---------------------------------------
|
||||
cmake:
|
||||
# if: false
|
||||
needs: set-matrix
|
||||
uses: ./.github/workflows/build_util.yml
|
||||
strategy:
|
||||
@@ -60,6 +59,7 @@ jobs:
|
||||
toolchain:
|
||||
# - 'arm-clang' is built by circle-ci in PR
|
||||
- 'aarch64-gcc'
|
||||
- 'arm-gcc'
|
||||
- 'msp430-gcc'
|
||||
- 'riscv-gcc'
|
||||
with:
|
||||
@@ -69,41 +69,28 @@ jobs:
|
||||
one-per-family: ${{ github.event_name == 'push' }}
|
||||
|
||||
# ---------------------------------------
|
||||
# Build CMake arm-gcc
|
||||
# only build with push, for PR: all board is built by circle-ci
|
||||
# ---------------------------------------
|
||||
cmake-arm-gcc:
|
||||
if: github.event_name == 'push'
|
||||
needs: set-matrix
|
||||
uses: ./.github/workflows/build_util.yml
|
||||
with:
|
||||
build-system: 'cmake'
|
||||
toolchain: 'arm-gcc'
|
||||
build-args: ${{ toJSON(fromJSON(needs.set-matrix.outputs.json)['arm-gcc'].family) }}
|
||||
one-per-family: true
|
||||
|
||||
# ---------------------------------------
|
||||
# Build Make
|
||||
# Build Make (built by circle-ci in PR, only build on push here)
|
||||
# ---------------------------------------
|
||||
make:
|
||||
# if: false
|
||||
if: github.event_name == 'push'
|
||||
needs: set-matrix
|
||||
uses: ./.github/workflows/build_util.yml
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
toolchain:
|
||||
# 'arm-clang' would be built by circle-ci
|
||||
- 'aarch64-gcc'
|
||||
# 'arm-clang'
|
||||
- 'arm-gcc'
|
||||
- 'aarch64-gcc'
|
||||
- 'msp430-gcc'
|
||||
- 'riscv-gcc'
|
||||
- 'rx-gcc'
|
||||
- 'esp-idf' # buid-system is ignored
|
||||
with:
|
||||
build-system: 'make'
|
||||
toolchain: ${{ matrix.toolchain }}
|
||||
build-args: ${{ toJSON(fromJSON(needs.set-matrix.outputs.json)[matrix.toolchain].family) }}
|
||||
one-per-family: ${{ github.event_name == 'push' }}
|
||||
one-per-family: true
|
||||
|
||||
# ---------------------------------------
|
||||
# Build Make on Windows/MacOS
|
||||
@@ -122,29 +109,10 @@ jobs:
|
||||
build-args: '["stm32h7"]'
|
||||
one-per-family: true
|
||||
|
||||
# ---------------------------------------
|
||||
# Build Espressif
|
||||
# ---------------------------------------
|
||||
espressif:
|
||||
# if: false
|
||||
uses: ./.github/workflows/build_util.yml
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
board:
|
||||
- 'espressif_kaluga_1'
|
||||
- 'espressif_s3_devkitm'
|
||||
with:
|
||||
build-system: 'cmake'
|
||||
toolchain: 'esp-idf'
|
||||
toolchain_version: 'v5.1.1'
|
||||
build-args: '["-b${{ matrix.board }}"]'
|
||||
|
||||
# ---------------------------------------
|
||||
# Build IAR on HFP self-hosted
|
||||
# ---------------------------------------
|
||||
arm-iar:
|
||||
# if: false
|
||||
if: github.repository_owner == 'hathach'
|
||||
needs: set-matrix
|
||||
runs-on: [self-hosted, Linux, X64, hifiphile]
|
||||
|
7
.github/workflows/build_util.yml
vendored
7
.github/workflows/build_util.yml
vendored
@@ -9,9 +9,6 @@ on:
|
||||
toolchain:
|
||||
required: true
|
||||
type: string
|
||||
toolchain_version:
|
||||
required: false
|
||||
type: string
|
||||
build-args:
|
||||
required: true
|
||||
type: string
|
||||
@@ -40,7 +37,7 @@ jobs:
|
||||
uses: ./.github/actions/setup_toolchain
|
||||
with:
|
||||
toolchain: ${{ inputs.toolchain }}
|
||||
toolchain_version: ${{ inputs.toolchain_version }}
|
||||
toolchain_version: 'v5.1.1'
|
||||
|
||||
- name: Get Dependencies
|
||||
uses: ./.github/actions/get_deps
|
||||
@@ -60,7 +57,7 @@ jobs:
|
||||
- name: Build
|
||||
run: |
|
||||
if [ "${{ inputs.toolchain }}" == "esp-idf" ]; then
|
||||
docker run --rm -v $PWD:/project -w /project espressif/idf:${{ inputs.toolchain_version }} python3 tools/build.py ${{ matrix.arg }}
|
||||
docker run --rm -v $PWD:/project -w /project espressif/idf:v5.1.1 python tools/build.py ${{ matrix.arg }}
|
||||
else
|
||||
python tools/build.py -s ${{ inputs.build-system }} ${{ steps.setup-toolchain.outputs.build_option }} ${{ steps.set-one-per-family.outputs.build_option }} ${{ matrix.arg }}
|
||||
fi
|
||||
|
9
.github/workflows/ci_set_matrix.py
vendored
9
.github/workflows/ci_set_matrix.py
vendored
@@ -6,6 +6,7 @@ toolchain_list = [
|
||||
"arm-clang",
|
||||
"arm-iar",
|
||||
"arm-gcc",
|
||||
"esp-idf",
|
||||
"msp430-gcc",
|
||||
"riscv-gcc",
|
||||
"rx-gcc"
|
||||
@@ -31,15 +32,19 @@ family_list = {
|
||||
"ra": ["arm-gcc"],
|
||||
"rp2040": ["arm-gcc"],
|
||||
"rx": ["rx-gcc"],
|
||||
"samd11 samd21 saml2x": ["arm-gcc", "arm-clang"],
|
||||
"samd11 saml2x": ["arm-gcc", "arm-clang"],
|
||||
"samd21": ["arm-gcc", "arm-clang"],
|
||||
"samd5x_e5x samg": ["arm-gcc", "arm-clang"],
|
||||
"stm32f0 stm32f1 stm32f2 stm32f3": ["arm-gcc", "arm-clang", "arm-iar"],
|
||||
"stm32f4": ["arm-gcc", "arm-clang", "arm-iar"],
|
||||
"stm32f7": ["arm-gcc", "arm-clang", "arm-iar"],
|
||||
"stm32g0 stm32g4 stm32h5": ["arm-gcc", "arm-clang", "arm-iar"],
|
||||
"stm32h7": ["arm-gcc", "arm-clang", "arm-iar"],
|
||||
"stm32l0 stm32l4 stm32u5 stm32wb": ["arm-gcc", "arm-clang", "arm-iar"],
|
||||
"stm32l0 stm32l4": ["arm-gcc", "arm-clang", "arm-iar"],
|
||||
"stm32u5 stm32wb": ["arm-gcc", "arm-clang", "arm-iar"],
|
||||
"xmc4000": ["arm-gcc"],
|
||||
"-bespressif_kaluga_1": ["esp-idf"],
|
||||
"-bespressif_s3_devkitm": ["esp-idf"],
|
||||
}
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user