forked from pool/rpcs3
c5d7f22d8c
- Update to version v0.0.25~git20221228: * vk: Fix bug that made fall-out barriers never get triggered * vk/rtts: Account for corner case where the same texture can be bound to more than 1 slot * vk: Restructure framebuffer loop barrier management - Update to version v0.0.25~git20221227: * rsx: Fix logicOp behavior when blending is also active * vk: Add some missing PCI IDs * Qt: fix size_on_disk filetype * Demote PRX export already loaded error * PRX: Implement multi-referenced library management - Update to version v0.0.25~git20221222: * Qt: Improve Check Config utility * Qt: stop all async refresh threads on close * Qt: Implement config check in Utilities and log viewer * cellSaveData: add some more info to log error * Qt: optimize log viewer file loading * Qt: show some more info about the current log viewer state * Qt: save some log viewer filter settings * rsx: Restructure color format enum to clearly separate float from int formats * rsx: Propagate surface format changes to shader ROP control * cirrus: Update rpcs3-ci-bionic to 1.6 (#13064) - Update to version v0.0.25~git20221217: * StrUtil.h: Prevent an overflow in strcpy_trunc * rsx: Fix surface metadata life-cycle * rsx: Handle some corner cases in surface locking * rsx: Fix const RTV/DSV cast from texture cache * rsx: Conditionally skip flush if no new data was introduced * rsx: Avoid expensive protection scan by sharing some data between surface and texture cache * Qt: check dir size async * Qt: show item count in category filter * rsx: Fix exceptions * UI: Report Game Size On Disk, Make Game Removal An Informed Decision * vk: Add missing memory barrier * Stop LV2 Watchdog when CELL_SYSUTIL_REQUEST_EXITGAME is issued * sys_game: Made the LV2 Watchdog restarts the game forcefully * vk: Revise some TRANSFER->TRANSFER barriers that introduced RAW hazards when copying images * vk: Zero-initialize scratch VRAM allocations * SDL handler * PSF: Add AS as valid category * Misc and minor improvements of syscalls used by VSH (#13067) * Qt: facepalm fix in open_dir * gl: Throw exception if we cannot initialize critical requirements * rsx_debugger: fix overflow and some warning * Qt: don't show message if only the rpcs3 games dir shortcut was created * NP: Disable some logging (#13061) * Qt: remove cache dir when deleting games * gl: Require GLSL 450 when using barycentric extension * ci: Update glslang to sdk-1.3.224.1 * Bump windows vulkan SDK version * gl: Fix shader extension requirements * Support compiling with older SDK headers * gl: Silence compiler warning spam * rsx: Only request attribute interpolation if the GPU requires it and the driver supports it * rsx: Fix shader compilation * rsx: Implement interpolation using barycentrics * rsx: Properly flag the program control if needed * rsx: Pass on shader flags to the cache * sys_sm: Implemented sys_sm_shutdown() (#13048) - Update to version v0.0.25~git20221210: * Qt: fix opening folders by using util functions * cli: fix title_path * linux: fix shortcut cli args * Qt: simplify shortcut creation * RSSX Debugger: Do not show invalid color buffers * sys_fs: sys_fs_get_mount_info(): Made g_mp_sys_dev_root always reported as mounted * rsx: Implement draw call stepping * RSX debugger: Implement Texture Dumper * cellRec: hotfix for pre-recording * cellRec: move data instead of memcpy * cellRec: add more logging * [3rdParty] Update MoltenVK to 1.3.236 & set MSL Fastmath to On Demand (#13035) * Make it work with LLVM * PPU: Add new patch function for SONIC 06 * Qt: Improved the shown path in overlay message "Recording stopped" * Fix build errors by changing AVCodec* to a const * Path hotfix * System.cpp: protect boot arguments * GUI: bring relative game shortcut to the GUI * PKG: Ask to user if he wants to install game shortcut on PKG installation * Add support to boot using PS3 game path or TITLEID in CLI and shortcuts * rsx/qt: add recording to game window * cellRec: implement proper recording * utils: implement video encoder and image sink * Qt: minor camera config warning fixes * Qt: reset screenshot toggle in gs_frame desctructor * cellVideoExport: fix file paths * cellAdec: fix some uninitialized member warnings * CI: switch FreeBSD to Clang/libc++ 15 * sys_fs: Integrated get_mount_count() into sys_fs_get_mount_info_size() * sys_fs: Integrated the function of get_vfs() into get_mp() * USIO: Fixed "Card Reader Not Connected" Error * sys_fs: get_vfs() minor fixup * Qt: remove entire cache dir of a serial on remove all caches * Qt: remove empty cache dirs if possible * Windows: Check WSAStartup result * Try to fix dll checks * Dont append main thread's ID on fatal error dialog (#13021) * Qt: add context menu to trophy game table * Qt: add copy name and description to trophy context menu * ux: Instruct the user to delete the dlls from the installation folder. * Fix build * ux: Update vcredist links and optionally disable help text from error dialog * Qt: support fatal error as htmk * ux/core: Add module verification step for some critical libraries * Increase max number of skylanders to 8 - Update to version v0.0.25~git20221203: * sys_fs hotfix * Add RPCS3/games/ for automatic games detection, support PSN games outside HDD0 (#12982) * Implemented sys_fs_newfs() * evdev_gun: "fix" BSD * evdev_gun: convert udev code to evdev * evdev gun support cleanup * evdev gun support * Add ability to have sockets bind to a local IP address (#12998) * logs.cpp: fix regression (#12995) * logs improvements * Use uppercase RPCS3 name in the metainfo file * Log PSF path on error * Silence some usually irrelevant errors - Update to version v0.0.25~git20221126: * Improve error_code, make HDD1 errors be warnings * vm: implement lock-free try_access with range locking * Implement ref_ptr (see read_from_ptr) * Implement read_from_ptr<>() util * cfmt/StrFmt: support s128 formatting (untested) * Update AppStream Metadata OBS-URL: https://build.opensuse.org/request/show/1045665 OBS-URL: https://build.opensuse.org/package/show/Emulators/rpcs3?expand=0&rev=38
168 lines
4.7 KiB
RPMSpec
168 lines
4.7 KiB
RPMSpec
#
|
|
# spec file for package rpcs3
|
|
#
|
|
# Copyright (c) 2021 SUSE LLC
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
Name: rpcs3
|
|
Version: v0.0.25~git20221228
|
|
Release: 0
|
|
Summary: PS3 emulator/debugger
|
|
License: GPL-2.0-only
|
|
URL: https://rpcs3.net
|
|
Source0: %{name}-%{version}.tar.xz
|
|
Source1: intel-ittapi.tar.xz
|
|
BuildRequires: gcc-c++ >= 9
|
|
BuildRequires: cmake(x86-64) >= 3.14.1
|
|
BuildRequires: pkgconfig
|
|
BuildRequires: pkgconfig(libpng)
|
|
BuildRequires: pkgconfig(x11)
|
|
BuildRequires: pkgconfig(yaml-cpp)
|
|
BuildRequires: pkgconfig(zlib)
|
|
BuildRequires: pkgconfig(libevdev)
|
|
BuildRequires: pkgconfig(libudev)
|
|
BuildRequires: pkgconfig(libcurl)
|
|
BuildRequires: pkgconfig(libedit)
|
|
BuildRequires: git
|
|
BuildRequires: -post-build-checks
|
|
|
|
#graphics backend dependencies:
|
|
#-------------------------------------------------
|
|
##opengl:
|
|
BuildRequires: pkgconfig(glew) >= 1.13.0
|
|
BuildRequires: pkgconfig(glu)
|
|
|
|
##vulkan:
|
|
BuildRequires: pkgconfig(vulkan) >= 1.1.126
|
|
#-------------------------------------------------
|
|
|
|
#audio backend dependencies:
|
|
#-------------------------------------------------
|
|
##alsa:
|
|
BuildRequires: pkgconfig(alsa)
|
|
|
|
##pulseaudio:
|
|
BuildRequires: pkgconfig(libpulse)
|
|
BuildRequires: pkgconfig(libpulse-mainloop-glib)
|
|
BuildRequires: pkgconfig(libpulse-simple)
|
|
|
|
##openal:
|
|
BuildRequires: pkgconfig(openal)
|
|
|
|
##faudio:
|
|
BuildRequires: pkgconfig(sdl2)
|
|
#-------------------------------------------------
|
|
|
|
#ffmpeg dependencies
|
|
BuildRequires: pkgconfig(libavcodec)
|
|
BuildRequires: pkgconfig(libavformat)
|
|
BuildRequires: pkgconfig(libavutil)
|
|
BuildRequires: pkgconfig(libswscale)
|
|
|
|
#qt dependencies
|
|
BuildRequires: pkgconfig(Qt5Concurrent) >= 5.15.2
|
|
BuildRequires: pkgconfig(Qt5Core) >= 5.15.2
|
|
BuildRequires: pkgconfig(Qt5DBus) >= 5.15.2
|
|
BuildRequires: pkgconfig(Qt5Network) >= 5.15.2
|
|
BuildRequires: pkgconfig(Qt5Qml) >= 5.15.2
|
|
BuildRequires: pkgconfig(Qt5Widgets) >= 5.15.2
|
|
BuildRequires: pkgconfig(Qt5Multimedia) >= 5.15.2
|
|
BuildRequires: pkgconfig(Qt5MultimediaWidgets) >= 5.15.2
|
|
BuildRequires: pkgconfig(Qt5Svg) >= 5.15.2
|
|
BuildRequires: libqt5-qtbase-private-headers-devel >= 5.15.2
|
|
|
|
Requires(post): hicolor-icon-theme
|
|
Requires(post): update-desktop-files
|
|
Requires(postun): hicolor-icon-theme
|
|
Requires(postun): update-desktop-files
|
|
ExclusiveArch: x86_64
|
|
|
|
%description
|
|
An open-source PlayStation 3 emulator/debugger written in C++.
|
|
|
|
%prep
|
|
%setup -q -a 1
|
|
|
|
#Generate Version Strings
|
|
GIT_VERSION=$(echo %{version} | sed 's|.*git|git~|g')
|
|
|
|
echo "// This is a generated file.
|
|
|
|
#define RPCS3_GIT_VERSION \"$GIT_VERSION\"
|
|
#define RPCS3_GIT_BRANCH \"master\"
|
|
#define RPCS3_GIT_FULL_BRANCH \"master\"
|
|
|
|
// If you don't want this file to update/recompile, change to 1.
|
|
|
|
#define RPCS3_GIT_VERSION_NO_UPDATE 1
|
|
" > %{name}/git-version.h
|
|
|
|
%build
|
|
|
|
## llvm intel-ittapi workarounds
|
|
|
|
# Work around git revision issues
|
|
sed -i -e 's:FATAL_ERROR:WARNING:g' llvm/lib/ExecutionEngine/IntelJITEvents/CMakeLists.txt
|
|
|
|
# Fix paths
|
|
mv intel-ittapi ittapi && mkdir intel-ittapi && mv ittapi intel-ittapi/
|
|
export ITTAPI_DIR="$(pwd)/intel-ittapi"
|
|
|
|
mkdir ../%{name}_build
|
|
cd ../%{name}_build
|
|
# FIXME: you should use the %%cmake macros
|
|
%__cmake ../%{name}-%{version} \
|
|
-DITTAPI_SOURCE_DIR="${ITTAPI_DIR}" \
|
|
-DUSE_PCH=OFF \
|
|
-DENABLE_PCH=OFF \
|
|
-DSKIP_PRECOMPILE_HEADERS="ON" \
|
|
-DUSE_PRECOMPILED_HEADERS="OFF" \
|
|
-DUSE_SYSTEM_CURL="ON" \
|
|
-DUSE_SYSTEM_FFMPEG="ON" \
|
|
-DUSE_SYSTEM_LIBPNG="ON" \
|
|
-DUSE_SYSTEM_ZLIB="ON" \
|
|
-DUSE_NATIVE_INSTRUCTIONS="OFF" \
|
|
-DCMAKE_INSTALL_PREFIX="%{_prefix}" \
|
|
-DCMAKE_INSTALL_LIBEXEC="%{_libexecdir}" \
|
|
-DCMAKE_BUILD_TYPE="Release" \
|
|
-DCMAKE_SKIP_RPATH="YES"
|
|
|
|
%make_jobs
|
|
|
|
%post
|
|
%desktop_database_post
|
|
%icon_theme_cache_post
|
|
|
|
%postun
|
|
%desktop_database_postun
|
|
%icon_theme_cache_postun
|
|
|
|
%install
|
|
cd ../%{name}_build
|
|
%make_install
|
|
|
|
%files
|
|
%doc README.md
|
|
%license LICENSE
|
|
|
|
%attr(755, root, root) %{_bindir}/%{name}
|
|
%{_datadir}/applications/%{name}.desktop
|
|
%{_datadir}/icons/hicolor/scalable/apps/%{name}.svg
|
|
%{_datadir}/icons/hicolor/48x48/apps/%{name}.png
|
|
%{_datadir}/%{name}
|
|
%{_datadir}/metainfo/%{name}.metainfo.xml
|
|
|
|
%changelog
|