Skip to content

Merge pull request #109 from Picovoice/retire-rpi2-bb-jetson #170

Merge pull request #109 from Picovoice/retire-rpi2-bb-jetson

Merge pull request #109 from Picovoice/retire-rpi2-bb-jetson #170

Workflow file for this run

name: C
on:
workflow_dispatch:
push:
branches: [ main ]
paths:
- 'demo/c/**'
- '!demo/c/README.md'
- 'project/**'
- '!project/README.md'
- '.github/workflows/c.yml'
- '.github/actions/c-template/action.yml'
pull_request:
branches: [ main, 'v[0-9]+.[0-9]+' ]
paths:
- 'demo/c/**'
- '!demo/c/README.md'
- 'project/**'
- '!project/README.md'
- '.github/workflows/c.yml'
- '.github/actions/c-template/action.yml'
jobs:
build-github-hosted:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-20.04]
include:
- os: ubuntu-20.04
pv_recorder_platform: linux
output_dir: linux/x86_64
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: ./.github/actions/c-template
name: Build and test
with:
pv_recorder_platform: ${{ matrix.pv_recorder_platform }}
output_dir: ${{ matrix.output_dir }}
build-self-hosted:
runs-on: ${{ matrix.machine }}
strategy:
matrix:
machine: [rpi3-32, rpi3-64, rpi4-32, rpi4-64, rpi5-32, rpi5-64]
include:
- machine: rpi3-32
pv_recorder_platform: raspberry-pi3
output_dir: raspberry-pi/cortex-a53
- machine: rpi3-64
pv_recorder_platform: raspberry-pi3-64
output_dir: raspberry-pi/cortex-a53-aarch64
- machine: rpi4-32
pv_recorder_platform: raspberry-pi4
output_dir: raspberry-pi/cortex-a72
- machine: rpi4-64
pv_recorder_platform: raspberry-pi4-64
output_dir: raspberry-pi/cortex-a72-aarch64
- machine: rpi5-32
pv_recorder_platform: raspberry-pi5
output_dir: raspberry-pi/cortex-a76
- machine: rpi5-64
pv_recorder_platform: raspberry-pi5-64
output_dir: raspberry-pi/cortex-a76-aarch64
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: ./.github/actions/c-template
name: Build and test
with:
pv_recorder_platform: ${{ matrix.pv_recorder_platform }}
output_dir: ${{ matrix.output_dir }}
build-mac:
runs-on: pv-ios
strategy:
matrix:
pv_recorder_platform: [mac-arm64, mac-x86_64]
include:
- pv_recorder_platform: mac-arm64
output_dir: mac/arm64
- pv_recorder_platform: mac-x86_64
output_dir: mac/x86_64
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: ./.github/actions/c-template
name: Build and test
with:
pv_recorder_platform: ${{ matrix.pv_recorder_platform }}
output_dir: ${{ matrix.output_dir }}
build-rpi0:
runs-on: rpi3-32
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: ./.github/actions/c-template
name: Build and test
with:
pv_recorder_platform: raspberry-pi
output_dir: raspberry-pi/arm11
build-windows:
runs-on: pv-windows
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: ./.github/actions/c-template
name: Build and test
with:
pv_recorder_platform: windows
output_dir: windows/amd64
shell: pwsh
collect-artifacts:
runs-on: ubuntu-latest
needs: [build-github-hosted, build-self-hosted, build-mac, build-rpi0, build-windows]
steps:
- name: Download artifacts
uses: actions/download-artifact@v3
with:
path: artifacts
- name: Make collection directory
run: mkdir -p all-libs/lib
- name: Collect artifacts
shell: bash
run: |
for DIR in artifacts/*; do cp -a $DIR/* all-libs/lib/; done
- name: Upload all artifacts
uses: actions/upload-artifact@v3
with:
name: all-libs
path: all-libs
retention-days: 3