forked from pool/rpcs3
Marcus Meissner
efb4370023
- Update to version 0.0.5~git20180225: * Add CELL_GAMEUPDATE_RESULT_STATUS_* enum * Checks for content_id in sceNpDrmVerifyUpgradeLicense and sceNpDrmVerifyUpgradeLicense2 - Update to version 0.0.5~git20180224: * RPCS3 0.0.5: Versioning Changes (Hotfix) (#4208) * linux appimage versioning changes synced with windows artifact version * windows artifact versioning changes, plus a small syntax fix * minor syntax changes * Add callbacks for cellMusic - Update to version 0.0.4~git20180223: * Fix quoting in cmake - Update to version 0.0.4~git20180223: * Update for Qt 5.10 (#4202) - Update to version 0.0.4~git20180222: * Qt: use setAttribute(AA_DisableWindowContextHelpButton) instead of flags * sceNpTrophyGetRequiredDiskSpace: take vfs into account for trophy dir * Qt: add translation to save manager messageboxes * Qt: improve VFS dialog a bit * rsx/vk: Cleanup - Silence some warnings, remove dprints * vulkan: Swapchains reimplemented - Adds support for abstract implementations - Adds native windowing implementations for WIN32 and X11 as fallbacks when present support is lacking (headless configs) * Implement _sys_qsort in sys_libc_.cpp (#4176) * disasm: clamp spu address - Update to version 0.0.4~git20180219: * add kdevelop to gitignore * add vscode files to gitignore * Re-arrange VULKAN_PREBUILT option * Add an easy way for package builders to disable native cpu optimizations - Update to version 0.0.4~git20180219: * Qt: fix gamegrid scroll - Update to version 0.0.4~git20180218: * Add flag for rockband. Tests have shown it independent other flags. But, actual use is currently not known. * hle: return enosys on unpresented syscalls - Update to version 0.0.4~git20180216: * rsx/gl: Hotfix for GL format compatibility check when high precision depth buffers is enabled * vk/drivers: Restore polaris+ patch to disable primitive restart * vulkan: Improve primitive restart workaround for vega/polaris - For some reason the hardware forgets that primitive restart is enabled and tries to actually read vertex index 65535 - Works correctly if uint32 vertex indices are used instead of uint16 for cases where primitive restart is active * rsx: Account for null blit ops (memcpy) - Do not perform extra memory tasks if no actual image copy was performed * rsx: Add texture readback statistics to the texture cache and debug overlay * rsx: Add cache pattern checking to blit engine resources * vulkan API fixes - Fix for texture barriers - vulkan: Rework texture cache handling of depth surfaces - Support for scaled depth blit using overlay pass - Support proper readback of D24S8 in both D32F_S8 and D24U_S8 variants - Optimize the depth conversion routines with SSE - vulkan: Replace slow single element copy with std::memcpy - Check heap status before attempting blit operations - Bump guard size on upload buffer as well * infinitesimal fixes * gl: Fix save binding state for cube textures * rsx: Minor optimizations * rsx: Fix disjoint draw range splitting - Fixes flickering and missing draws in R&C and other games such as Motorstorm Apocalypse and Okami HD when strict mode is disabled * rsx/fp: Discard shaders with undefined (non-existent) writes. On nvidia+vulkan, undefined writes autofill with blue color * rsx/texture_cache: Do not access non-existent components * rsx: fbo fixes 2.5 - Implement flush-always behaviour to partially fix readback from a currently bound fbo - Without this, only the first read is correct, as more draws are added the results become 'wrong' - Fixes WCB and cpublit behviour - Synchronize blit_dst surfaces to avoid data loss when gpu texture scaling is used - Its still faster in such cases to disable gpu texture scaling but some types cannot be disabled without force cpu blit (e.g framebuffer transfers) - Memory management tuning - rsx: on-demand texture cache rescanning for unprotected sections - rsx: Only framebuffer resources are upscaled - Do not resize regular blit engine resources - Lazy initialize readback buffer when using opengl -- These measures should help minimize vram usage * gl: Cleanup some more things - Avoid referencing GL's null texture - Improve texture creation helpers - Remove useless __glcheck from GLHelpers.cpp * gl: Reuse framebuffer textures whenever possible * rsx: Reorganize framebuffer setup code - Fixes some fast paths for framebuffer creation and binding - Update to version 0.0.4~git20180212: * hle: gpio syscalls * gui: Update compatibility colors * Move Contributing to .github * GL: Update glext.h to ver 20180114 * rpcs3qt: Handle duplicate name warning * Remove redundant imports * Remove unused files (ps3emu_api) * openAL: Update to 1.18.2 * VK: add two options (workarounds) * CPUTranslator: add bitcast, trunc, zext, sext - Update to version 0.0.4~git20180209: * Clean vm::ps3 namespace use * Remove PSP2 * Game list: improve deduplication logic * SPU ASMJIT: rewrite 128-bit shifts by bit * SPU ASMJIT: minor change to ROTH instruction * Add ignore=dirty to hidapi submodule * Update LLVM submodule URL * PPU LLVM: rewrite AVG instructions * PPU LLVM: rewrite add/sub instructions * SPU: rewrite ORX instruction * SPU: emit VZEROUPPER * Initial cpu_translator impl * Handle exceptions at loading patch file * Handle exceptions at game list update * SPU: use XOP instructions * SPU: 16-bit shifts for AVX2 * hle: add a missing check in sys_spu * spu: add a missing STOP code * mfc: dont check for one completed command if tag update requast is 2 * appveyor: Add artifact sha-256 hash files (#4148) * Make fs::dir::open skip forward on failed metadata instead of crashing * Fix gs_frame spawning on monitor other than the one the main window is on (#4029) * Add sceNpMatchingInt * Add callbacks for cellPhotoExport * update av build version as late as possible to prevent webhook breakage * package artifacts using 7z LZMA2 ultra compression * minor refactoring * reformat libs fetching, fix appveyor build with luck * update qt 5.9 -> 5.10.0 * download and distribute compat db, cache db in case download fails * add openssl artifact using prebuilt binaries from appveyor build env * nuke after_package, move stuff to after_build * version and artifacts changes - fetch latest tag from git describe, use 7z for artifacts in after_build section * reformat and move BRANCH and PATH setting, reformat submodules fetching * reformat llvm and vulkan libs fetching * removed comments copied directly from appveyor docs, clone_folder is not needed since it's set to the default value - Update to version 0.0.4~git20180202: * core/GUI: Fix null pointer dereference * vk: Also discard background if window is too small in vertical axis * rsx/gl/vk: Support for swizzled? context surfaces - For some surfaces, dimensions are passed via the log2 bits rather than surface pitch -- This is similar to the setup for nv406e and probably means the surfaces are padded and swizzled * vulkan: implement proper texture read barriers * gl: API compliance fixes - Do not assume texture2D when creating new textures - Flag invalid texture cache if readonly texture is trampled by fbo memory. Avoids binding a stale handle to the pipeline and is rare enough that it should not hurt performance * Add callbacks for cellVideoUpload * Add callbacks for cellVideoExport * Add callbacks for cellRec * Install and load icons from Icons in executable directory, fixes local builds using Icons * remove libfreetype.so.6, fixes AppImages for some users * vk: Stuff - Remove subpass dependencies; transitions are handled via exicit imagememrybarriers - Reuse sampler objects whenever possible; create/delete cycles are not free * glsl/fp/vp: Avoid shader clutter - Do not add unused subroutines in shaders unless necessary -- makes shaders easier to read and disassembled spir-v has less clutter - glsl: Replace switch block with lookup table * rsx: misc fixes - Supply explicit options for spv emit allowing optimizations (not yet compiled into the backend) - Add epsilon fix to glslcommon - Fix shader dialog crash when using qt (race condition) * rsx/fp/vp: Epsilon value is too large! - Original epsilon value was 1.E-10 which nvidia linux driver could not read properly -- Restores the original value represented in decimal notation * gl: Implement swap control on linux * Fix native UI save_dialog when there are no saves (#4113) - Update to version 0.0.4~git20180129: * Fix to B8 format render target swizzling (#4123) * Stub some functions in cellWebBrowser * improve cellKB keyreleases and autorepeat * Use clang 5.0 in travis (#4115) * Qt/Core: implement max llvm compile threads - Update to version 0.0.4~git20180124: * vk/ogl: Fix regression for G8B8 * hle: Stub function Unimplemented in NpSns. * rsx: fixed emulated primitive restart * rsx: fix potential hang during thread close * improved hack/fix for cellsurmixer - Update to version 0.0.4~git20180122: * Minor fixes - vulkan: Do not assume an aux frame context must exist in a well defined state as set in init_buffers() since the request might be external (via overlays path) - gl: Do not bother waiting for idle before servicing external flip requests - gl: Queue overlay cleanup requests to ensure only glthread attempts touching the context - overlays: Do not compute size metrics for invalid/unsupported glyphs * rsx/gl/vk: Fixes and optimizations - opengl driver optimization for nvidia. On nvidia glTextureBufferRange performance is horrendous -- Initialize texture buffer to whole buffer at startup and use absolute offsets to read data instead -- Over 2x performance in some cases (Resogun, TNT racers) - gl/vk: Do not flip non-existent display buffers. Fixes spec violation at boot in TNT racers demo - whitespace fixes for sys_rsx * scheduler stuff - more threads for rsx - better 1600 * rsx: Texture format fixes - Implement low bit decode override flags for 2-component textures - Properly implement alot of texture remaps according to the autotest results * vk/gl: Preserve clamped z precision to some extent - Use edges of depth range to map clamped stuff OBS-URL: https://build.opensuse.org/request/show/579957 OBS-URL: https://build.opensuse.org/package/show/Emulators/rpcs3?expand=0&rev=16
133 lines
3.5 KiB
RPMSpec
133 lines
3.5 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~git20180225
|
|
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
|
|
|
|
#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' \
|
|
sed -i \
|
|
-e 's|-march=native|-msse -msse2 -mcx16 -mrtm|g' \
|
|
rpcs3/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}
|
|
%exclude %{_libexecdir}
|
|
%exclude %{_includedir}
|
|
%exclude %{_bindir}/llvm-tblgen
|
|
|
|
%changelog
|