diff --git a/net.retrodeck.retrodeck.yml b/net.retrodeck.retrodeck.yml
index c1110a1a..11ffff98 100644
--- a/net.retrodeck.retrodeck.yml
+++ b/net.retrodeck.retrodeck.yml
@@ -4,7 +4,7 @@ runtime-version: '5.15-21.08'
sdk: org.kde.Sdk
# Needed for rpcs3
sdk-extensions:
-- org.freedesktop.Sdk.Extension.llvm13
+ - org.freedesktop.Sdk.Extension.llvm13
# /Needed for rpcs3
# Needed for Yuzu
base: io.qt.qtwebengine.BaseApp
@@ -26,7 +26,6 @@ finish-args:
- --talk-name=org.freedesktop.ScreenSaver
- --talk-name=org.freedesktop.PowerManagement.Inhibit
- --talk-name=org.freedesktop.login1
- #- --filesystem=host
- --filesystem=xdg-run/app/com.discordapp.Discord:create
# Yuzu
- --filesystem=home:ro
@@ -34,6 +33,22 @@ finish-args:
# Dolphin
- --allow=bluetooth
#- --env=QT_QPA_PLATFORM=xcb not sure if this will break something
+ # rpcs3
+ - --socket=fallback-x11
+
+# rpcs3
+add-extensions:
+ org.freedesktop.Platform.ffmpeg-full:
+ directory: lib/ffmpeg
+ add-ld-path: .
+ version: '21.08'
+ autodownload: true
+ autodelete: false
+cleanup-commands:
+ - mkdir -p ${FLATPAK_DEST}/lib/ffmpeg
+modules:
+ - shared-modules/glu/glu-9.json
+ - shared-modules/glew/glew.json
cleanup:
# ES-DE
@@ -717,6 +732,101 @@ modules:
# XEMU - END
+ # RPCS3 - START
+ # https://github.com/flathub/net.rpcs3.RPCS3
+
+ - 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
+ branch: master
+ 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|RPCS3|net.rpcs3.RPCS3|' ${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|||' ${FLATPAK_DEST}/share/metainfo/rpcs3.metainfo.xml;
+ sources:
+ - type: git
+ url: https://github.com/RPCS3/rpcs3.git
+ branch: master
+ commit: e9570d1a0045926f63ec8ea9af68f81743d4f365
+
+ # RPCS3 - START
+
# External manifests end