Ryujinx (Test build)

This commit is contained in:
Steam OS User 2022-04-16 19:21:53 +09:00
parent 0a11c0085b
commit 1c576b5890

View file

@ -677,93 +677,93 @@ modules:
# Disabled because of this error:
# https://github.com/flathub/net.rpcs3.RPCS3/issues/854
- name: rpcs3-llvm
buildsystem: cmake-ninja
builddir: true
build-options:
cflags: &optflags -O2 -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
-grecord-gcc-switches -fasynchronous-unwind-tables -fstack-clash-protection
-fcf-protection -fno-omit-frame-pointer
cflags-override: true
cxxflags: -O2 -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
-grecord-gcc-switches -fasynchronous-unwind-tables -fstack-clash-protection
-fcf-protection -fno-omit-frame-pointer -msse -msse2 -mcx16
cxxflags-override: true
env:
AR: llvm-ar
CC: clang
CXX: clang++
RANLIB: llvm-ranlib
ldflags: -fuse-ld=lld
prepend-ld-library-path: /usr/lib/sdk/llvm13/lib
prepend-path: /usr/lib/sdk/llvm13/bin
config-opts:
- -DCMAKE_BUILD_TYPE=Release
- -DBUILD_SHARED_LIBS=OFF
- -DLLVM_CCACHE_BUILD=ON
- -DLLVM_TARGETS_TO_BUILD='X86'
- -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_UTILS=OFF
- -DLLVM_USE_INTEL_JITEVENTS=ON
- -DLLVM_USE_PERF=ON
- -DLLVM_ENABLE_Z3_SOLVER=OFF
- -DCMAKE_CXX_STANDARD=17
- -DITTAPI_SOURCE_DIR=/run/build/rpcs3-llvm/ittapi
- -Wno-dev
cleanup:
- '*'
sources:
- type: git
url: https://github.com/RPCS3/llvm-mirror.git
commit: 509d31ad89676522f7121b3bb8688f7d29b7ee60
- type: git
url: https://github.com/intel/ittapi.git
dest: ittapi/ittapi
disable-shallow-clone: true
# - name: rpcs3-llvm
# buildsystem: cmake-ninja
# builddir: true
# build-options:
# cflags: &optflags -O2 -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
# -grecord-gcc-switches -fasynchronous-unwind-tables -fstack-clash-protection
# -fcf-protection -fno-omit-frame-pointer
# cflags-override: true
# cxxflags: -O2 -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
# -grecord-gcc-switches -fasynchronous-unwind-tables -fstack-clash-protection
# -fcf-protection -fno-omit-frame-pointer -msse -msse2 -mcx16
# cxxflags-override: true
# env:
# AR: llvm-ar
# CC: clang
# CXX: clang++
# RANLIB: llvm-ranlib
# ldflags: -fuse-ld=lld
# prepend-ld-library-path: /usr/lib/sdk/llvm13/lib
# prepend-path: /usr/lib/sdk/llvm13/bin
# config-opts:
# - -DCMAKE_BUILD_TYPE=Release
# - -DBUILD_SHARED_LIBS=OFF
# - -DLLVM_CCACHE_BUILD=ON
# - -DLLVM_TARGETS_TO_BUILD='X86'
# - -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_UTILS=OFF
# - -DLLVM_USE_INTEL_JITEVENTS=ON
# - -DLLVM_USE_PERF=ON
# - -DLLVM_ENABLE_Z3_SOLVER=OFF
# - -DCMAKE_CXX_STANDARD=17
# - -DITTAPI_SOURCE_DIR=/run/build/rpcs3-llvm/ittapi
# - -Wno-dev
# cleanup:
# - '*'
# sources:
# - type: git
# url: https://github.com/RPCS3/llvm-mirror.git
# commit: 509d31ad89676522f7121b3bb8688f7d29b7ee60
# - type: git
# url: https://github.com/intel/ittapi.git
# dest: ittapi/ittapi
# disable-shallow-clone: true
- name: rpcs3
buildsystem: cmake-ninja
builddir: true
build-options:
append-ld-library-path: /usr/lib/sdk/llvm13/lib
append-path: /usr/lib/sdk/llvm13/bin
cflags: *optflags
cflags-override: true
cxxflags: *optflags
cxxflags-override: true
env:
AR: llvm-ar
CC: clang
CXX: clang++
RANLIB: llvm-ranlib
ldflags: -fuse-ld=lld
config-opts:
- -DCMAKE_BUILD_TYPE=RelWithDebInfo
- -DBUILD_LLVM_SUBMODULE=OFF
- -DUSE_NATIVE_INSTRUCTIONS=OFF
- -DUSE_PRECOMPILED_HEADERS=OFF
- -DUSE_SYSTEM_CURL=ON
- -DUSE_SYSTEM_FFMPEG=ON
- -DUSE_SYSTEM_LIBPNG=ON
- -DUSE_SYSTEM_ZLIB=ON
- -Wno-dev
post-install:
- |
set -eux;
sed -i 's|<id>RPCS3</id>|<id>net.rpcs3.RPCS3</id>|' ${FLATPAK_DEST}/share/metainfo/rpcs3.metainfo.xml;
COMM_TAG="$(awk -F'[\{,]' '/version{.*}/{printf "%d.%d.%d", $2, $3, $4}' ../rpcs3/rpcs3_version.cpp)";
COMM_COUNT="$(git rev-list --count HEAD)";
COMM_HASH="$(git rev-parse --short=8 HEAD)";
sed -i 's|</component>|<content_rating type="oars-1.1"/><releases><release date="'$(git show -s --format=%cs)'" version="'"${COMM_TAG}"'-'"${COMM_COUNT}"'-'"${COMM_HASH}"'"/></releases></component>|' ${FLATPAK_DEST}/share/metainfo/rpcs3.metainfo.xml;
sources:
- type: git
url: https://github.com/RPCS3/rpcs3.git
commit: d6b026314409980734605e9275950f835f04e8df
# - name: rpcs3
# buildsystem: cmake-ninja
# builddir: true
# build-options:
# append-ld-library-path: /usr/lib/sdk/llvm13/lib
# append-path: /usr/lib/sdk/llvm13/bin
# cflags: *optflags
# cflags-override: true
# cxxflags: *optflags
# cxxflags-override: true
# env:
# AR: llvm-ar
# CC: clang
# CXX: clang++
# RANLIB: llvm-ranlib
# ldflags: -fuse-ld=lld
# config-opts:
# - -DCMAKE_BUILD_TYPE=RelWithDebInfo
# - -DBUILD_LLVM_SUBMODULE=OFF
# - -DUSE_NATIVE_INSTRUCTIONS=OFF
# - -DUSE_PRECOMPILED_HEADERS=OFF
# - -DUSE_SYSTEM_CURL=ON
# - -DUSE_SYSTEM_FFMPEG=ON
# - -DUSE_SYSTEM_LIBPNG=ON
# - -DUSE_SYSTEM_ZLIB=ON
# - -Wno-dev
# post-install:
# - |
# set -eux;
# sed -i 's|<id>RPCS3</id>|<id>net.rpcs3.RPCS3</id>|' ${FLATPAK_DEST}/share/metainfo/rpcs3.metainfo.xml;
# COMM_TAG="$(awk -F'[\{,]' '/version{.*}/{printf "%d.%d.%d", $2, $3, $4}' ../rpcs3/rpcs3_version.cpp)";
# COMM_COUNT="$(git rev-list --count HEAD)";
# COMM_HASH="$(git rev-parse --short=8 HEAD)";
# sed -i 's|</component>|<content_rating type="oars-1.1"/><releases><release date="'$(git show -s --format=%cs)'" version="'"${COMM_TAG}"'-'"${COMM_COUNT}"'-'"${COMM_HASH}"'"/></releases></component>|' ${FLATPAK_DEST}/share/metainfo/rpcs3.metainfo.xml;
# sources:
# - type: git
# url: https://github.com/RPCS3/rpcs3.git
# commit: d6b026314409980734605e9275950f835f04e8df
# RPCS3 - END
@ -832,54 +832,54 @@ modules:
# Ryujinx - START
# - name: Ryujinx
# buildsystem: simple
# build-options:
# append-path: /usr/lib/sdk/dotnet6/bin
# append-ld-library-path: /usr/lib/sdk/dotnet6/lib
# arch:
# x86_64:
# env:
# RUNTIME: linux-x64
# env:
# PKG_CONFIG_PATH: /app/lib/pkgconfig:/app/share/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig:/usr/lib/sdk/dotnet6/lib/pkgconfig
# DOTNET_CLI_TELEMETRY_OPTOUT: 'true'
# DOTNET_SKIP_FIRST_TIME_EXPERIENCE: 'true'
# RYUJINX_VERSION: 1.1.102
# RYUJINX_TARGET_RELEASE_CHANNEL_OWNER: flathub
# RYUJINX_TARGET_RELEASE_CHANNEL_REPO: org.ryujinx.Ryujinx
# RYUJINX_TARGET_RELEASE_CHANNEL_NAME: master
# build-commands:
# - |
# export RYUJINX_GIT_SHORT_HASH=$(git rev-parse --short HEAD)
# sed -r --in-place "s/\%\%RYUJINX_BUILD_VERSION\%\%/$RYUJINX_VERSION/g;" Ryujinx.Common/ReleaseInformations.cs
# sed -r --in-place "s/\%\%RYUJINX_BUILD_GIT_HASH\%\%/$RYUJINX_GIT_SHORT_HASH/g;" Ryujinx.Common/ReleaseInformations.cs
# sed -r --in-place "s/\%\%RYUJINX_TARGET_RELEASE_CHANNEL_NAME\%\%/$RYUJINX_TARGET_RELEASE_CHANNEL_NAME/g;" Ryujinx.Common/ReleaseInformations.cs
# sed -r --in-place "s/\%\%RYUJINX_TARGET_RELEASE_CHANNEL_OWNER\%\%/$RYUJINX_TARGET_RELEASE_CHANNEL_OWNER/g;" Ryujinx.Common/ReleaseInformations.cs
# sed -r --in-place "s/\%\%RYUJINX_TARGET_RELEASE_CHANNEL_REPO\%\%/$RYUJINX_TARGET_RELEASE_CHANNEL_REPO/g;" Ryujinx.Common/ReleaseInformations.cs
# mkdir -p /app/bin
# dotnet publish -c Release -r $RUNTIME /p:DebugType=embedded Ryujinx /p:Version=$RYUJINX_VERSION /p:SourceRevisionId=$RYUJINX_GIT_SHORT_HASH /p:ExtraDefineConstants=DISABLE_UPDATER --self-contained --source nuget-sources
# if [ $? -ne 0 ]; then
# exit 1;
# fi;
# cp -r --remove-destination /run/build/Ryujinx/Ryujinx/bin/Release/net6.0/$RUNTIME/publish/* /app/bin/
# mkdir -p /app/lib/ffmpeg
# ln -s /usr/lib/x86_64-linux-gnu/libX11.so.6 /app/lib/libX11.so
# install -Dm644 $FLATPAK_ID.appdata.xml /app/share/metainfo/$FLATPAK_ID.appdata.xml
# install -Dm755 ryujinx-wrapper /app/bin/ryujinx-wrapper
# install -Dm644 distribution/linux/ryujinx-logo.svg /app/share/icons/hicolor/scalable/apps/ryujinx.svg
# install -Dm644 distribution/linux/ryujinx-mime.xml /app/share/mime/packages/$FLATPAK_ID.mime.xml
# install -Dm644 distribution/linux/ryujinx.desktop /app/share/applications/$FLATPAK_ID.desktop
# desktop-file-edit --set-key="Exec" --set-value="ryujinx-wrapper %f" /app/share/applications/$FLATPAK_ID.desktop
# sources:
# - nuget_sources.json
# - type: git
# url: https://github.com/Ryujinx/Ryujinx.git
# commit: 247d26b4b50df8a068b9bfbb412a29f0c9f6a97b
# - type: file
# path: ryujinx-wrapper
# - type: file
# path: org.ryujinx.Ryujinx.appdata.xml
- name: Ryujinx
buildsystem: simple
build-options:
append-path: /usr/lib/sdk/dotnet6/bin
append-ld-library-path: /usr/lib/sdk/dotnet6/lib
arch:
x86_64:
env:
RUNTIME: linux-x64
env:
PKG_CONFIG_PATH: /app/lib/pkgconfig:/app/share/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig:/usr/lib/sdk/dotnet6/lib/pkgconfig
DOTNET_CLI_TELEMETRY_OPTOUT: 'true'
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: 'true'
RYUJINX_VERSION: 1.1.102
RYUJINX_TARGET_RELEASE_CHANNEL_OWNER: flathub
RYUJINX_TARGET_RELEASE_CHANNEL_REPO: org.ryujinx.Ryujinx
RYUJINX_TARGET_RELEASE_CHANNEL_NAME: master
build-commands:
- |
export RYUJINX_GIT_SHORT_HASH=$(git rev-parse --short HEAD)
sed -r --in-place "s/\%\%RYUJINX_BUILD_VERSION\%\%/$RYUJINX_VERSION/g;" Ryujinx.Common/ReleaseInformations.cs
sed -r --in-place "s/\%\%RYUJINX_BUILD_GIT_HASH\%\%/$RYUJINX_GIT_SHORT_HASH/g;" Ryujinx.Common/ReleaseInformations.cs
sed -r --in-place "s/\%\%RYUJINX_TARGET_RELEASE_CHANNEL_NAME\%\%/$RYUJINX_TARGET_RELEASE_CHANNEL_NAME/g;" Ryujinx.Common/ReleaseInformations.cs
sed -r --in-place "s/\%\%RYUJINX_TARGET_RELEASE_CHANNEL_OWNER\%\%/$RYUJINX_TARGET_RELEASE_CHANNEL_OWNER/g;" Ryujinx.Common/ReleaseInformations.cs
sed -r --in-place "s/\%\%RYUJINX_TARGET_RELEASE_CHANNEL_REPO\%\%/$RYUJINX_TARGET_RELEASE_CHANNEL_REPO/g;" Ryujinx.Common/ReleaseInformations.cs
mkdir -p /app/bin
dotnet publish -c Release -r $RUNTIME /p:DebugType=embedded Ryujinx /p:Version=$RYUJINX_VERSION /p:SourceRevisionId=$RYUJINX_GIT_SHORT_HASH /p:ExtraDefineConstants=DISABLE_UPDATER --self-contained --source nuget-sources
if [ $? -ne 0 ]; then
exit 1;
fi;
cp -r --remove-destination /run/build/Ryujinx/Ryujinx/bin/Release/net6.0/$RUNTIME/publish/* /app/bin/
mkdir -p /app/lib/ffmpeg
ln -s /usr/lib/x86_64-linux-gnu/libX11.so.6 /app/lib/libX11.so
install -Dm644 $FLATPAK_ID.appdata.xml /app/share/metainfo/$FLATPAK_ID.appdata.xml
install -Dm755 ryujinx-wrapper /app/bin/ryujinx-wrapper
install -Dm644 distribution/linux/ryujinx-logo.svg /app/share/icons/hicolor/scalable/apps/ryujinx.svg
install -Dm644 distribution/linux/ryujinx-mime.xml /app/share/mime/packages/$FLATPAK_ID.mime.xml
install -Dm644 distribution/linux/ryujinx.desktop /app/share/applications/$FLATPAK_ID.desktop
desktop-file-edit --set-key="Exec" --set-value="ryujinx-wrapper %f" /app/share/applications/$FLATPAK_ID.desktop
sources:
- nuget_sources.json
- type: git
url: https://github.com/Ryujinx/Ryujinx.git
commit: 247d26b4b50df8a068b9bfbb412a29f0c9f6a97b
- type: file
path: ryujinx-wrapper
- type: file
path: org.ryujinx.Ryujinx.appdata.xml
# Ryujinx - END