rpcs3/rpcs3.spec
Ismail Dönmez 860978e617 Accepting request 630084 from home:xenonpk
- Update to version 0.0.5~git20180818:
  * rsx: Do not overflow the program buffer! - Some games overflow the program buffer e.g Resistance games   The observed overflow is one instruction longer, likely an engine bug with counting instructions
  * rsx: Force disable draw reordering when capturing a frame
  * fix gcc build
  * rsx: Followup to the memory inheritance hierachy patch - Tags framebuffer resources on first use (when on_write is called to verify memory) - Texture cache now selects the best match and even sorts atlas writes with memory write order to avoid older data showing over newer one
  * gl: Avoid unnecessary scissor state change every draw call.
  * gl: Reuse framebuffer resources - WIP optimizations for GL backend
  * rsx: Enable swizzled decode for all formats unless proven otherwise - Some formats are proven to ignore swizzle flag   - DXT compressed textures   - COMPRESSED_BG_GB class textures - Some applications are using swizzled wide integer formats so those are confirmed to swizzle
  * [WIP] rsx: Improve memory inheritance hierachy - Cascade memory writes by invalidating 'downstream' subsurfaces - Fixup; always resolve for overlapping surfaces before sampling (force   atlas gather test)
  * gl: Do not create secondary context if async is disabled - Some third party programs fall apart when multiple contexts are created
  * zcull: Improve the delay algorithm to be more consistent - Use proper time checking; depending on what is being done one 'tick' can   be almost a millisecond long or several nanoseconds - Avoid spamming the system timer unless necessary
  * rsx: Avoid acquiring the vm lock; deadlock evasion - A possible deadlock is still present if rsx is trying to get a super_ptr whilst the vm lock holder is in an access violation   This patch makes this scenario very unlikely since each block need only be touched once
  * rsx: Allow linear filtering when reading back GPU-resident memory
  * vulkan: Fix blit engine transfer to ARGB8 render target memory
  * vk: Fixups for type b surfaces
  * rsx: Timestamp accuracy workaround
  * rsx: Optimize hash_struct; vk cleanup
  * rsx: Refactor and fix framebuffer layout checks - Refactors shared code back into rsx core - Adds extra check to avoid contest confusion
  * Minor optimizations and fixes - FIFO: avoid multiline spam - VK: Fix program setup counter - FS: Precalculate fragment constants buffer size during analysis step
  * ZCULL: lower notice severity to avoid spam
  * zcull synchronization tweaks - Implement forced reading when calling update method to sync partial lists - Defer conditional render evaluation and use a read barrier to avoid extra work - Fix HLE gcm library when binding tiles & zcull RAM
  * rsx: Synchronization rewritten - Do not do a full sync on a texture read barrier - Avoid calling zcull sync in FIFO spin wait - Do not flush memory to cache from the renderer side; this method is now obsolete
- Update to version 0.0.5~git20180816:
  * Mark unsync textures dirty when deferred flushing
  * Refactor get_intersecting_set
  * Fix off-by-one error in get_intersecting_set
  * Fix typo in buffered_section::overlaps_page
  * sys_memory: fix default alignment flag
  * rsx-capture: unbreak
  * Fix include in log_frame.cpp
  * Fix vm regression from #4975
  * Fixup sys_vm_memory_map
  * Implement vm::find_map; improve memory allocation
  * SPU LLVM: lower some log levels
  * sys_fs_open: support split files
  * Implement fs::make_gather
  * basic mouse handler: multi monitor adjustments
  * fix cellMouse lag + fullscreen mouse
- Update to version 0.0.5~git20180813:
  * Add the accurate xfloat option to the CPU tab
  * Rsx/vm: fix base addresses
  * Rsx: rewrite address translation
- Update to version 0.0.5~git20180812:
  * Rsx: avoid invalid cmds execution
  * Rsx: fix CALL and RET cmd
  * PPU LLVM: always link syscall_## functions
  * Update supporters
  * SPU LLVM: improve xfloat precision
  * PPU: don't use transactions (test)
  * SPU LLVM: improve debugging RPCS3
  * SPU LLVM: inline WRCH (preview)
  * SPU LLVM: rewrite CGX
  * SPU LLVM: improve constant propagation
  * PPU LLVM: fix phenoms
- Update to version 0.0.5~git20180811:
  * Fix overflow in PPUThread stack frame dump
  * Fix sys_rsx_context_iounmap args
- Update to version 0.0.5~git20180811:
  * Update new LV2 names (#4886)
- Update to version 0.0.5~git20180807:
  * Readme update
  * cellCamera: Fixes
- Update to version 0.0.5~git20180802:
  * cellCamera: improvements
  * cellMusic: improvements
  * cellPad: improvements
  * cellMouse: improvements
  * cellKb: improvements
  * Fix alignment in KeyboardHandler.h
  * VS: move keyboard_pad_handler to a better filter

OBS-URL: https://build.opensuse.org/request/show/630084
OBS-URL: https://build.opensuse.org/package/show/Emulators/rpcs3?expand=0&rev=20
2018-08-19 08:09:52 +00:00

140 lines
3.7 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.5~git20180818
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(glew)
BuildRequires: pkgconfig(glu)
BuildRequires: pkgconfig(libpng)
BuildRequires: pkgconfig(openal)
BuildRequires: pkgconfig(alsa)
BuildRequires: pkgconfig(libpulse-simple)
BuildRequires: pkgconfig(libevdev)
BuildRequires: pkgconfig(yaml-cpp)
BuildRequires: pkgconfig(libudev)
BuildRequires: vulkan-devel
BuildRequires: -post-build-checks
#ffmpeg deps
BuildRequires: pkgconfig(libavcodec)
BuildRequires: pkgconfig(libswscale)
BuildRequires: pkgconfig(libavformat)
#qt deps
BuildRequires: pkgconfig(Qt5Core) >= 5.8
BuildRequires: pkgconfig(Qt5Widgets) >= 5.8
BuildRequires: pkgconfig(Qt5DBus) >= 5.8
BuildRequires: pkgconfig(Qt5Network) >= 5.8
BuildRequires: pkgconfig(Qt5Qml) >= 5.8
#LLVM deps
#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
#Force Link with shared LLVM libs
#-e 's|llvm_map_components_to_libnames(LLVM_LIBS .*)|set(LLVM_LIBS LLVM)|g' \
#-e 's|-march=native|-msse -msse2 -mcx16 -mrtm|g' \
sed -i \
-e 's|Qt5 5.[0-9]\+|Qt5|g' \
%{name}/CMakeLists.txt
#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\"
// 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_SYSTEM_FFMPEG="ON" \
-DUSE_SYSTEM_LIBPNG="ON" \
-DUSE_NATIVE_INSTRUCTIONS="OFF" \
-DCMAKE_INSTALL_PREFIX="%{_prefix}" \
-DCMAKE_INSTALL_LIBEXEC="%{_libexecdir}" \
-DCMAKE_BUILD_TYPE="Release" \
-DCMAKE_SKIP_RPATH="YES" \
-DCMAKE_C_FLAGS="%{optflags} -fno-pie" \
-DCMAKE_CXX_FLAGS="%{optflags} -fno-pie"
%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