Skip to content

Install and use CCache #7

Install and use CCache

Install and use CCache #7

Workflow file for this run

name: Build Artifacts
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
windows:
name: Windows (x86_64)
uses: ./.github/workflows/build.yaml
with:
archive-name: melondsds_libretro-win32-x86_64
runs-on: windows-latest
info-dir: info
lib-ext: dll
shell: msys2 {0}
deps: |
pacman -Sq --noconfirm git pkgconf mingw-w64-x86_64-{cmake,ccache,ninja,toolchain}
macos:
name: macOS (Universal)
uses: ./.github/workflows/build.yaml
with:
archive-name: melondsds_libretro-macos-universal
runs-on: macos-latest
lib-ext: dylib
deps: |
brew install pkg-config cmake ninja ccache
linux-x86_64:
name: Linux (x86_64)
uses: ./.github/workflows/build.yaml
with:
archive-name: melondsds_libretro-linux-x86_64
runs-on: ubuntu-latest
lib-ext: so
deps: |
sudo rm -f /etc/apt/sources.list.d/dotnetdev.list /etc/apt/sources.list.d/microsoft-prod.list /etc/apt/sources.list.d/kubernetes.list
# Don't check for dependencies that we won't use
sudo apt-get update
sudo apt-get install -y cmake ninja-build libepoxy-dev ccache
linux-aarch64:
name: Linux (aarch64)
uses: ./.github/workflows/build.yaml
with:
archive-name: melondsds_libretro-linux-aarch64
runs-on: ubuntu-latest
lib-ext: so
deps: |
sudo apt-get update
sudo dpkg --add-architecture arm64
sudo sh -c "sed \"s|^deb \([a-z\.:/]*\) \([a-z\-]*\) \(.*\)$|deb [arch=amd64] \1 \2 \3\ndeb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports \2 \3|\" /etc/apt/sources.list > /etc/apt/sources.list.new"
sudo rm -f /etc/apt/sources.list
sudo mv /etc/apt/sources.list{.new,}
sudo apt-get update
sudo apt-get install -y {gcc-10,g++-10}-aarch64-linux-gnu {pkg-config,libepoxy-dev}:arm64 cmake ninja-build extra-cmake-modules dpkg-dev ccache
android:
name: Android
uses: ./.github/workflows/build.yaml
with:
lib-ext: so
archive-name: melondsds_libretro-android
lib-name: melondsds_libretro_android
cmake-args: -DENABLE_OGLRENDERER=OFF -DANDROID_ABI=arm64-v8a -DANDROID_PLATFORM=22 -DCMAKE_TOOLCHAIN_FILE="$ANDROID_NDK/build/cmake/android.toolchain.cmake"
runs-on: ubuntu-latest
deps: |
sudo rm -f /etc/apt/sources.list.d/dotnetdev.list /etc/apt/sources.list.d/microsoft-prod.list /etc/apt/sources.list.d/kubernetes.list
# Don't check for dependencies that we won't use
sudo apt-get update
sudo apt-get install -y cmake ninja-build ccache
ios:
name: iOS
uses: ./.github/workflows/build.yaml
with:
runs-on: macos-latest
archive-name: melondsds_libretro-ios
lib-ext: dylib
lib-name: melondsds_libretro_ios
cmake-args: -DENABLE_OGLRENDERER=OFF -DENABLE_JIT=OFF --toolchain ./cmake/toolchain/ios.toolchain.cmake -DPLATFORM=OS64 -DCMAKE_OSX_DEPLOYMENT_TARGET:STRING=13.0 -DDEPLOYMENT_TARGET=13 -DENABLE_STRICT_TRY_COMPILE_INT:BOOL=ON
deps: |
brew install pkg-config cmake ninja ccache