# As per the policy on emulators, this should be submitted to tainted Summary: Sony PlayStation Portable (PSP) emulator Name: ppsspp Version: 1.7.2 %define subrel 2 Release: %mkrel 1 License: GPLv2+ Group: Emulators Url: http://www.ppsspp.org # git clone https://github.com/hrydgard/ppsspp && cd ppsspp # git submodule update --init --recursive assets/lang ext/SPIRV-Cross ext/armips ext/discord-rpc ext/glslang # git archive-all --prefix=ppsspp-%%{version}/ ppsspp-%%{version}.tar.xz Source0: %{name}-%{version}.tar.xz Patch1: ppsspp-1.1.0-git-version.patch Patch2: ppsspp-1.4.0-datapath.patch Patch3: ppsspp-1.7.2-mga-system-rapidjson.patch Patch4: ppsspp-1.7.2-mga-wayland-optional.patch Patch5: ppsspp-1.7.2-mga-opengl-arm.patch # Temporary hack to workaround https://github.com/hrydgard/ppsspp/issues/11490 Patch6: ppsspp-1.7.2-mga-workaround-ffmpeg-3.1-or-later.patch Patch7: ppsspp-1.7.2-mga-arm-x11.patch BuildRequires: cmake BuildRequires: imagemagick BuildRequires: ffmpeg-devel BuildRequires: pkgconfig(gl) BuildRequires: pkgconfig(glew) # Needs libpng 1.7+, not packaged in mga6 #BuildRequires: pkgconfig(libpng) >= 1.7 BuildRequires: pkgconfig(libzip) BuildRequires: pkgconfig(RapidJSON) BuildRequires: pkgconfig(sdl2) BuildRequires: pkgconfig(zlib) BuildRequires: snappy-devel %description PPSSPP is a cross-platform Sony PlayStation Portable (PSP) emulator. PPSSPP can run your PSP games on your PC in full HD resolution, and play them on Android too. It can even upscale textures that would otherwise be too blurry as they were made for the small screen of the original PSP. This package is in tainted as per the policy on emulators. %files %doc LICENSE.TXT README.md %{_datadir}/applications/%{name}.desktop %{_gamesbindir}/%{name} %{_gamesdatadir}/%{name}/ %{_iconsdir}/hicolor/*/apps/%{name}.png #---------------------------------------------------------------------------- %prep %autosetup -p1 # Fix version string sed s,"unknown_version","%{version}-%{release}",g -i git-version.cmake # Make sure those are not used rm -rf ext/zlib rm -rf ext/native/ext/libzip #rm -rf ext/native/ext/libpng17 # We need to keep the CMakeLists.txt for USE_SYSTEM_SNAPPY and GLEW_FOUND rm -rf ext/glew/{GL,*.c} rm -rf ext/snappy/*.{cpp,h} %build %cmake \ -DBUILD_SHARED_LIBS=OFF \ -DHEADLESS=OFF \ -DUSE_FFMPEG=ON \ -DUSE_SYSTEM_FFMPEG=ON \ -DUSE_SYSTEM_LIBZIP=ON \ -DUSE_SYSTEM_SNAPPY=ON \ -DUSE_WAYLAND_WSI=OFF %make_build %install # no make install for ppsspp, only for its bundled deps install -D -m755 build/PPSSPPSDL %{buildroot}%{_gamesbindir}/%{name} install -d %{buildroot}%{_gamesdatadir}/%{name} cp -a build/assets %{buildroot}%{_gamesdatadir}/%{name} install -d %{buildroot}%{_datadir}/applications cat << EOF > %{buildroot}%{_datadir}/applications/%{name}.desktop [Desktop Entry] Type=Application Name=PPSSPP GenericName=PSP Emulator Comment=PlayStation Portable Simulator Suitable for Playing Portably (PPSSPP) Exec=ppsspp %f Icon=ppsspp Categories=Game;Emulator; EOF install -d %{buildroot}%{_iconsdir} cp -a icons/hicolor %{buildroot}%{_iconsdir} %changelog * Wed Nov 07 2018 akien <akien> 1.7.2-1.2.mga6 + Revision: 1328772 - Use less intrusive hack to workaround GH-11490 - Add patches to fix armv7hl build - Workaround video playback stutter with temporary revert of upstream commit - Disable wayland support, requires newer SDL2 - Version 1.7.2 (fixes mga#20566) * Sat Jun 03 2017 akien <akien> 1.4.2-1.mga6.tainted + Revision: 1106322 - Version 1.4.2 - Switch to cmake/SDL2 build (no longer Qt5) * Wed Mar 08 2017 akien <akien> 1.3-2.mga6.tainted + Revision: 1090240 - Rebuild for ffmpeg 3.2.4 * Tue Nov 01 2016 akien <akien> 1.3-1.mga6.tainted + Revision: 1064685 - Version 1.3 * Tue May 24 2016 akien <akien> 1.2.2-4.mga6.tainted + Revision: 1018128 - Disable exit(0) call on quit that causes a segfault in QXcbEventReader * Sun May 22 2016 akien <akien> 1.2.2-3.mga6.tainted + Revision: 1017548 - Upstream patch to fix tiny window size bug * Fri Apr 01 2016 akien <akien> 1.2.2-2.mga6 + Revision: 997485 - Version 1.2.2 * Mon Jan 11 2016 akien <akien> 1.1.1-2.mga6.tainted + Revision: 921457 - Fix broken desktop file - Version 1.1.1 o Drop Patch1 as upstream now handles the unbundling fine * Thu Nov 19 2015 daviddavid <daviddavid> 1.0.1-4.mga6.tainted + Revision: 904222 - rebuild for new libzip 1.0.1 * Mon Aug 24 2015 sander85 <sander85> 1.0.1-3.mga6.tainted + Revision: 869152 - Rebuild for glew 1.13.0 * Wed Jun 24 2015 akien <akien> 1.0.1-2.mga6.tainted + Revision: 842034 - Rebuild for GLEW 1.12 * Tue Mar 10 2015 akien <akien> 1.0.1-1.mga5.tainted + Revision: 818295 - Version 1.0.1 o Upstream support for system ffmpeg with Atrac3+ playback (ROSA patch has therefore been dropped) o Uses SDL2 instead of SDL - Unbundled external libraries: glew, libzip, snappy and zlib * Fri Nov 14 2014 akien <akien> 0.9.9.1-5.mga5.tainted + Revision: 797090 - Rebuild for ffmpeg 2.4 * Sun Nov 02 2014 akien <akien> 0.9.9.1-4.mga5.tainted + Revision: 795220 - Add a patch from Andrey Bondrov (ROSA) to fix Atrac3+ playback with system ffmpeg * Wed Oct 15 2014 umeabot <umeabot> 0.9.9.1-3.mga5.tainted + Revision: 741090 - Second Mageia 5 Mass Rebuild * Tue Sep 16 2014 umeabot <umeabot> 0.9.9.1-2.mga5.tainted + Revision: 687762 - Mageia 5 Mass Rebuild * Tue Sep 09 2014 akien <akien> 0.9.9.1-1.mga5.tainted + Revision: 674204 - Bugfix release 0.9.9.1 - Switch to qmake/Qt5 build instead of cmake/SDL one - Use upstream option to use shared ffmpeg * Wed Jul 30 2014 akien <akien> 0.9.9-1.mga5.tainted + Revision: 658359 - Version 0.9.9 - Drop OpenMandriva controls patch, it seems better to stick to upstream choices - Install hicolor icons provided by upstream * Mon Mar 24 2014 akien <akien> 0.9.7.2-2.mga5.tainted + Revision: 607812 - Rebuild for ffmpeg 2.2 (and in the proper section) - Add a comment signaling this should be pushed to tainted * Wed Feb 19 2014 akien <akien> 0.9.7.2-1.mga5 + Revision: 594856 - New version 0.9.7.2: fixing a drastic slowdowns in a couple of games - Changelog for 0.9.7.1: https://raw2.github.com/hrydgard/ppsspp/v0.9.7.1/README.md - Import ppsspp SRPM from OpenMandriva