Updated qoa.h to latest #9
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build Libs | |
on: | |
workflow_dispatch: | |
push: | |
branches: | |
- 'main' | |
paths: | |
- 'Platform/**' | |
- '!Platform/libs/**' | |
pull_request: | |
paths: | |
- 'Platform/**' | |
- '!Platform/libs/**' | |
jobs: | |
Build: | |
strategy: | |
matrix: | |
include: | |
- os: windows-latest | |
arch: x64 | |
lib: x64/FosterAudioPlatform.dll | |
- os: macos-latest | |
arch: x64-arm64 | |
lib: osx/libFosterAudioPlatform.dylib | |
- os: ubuntu-latest | |
arch: x64 | |
lib: lib64/libFosterAudioPlatform.so | |
- os: ubuntu-latest | |
arch: arm64 | |
lib: libarm64/libFosterAudioPlatform.so | |
- os: ubuntu-latest | |
arch: arm32 | |
lib: libarm/libFosterAudioPlatform.so | |
runs-on: ${{matrix.os}} | |
steps: | |
- name: Checkout | |
uses: actions/[email protected] | |
- name: Get CMake | |
uses: lukka/[email protected] | |
- name: Setup Linux dependencies (arm64) | |
if: ${{ runner.os == 'Linux' && matrix.arch == 'arm64' }} | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y gcc-aarch64-linux-gnu g++-aarch64-linux-gnu binutils-aarch64-linux-gnu | |
sudo sed -i "s/^deb/deb [arch=amd64,i386]/g" /etc/apt/sources.list | |
echo "deb [arch=arm64,armhf] http://ports.ubuntu.com/ $(lsb_release -s -c) main universe multiverse restricted" | sudo tee -a /etc/apt/sources.list | |
echo "deb [arch=arm64,armhf] http://ports.ubuntu.com/ $(lsb_release -s -c)-updates main universe multiverse restricted" | sudo tee -a /etc/apt/sources.list | |
sudo dpkg --add-architecture arm64 | |
- name: Setup Linux dependencies (arm32) | |
if: ${{ runner.os == 'Linux' && matrix.arch == 'arm32' }} | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y gcc-arm-linux-gnueabihf g++-arm-linux-gnueabihf binutils-arm-linux-gnueabihf | |
sudo sed -i "s/^deb/deb [arch=amd64,i386]/g" /etc/apt/sources.list | |
echo "deb [arch=arm64,armhf] http://ports.ubuntu.com/ $(lsb_release -s -c) main universe multiverse restricted" | sudo tee -a /etc/apt/sources.list | |
echo "deb [arch=arm64,armhf] http://ports.ubuntu.com/ $(lsb_release -s -c)-updates main universe multiverse restricted" | sudo tee -a /etc/apt/sources.list | |
sudo dpkg --add-architecture armhf | |
- name: CMake Configure | |
if: ${{ matrix.arch != 'arm64' && matrix.arch != 'arm32' }} | |
run: cmake -B build -S Platform | |
- name: CMake Configure (arm64) | |
if: ${{ runner.os == 'Linux' && matrix.arch == 'arm64' }} | |
run: PKG_CONFIG_PATH=/usr/lib/aarch64-linux-gnu/pkgconfig cmake -B build -S Platform -DCMAKE_C_COMPILER=aarch64-linux-gnu-gcc -DCMAKE_CXX_COMPILER=aarch64-linux-gnu-g++ -DCMAKE_SYSTEM_PROCESSOR=aarch64 -DCMAKE_SYSTEM_NAME=Linux | |
- name: CMake Configure (arm32) | |
if: ${{ runner.os == 'Linux' && matrix.arch == 'arm32' }} | |
run: PKG_CONFIG_PATH=/usr/lib/arm-linux-gnueabihf/pkgconfig cmake -B build -S Platform -DCMAKE_C_COMPILER=arm-linux-gnueabihf-gcc -DCMAKE_CXX_COMPILER=arm-linux-gnueabihf-g++ -DCMAKE_SYSTEM_PROCESSOR=armv7l -DCMAKE_SYSTEM_NAME=Linux | |
- name: CMake Build | |
run: cmake --build build --config Release | |
- name: Publish Artifact | |
uses: actions/[email protected] | |
with: | |
name: ${{matrix.os}}-${{matrix.arch}}-build | |
path: Platform/libs/${{matrix.lib}} | |
UpdateLibs: | |
if: github.ref == 'refs/heads/main' | |
needs: [Build] | |
runs-on: windows-latest | |
steps: | |
- name: Checkout | |
uses: actions/[email protected] | |
- name: Download windows lib | |
uses: actions/download-artifact@v3 | |
with: | |
name: windows-latest-x64-build | |
path: Platform/libs/x64 | |
- name: Download macos lib | |
uses: actions/download-artifact@v3 | |
with: | |
name: macos-latest-x64-arm64-build | |
path: Platform/libs/osx | |
- name: Download ubuntu lib | |
uses: actions/download-artifact@v3 | |
with: | |
name: ubuntu-latest-x64-build | |
path: Platform/libs/lib64 | |
- name: Download ubuntu lib (arm64) | |
uses: actions/download-artifact@v3 | |
with: | |
name: ubuntu-latest-arm64-build | |
path: Platform/libs/libarm64 | |
- name: Download ubuntu lib (arm32) | |
uses: actions/download-artifact@v3 | |
with: | |
name: ubuntu-latest-arm32-build | |
path: Platform/libs/libarm | |
- name: Display structure of libs | |
run: ls -R | |
working-directory: Platform/libs | |
- name: Commit changes | |
uses: EndBug/[email protected] | |
with: | |
message: Updated platform libs | |
committer_name: GitHub Actions | |
committer_email: [email protected] |