vgmstream/.github/workflows/cmake-mac.yml

68 lines
2.2 KiB
YAML

# github workflow to automate builds
name: macOS build
on: [push, pull_request, workflow_dispatch]
env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
BUILD_TYPE: Release
jobs:
build:
name: CMake, macOS
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Install dependencies
run: brew install autoconf automake cmake pkgconfig ffmpeg jansson libao libvorbis mpg123
- name: Cache celt
uses: actions/cache@v4
with:
path: |
${{ github.workspace }}/dependencies/celt-0061
${{ github.workspace }}/dependencies/celt-0110
${{ github.workspace }}/build/dependencies/celt-0061/libcelt/.libs
${{ github.workspace }}/build/dependencies/celt-0110/libcelt/.libs
key: mac-celt-${{ hashFiles('cmake/dependencies/celt.cmake') }}
- name: Cache atrac9
uses: actions/cache@v4
with:
path: ${{ github.workspace }}/build/dependencies/LibAtrac9/bin
key: mac-atrac9-${{ hashFiles('cmake/dependencies/atrac9.cmake') }}
- name: Cache g719
uses: actions/cache@v4
with:
path: ${{ github.workspace }}/build/dependencies/libg719_decode/libg719_decode.a
key: mac-g719-${{ hashFiles('cmake/dependencies/g719.cmake') }}
- name: Build
run: |
export LIBRARY_PATH=$(brew --prefix)/lib
cmake -S . -B build -DBUILD_AUDACIOUS:BOOL=OFF -DCMAKE_BUILD_TYPE=$BUILD_TYPE
cmake --build build
- name: Upload CLI tools artifact
uses: actions/upload-artifact@v4
with:
path: ${{ github.workspace }}/build/cli/vgmstream-cli
name: vgmstream-mac
# uploads current assets to vgmstream-releases (token only works on merges)
- name: Upload artifacts to vgmstream-releases
if: github.event_name != 'pull_request'
working-directory: ${{github.workspace}}
shell: bash
env:
UPLOADER_GITHUB_TOKEN: ${{ secrets.UPLOADER_GITHUB_TOKEN }}
run: |
tar cvfz vgmstream-mac-cli.tar.gz -C ./build/cli vgmstream-cli
python3 .github/uploader.py vgmstream-mac-cli.tar.gz