use already built mpy-cross

This commit is contained in:
MicroDev 2023-02-10 16:38:25 +05:30
parent e3b924b1b9
commit baaa2362c2
No known key found for this signature in database
GPG Key ID: 2C0867BE60967730
3 changed files with 60 additions and 33 deletions

View File

@ -21,11 +21,15 @@ jobs:
runs-on: ubuntu-20.04 runs-on: ubuntu-20.04
outputs: outputs:
build-doc: ${{ steps.set-matrix.outputs.build-doc }} build-doc: ${{ steps.set-matrix.outputs.build-doc }}
build-boards: ${{ steps.set-matrix.outputs.build-boards }}
boards-aarch: ${{ steps.set-matrix.outputs.boards-aarch }} boards-aarch: ${{ steps.set-matrix.outputs.boards-aarch }}
boards-arm: ${{ steps.set-matrix.outputs.boards-arm }} boards-arm: ${{ steps.set-matrix.outputs.boards-arm }}
boards-espressif: ${{ steps.set-matrix.outputs.boards-espressif }} boards-espressif: ${{ steps.set-matrix.outputs.boards-espressif }}
boards-riscv: ${{ steps.set-matrix.outputs.boards-riscv }} boards-riscv: ${{ steps.set-matrix.outputs.boards-riscv }}
cp-version: ${{ steps.set-up-submodules.outputs.version }} cp-version: ${{ steps.set-up-submodules.outputs.version }}
env:
MICROPY_CPYTHON3: python3.8
MICROPY_MICROPYTHON: ${{ github.workspace }}/ports/unix/micropython-coverage
steps: steps:
- name: Dump GitHub context - name: Dump GitHub context
run: echo "$GITHUB_CONTEXT" run: echo "$GITHUB_CONTEXT"
@ -39,14 +43,14 @@ jobs:
- name: Set up python - name: Set up python
uses: actions/setup-python@v4 uses: actions/setup-python@v4
with: with:
python-version: "3.x" python-version: 3.x
- name: Duplicate USB VID/PID check - name: Duplicate USB VID/PID check
run: python3 -u -m tools.ci_check_duplicate_usb_vid_pid run: python3 -u -m tools.ci_check_duplicate_usb_vid_pid
- name: Set up submodules - name: Set up submodules
id: set-up-submodules id: set-up-submodules
uses: ./.github/actions/fetch_submodules uses: ./.github/actions/fetch_submodules
with: with:
cache: "cache" cache: cache
version: true version: true
- name: Install dependencies - name: Install dependencies
run: | run: |
@ -60,24 +64,27 @@ jobs:
python3 --version python3 --version
- name: Build mpy-cross - name: Build mpy-cross
run: make -C mpy-cross -j2 run: make -C mpy-cross -j2
- uses: actions/upload-artifact@v3
with:
name: mpy-cross
path: mpy-cross/mpy-cross
- name: Build unix port - name: Build unix port
run: | run: make -C ports/unix VARIANT=coverage -j2
make -C ports/unix VARIANT=coverage -j2
- name: Test all - name: Test all
run: MICROPY_CPYTHON3=python3.8 MICROPY_MICROPYTHON=../ports/unix/micropython-coverage ./run-tests.py -j1 run: ./run-tests.py -j2
working-directory: tests working-directory: tests
- name: Print failure info - name: Print failure info
run: MICROPY_CPYTHON3=python3.8 MICROPY_MICROPYTHON=../ports/unix/micropython-coverage ./run-tests.py -j1 --print-failures run: ./run-tests.py -j2 --print-failures
if: failure() if: failure()
working-directory: tests working-directory: tests
- name: Native Tests - name: Native Tests
run: MICROPY_CPYTHON3=python3.8 MICROPY_MICROPYTHON=../ports/unix/micropython-coverage ./run-tests.py -j1 --emit native run: ./run-tests.py -j2 --emit native
working-directory: tests working-directory: tests
- name: mpy Tests - name: mpy Tests
run: MICROPY_CPYTHON3=python3.8 MICROPY_MICROPYTHON=../ports/unix/micropython-coverage ./run-tests.py -j1 --via-mpy -d basics float micropython run: ./run-tests.py -j2 --via-mpy -d basics float micropython
working-directory: tests working-directory: tests
- name: Native mpy Tests - name: Native mpy Tests
run: MICROPY_CPYTHON3=python3.8 MICROPY_MICROPYTHON=../ports/unix/micropython-coverage ./run-tests.py -j1 --via-mpy --emit native -d basics float micropython run: ./run-tests.py -j2 --via-mpy --emit native -d basics float micropython
working-directory: tests working-directory: tests
- name: Build native modules - name: Build native modules
run: | run: |
@ -90,7 +97,7 @@ jobs:
make -C examples/natmod/ure make -C examples/natmod/ure
make -C examples/natmod/uzlib make -C examples/natmod/uzlib
- name: Test native modules - name: Test native modules
run: MICROPY_CPYTHON3=python3.8 MICROPY_MICROPYTHON=../ports/unix/micropython-coverage ./run-natmodtests.py extmod/{btree*,framebuf*,uheapq*,ure*,uzlib*}.py run: ./run-natmodtests.py extmod/{btree*,framebuf*,uheapq*,ure*,uzlib*}.py
working-directory: tests working-directory: tests
- name: Build mpy-cross.static-aarch64 - name: Build mpy-cross.static-aarch64
run: make -C mpy-cross -j2 -f Makefile.static-aarch64 run: make -C mpy-cross -j2 -f Makefile.static-aarch64
@ -166,11 +173,7 @@ jobs:
mpy-cross-mac: mpy-cross-mac:
runs-on: macos-11 runs-on: macos-11
needs: test needs: test
if: >- if: ${{ needs.test.outputs.build-boards == 'True' }}
needs.test.outputs.boards-aarch != '[]' ||
needs.test.outputs.boards-arm != '[]' ||
needs.test.outputs.boards-espressif != '[]' ||
needs.test.outputs.boards-riscv != '[]'
env: env:
CP_VERSION: ${{ needs.test.outputs.cp-version }} CP_VERSION: ${{ needs.test.outputs.cp-version }}
steps: steps:
@ -182,7 +185,7 @@ jobs:
- name: Set up python - name: Set up python
uses: actions/setup-python@v4 uses: actions/setup-python@v4
with: with:
python-version: "3.x" python-version: 3.x
- name: Set up submodules - name: Set up submodules
uses: ./.github/actions/fetch_submodules uses: ./.github/actions/fetch_submodules
- name: Versions - name: Versions
@ -235,7 +238,7 @@ jobs:
- name: Set up python - name: Set up python
uses: actions/setup-python@v4 uses: actions/setup-python@v4
with: with:
python-version: "3.x" python-version: 3.x
- name: Set up submodules - name: Set up submodules
uses: ./.github/actions/fetch_submodules uses: ./.github/actions/fetch_submodules
- name: Install dependencies - name: Install dependencies
@ -305,7 +308,7 @@ jobs:
- name: Set up python - name: Set up python
uses: actions/setup-python@v4 uses: actions/setup-python@v4
with: with:
python-version: "3.x" python-version: 3.x
- name: Set up submodules - name: Set up submodules
id: set-up-submodules id: set-up-submodules
uses: ./.github/actions/fetch_submodules uses: ./.github/actions/fetch_submodules
@ -334,9 +337,15 @@ jobs:
arm-none-eabi-gcc --version arm-none-eabi-gcc --version
python3 --version python3 --version
mkfs.fat --version || true mkfs.fat --version || true
- name: Build mpy-cross - name: Download mpy-cross
if: ${{ steps.set-up-submodules.outputs.frozen == 'True' }} if: ${{ steps.set-up-submodules.outputs.frozen == 'True' }}
run: make -C mpy-cross -j2 uses: actions/download-artifact@v3
with:
name: mpy-cross
path: mpy-cross
- name: Make mpy-cross executable
if: ${{ steps.set-up-submodules.outputs.frozen == 'True' }}
run: sudo chmod +x mpy-cross/mpy-cross
- name: Setup build failure matcher - name: Setup build failure matcher
run: echo "::add-matcher::$GITHUB_WORKSPACE/.github/workflows/match-build-fail.json" run: echo "::add-matcher::$GITHUB_WORKSPACE/.github/workflows/match-build-fail.json"
- name: Build - name: Build
@ -380,7 +389,7 @@ jobs:
- name: Set up python - name: Set up python
uses: actions/setup-python@v4 uses: actions/setup-python@v4
with: with:
python-version: "3.x" python-version: 3.x
- name: Set up submodules - name: Set up submodules
id: set-up-submodules id: set-up-submodules
uses: ./.github/actions/fetch_submodules uses: ./.github/actions/fetch_submodules
@ -396,9 +405,15 @@ jobs:
gcc --version gcc --version
arm-none-eabi-gcc --version arm-none-eabi-gcc --version
python3 --version python3 --version
- name: Build mpy-cross - name: Download mpy-cross
if: ${{ steps.set-up-submodules.outputs.frozen == 'True' }} if: ${{ steps.set-up-submodules.outputs.frozen == 'True' }}
run: make -C mpy-cross -j2 uses: actions/download-artifact@v3
with:
name: mpy-cross
path: mpy-cross
- name: Make mpy-cross executable
if: ${{ steps.set-up-submodules.outputs.frozen == 'True' }}
run: sudo chmod +x mpy-cross/mpy-cross
- name: Setup build failure matcher - name: Setup build failure matcher
run: echo "::add-matcher::$GITHUB_WORKSPACE/.github/workflows/match-build-fail.json" run: echo "::add-matcher::$GITHUB_WORKSPACE/.github/workflows/match-build-fail.json"
- name: Build - name: Build
@ -489,9 +504,15 @@ jobs:
python3 --version python3 --version
ninja --version ninja --version
cmake --version cmake --version
- name: Build mpy-cross - name: Download mpy-cross
if: ${{ steps.set-up-submodules.outputs.frozen == 'True' }} if: ${{ steps.set-up-submodules.outputs.frozen == 'True' }}
run: make -C mpy-cross -j2 uses: actions/download-artifact@v3
with:
name: mpy-cross
path: mpy-cross
- name: Make mpy-cross executable
if: ${{ steps.set-up-submodules.outputs.frozen == 'True' }}
run: sudo chmod +x mpy-cross/mpy-cross
- name: Setup build failure matcher - name: Setup build failure matcher
run: echo "::add-matcher::$GITHUB_WORKSPACE/.github/workflows/match-build-fail.json" run: echo "::add-matcher::$GITHUB_WORKSPACE/.github/workflows/match-build-fail.json"
- name: Build - name: Build
@ -537,7 +558,7 @@ jobs:
- name: Set up python - name: Set up python
uses: actions/setup-python@v4 uses: actions/setup-python@v4
with: with:
python-version: "3.x" python-version: 3.x
- name: Set up submodules - name: Set up submodules
id: set-up-submodules id: set-up-submodules
uses: ./.github/actions/fetch_submodules uses: ./.github/actions/fetch_submodules
@ -552,9 +573,15 @@ jobs:
gcc --version gcc --version
riscv64-unknown-elf-gcc --version riscv64-unknown-elf-gcc --version
python3 --version python3 --version
- name: Build mpy-cross - name: Download mpy-cross
if: ${{ steps.set-up-submodules.outputs.frozen == 'True' }} if: ${{ steps.set-up-submodules.outputs.frozen == 'True' }}
run: make -C mpy-cross -j2 uses: actions/download-artifact@v3
with:
name: mpy-cross
path: mpy-cross
- name: Make mpy-cross executable
if: ${{ steps.set-up-submodules.outputs.frozen == 'True' }}
run: sudo chmod +x mpy-cross/mpy-cross
- name: Setup build failure matcher - name: Setup build failure matcher
run: echo "::add-matcher::$GITHUB_WORKSPACE/.github/workflows/match-build-fail.json" run: echo "::add-matcher::$GITHUB_WORKSPACE/.github/workflows/match-build-fail.json"
- name: Build - name: Build

View File

@ -6,6 +6,7 @@ typer
sh sh
click click
cpp-coveralls cpp-coveralls
requests requests
requests-cache requests-cache
@ -13,8 +14,8 @@ requests-cache
polib polib
# For pre-commit # For pre-commit
pyyaml
black black
pyyaml
pre-commit pre-commit
# for combining the Nordic SoftDevice with CircuitPython # for combining the Nordic SoftDevice with CircuitPython
@ -23,9 +24,6 @@ intelhex
# for building & testing natmods # for building & testing natmods
pyelftools pyelftools
# for stubs and annotations
adafruit-circuitpython-typing
# for mbedtls certificate store # for mbedtls certificate store
cryptography cryptography

View File

@ -204,7 +204,9 @@ def set_boards_to_build(build_all: bool):
break break
# Split boards by architecture. # Split boards by architecture.
print("Building boards:") build_boards = bool(boards_to_build)
print("Building boards:", build_boards)
set_output("build-boards", build_boards)
arch_to_boards = {"aarch": [], "arm": [], "riscv": [], "espressif": []} arch_to_boards = {"aarch": [], "arm": [], "riscv": [], "espressif": []}
for board in sorted(boards_to_build): for board in sorted(boards_to_build):
print(" ", board) print(" ", board)