mirror of
https://github.com/RPCSX/rpcsx.git
synced 2026-01-14 12:41:10 +01:00
Deploy dev builds to https://github.com/RPCSX/rpcsx-build
This commit is contained in:
parent
4365718460
commit
919703472c
|
|
@ -31,25 +31,5 @@ if [ "$DEPLOY_APPIMAGE" = "true" ]; then
|
|||
linuxdeploy --appimage-extract
|
||||
./squashfs-root/plugins/linuxdeploy-plugin-appimage/usr/bin/appimagetool AppDir -g
|
||||
|
||||
APPIMAGE_SUFFIX="linux_${CPU_ARCH}"
|
||||
if [ "$CPU_ARCH" = "x86_64" ]; then
|
||||
# Preserve back compat. Previous versions never included the full arch.
|
||||
APPIMAGE_SUFFIX="linux64"
|
||||
fi
|
||||
|
||||
COMM_TAG=$(awk '/version{.*}/ { printf("%d.%d.%d", $5, $6, $7) }' ../rpcs3/rpcs3_version.cpp)
|
||||
COMM_COUNT="$(git rev-list --count HEAD)"
|
||||
COMM_HASH="$(git rev-parse --short=8 HEAD)"
|
||||
RPCS3_APPIMAGE="rpcs3-v${COMM_TAG}-${COMM_COUNT}-${COMM_HASH}_${APPIMAGE_SUFFIX}.AppImage"
|
||||
|
||||
mv ./RPCS3*.AppImage "$RPCS3_APPIMAGE"
|
||||
|
||||
# If we're building using a CI, let's copy over the AppImage artifact
|
||||
if [ -n "$BUILD_ARTIFACTSTAGINGDIRECTORY" ]; then
|
||||
cp "$RPCS3_APPIMAGE" "$ARTDIR"
|
||||
fi
|
||||
|
||||
FILESIZE=$(stat -c %s ./rpcs3*.AppImage)
|
||||
SHA256SUM=$(sha256sum ./rpcs3*.AppImage | awk '{ print $1 }')
|
||||
echo "${SHA256SUM};${FILESIZE}B" > "$RELEASE_MESSAGE"
|
||||
mv ./*.AppImage ../RPCS3-Qt-UI.AppImage
|
||||
fi
|
||||
|
|
|
|||
|
|
@ -3,31 +3,17 @@
|
|||
# First let's see print some info about our caches
|
||||
"$(cygpath -u "$CCACHE_BIN_DIR")"/ccache.exe --show-stats -v
|
||||
|
||||
# BUILD_blablabla is Azure specific, so we wrap it for portability
|
||||
ARTIFACT_DIR="$BUILD_ARTIFACTSTAGINGDIRECTORY"
|
||||
|
||||
# Remove unecessary files
|
||||
rm -f ./rpcs3/bin/rpcs3.exp ./rpcs3/bin/rpcs3.lib ./rpcs3/bin/rpcs3.pdb ./rpcs3/bin/vc_redist.x64.exe
|
||||
rm -rf ./rpcs3/bin/git
|
||||
|
||||
# Prepare compatibility and SDL database for packaging
|
||||
mkdir ./rpcs3/bin/config
|
||||
mkdir ./rpcs3/bin/config/input_configs
|
||||
mkdir -p ./rpcs3/bin/config/input_configs
|
||||
curl -fsSL 'https://raw.githubusercontent.com/gabomdq/SDL_GameControllerDB/master/gamecontrollerdb.txt' 1> ./rpcs3/bin/config/input_configs/gamecontrollerdb.txt
|
||||
curl -fsSL 'https://rpcs3.net/compatibility?api=v1&export' | iconv -t UTF-8 1> ./rpcs3/bin/GuiConfigs/compat_database.dat
|
||||
cp -rf ./build-msvc/bin/ ./rpcs3/bin/
|
||||
|
||||
# Download SSL certificate (not needed with CURLSSLOPT_NATIVE_CA)
|
||||
#curl -fsSL 'https://curl.haxx.se/ca/cacert.pem' 1> ./bin/cacert.pem
|
||||
|
||||
# Package artifacts
|
||||
7z a -m0=LZMA2 -mx9 "$BUILD" ./rpcs3/bin/*
|
||||
|
||||
# Generate sha256 hashes
|
||||
# Write to file for GitHub releases
|
||||
sha256sum "$BUILD" | awk '{ print $1 }' | tee "$BUILD.sha256"
|
||||
echo "$(cat "$BUILD.sha256");$(stat -c %s "$BUILD")B" > GitHubReleaseMessage.txt
|
||||
|
||||
# Move files to publishing directory
|
||||
cp -- "$BUILD" "$ARTIFACT_DIR"
|
||||
cp -- "$BUILD.sha256" "$ARTIFACT_DIR"
|
||||
cp -- "$BUILD" ./RPCS3-Qt-UI.7z
|
||||
|
|
|
|||
102
.github/workflows/rpcs3.yml
vendored
102
.github/workflows/rpcs3.yml
vendored
|
|
@ -1,4 +1,4 @@
|
|||
name: Build RPCS3
|
||||
name: Build RPCS3 Qt UI (Legacy)
|
||||
|
||||
defaults:
|
||||
run:
|
||||
|
|
@ -36,7 +36,7 @@ jobs:
|
|||
docker_img: "rpcs3/rpcs3-ci-jammy-aarch64:1.4"
|
||||
build_sh: "rpcs3/.ci/build-linux-aarch64.sh"
|
||||
compiler: clang
|
||||
name: RPCS3 QT UI for Linux ${{ matrix.os }} ${{ matrix.compiler }}
|
||||
name: RPCS3 Qt UI (Legacy) for Linux ${{ matrix.os }} ${{ matrix.compiler }}
|
||||
runs-on: ${{ matrix.os }}
|
||||
env:
|
||||
CCACHE_DIR: ${{ github.workspace }}/ccache
|
||||
|
|
@ -46,6 +46,8 @@ jobs:
|
|||
ARTDIR: "/root/artifacts"
|
||||
RELEASE_MESSAGE: "/rpcs3/GitHubReleaseMessage.txt"
|
||||
COMPILER: ${{ matrix.compiler }}
|
||||
RX_VERSION: "Unknown"
|
||||
RX_SHA: "Unknown"
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@main
|
||||
|
|
@ -71,15 +73,38 @@ jobs:
|
|||
${{ matrix.docker_img }} \
|
||||
${{ matrix.build_sh }}
|
||||
|
||||
RX_VERSION=`cat .rx.version | awk -F'-' '{print $1}'`
|
||||
RX_SHA=`cat .rx.version | awk -F'-' '{print $5}'`
|
||||
|
||||
echo "RX_VERSION=$RX_VERSION" >> "${{ github.env }}"
|
||||
echo "RX_SHA=$RX_SHA" >> "${{ github.env }}"
|
||||
mv RPCS3-Qt-UI.AppImage RPCS3-Qt-UI-Linux-${{ runner.arch }}-${{ matrix.compiler }}.AppImage
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@main
|
||||
with:
|
||||
name: RPCS3 QT UI for Linux (${{ runner.arch }}, ${{ matrix.compiler }})
|
||||
path: ${{ env.BUILD_ARTIFACTSTAGINGDIRECTORY }}/*.AppImage
|
||||
name: RPCS3 Qt UI (Legacy) for Linux (${{ runner.arch }}, ${{ matrix.compiler }})
|
||||
path: RPCS3-Qt-UI-Linux-${{ runner.arch }}-${{ matrix.compiler }}.AppImage
|
||||
compression-level: 0
|
||||
|
||||
- name: Deploy build
|
||||
uses: softprops/action-gh-release@v2
|
||||
if: |
|
||||
github.event_name != 'pull_request' &&
|
||||
github.ref == 'refs/heads/master' &&
|
||||
github.repository == 'RPCSX/rpcsx'
|
||||
with:
|
||||
prerelease: false
|
||||
make_latest: true
|
||||
repository: RPCSX/rpcsx-build
|
||||
token: ${{ secrets.BUILD_TOKEN }}
|
||||
tag_name: v${{ env.RX_VERSION }}-${{ env.RX_SHA }}
|
||||
files: RPCS3-Qt-UI-Linux-${{ runner.arch }}-${{ matrix.compiler }}.AppImage
|
||||
body: ${{ github.server_url }}/${{ github.repository }}/commit/${{ github.sha }}
|
||||
|
||||
|
||||
Windows_Build:
|
||||
name: RPCS3 QT UI Windows
|
||||
name: RPCS3 Qt UI (Legacy) for Windows
|
||||
runs-on: windows-2025
|
||||
env:
|
||||
COMPILER: msvc
|
||||
|
|
@ -96,8 +121,8 @@ jobs:
|
|||
CCACHE_INODECACHE: 'true'
|
||||
CCACHE_SLOPPINESS: 'time_macros'
|
||||
DEPS_CACHE_DIR: ./dependency_cache
|
||||
steps:
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@main
|
||||
with:
|
||||
|
|
@ -108,22 +133,22 @@ jobs:
|
|||
echo "QTDIR=C:\Qt\${{ env.QT_VER }}\${{ env.QT_VER_MSVC }}_64" >> ${{ github.env }}
|
||||
echo "VULKAN_SDK=C:\VulkanSDK\${{ env.VULKAN_VER }}" >> ${{ github.env }}
|
||||
|
||||
- name: Get Cache Keys
|
||||
run: .ci/get_keys-windows.sh
|
||||
# - name: Get Cache Keys
|
||||
# run: .ci/get_keys-windows.sh
|
||||
|
||||
- name: Setup Build Ccache
|
||||
uses: actions/cache@main
|
||||
with:
|
||||
path: ${{ env.CCACHE_DIR }}
|
||||
key: "${{ runner.os }}-ccache-${{ env.COMPILER }}-${{github.run_id}}"
|
||||
restore-keys: ${{ runner.os }}-ccache-${{ env.COMPILER }}-
|
||||
# - name: Setup Build Ccache
|
||||
# uses: actions/cache@main
|
||||
# with:
|
||||
# path: ${{ env.CCACHE_DIR }}
|
||||
# key: "${{ runner.os }}-ccache-${{ env.COMPILER }}-${{github.run_id}}"
|
||||
# restore-keys: ${{ runner.os }}-ccache-${{ env.COMPILER }}-
|
||||
|
||||
- name: Setup Dependencies Cache
|
||||
uses: actions/cache@main
|
||||
with:
|
||||
path: ${{ env.DEPS_CACHE_DIR }}
|
||||
key: "${{ runner.os }}-${{ env.COMPILER }}-${{ env.QT_VER }}-${{ env.VULKAN_SDK_SHA }}-${{ env.CCACHE_SHA }}-${{ hashFiles('llvm.lock') }}-${{ hashFiles('glslang.lock') }}"
|
||||
restore-keys: ${{ runner.os }}-${{ env.COMPILER }}-
|
||||
# - name: Setup Dependencies Cache
|
||||
# uses: actions/cache@main
|
||||
# with:
|
||||
# path: ${{ env.DEPS_CACHE_DIR }}
|
||||
# key: "${{ runner.os }}-${{ env.COMPILER }}-${{ env.QT_VER }}-${{ env.VULKAN_SDK_SHA }}-${{ env.CCACHE_SHA }}-${{ hashFiles('llvm.lock') }}-${{ hashFiles('glslang.lock') }}"
|
||||
# restore-keys: ${{ runner.os }}-${{ env.COMPILER }}-
|
||||
|
||||
- name: Download and unpack dependencies
|
||||
run: .ci/setup-windows.sh
|
||||
|
|
@ -136,23 +161,50 @@ jobs:
|
|||
echo "$key=$val" >> "${{ github.env }}"
|
||||
done < .ci/ci-vars.env
|
||||
|
||||
- name: Add msbuild to PATH
|
||||
uses: microsoft/setup-msbuild@main
|
||||
# - name: Add msbuild to PATH
|
||||
# uses: microsoft/setup-msbuild@main
|
||||
|
||||
- name: Compile RPCS3 QT UI
|
||||
- name: Configure
|
||||
run: |
|
||||
cmake -B build-msvc -DCMAKE_POLICY_VERSION_MINIMUM=3.5 -DWITH_RPCSX=off -DWITH_RPCS3=on -DWITH_RPCS3_QT_UI=on -DCMAKE_CONFIGURATION_TYPES="Debug;Release" -DCMAKE_INSTALL_PREFIX="${sourceDir}/out/install/${presetName}" -DUSE_NATIVE_INSTRUCTIONS=on -DUSE_PRECOMPILED_HEADERS=on -DUSE_FAUDIO=off -DUSE_SYSTEM_CURL=off -DUSE_SYSTEM_ZLIB=off -DUSE_SYSTEM_OPENAL=off -DUSE_SYSTEM_OPENCV=off -DBUILD_LLVM=on -DSTATIC_LINK_LLVM=on
|
||||
|
||||
- name: Export Version
|
||||
run: |
|
||||
RX_VERSION=`cat .rx.version | awk -F'-' '{print $1}'`
|
||||
RX_SHA=`cat .rx.version | awk -F'-' '{print $5}'`
|
||||
echo "RX_VERSION=$RX_VERSION" >> "${{ github.env }}"
|
||||
echo "RX_SHA=$RX_SHA" >> "${{ github.env }}"
|
||||
|
||||
- name: Build
|
||||
run: |
|
||||
cmake --build build-msvc --config Release
|
||||
|
||||
|
||||
- name: Pack up build artifacts
|
||||
run: |
|
||||
mkdir -p "${{ env.BUILD_ARTIFACTSTAGINGDIRECTORY }}"
|
||||
.ci/deploy-windows.sh
|
||||
mv RPCS3-Qt-UI.7z RPCS3-Qt-UI-Windows-${{ runner.arch }}-${{ env.COMPILER }}.7z
|
||||
|
||||
- name: Upload artifacts (7z)
|
||||
uses: actions/upload-artifact@main
|
||||
with:
|
||||
name: RPCS3 QT UI for Windows (MSVC)
|
||||
path: ${{ env.BUILD_ARTIFACTSTAGINGDIRECTORY }}
|
||||
name: RPCS3 Qt UI (Legacy) for Windows (MSVC)
|
||||
path: RPCS3-Qt-UI-Windows-${{ runner.arch }}-${{ env.COMPILER }}.7z
|
||||
compression-level: 0
|
||||
if-no-files-found: error
|
||||
|
||||
- name: Deploy build
|
||||
uses: softprops/action-gh-release@v2
|
||||
if: |
|
||||
github.event_name != 'pull_request' &&
|
||||
github.ref == 'refs/heads/master' &&
|
||||
github.repository == 'RPCSX/rpcsx'
|
||||
with:
|
||||
prerelease: false
|
||||
make_latest: true
|
||||
repository: RPCSX/rpcsx-build
|
||||
token: ${{ secrets.BUILD_TOKEN }}
|
||||
tag_name: v${{ env.RX_VERSION }}-${{ env.RX_SHA }}
|
||||
files: RPCS3-Qt-UI-Windows-${{ runner.arch }}-${{ env.COMPILER }}.7z
|
||||
body: ${{ github.server_url }}/${{ github.repository }}/commit/${{ github.sha }}
|
||||
|
|
|
|||
|
|
@ -54,4 +54,4 @@ target_compile_definitions(${PROJECT_NAME} PRIVATE
|
|||
)
|
||||
|
||||
|
||||
file(WRITE "${CMAKE_SOURCE_DIR}/.rx.version" "${GIT_DATE}-${RX_TAG}-${RX_TAG_VERSION}-${GIT_BRANCH}-0x${GIT_REV}-${GIT_DIRTY}")
|
||||
file(WRITE "${CMAKE_SOURCE_DIR}/.rx.version" "${GIT_DATE}-${RX_TAG}-${RX_TAG_VERSION}-${GIT_BRANCH}-${GIT_REV}-${GIT_DIRTY}")
|
||||
|
|
|
|||
Loading…
Reference in a new issue