# 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 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