net.rpcs3.RPCS3/net.rpcs3.RPCS3.yaml
2021-12-06 09:40:30 +00:00

224 lines
6.5 KiB
YAML

id: net.rpcs3.RPCS3
runtime: org.kde.Platform
runtime-version: 5.15-21.08
sdk: org.kde.Sdk
sdk-extensions:
- org.freedesktop.Sdk.Extension.llvm12
command: rpcs3
rename-desktop-file: rpcs3.desktop
rename-appdata-file: rpcs3.metainfo.xml
rename-icon: rpcs3
finish-args:
- --device=all
- --filesystem=home:ro
- --filesystem=xdg-run/gvfs
- --filesystem=xdg-run/gvfsd
- --share=ipc
- --socket=fallback-x11
- --socket=pulseaudio
- --socket=wayland
- --share=network
- --talk-name=org.a11y.Bus
- --talk-name=org.gtk.vfs.*
- --talk-name=org.freedesktop.ScreenSaver
- --talk-name=org.mate.ScreenSaver
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
build-options:
prepend-ld-library-path: /usr/lib/sdk/llvm12/lib
prepend-path: /usr/lib/sdk/llvm12/bin
modules:
- shared-modules/glu/glu-9.json
- shared-modules/glew/glew.json
- shared-modules/libusb/libusb.json
- name: libevdev
buildsystem: meson
config-opts:
- -Dtests=disabled
- -Ddocumentation=disabled
cleanup:
- /bin
- /include
- /lib/pkgconfig
- /share
sources:
- type: archive
url: https://www.freedesktop.org/software/libevdev/libevdev-1.12.0.tar.xz
sha256: 2f729e3480695791f9482e8388bd723402b89f0eaf118057bbdea3cecee9b237
x-checker-data:
type: anitya
project-id: 20540
stable-only: true
url-template: https://www.freedesktop.org/software/libevdev/libevdev-$version.tar.xz
- name: FAudio
buildsystem: cmake-ninja
builddir: true
config-opts:
- -DCMAKE_BUILD_TYPE=RelWithDebInfo
- -DGSTREAMER=ON
cleanup:
- /include
- /lib/cmake
- /lib/pkgconfig
sources:
- type: archive
url: https://github.com/FNA-XNA/FAudio/archive/refs/tags/21.12.tar.gz
sha256: c69d1b7098c018a787311d6f2bfdbc3782e88407f219ea53213f052284f9cb14
x-checker-data:
type: anitya
project-id: 20663
stable-only: true
url-template: https://github.com/FNA-XNA/FAudio/archive/refs/tags/$version.tar.gz
- name: flatbuffers
buildsystem: cmake-ninja
build-options:
env:
CC: clang
CXX: clang++
config-opts:
- -DCMAKE_BUILD_TYPE=RelWithDebInfo
- -DFLATBUFFERS_BUILD_TESTS=OFF
- -DFLATBUFFERS_BUILD_FLATC=OFF
- -DFLATBUFFERS_BUILD_SHAREDLIB=ON
cleanup:
- /include
- /lib/cmake
- /lib/pkgconfig
- /lib/*.a
sources:
- type: git
url: https://github.com/google/flatbuffers.git
tag: v2.0.0
commit: a9a295fecf3fbd5a4f571f53b01f63202a3e2113
x-checker-data:
type: git
tag-pattern: ^v([\d.]+)$
- name: pugixml
buildsystem: cmake-ninja
config-opts:
- -DCMAKE_BUILD_TYPE=RelWithDebInfo
- -DBUILD_SHARED_LIBS=ON
cleanup:
- /include
- /lib/cmake
- /lib/pkgconfig
sources:
- type: archive
url: https://github.com/zeux/pugixml/releases/download/v1.11.4/pugixml-1.11.4.tar.gz
sha256: 8ddf57b65fb860416979a3f0640c2ad45ddddbbafa82508ef0a0af3ce7061716
x-checker-data:
type: anitya
project-id: 3728
stable-only: true
url-template: https://github.com/zeux/pugixml/releases/download/v$version/pugixml-$version.tar.gz
- name: xxhash
no-autogen: true
make-install-args:
- PREFIX=${FLATPAK_DEST}
cleanup:
- /bin
- /include
- /lib/pkgconfig
- /lib/*.a
- /share
sources:
- type: archive
url: https://github.com/Cyan4973/xxHash/archive/refs/tags/v0.8.1.tar.gz
sha256: 3bb6b7d6f30c591dd65aaaff1c8b7a5b94d81687998ca9400082c739a690436c
x-checker-data:
type: anitya
project-id: 17583
stable-only: true
url-template: https://github.com/Cyan4973/xxHash/archive/refs/tags/v$version.tar.gz
- name: rpcs3-llvm
buildsystem: cmake-ninja
builddir: true
build-options:
cxxflags: -msse -msse2 -mcx16
env:
AR: llvm-ar
CC: clang
CXX: clang++
RANLIB: llvm-ranlib
ldflags: -fuse-ld=lld
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_ENABLE_Z3_SOLVER=OFF
- -DCMAKE_CXX_STANDARD=17
- -DITTAPI_SOURCE_DIR=/run/build/rpcs3-llvm/ittapi
cleanup:
- '*'
sources:
- type: git
url: https://github.com/RPCS3/llvm-mirror.git
branch: master
commit: 318b8fe3746615f914522d4e177c537ce80d1d08
- 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:
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_FAUDIO=ON
- -DUSE_SYSTEM_FFMPEG=ON
- -DUSE_SYSTEM_FLATBUFFERS=ON
- -DUSE_SYSTEM_LIBPNG=ON
- -DUSE_SYSTEM_LIBUSB=ON
- -DUSE_SYSTEM_PUGIXML=ON
- -DUSE_SYSTEM_XXHASH=ON
- -DUSE_SYSTEM_ZLIB=ON
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
branch: master
commit: 0617e9e14b2066dca610f4a75857f8da1eabc74f