53 lines
1.4 KiB
YAML
53 lines
1.4 KiB
YAML
name: C/C++ CI
|
|
|
|
on:
|
|
push:
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
container: devkitpro/devkitarm
|
|
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
fetch-depth: 1
|
|
submodules: recursive
|
|
|
|
- name: Get ctr_firm_builder commit
|
|
run: echo "FIRM_BUILDER_COMMIT=$(git ls-remote https://github.com/derrekr/ctr_firm_builder.git HEAD | cut -f1)" >> $GITHUB_ENV
|
|
|
|
- name: Cache ctr_firm_builder
|
|
id: cache-firm-builder
|
|
uses: actions/cache@v4
|
|
with:
|
|
path: ctr_firm_builder
|
|
key: ${{ runner.os }}-${{ env.FIRM_BUILDER_COMMIT }}
|
|
|
|
- name: Install ctr_firm_builder dependencies
|
|
if: steps.cache-firm-builder.outputs.cache-hit != 'true'
|
|
run: |
|
|
apt-get update
|
|
apt-get -y install gcc
|
|
|
|
- name: Build ctr_firm_builder
|
|
if: steps.cache-firm-builder.outputs.cache-hit != 'true'
|
|
run: |
|
|
git clone --depth 1 --recurse-submodules https://github.com/derrekr/ctr_firm_builder.git
|
|
cd ctr_firm_builder
|
|
make
|
|
|
|
- name: Build project
|
|
run: |
|
|
export PATH=$PWD/ctr_firm_builder:$PATH
|
|
make nightly
|
|
echo ${{ github.sha }} >> ./nightly/nightly_commit.txt
|
|
|
|
- name: Upload artifact
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: open_agb_firm_nightly
|
|
path: ./nightly
|
|
if-no-files-found: error
|