mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-04-28 13:28:01 +03:00
macOS CI: move to AArch64 VM (x64 builds) (#13155)
This commit is contained in:
parent
d3183708e8
commit
53cc067c17
4 changed files with 53 additions and 19 deletions
|
@ -1,15 +1,43 @@
|
||||||
#!/bin/sh -ex
|
#!/bin/sh -ex
|
||||||
|
|
||||||
brew update
|
brew install -f --overwrite llvm@14 nasm ninja git p7zip create-dmg ccache
|
||||||
brew install llvm@13 sdl2 nasm qt@5 ninja cmake glew git p7zip create-dmg ccache
|
|
||||||
|
|
||||||
export MACOSX_DEPLOYMENT_TARGET=11.6
|
#/usr/sbin/softwareupdate --install-rosetta --agree-to-license
|
||||||
|
arch -x86_64 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
|
||||||
|
arch -x86_64 /usr/local/homebrew/bin/brew install -f --overwrite llvm@14 sdl2 glew cmake
|
||||||
|
|
||||||
|
#export MACOSX_DEPLOYMENT_TARGET=12.0
|
||||||
export CXX=clang++
|
export CXX=clang++
|
||||||
export CC=clang
|
export CC=clang
|
||||||
export Qt5_DIR="/usr/local/opt/qt@5/lib/cmake/Qt5"
|
|
||||||
export PATH="/usr/local/opt/llvm@13/bin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Library/Apple/usr/bin"
|
export BREW_PATH;
|
||||||
export LDFLAGS="-L/usr/local/opt/llvm@13/lib -Wl,-rpath,/usr/local/opt/llvm@13/lib"
|
BREW_PATH="$(brew --prefix)"
|
||||||
export CPPFLAGS="-I/usr/local/opt/llvm@13/include -msse -msse2 -mcx16 -no-pie"
|
export BREW_X64_PATH;
|
||||||
|
BREW_X64_PATH="$("/usr/local/homebrew/bin/brew" --prefix)"
|
||||||
|
export BREW_BIN="/usr/local/bin"
|
||||||
|
export BREW_SBIN="/usr/local/sbin"
|
||||||
|
export CMAKE_EXTRA_OPTS='-DLLVM_TARGETS_TO_BUILD=X86'
|
||||||
|
|
||||||
|
export WORKDIR;
|
||||||
|
WORKDIR="$(pwd)"
|
||||||
|
|
||||||
|
#get Qt
|
||||||
|
git clone https://github.com/engnr/qt-downloader.git
|
||||||
|
cd qt-downloader
|
||||||
|
git checkout f52efee0f18668c6d6de2dec0234b8c4bc54c597
|
||||||
|
pip3 install pipenv
|
||||||
|
pipenv run pip3 install py7zr requests semantic_version lxml
|
||||||
|
pipenv run ./qt-downloader macos desktop 5.15.2 clang_64 --opensource
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
export Qt5_DIR="$WORKDIR/qt-downloader/5.15.2/clang_64/lib/cmake/Qt5"
|
||||||
|
export SDL2_DIR="$BREW_X64_PATH/opt/sdl2/lib/cmake/SDL2"
|
||||||
|
|
||||||
|
export PATH="$BREW_PATH/opt/llvm@14/bin:$WORKDIR/qt-downloader/5.15.2/clang_64/bin:$BREW_BIN:$BREW_SBIN:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Library/Apple/usr/bin:$PATH"
|
||||||
|
export LDFLAGS="-L$BREW_X64_PATH/lib -Wl,-rpath,$BREW_X64_PATH/lib"
|
||||||
|
export CPPFLAGS="-I$BREW_X64_PATH/include -msse -msse2 -mcx16 -no-pie"
|
||||||
|
export LIBRARY_PATH="$BREW_X64_PATH/lib"
|
||||||
|
export LD_LIBRARY_PATH="$BREW_X64_PATH/lib"
|
||||||
|
|
||||||
git submodule update --init --recursive --depth 1
|
git submodule update --init --recursive --depth 1
|
||||||
|
|
||||||
|
@ -18,16 +46,18 @@ sed -i '' "s/extern const double NSAppKitVersionNumber;/const double NSAppKitVer
|
||||||
|
|
||||||
mkdir build && cd build || exit 1
|
mkdir build && cd build || exit 1
|
||||||
|
|
||||||
cmake .. \
|
"$BREW_X64_PATH/bin/cmake" .. \
|
||||||
-DUSE_SDL=ON -DUSE_DISCORD_RPC=OFF -DUSE_VULKAN=ON -DUSE_ALSA=OFF -DUSE_PULSE=OFF -DUSE_AUDIOUNIT=ON \
|
-DUSE_SDL=ON -DUSE_DISCORD_RPC=OFF -DUSE_VULKAN=ON -DUSE_ALSA=OFF -DUSE_PULSE=OFF -DUSE_AUDIOUNIT=ON \
|
||||||
-DLLVM_CCACHE_BUILD=OFF -DLLVM_TARGETS_TO_BUILD="X86" -DLLVM_BUILD_RUNTIME=OFF -DLLVM_BUILD_TOOLS=OFF \
|
-DLLVM_CCACHE_BUILD=OFF -DLLVM_BUILD_RUNTIME=OFF -DLLVM_BUILD_TOOLS=OFF \
|
||||||
-DLLVM_INCLUDE_DOCS=OFF -DLLVM_INCLUDE_EXAMPLES=OFF -DLLVM_INCLUDE_TESTS=OFF -DLLVM_INCLUDE_TOOLS=OFF \
|
-DLLVM_INCLUDE_DOCS=OFF -DLLVM_INCLUDE_EXAMPLES=OFF -DLLVM_INCLUDE_TESTS=OFF -DLLVM_INCLUDE_TOOLS=OFF \
|
||||||
-DLLVM_INCLUDE_UTILS=OFF -DLLVM_USE_PERF=OFF -DLLVM_ENABLE_Z3_SOLVER=OFF \
|
-DLLVM_INCLUDE_UTILS=OFF -DLLVM_USE_PERF=OFF -DLLVM_ENABLE_Z3_SOLVER=OFF \
|
||||||
-DUSE_NATIVE_INSTRUCTIONS=OFF \
|
-DUSE_NATIVE_INSTRUCTIONS=OFF \
|
||||||
-DUSE_SYSTEM_MVK=OFF \
|
-DUSE_SYSTEM_MVK=OFF \
|
||||||
|
$CMAKE_EXTRA_OPTS \
|
||||||
|
-DLLVM_TARGET_ARCH=X86_64 -DCMAKE_OSX_ARCHITECTURES=x86_64 -DCMAKE_IGNORE_PATH="$BREW_PATH/lib" \
|
||||||
-G Ninja
|
-G Ninja
|
||||||
|
|
||||||
ninja; build_status=$?;
|
"$BREW_PATH/bin/ninja"; build_status=$?;
|
||||||
|
|
||||||
cd ..
|
cd ..
|
||||||
|
|
||||||
|
|
|
@ -14,7 +14,9 @@ echo "AVVER=$AVVER" >> ../.ci/ci-vars.env
|
||||||
|
|
||||||
cd bin
|
cd bin
|
||||||
mkdir "rpcs3.app/Contents/lib/"
|
mkdir "rpcs3.app/Contents/lib/"
|
||||||
cp "/usr/local/opt/llvm@13/lib/c++/libc++abi.1.0.dylib" "rpcs3.app/Contents/lib/libc++abi.1.dylib"
|
|
||||||
|
cp "/usr/local/Homebrew/opt/llvm@14/lib/c++/libc++abi.1.0.dylib" "rpcs3.app/Contents/lib/libc++abi.1.dylib"
|
||||||
|
|
||||||
rm -rf "rpcs3.app/Contents/Frameworks/QtPdf.framework" \
|
rm -rf "rpcs3.app/Contents/Frameworks/QtPdf.framework" \
|
||||||
"rpcs3.app/Contents/Frameworks/QtQml.framework" \
|
"rpcs3.app/Contents/Frameworks/QtQml.framework" \
|
||||||
"rpcs3.app/Contents/Frameworks/QtQmlModels.framework" \
|
"rpcs3.app/Contents/Frameworks/QtQmlModels.framework" \
|
||||||
|
@ -33,7 +35,7 @@ echo "IconIndex=0" >> Quickstart.url
|
||||||
|
|
||||||
DMG_FILEPATH="$BUILD_ARTIFACTSTAGINGDIRECTORY/rpcs3-v${COMM_TAG}-${COMM_COUNT}-${COMM_HASH}_macos.dmg"
|
DMG_FILEPATH="$BUILD_ARTIFACTSTAGINGDIRECTORY/rpcs3-v${COMM_TAG}-${COMM_COUNT}-${COMM_HASH}_macos.dmg"
|
||||||
|
|
||||||
create-dmg --volname RPCS3 \
|
/opt/homebrew/bin/create-dmg --volname RPCS3 \
|
||||||
--window-size 800 400 \
|
--window-size 800 400 \
|
||||||
--icon-size 100 \
|
--icon-size 100 \
|
||||||
--icon rpcs3.app 200 190 \
|
--icon rpcs3.app 200 190 \
|
||||||
|
@ -45,7 +47,7 @@ create-dmg --volname RPCS3 \
|
||||||
"$DMG_FILEPATH" \
|
"$DMG_FILEPATH" \
|
||||||
RPCS3.app
|
RPCS3.app
|
||||||
|
|
||||||
7z a -mx9 rpcs3-v"${COMM_TAG}"-"${COMM_COUNT}"-"${COMM_HASH}"_macos.7z RPCS3.app
|
/opt/homebrew/bin/7z a -mx9 rpcs3-v"${COMM_TAG}"-"${COMM_COUNT}"-"${COMM_HASH}"_macos.7z RPCS3.app
|
||||||
|
|
||||||
FILESIZE=$(stat -f %z "$DMG_FILEPATH")
|
FILESIZE=$(stat -f %z "$DMG_FILEPATH")
|
||||||
SHA256SUM=$(shasum -a 256 "$DMG_FILEPATH" | awk '{ print $1 }')
|
SHA256SUM=$(shasum -a 256 "$DMG_FILEPATH" | awk '{ print $1 }')
|
||||||
|
|
10
.cirrus.yml
10
.cirrus.yml
|
@ -120,15 +120,17 @@ freebsd_task:
|
||||||
script: "./.ci/build-freebsd.sh"
|
script: "./.ci/build-freebsd.sh"
|
||||||
|
|
||||||
macos_task:
|
macos_task:
|
||||||
timeout_in: 120m
|
timeout_in: 12000m
|
||||||
ccache_cache:
|
ccache_cache:
|
||||||
folder: /tmp/ccache_dir
|
folder: /tmp/ccache_dir
|
||||||
matrix:
|
matrix:
|
||||||
- name: Cirrus macOS
|
- name: Cirrus macOS
|
||||||
osx_instance:
|
macos_instance:
|
||||||
image: monterey-xcode-13.3
|
image: ghcr.io/cirruslabs/macos-monterey-xcode:14
|
||||||
mac_script:
|
mac_script:
|
||||||
- mkdir artifacts
|
- mkdir artifacts
|
||||||
|
- chmod +x ".ci/build-mac.sh"
|
||||||
|
- chmod +x ".ci/deploy-mac.sh"
|
||||||
- ".ci/build-mac.sh"
|
- ".ci/build-mac.sh"
|
||||||
env:
|
env:
|
||||||
BUILD_ARTIFACTSTAGINGDIRECTORY: ${CIRRUS_WORKING_DIR}/artifacts
|
BUILD_ARTIFACTSTAGINGDIRECTORY: ${CIRRUS_WORKING_DIR}/artifacts
|
||||||
|
@ -141,7 +143,7 @@ macos_task:
|
||||||
RELEASE_MESSAGE: "../GitHubReleaseMessage.txt"
|
RELEASE_MESSAGE: "../GitHubReleaseMessage.txt"
|
||||||
artifacts:
|
artifacts:
|
||||||
name: Artifact
|
name: Artifact
|
||||||
path: "artifacts/rpcs3-*_macos.*"
|
path: "artifacts/*"
|
||||||
push_script: |
|
push_script: |
|
||||||
if [ "$CIRRUS_REPO_OWNER" = "RPCS3" ] && [ -z "$CIRRUS_PR" ] && [ "$CIRRUS_BRANCH" = "master" ]; then
|
if [ "$CIRRUS_REPO_OWNER" = "RPCS3" ] && [ -z "$CIRRUS_PR" ] && [ "$CIRRUS_BRANCH" = "master" ]; then
|
||||||
source './.ci/export-cirrus-vars.sh'
|
source './.ci/export-cirrus-vars.sh'
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
<key>LSApplicationCategoryType</key>
|
<key>LSApplicationCategoryType</key>
|
||||||
<string>public.app-category.games</string>
|
<string>public.app-category.games</string>
|
||||||
<key>LSMinimumSystemVersion</key>
|
<key>LSMinimumSystemVersion</key>
|
||||||
<string>11.6</string>
|
<string>12.0</string>
|
||||||
<key>NSCameraUsageDescription</key>
|
<key>NSCameraUsageDescription</key>
|
||||||
<string>The camera will be used for PlayStation Eye emulation</string>
|
<string>The camera will be used for PlayStation Eye emulation</string>
|
||||||
<key>NSMicrophoneUsageDescription</key>
|
<key>NSMicrophoneUsageDescription</key>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue