From 7dec925f1fe5a6fec23cfb2b4b244f57a30fb492 Mon Sep 17 00:00:00 2001 From: Eugene Sandulenko Date: Wed, 7 Oct 2020 02:19:47 +0200 Subject: [PATCH] CI: Sync workflow setup with master --- .github/workflows/ci.yml | 107 +++++++++++++++++++++++++++------------ 1 file changed, 76 insertions(+), 31 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a1af3e0586f..97e0a80e043 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,5 +1,7 @@ name: CI on: [push, pull_request] +# schedule: +# - cron: '0 0-23/4 * * *' jobs: windows: name: Windows @@ -12,22 +14,22 @@ jobs: triplet: x86-windows arch: x86 # fribidi is disabled due to timeouts when installing the package - configFlags: --enable-faad --enable-mpeg2 --disable-fribidi - vcpkgPackages: 'curl faad2 fluidsynth freetype libflac libjpeg-turbo libmad libmpeg2 libogg libpng libtheora libvorbis sdl2 sdl2-net zlib' + configFlags: --enable-faad --enable-mpeg2 --enable-discord --disable-fribidi + vcpkgPackages: 'curl discord-rpc faad2 fluidsynth freetype libflac libjpeg-turbo libmad libmpeg2 libogg libpng libtheora libvorbis sdl2 sdl2-net zlib' useNasm: 'true' - platform: x64 arch: x64 triplet: x64-windows # fribidi is disabled due to timeouts when installing the package - configFlags: --enable-faad --enable-mpeg2 --disable-fribidi - vcpkgPackages: 'curl faad2 fluidsynth freetype libflac libjpeg-turbo libmad libmpeg2 libogg libpng libtheora libvorbis sdl2 sdl2-net zlib' + configFlags: --enable-faad --enable-mpeg2 --enable-discord --disable-fribidi + vcpkgPackages: 'curl discord-rpc faad2 fluidsynth freetype libflac libjpeg-turbo libmad libmpeg2 libogg libpng libtheora libvorbis sdl2 sdl2-net zlib' - platform: arm64 arch: arm64 triplet: arm64-windows # fribidi is disabled due to https://github.com/microsoft/vcpkg/issues/11248 [fribidi] Fribidi doesn't cross-compile on x86-64 to target arm/arm64 # Note that fribidi is also disabled on arm64 in devtools/create_project/msvc.cpp - configFlags: --enable-faad --enable-mpeg2 --disable-fribidi - vcpkgPackages: 'curl faad2 fluidsynth freetype libflac libjpeg-turbo libmad libmpeg2 libogg libpng libtheora libvorbis sdl2 sdl2-net zlib' + configFlags: --enable-faad --enable-mpeg2 --enable-discord --disable-fribidi + vcpkgPackages: 'curl discord-rpc faad2 fluidsynth freetype libflac libjpeg-turbo libmad libmpeg2 libogg libpng libtheora libvorbis sdl2 sdl2-net zlib' env: CONFIGURATION: Release PLATFORM: ${{ matrix.platform }} @@ -43,11 +45,11 @@ jobs: vcpkgGitCommitId: 2f7a104d4d6f1f3790db929f85a4086aa6973d7f vcpkgTriplet: '${{ matrix.triplet }}' vcpkgArguments: '${{ matrix.vcpkgPackages }}' - - name: Upload libs - uses: actions/upload-artifact@v2 - with: - name: libs-${{ matrix.triplet }} - path: ${{ steps.runvcpkg.outputs.RUNVCPKG_VCPKG_ROOT_OUT }}\\installed\\${{ matrix.triplet }} +# - name: Upload libs +# uses: actions/upload-artifact@v2 +# with: +# name: libs-${{ matrix.triplet }} +# path: ${{ steps.runvcpkg.outputs.RUNVCPKG_VCPKG_ROOT_OUT }}\\installed\\${{ matrix.triplet }} - name: Build create_project run: | cd devtools/create_project/cmake @@ -71,23 +73,66 @@ jobs: cd build-scummvm ls msbuild scummvm.sln /m /p:BuildInParallel=true /p:Configuration=Release /p:PreferredToolArchitecture=x64 /p:Platform=${{ matrix.platform }} - - name: Upload scummvm - uses: actions/upload-artifact@v2 - with: - name: scummvm-${{ matrix.arch }} - path: build-scummvm/Release${{ matrix.arch }}/*.exe - - name: Upload scummvm libs - uses: actions/upload-artifact@v2 - with: - name: scummvm-${{ matrix.arch }} - path: ${{ steps.runvcpkg.outputs.RUNVCPKG_VCPKG_ROOT_OUT }}\\installed\\${{ matrix.triplet }}\\bin\\*.dll - - name: Upload scummvm symbols - uses: actions/upload-artifact@v2 - with: - name: symbols-${{ matrix.arch }} - path: build-scummvm/Release${{ matrix.arch }}/*.pdb - - name: Upload scummvm libs symbols - uses: actions/upload-artifact@v2 - with: - name: symbols-${{ matrix.arch }} - path: ${{ steps.runvcpkg.outputs.RUNVCPKG_VCPKG_ROOT_OUT }}\\installed\\${{ matrix.triplet }}\\bin\\*.pdb +# - name: Upload scummvm +# uses: actions/upload-artifact@v2 +# with: +# name: scummvm-${{ matrix.arch }} +# path: build-scummvm/Release${{ matrix.arch }}/*.exe +# - name: Upload scummvm libs +# uses: actions/upload-artifact@v2 +# with: +# name: scummvm-${{ matrix.arch }} +# path: ${{ steps.runvcpkg.outputs.RUNVCPKG_VCPKG_ROOT_OUT }}\\installed\\${{ matrix.triplet }}\\bin\\*.dll +# - name: Upload scummvm symbols +# uses: actions/upload-artifact@v2 +# with: +# name: symbols-${{ matrix.arch }} +# path: build-scummvm/Release${{ matrix.arch }}/*.pdb +# - name: Upload scummvm libs symbols +# uses: actions/upload-artifact@v2 +# with: +# name: symbols-${{ matrix.arch }} +# path: ${{ steps.runvcpkg.outputs.RUNVCPKG_VCPKG_ROOT_OUT }}\\installed\\${{ matrix.triplet }}\\bin\\*.pdb + xcode: + name: Xcode + runs-on: macOS-latest + strategy: + fail-fast: false + matrix: + include: + - platform: macosx + buildFlags: -scheme ScummVM-macOS + configFlags: --disable-nasm --enable-faad --enable-mpeg2 + brewPackages: a52dec faad2 flac fluid-synth freetype fribidi mad libmpeg2 libogg libpng libvorbis sdl2 sdl2_net theora + - platform: ios7 + buildFlags: -scheme ScummVM-iOS CODE_SIGN_IDENTITY="" CODE_SIGNING_ALLOWED=NO + configFlags: --disable-nasm --disable-opengl --disable-theora --disable-taskbar --disable-tts --disable-fribidi + packagesUrl: https://www.scummvm.org/frs/build/scummvm-ios7-libs-v2.zip + steps: + - name: Checkout + uses: actions/checkout@v2 + - name: Install packages + if: ${{ matrix.brewPackages }} + run: brew install ${{ matrix.brewPackages }} + - name: Download libraries + if: ${{ matrix.packagesUrl }} + run: | + curl -L -o libs.zip ${{ matrix.packagesUrl }} + unzip libs.zip + ls + - name: Select Xcode + run: sudo xcode-select -switch /Applications/Xcode_10.3.app && /usr/bin/xcodebuild -version + - name: Build create_project + run: | + cd devtools/create_project/xcode + xcodebuild + ls + cd ../../../ + - name: Call create_project + run: | + ./devtools/create_project/xcode/build/Release/create_project . --xcode --enable-all-engines ${{ matrix.configflags }} + ls + - name: Build scummvm + run: | + xcodebuild build -project scummvm.xcodeproj ${{ matrix.buildFlags }} + ls