From 03783eb728a9a6869401037e99aa13e0d74c8e4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Janiszewski?= Date: Wed, 3 Apr 2024 23:50:56 +0200 Subject: [PATCH 1/9] Update actions to latest versions, switch vcpkg to manifest mode This uses vcpkg's "manifest mode" where packages are read from `vcpkg.json`. As vcpkg automatically detects presence on `vcpkg.json` and switches to manifest mode, this required reworking how macOS libraries are built. I opted to split building of packages into per-architecture jobs to speed up the builds. --- .github/workflows/ci.yml | 88 +++++++++++++++++++++++++++++----------- macos_build.sh | 33 ++++----------- vcpkg.json | 42 +++++++++++++++++++ 3 files changed, 114 insertions(+), 49 deletions(-) create mode 100644 vcpkg.json diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2f177434..281ccd99 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,7 +1,7 @@ name: CI on: [push, pull_request] env: - VCPKG_COMMIT_HASH: c9f906558f9bb12ee9811d6edc98ec9255c6cda5 + VCPKG_COMMIT_HASH: 11ed79186fe850bd3a98cfbf1854514d2b3070a2 jobs: createrelease: name: createrelease @@ -9,7 +9,7 @@ jobs: if: startsWith(github.ref, 'refs/tags/v') steps: - name: Check out code - uses: actions/checkout@v2 + uses: actions/checkout@v4 - name: Get the version id: get_version run: echo "version=${GITHUB_REF/refs\/tags\/v/}" >> $GITHUB_ENV @@ -25,7 +25,7 @@ jobs: - name: Output Release URL File run: echo "${{ steps.create_release.outputs.upload_url }}" > release_url.txt - name: Save Release URL File for publish - uses: actions/upload-artifact@v1 + uses: actions/upload-artifact@v4 with: name: release_url path: release_url.txt @@ -39,40 +39,39 @@ jobs: matrix: include: - triplet: x86-windows-static - vcpkgPackages: 'benchmark breakpad discord-rpc freetype fribidi gtest libpng libzip[core] nlohmann-json openal-soft sdl2 speexdsp zlib libflac libogg libvorbis' - triplet: x64-windows-static - vcpkgPackages: 'benchmark breakpad discord-rpc freetype fribidi gtest libpng libzip[core] nlohmann-json openal-soft sdl2 speexdsp zlib libflac libogg libvorbis' - triplet: arm64-windows-static - # 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 - vcpkgPackages: 'benchmark discord-rpc freetype gtest libpng libzip[core] nlohmann-json openal-soft sdl2 speexdsp zlib libflac libogg libvorbis' steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v4 - name: Get the version if: startsWith(github.ref, 'refs/tags/v') run: | chcp 65001 #set code page to utf-8 echo ("version=" + $env:GITHUB_REF.replace('refs/tags/v', '')) >> $env:GITHUB_ENV + - uses: lukka/get-cmake@latest - name: Install vcpkg and packages - uses: lukka/run-vcpkg@v6 + uses: lukka/run-vcpkg@v11 id: runvcpkg + env: + VCPKG_DEFAULT_TRIPLET: ${{ matrix.triplet }} + VCPKG_INSTALLED_DIR: ${{ github.workspace }}/vcpkg/installed/${{ matrix.triplet }} with: vcpkgGitCommitId: '${{ env.VCPKG_COMMIT_HASH }}' - vcpkgTriplet: '${{ matrix.triplet }}' - vcpkgArguments: '${{ matrix.vcpkgPackages }}' + runVcpkgInstall: true - name: Zip stuff run: | - pushd ${{ steps.runvcpkg.outputs.RUNVCPKG_VCPKG_ROOT_OUT }}\\installed\\${{ matrix.triplet }} + pushd ${{ github.workspace }}/vcpkg/installed/${{ matrix.triplet }} 7z a -tzip -mx9 -mtc=off ..\openrct2-libs-v${{ env.version }}-${{ matrix.triplet }}.zip "*" popd - name: Upload zip as artifact - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: openrct2-libs-v${{ env.version }}-${{ matrix.triplet }}.zip - path: ${{ steps.runvcpkg.outputs.RUNVCPKG_VCPKG_ROOT_OUT }}\\installed\\openrct2-libs-v${{ env.version }}-${{ matrix.triplet }}.zip + path: ${{ github.workspace }}/vcpkg/installed/openrct2-libs-v${{ env.version }}-${{ matrix.triplet }}.zip - name: Load Release URL File from release job if: startsWith(github.ref, 'refs/tags/v') - uses: actions/download-artifact@v1 + uses: actions/download-artifact@v4 with: name: release_url - name: Get Release File Name & Upload URL @@ -90,35 +89,78 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ steps.get_release_info.outputs.upload_url }} - asset_path: ${{ steps.runvcpkg.outputs.RUNVCPKG_VCPKG_ROOT_OUT }}\\installed\\openrct2-libs-v${{ env.version }}-${{ matrix.triplet }}.zip + asset_path: ${{ github.workspace }}/vcpkg/installed/openrct2-libs-v${{ env.version }}-${{ matrix.triplet }}.zip asset_name: openrct2-libs-v${{ env.version }}-${{ matrix.triplet }}.zip asset_content_type: application/zip - macos: + macos-build: name: macOS runs-on: macos-latest needs: createrelease if: always() + strategy: + fail-fast: false + matrix: + include: + - triplet: arm64-osx-openrct2 + - triplet: x64-osx-openrct2 steps: + # needed for vcpkg.json - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v4 - name: Get the version if: startsWith(github.ref, 'refs/tags/v') run: echo "version=${GITHUB_REF/refs\/tags\/v/}" >> $GITHUB_ENV - - name: Install vcpkg and packages - id: macos_build + - name: Install prerequisites shell: bash run: | - export VCPKG_COMMIT_HASH='${{ env.VCPKG_COMMIT_HASH }}' brew install automake autoconf-archive + - uses: lukka/get-cmake@latest + - name: Install vcpkg and packages + uses: lukka/run-vcpkg@v11 + id: runvcpkg + env: + VCPKG_DEFAULT_TRIPLET: ${{ matrix.triplet }} + VCPKG_INSTALLED_DIR: ${{ github.workspace }}/vcpkg/installed/${{ matrix.triplet }} + with: + vcpkgGitCommitId: '${{ env.VCPKG_COMMIT_HASH }}' + runVcpkgInstall: true + # needed for --overlay-triplets option + runVcpkgFormatString: '[`install`, `--recurse`, `--clean-after-build`, `--x-install-root`, `$[env.VCPKG_INSTALLED_DIR]`, `--overlay-triplets=.`, `--triplet`, `$[env.VCPKG_DEFAULT_TRIPLET]`]' + - name: Zip stuff + run: | + pushd ${{ github.workspace }}/vcpkg/installed/${{ matrix.triplet }} + zip -rXy ../openrct2-libs-v${{ env.version }}-${{ matrix.triplet }}-macos-dylibs.zip * -x '*/.*' + - name: Upload zip as artifact + uses: actions/upload-artifact@v4 + with: + name: openrct2-libs-v${{ env.version }}-${{ matrix.triplet }}-macos-dylibs.zip + path: ${{ github.workspace }}/vcpkg/installed/openrct2-libs-v${{ env.version }}-${{ matrix.triplet }}-macos-dylibs.zip + + macos-package: + name: macOS package universal library + runs-on: macos-latest + needs: macos-build + if: always() + steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Download All Artifacts + uses: actions/download-artifact@v4 + with: + pattern: openrct2-libs-v*-macos-dylibs.zip + - name: Create Universal Library + run: | + unzip -qo openrct2-libs-v${{ env.version }}-arm64-osx-openrct2-macos-dylibs.zip/openrct2-libs-v${{ env.version }}-arm64-osx-openrct2-macos-dylibs.zip + unzip -qo openrct2-libs-v${{ env.version }}-x64-osx-openrct2-macos-dylibs.zip/openrct2-libs-v${{ env.version }}-x64-osx-openrct2-macos-dylibs.zip ./macos_build.sh - name: Upload zip as artifact - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: openrct2-libs-v${{ env.version }}-universal-macos-dylibs.zip path: openrct2-libs-v${{ env.version }}-universal-macos-dylibs.zip - name: Load Release URL File from release job if: startsWith(github.ref, 'refs/tags/v') - uses: actions/download-artifact@v1 + uses: actions/download-artifact@v4 with: name: release_url - name: Get Release File Name & Upload URL diff --git a/macos_build.sh b/macos_build.sh index 419fcda6..cab70448 100755 --- a/macos_build.sh +++ b/macos_build.sh @@ -3,27 +3,8 @@ # exit on error set -e -easy_install --user pyyaml==5.4.1 - -git clone -q https://github.com/Microsoft/vcpkg.git - -if [ -v VCPKG_COMMIT_HASH ]; then - echo "Using pinned vcpkg commit: ${VCPKG_COMMIT_HASH}" - pushd vcpkg - git checkout -q $VCPKG_COMMIT_HASH - popd -fi - -vcpkg/bootstrap-vcpkg.sh - -ARM_TRIPLET="--overlay-triplets=. --triplet=arm64-osx-openrct2" -X64_TRIPLET="--overlay-triplets=. --triplet=x64-osx-openrct2" -LIBRARIES="libpng freetype openssl icu[core,tools] libzip[core] nlohmann-json openal-soft sdl2 speexdsp discord-rpc gtest libflac libogg libvorbis" -vcpkg/vcpkg install ${=ARM_TRIPLET} ${=LIBRARIES} -vcpkg/vcpkg install ${=X64_TRIPLET} ${=LIBRARIES} - -rsync -ah vcpkg/installed/x64-osx-openrct2/* universal-osx-openrct2 -for lib in vcpkg/installed/x64-osx-openrct2/lib/*.dylib; do +rsync -ah x64-osx-openrct2/* universal-osx-openrct2 +for lib in x64-osx-openrct2/lib/*.dylib; do if [ -f "$lib" ] && [ ! -L $lib ]; then lib_filename=$(basename "$lib") lib_name=$(echo $lib_filename | cut -d'.' -f 1) @@ -32,12 +13,12 @@ for lib in vcpkg/installed/x64-osx-openrct2/lib/*.dylib; do # libzip embeds the full rpath in LC_RPATH # they will be different for arm64 and x86_64 # this will cause issues, and is unnecessary - install_name_tool -delete_rpath `pwd`"/vcpkg/packages/${lib_name}_x64-osx-openrct2/lib" "vcpkg/installed/x64-osx-openrct2/lib/$lib_filename" - install_name_tool -delete_rpath `pwd`"/vcpkg/installed/x64-osx-openrct2/lib" "vcpkg/installed/x64-osx-openrct2/lib/$lib_filename" - install_name_tool -delete_rpath `pwd`"/vcpkg/packages/${lib_name}_arm64-osx-openrct2/lib" "vcpkg/installed/arm64-osx-openrct2/lib/$lib_filename" - install_name_tool -delete_rpath `pwd`"/vcpkg/installed/arm64-osx-openrct2/lib" "vcpkg/installed/arm64-osx-openrct2/lib/$lib_filename" + install_name_tool -delete_rpath `pwd`"/vcpkg/packages/${lib_name}_x64-osx-openrct2/lib" "x64-osx-openrct2/lib/$lib_filename" + install_name_tool -delete_rpath `pwd`"/vcpkg/installed/x64-osx-openrct2/x64-osx-openrct2/lib" "x64-osx-openrct2/lib/$lib_filename" + install_name_tool -delete_rpath `pwd`"/vcpkg/packages/${lib_name}_arm64-osx-openrct2/lib" "arm64-osx-openrct2/lib/$lib_filename" + install_name_tool -delete_rpath `pwd`"/vcpkg/installed/arm64-osx-openrct2/arm64-osx-openrct2/lib" "arm64-osx-openrct2/lib/$lib_filename" fi - lipo -create "vcpkg/installed/x64-osx-openrct2/lib/$lib_filename" "vcpkg/installed/arm64-osx-openrct2/lib/$lib_filename" -output "universal-osx-openrct2/lib/$lib_filename" + lipo -create "x64-osx-openrct2/lib/$lib_filename" "arm64-osx-openrct2/lib/$lib_filename" -output "universal-osx-openrct2/lib/$lib_filename" fi done diff --git a/vcpkg.json b/vcpkg.json new file mode 100644 index 00000000..6dcbaa25 --- /dev/null +++ b/vcpkg.json @@ -0,0 +1,42 @@ +{ + "name": "openrct2-dependencies", + "version-string": "11", + "description": "Dependencies for OpenRCT2", + "dependencies": [ + "benchmark", + { + "name": "breakpad", + "platform": "windows & !arm" + }, + "discord-rpc", + "freetype", + { + "$explanation": "fribidi is disabled on arm due to https://github.com/microsoft/vcpkg/issues/11248 [fribidi] Fribidi doesn't cross-compile on x86-64 to target arm/arm64", + "name": "fribidi", + "platform": "!arm & !osx" + }, + "gtest", + { + "name": "icu", + "features": [ "tools" ], + "platform": "!windows" + }, + "libflac", + "libogg", + "libpng", + "libvorbis", + { + "name": "libzip", + "default-features": false + }, + "nlohmann-json", + "openal-soft", + { + "name": "openssl", + "platform": "!windows" + }, + "sdl2", + "speexdsp", + "zlib" + ] +} From d155b7ec8b4c52c4ba05280a3bbc948a5bd76d7c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Janiszewski?= Date: Sat, 6 Apr 2024 23:47:19 +0200 Subject: [PATCH 2/9] Change release action to a supported one --- .github/workflows/ci.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 281ccd99..d82b63ed 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,14 +13,14 @@ jobs: - name: Get the version id: get_version run: echo "version=${GITHUB_REF/refs\/tags\/v/}" >> $GITHUB_ENV - - name: create release + - name: Create release id: create_release - uses: actions/create-release@v1 + uses: softprops/action-gh-release@v2 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: tag_name: v${{ env.version }} - release_name: Release v${{ env.version }} + name: Release v${{ env.version }} prerelease: false - name: Output Release URL File run: echo "${{ steps.create_release.outputs.upload_url }}" > release_url.txt From 7f124f98c1638c47973ff6b9efbaa1a9c89079ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Janiszewski?= Date: Sat, 6 Apr 2024 23:52:57 +0200 Subject: [PATCH 3/9] Update ci workflow to use new way of setting output --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d82b63ed..a636b252 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -80,7 +80,7 @@ jobs: shell: bash run: | value=`cat release_url/release_url.txt` - echo ::set-output name=upload_url::$value + echo "upload_url=$value" >> $GITHUB_OUTPUT - name: Upload Release Asset if: startsWith(github.ref, 'refs/tags/v') id: upload-release-asset @@ -169,7 +169,7 @@ jobs: shell: bash run: | value=`cat release_url/release_url.txt` - echo ::set-output name=upload_url::$value + echo "upload_url=$value" >> $GITHUB_OUTPUT - name: Upload Release Asset if: startsWith(github.ref, 'refs/tags/v') id: upload-release-asset From eaf90c9f87a910cd0a2b781828e167ccdee21773 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Janiszewski?= Date: Wed, 10 Apr 2024 23:52:36 +0200 Subject: [PATCH 4/9] Add version information to macos packaging job --- .github/workflows/ci.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a636b252..dde6455f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -144,6 +144,9 @@ jobs: steps: - name: Checkout uses: actions/checkout@v4 + - name: Get the version + if: startsWith(github.ref, 'refs/tags/v') + run: echo "version=${GITHUB_REF/refs\/tags\/v/}" >> $GITHUB_ENV - name: Download All Artifacts uses: actions/download-artifact@v4 with: From 8e348e2446e45f24ba77cdb92e17d3eea8960b03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Janiszewski?= Date: Wed, 10 Apr 2024 23:53:05 +0200 Subject: [PATCH 5/9] Fix paths for new actions --- .github/workflows/ci.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index dde6455f..654f9b92 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -61,8 +61,8 @@ jobs: runVcpkgInstall: true - name: Zip stuff run: | - pushd ${{ github.workspace }}/vcpkg/installed/${{ matrix.triplet }} - 7z a -tzip -mx9 -mtc=off ..\openrct2-libs-v${{ env.version }}-${{ matrix.triplet }}.zip "*" + pushd ${{ github.workspace }}/vcpkg/installed/${{ matrix.triplet }}/${{ matrix.triplet }} + 7z a -tzip -mx9 -mtc=off ../../openrct2-libs-v${{ env.version }}-${{ matrix.triplet }}.zip "*" popd - name: Upload zip as artifact uses: actions/upload-artifact@v4 @@ -79,7 +79,7 @@ jobs: id: get_release_info shell: bash run: | - value=`cat release_url/release_url.txt` + value=`cat release_url.txt` echo "upload_url=$value" >> $GITHUB_OUTPUT - name: Upload Release Asset if: startsWith(github.ref, 'refs/tags/v') @@ -171,7 +171,7 @@ jobs: id: get_release_info shell: bash run: | - value=`cat release_url/release_url.txt` + value=`cat release_url.txt` echo "upload_url=$value" >> $GITHUB_OUTPUT - name: Upload Release Asset if: startsWith(github.ref, 'refs/tags/v') From ea4c25c3eff7cdefa7930ed435bc2bd800b6d6d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Janiszewski?= Date: Wed, 10 Apr 2024 23:53:22 +0200 Subject: [PATCH 6/9] Perform LC_ID_DYLIB, LC_RPATH, LC_LOAD_DYLIB cleanups for macos universal --- macos_build.sh | 42 +++++++++++++++++++++++++++++++++--------- 1 file changed, 33 insertions(+), 9 deletions(-) diff --git a/macos_build.sh b/macos_build.sh index cab70448..a2df5f92 100755 --- a/macos_build.sh +++ b/macos_build.sh @@ -9,15 +9,39 @@ for lib in x64-osx-openrct2/lib/*.dylib; do lib_filename=$(basename "$lib") lib_name=$(echo $lib_filename | cut -d'.' -f 1) echo "Creating universal (fat) $lib_name" - if [ "$lib_name" = "libzip" ]; then - # libzip embeds the full rpath in LC_RPATH - # they will be different for arm64 and x86_64 - # this will cause issues, and is unnecessary - install_name_tool -delete_rpath `pwd`"/vcpkg/packages/${lib_name}_x64-osx-openrct2/lib" "x64-osx-openrct2/lib/$lib_filename" - install_name_tool -delete_rpath `pwd`"/vcpkg/installed/x64-osx-openrct2/x64-osx-openrct2/lib" "x64-osx-openrct2/lib/$lib_filename" - install_name_tool -delete_rpath `pwd`"/vcpkg/packages/${lib_name}_arm64-osx-openrct2/lib" "arm64-osx-openrct2/lib/$lib_filename" - install_name_tool -delete_rpath `pwd`"/vcpkg/installed/arm64-osx-openrct2/arm64-osx-openrct2/lib" "arm64-osx-openrct2/lib/$lib_filename" - fi + for arch in x64 arm64; do + if [[ "$lib_name" = "libzip" || $lib_name = libicu* ]]; then + # libzip embeds the full rpath in LC_RPATH + # they will be different for arm64 and x86_64 + # this will cause issues, and is unnecessary + echo Fixing $lib_name rpath + install_name_tool -delete_rpath `pwd`"/vcpkg/packages/${lib_name}_$arch-osx-openrct2/lib" "$arch-osx-openrct2/lib/$lib_filename" || echo No `pwd`"/vcpkg/packages/${lib_name}_$arch-osx-openrct2/lib" in $lib + install_name_tool -delete_rpath `pwd`"/vcpkg/installed/$arch-osx-openrct2/$arch-osx-openrct2/lib" "$arch-osx-openrct2/lib/$lib_filename" || echo No `pwd`"/vcpkg/installed/$arch-osx-openrct2/$arch-osx-openrct2/lib" in $lib + fi + if [[ "$lib_name" = libbrotli* ]]; then + # Brotli uses full path for LC_ID_DYLIB, which breaks when trying to fix up LC_LOAD_DYLIB in next step. + # Fix the LC_ID_DYLIB first before fixing up the LC_LOAD_DYLIB. + echo Fixing $lib_name LC_ID_DYLIB + install_name_tool -id "@rpath/$lib_filename" "$arch-osx-openrct2/lib/$lib_filename" + fi + if otool -L $arch-osx-openrct2/lib/$lib_filename | grep -q /Users/runner/work/; then + echo "Absolute paths found in $arch-osx-openrct2/lib/$lib_filename. Load commands:" + otool -L "$arch-osx-openrct2/lib/$lib_filename" + # Some packages (currently only brotli) have absolute paths in the LC_LOAD_DYLIB command. + # This is not supported by the universal build and needs to be changes to @rpath. + + install_name_tool -change /Users/runner/work/Dependencies/Dependencies/vcpkg/packages/brotli_$arch-osx-openrct2/lib/libbrotlicommon.1.dylib "@rpath/libbrotlicommon.1.dylib" "$arch-osx-openrct2/lib/$lib_filename" + install_name_tool -change /Users/runner/work/Dependencies/Dependencies/vcpkg/packages/brotli_$arch-osx-openrct2/lib/libbrotlidec.1.dylib "@rpath/libbrotlidec.1.dylib" "$arch-osx-openrct2/lib/$lib_filename" + install_name_tool -change /Users/runner/work/Dependencies/Dependencies/vcpkg/packages/brotli_$arch-osx-openrct2/lib/libbrotlienc.1.dylib "@rpath/libbrotlienc.1.dylib" "$arch-osx-openrct2/lib/$lib_filename" + + # Once done, check that it was the only absolute path in the LC_LOAD_DYLIB command. + if otool -L "$arch-osx-openrct2/lib/$lib_filename" | grep -q /Users/runner/work; then + echo "Absolute paths still exist in $arch-osx-openrct2/lib/$lib_filename. Load commands:" + otool -L $arch-osx-openrct2/lib/$lib_filename + exit 1 + fi + fi + done lipo -create "x64-osx-openrct2/lib/$lib_filename" "arm64-osx-openrct2/lib/$lib_filename" -output "universal-osx-openrct2/lib/$lib_filename" fi done From 09bb651a685e4e47ea8f1668d2c63c5e87bcbd2c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Janiszewski?= Date: Wed, 10 Apr 2024 23:54:08 +0200 Subject: [PATCH 7/9] Update upload-release-asset action --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 654f9b92..aa644803 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -176,7 +176,7 @@ jobs: - name: Upload Release Asset if: startsWith(github.ref, 'refs/tags/v') id: upload-release-asset - uses: actions/upload-release-asset@v1.0.2 + uses: actions/upload-release-asset@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: From a911640ba3acf0d9943fcf6595809b46aebcebb3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Janiszewski?= Date: Wed, 10 Apr 2024 23:54:41 +0200 Subject: [PATCH 8/9] Provide sha1sum for macos universal libraries --- macos_build.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/macos_build.sh b/macos_build.sh index a2df5f92..e8e3fda7 100755 --- a/macos_build.sh +++ b/macos_build.sh @@ -49,4 +49,5 @@ done ( cd universal-osx-openrct2 && zip -rXy ../openrct2-libs-v${version}-universal-macos-dylibs.zip * -x '*/.*' + shasum ../openrct2-libs-v${version}-universal-macos-dylibs.zip ) From 87a1165ab0e2e5b16fd6f56beb6daa06a7e240e9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Janiszewski?= Date: Wed, 10 Apr 2024 23:55:09 +0200 Subject: [PATCH 9/9] Switch from OpenSSL to LibreSSL LibreSSL is API-compatible with OpenSSL, but much easier to build. --- vcpkg.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vcpkg.json b/vcpkg.json index 6dcbaa25..8b2f2db5 100644 --- a/vcpkg.json +++ b/vcpkg.json @@ -32,7 +32,7 @@ "nlohmann-json", "openal-soft", { - "name": "openssl", + "name": "libressl", "platform": "!windows" }, "sdl2",