forked from pool/rpcs3
a93c4e31e7
- Update to version 0.0.13~git20201201: * atomic.cpp: improve hashtable access * Make cpu_counter::remove() async * sceNp.cpp: fix some UTF-8 string mismatch - Update to version 0.0.13~git20201130: * rsx: Fix upscaled image reconstruction * rsx: Fix uncaught depth-func changes - Update to version 0.0.13~git20201129: * Fix RSX replay thread lifecycle - Update to version 0.0.13~git20201129: * Add missing Fedora dependancy to BUILDING.md * Remove unneeded non-ASCII character (unedat.cpp) * stdafx.h: remove BOM from custom included headers - Update to version 0.0.13~git20201127: * Try to set 2-3 GiB working space and show error if it's failed (Windows) * shared_ptr.hpp: fix critical bugs * Minor debugging enhancement * Threads: fix minor race * Homebrew atomic_ptr rewritten (util/shared_ptr.hpp) * atomic.cpp: shrink and simplify main hashtable * atomic.hpp: remove/deprecate incomplete notify features * Handle some undefined behavior regarding null pads - Update to version 0.0.13~git20201125: * JIT: increase likeliness of allocating 2M large pages * perf_meter.hpp: move logic to noinline function * utils::shm: allow 2M hugepages on demand * Linux: remove assertions on MADV_HUGEPAGE * atomic.cpp: fix windows/std path * Implement "slow mutex" without spin-waiting. * Minor changes related to Emu.Stop() - Update to version 0.0.13~git20201124: * asm.hpp: constexpr refactoring * vm_native.cpp: add MADV_HUGEPAGE * atomic.hpp: alter atomic_storage<>::store a bit * Implement prefetch_write() and prefetch_exec() wrappers * Fix auto exit * gl: Disable depth test before rendering text to the backbuffer which does have a Z buffer * Azure: attempt to produce clang artifact * Remove any mentions of scam CI * Fix SPU LS MMIO * vm: adjustments * atomic.cpp: don't use empty notify callback * Threads: minor simplification - Update to version 0.0.13~git20201123: * vk: Improve support for RDNA - Update to version 0.0.13~git20201123: * Simplify communication with thread pool * Clean thread pool at exit. * atomic.hpp: fix atomic_wait::list regression * atomic.hpp: redefine op::ne to actually mean "not equal" * Remove old travis badge (kill it with fire) * Pushing master AppImage Artifacts to GitHub Releases via Azure - Update to version 0.0.13~git20201122: * Attempt 2: Try to make Azure push linux builds * Azure: try to deploy GCC artifact (upload to github) * Removed .travis.yml * Attempt to fix #9316 * Second attempt to fix hanging RPCS3 process * atomic.cpp: remove redundant constexpr - Update to version 0.0.13~git20201121: * rsx: Some shader compiler threads tuning * qt: Add shader compiler threads to GUI * gl: Thread shader source compilation dispatch * rsx: Use multithreaded shader compiler backend * Attempt to fix Emu.Quit() * Fix thread pool entry point and get_cycles() * Attempt to fix #9271 * atomic.cpp: optimize "cond" allocation with TLS * Basic constexpr support for u128 (MSVC) * atomic.cpp: use deterministic "cond" allocation * atomic.cpp: use some actual hash for hashtable (std::minstd_rand) * CPU: remove descheduled threads from suspend_all list - Update to version 0.0.13~git20201120: * SPU: Log STOP full opcode (#9292) * hotfix for infinite loop when booting game data * Update disc boot detection and hope it works * Fix u128 type on MSVC (subtraction, minus) * CPU: use u128 in bit counter * Fix perf_meter<> after adding thread pool. * vm.cpp: minor optimization for filling stack guards * CPU: remove cpu_counter from g_fxo * CPU: update suspend interface (dummy) * CPU: Fix g_suspend_counter waiting logic - Update to version 0.0.13~git20201118: * SPU LLVM: fix AND instruction family (#9290) * rsx: Resolution scaling overhaul * Debugger: fill stack guard with STACKGRD * Update hidapi * Fix memory viewer for SPU LS * SPU: increase max SPU count * SPU: absolutely unacceptable hack for SPU LS * sys_memory: HORRIBLE HACK for sys_memory_get_page_attributes * atomic.cpp: remove tiny redundancy * Potential fix for Linux compilation - Update to version 0.0.13~git20201117: * Debugger: Fix scrolling in first registers panel * cellGame fixes * Add thread_ctrl::get_thread_stack * vm: respect initial protection for allocation mapping * vm: memory locking rewritten * SPU: don't allocate SPU LS in vm::main - Update to version 0.0.13~git20201115: * SPU Debugger: Implement float registers view + General debugger fixes (#9265) * SPU: Fix some stat printing * atomic.cpp: fix notification on windows - Update to version 0.0.13~git20201114: * atomic.cpp/threads: remove old wait callback * atomic.cpp: fix waiting on multiple variables * atomic.cpp: fix rare overload scenario * Temporarily disable memory locking if TSX is not used * Fix suspend_all bug (TSX, TSX-FA) * Don't add lonely cpu_flag::memory on TSX path (bug) * Fix thread pool resource management. - Update to version 0.0.13~git20201113: * Fixed thread pool a bit * atomic.cpp: continuation of fixing all-ones masks * atomic.cpp: optimize raw_notify() for unspecified pointer mode * Improve disconnected state handling of dns queries * Add some error checking in sceNp2.cpp * Implement simple thread pool * Add .gdbinit config file * Adds SIGPIPE to ignored exceptions(unix) * atomic.cpp: print some stats on stop * atomic.cpp: fix notification bug from few commits before * atomic.cpp: minor optimization * atomic.cpp: merge more atomic variables for simplicity * atomic.cpp: combine two atomics (ref ctr and wait ptr) * atomic.cpp: don't load actual memory on empty mask * atomic.cpp: minor notification improvement * atomic.cpp: restore notify_all() behaviour * atomic.cpp: implement some atomic wait operations. - Update to version 0.0.13~git20201111: * Fix vm::check_addr calls in Thread.cpp * Fix vm::range_lock, imporve vm::check_addr * Registers Editor: Implement SPU/PPU register value broadcast * Debugger: Improve SPU/PPU vector registers * Fix missing controller mapping * atomic.cpp: waitable atomics got brutally rewritten * SPU Debugger: Improve registers panel * rpcn 0.3.5 (#9227) * Fix PPU stack contents on allocation * Make memory locking optional (mlock, VirtualLock). * Import VirtualAlloc2 if available (Win10+) * Improve DYNAMIC_IMPORT * CPU: Improve suspend_all g_suspend_counter handling * vm: lock memory under "sudo" addr * Implement utils::memory_lock * vm: remove unnecessary memset() on stop * CPU: use unsigned (u8) priority in suspend_all * Fix path not being saved on install pkgs * Hotfix for shm->map_self() * sys_semaphore: add state check to sys_semaphore_get_value * SPU/vm: Improve vm::range_lock a bit * SPU: improve spu_thread::reservation_check * vm: implement g_shmem for range locks * vm: add map_self() method to utils::shm * vm: refactor vm::range_lock again * Debugger fixups (#9226) * kernel-explorer: Add basic process info * Debugger: Improve SPU/PPU callstack handling - Update to version 0.0.13~git20201107: * unify patch log - Update to version 0.0.13~git20201107: * Debugger: Implement SPU callstack, fix PPU callstack * atomic.cpp: fix 3-arg notify functions * atomic.cpp: allow waiting on multiple variables simultaneously * atomic.cpp: adjust assumed pointer mask * atomic.cpp: add minor safety check * atomic.cpp: maintenance of wait() function * SPU reservations: Do not illegally dereference reservation data * Set AccountAge to 18 to fix age restriction checks, fix incorrect logged function name (#9218) * More Header cleanup * CI/FreeBSD: switch TravisCI to Clang 11 * CI/FreeBSD: enable on TravisCI as ccache works nowadays * CI/FreeBSD: switch CirrusCI to 12.2-RELEASE * CI/FreeBSD: avoid downloading commit history in submodules * CI/FreeBSD: clear ccache stats, so new hits are easier to notice * CI/FreeBSD: stop forcing ccache after f528aada24fb * atomic.cpp: upgrade raw_notify() * atomic.cpp: refactor native signaling functions * atomic.cpp: fix cond_handle data structures * Remove unused atomic with lock bit - Update to version 0.0.13~git20201106: * llvm: Update submodule (Zen3 workaround) (#9212) * Extend timeout on travis * atomic.cpp: remove load() from notify functions * atomic.cpp: more improvements * atomic.cpp: various cleanups and fixes * Improve shared_mutex * Improve cond_var notifiers * Fix HAS_OVERCOMMIT usage in JIT.cpp * Update LLVM commit id * Fix 1 warning in MSVC * atomic.cpp: improvements. * Improve low-level mmap utilities (Linux/BSD) * Fix vm::lock_range wrong check * Improve cpu_flag::temp handling * sys_prx: add cpu_flag::wait * vm: minor refactoring * Fix some switch warnings * Fix NEVER_INLINE attribute * Optimize cpu check_state() a bit * Add Quadro to fast version of VK get_driver_vendor * Set some things to log level always - Update to version 0.0.13~git20201103: * Add option to log qDebug * Log Qt version - Update to version 0.0.13~git20201102: * rpcs3_version: Bump to 0.0.13 (#9192) * Upgrade to LLVM 11 Stable * vm::range_lock cleanup and minor optimization * Optimize vm::range_lock - Update to version 0.0.12~git20201101: * TSX: fix transaction limit settings * TSX: tiny optimization of transaction functions - Update to version 0.0.12~git20201101: * Fix vm::page_protect and range flags * SPU: Fix Accurate DMA edge case * Improve vm::range_lock * Qt: Pass events to dialog when not remapping * overlays: kinda fix performance graph margins (#9181) * Disasm: do not allow to access previous instructions in non-interpreter mode * SPU Debugger: SHUFB insertion patterns * TSX: new fallback method (time-based) * vm: rename g_addr_lock to g_range_lock * Rename vm::reservation_light_op -> light_op * Cleanup some includes * cellSubDisplay: Add some constants (#9178) * implement interception for cellKb and cellMouse * HLE: Add some constants * Add License Area Setting * Qt: Fix Resolution combobox default value * rsx: Fix transform contants load * Actually start rsx replay thread * vm: optimize range lock slot allocations * sys_fs/sys_usbd: add cpu_flag::wait * sys_ppu_thread: add cpu_flag::wait * sys_memory: add cpu_flag::wait * sys_rsx: add cpu_flag::wait * sys_event: cleanup (replace vm::temporary_unlock) * Derive RSX Replay thread from cpu_thread * Allow cpu_thread& arg passed to the syscalls * PPU: Optimize reservation load for success * vm: add extern clear_range_locks function * CPU: improve cpu_thread::suspend_all for cache efficiency (TSX) * perf_meter.hpp: fix double rdtsc bug, add restart() method * SPU: make do_dma_transfer() static with _this arg * PPU: reload old data on STCX failure * PPU: add LARX perf counter * SPU: load previous data on PUTLLC failure * CPU: improve cpu_thread::suspend_all (TSX) * Logs: add callback for cpu_thread to set cpu_flag::wait * SPU: add stx/ftx counters * TSX tweaks OBS-URL: https://build.opensuse.org/request/show/852652 OBS-URL: https://build.opensuse.org/package/show/Emulators/rpcs3?expand=0&rev=29
158 lines
4.0 KiB
RPMSpec
158 lines
4.0 KiB
RPMSpec
#
|
|
# spec file for package RPCS3
|
|
#
|
|
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
|
#
|
|
# 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 http://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
Name: rpcs3
|
|
Version: 0.0.13~git20201201
|
|
Release: 0
|
|
Summary: PS3 emulator/debugger
|
|
License: GPL-2.0
|
|
Url: https://rpcs3.net/
|
|
Source0: %{name}-%{version}.tar.xz
|
|
ExclusiveArch: x86_64
|
|
|
|
BuildRequires: gcc-c++
|
|
|
|
BuildRequires: cmake
|
|
|
|
BuildRequires: pkgconfig(libpng)
|
|
BuildRequires: pkgconfig(yaml-cpp)
|
|
BuildRequires: pkgconfig(libevdev)
|
|
BuildRequires: pkgconfig(libudev)
|
|
BuildRequires: pkgconfig(x11)
|
|
BuildRequires: -post-build-checks
|
|
|
|
#graphics backend dependencies:
|
|
#-------------------------------------------------
|
|
#opengl:
|
|
BuildRequires: pkgconfig(glew)
|
|
BuildRequires: pkgconfig(glu)
|
|
|
|
#vulkan:
|
|
BuildRequires: vulkan-devel
|
|
#-------------------------------------------------
|
|
|
|
#audio backend dependencies:
|
|
#-------------------------------------------------
|
|
##faudio:
|
|
BuildRequires: pkgconfig(sdl2)
|
|
|
|
##openal:
|
|
BuildRequires: pkgconfig(openal)
|
|
|
|
##alsa:
|
|
#BuildRequires: pkgconfig(alsa)
|
|
|
|
##pulseaudio:
|
|
#BuildRequires: pkgconfig(libpulse-simple)
|
|
#-------------------------------------------------
|
|
|
|
#ffmpeg dependencies
|
|
BuildRequires: pkgconfig(libavcodec)
|
|
BuildRequires: pkgconfig(libswscale)
|
|
BuildRequires: pkgconfig(libavformat)
|
|
|
|
#qt dependencies
|
|
BuildRequires: pkgconfig(Qt5Core) >= 5.13
|
|
BuildRequires: pkgconfig(Qt5Widgets) >= 5.13
|
|
BuildRequires: pkgconfig(Qt5DBus) >= 5.13
|
|
BuildRequires: pkgconfig(Qt5Network) >= 5.13
|
|
BuildRequires: pkgconfig(Qt5Qml) >= 5.13
|
|
BuildRequires: libqt5-qtbase-private-headers-devel >= 5.13
|
|
|
|
#LLVM dependencies
|
|
#BuildRequires: llvm4-devel
|
|
#BuildRequires: libLLVM4
|
|
|
|
|
|
Requires(post): hicolor-icon-theme
|
|
Requires(postun): hicolor-icon-theme
|
|
Requires(post): update-desktop-files
|
|
Requires(postun): update-desktop-files
|
|
|
|
%description
|
|
An open-source PlayStation 3 emulator/debugger written in C++.
|
|
|
|
%prep
|
|
%setup -q
|
|
|
|
#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
|
|
|
|
mkdir ../%{name}_build
|
|
cd ../%{name}_build
|
|
cmake ../%{name}-%{version} \
|
|
-DUSE_PCH=OFF -DENABLE_PCH=OFF \
|
|
-DENABLE_PRECOMPILED_HEADERS=OFF \
|
|
-DSKIP_PRECOMPILE_HEADERS=ON \
|
|
-DUSE_PRECOMPILED_HEADERS=OFF \
|
|
-DUSE_SYSTEM_FFMPEG="ON" \
|
|
-DUSE_SYSTEM_LIBPNG="OFF" \
|
|
-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
|
|
%defattr(-,root,root)
|
|
%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}.appdata.xml
|
|
|
|
%exclude %{_libexecdir}
|
|
%exclude %{_includedir}
|
|
%exclude %{_bindir}/llvm-tblgen
|
|
%exclude %{_bindir}/xxhsum
|
|
%exclude %{_libdir}/libxxhash.a
|
|
%exclude %{_datadir}/man/man1/xxhsum.1.gz
|
|
|
|
%changelog
|