# Template file for 'ppsspp' pkgname=ppsspp version=1.11.3 revision=1 _lang_commit=6bd5b4bc983917ea8402f73c726b46e36f3de0b4 _glslang_commit=d0850f875ec392a130ccf00018dab458b546f27c _SPIRV_Cross_commit=a1f7c8dc8ea2f94443951ee27003bffa562c1f13 _armips_commit=7885552b208493a6a0f21663770c446c3ba65576 _discord_rpc_commit=3d3ae7129d17643bc706da0a2eea85aafd10ab3a _miniupnp_commit=7e229ddd635933239583ab190d9b614bde018157 build_style=cmake configure_args="-DHEADLESS=1 -DUSE_SYSTEM_FFMPEG=1 -DUNITTEST=ON -DUSING_QT_UI=$(vopt_if qt ON OFF)" hostmakedepends="pkg-config python3 $(vopt_if qt qt5-host-tools)" makedepends="zlib-devel glew-devel ffmpeg-devel libzip-devel snappy-devel rapidjson libpng-devel $(vopt_if sdl2 SDL2-devel) $(vopt_if wayland wayland-devel) $(vopt_if qt 'qt5-devel qt5-multimedia-devel')" depends="desktop-file-utils" short_desc="Fast and portable PSP emulator" maintainer="John " license="GPL-2.0-or-later" homepage="https://www.ppsspp.org/" distfiles=" https://github.com/hrydgard/ppsspp/archive/v${version}.tar.gz https://github.com/hrydgard/ppsspp-lang/archive/${_lang_commit}.tar.gz https://github.com/hrydgard/glslang/archive/${_glslang_commit}.tar.gz https://github.com/KhronosGroup/SPIRV-Cross/archive/${_SPIRV_Cross_commit}.tar.gz https://github.com/Kingcom/armips/archive/${_armips_commit}.tar.gz https://github.com/discordapp/discord-rpc/archive/${_discord_rpc_commit}.tar.gz https://github.com/hrydgard/miniupnp/archive/${_miniupnp_commit}.tar.gz" checksum="503f046fa68e4be24d08822b0aa2280e653ad513d9a12c77a59809467b95c516 b6e9fe4a7daa2dd8d4f3cc74cbafc5382f7df90303af3a3c18d25ec4492d8899 699e177e0022f17c204e3542bbf7fcb6843923095968edc1ebbc5124e85a2bdf 456b1e2a75a8e82985ce22f4707570c7aa1fc50d4119cba1a641e8b233ecde26 f8a03906135fb6f2932b80b7ef5991f39ccac46b36ec3690776fb38c69775c3d 20fe5dbd7a64f7a8fdbaeb81f8dd485df61121c5054e0f7f917c6193f209ff2e 6819f0984fa647f69a74831a2333859a07099f64098ce58c35d8604d19532d3d" # ppsspp always tries to compile x86 unittest # https://gist.github.com/Johnnynator/e18d59274451cff890b7235009d2e93d case $XBPS_TARGET_MACHINE in x86_64* | i686*) configure_args+=" -DUNITTEST=ON";; armv[67]*) broken="SDL2 is not build against x11";; ppc*) broken="No JIT support";; *) configure_args+=" -DUNITTEST=OFF";; esac build_options="wayland qt sdl2" build_options_default="sdl2" post_extract() { rmdir -v ${wrksrc}/assets/lang mv ${wrksrc}/../ppsspp-lang-${_lang_commit} ${wrksrc}/assets/lang rmdir -v ${wrksrc}/ext/armips mv ${wrksrc}/../armips-${_armips_commit} ${wrksrc}/ext/armips rmdir -v ${wrksrc}/ext/glslang mv ${wrksrc}/../glslang-${_glslang_commit} ${wrksrc}/ext/glslang rmdir -v ${wrksrc}/ext/SPIRV-Cross mv ${wrksrc}/../SPIRV-Cross-${_SPIRV_Cross_commit} ${wrksrc}/ext/SPIRV-Cross rmdir -v ${wrksrc}/ext/discord-rpc mv ${wrksrc}/../discord-rpc-${_discord_rpc_commit} ${wrksrc}/ext/discord-rpc rmdir -v ${wrksrc}/ext/miniupnp mv ${wrksrc}/../miniupnp-${_miniupnp_commit} ${wrksrc}/ext/miniupnp } post_patch(){ # disable git versioning vsed -e 's|find_package(Git)|# &|' -i git-version.cmake } do_install() { vlicense LICENSE.TXT vinstall icons/icon.svg 644 usr/share/pixmaps ppsspp.svg vinstall Qt/PPSSPP.desktop 644 usr/share/applications vbin build/PPSSPPHeadless ppsspp-headless vmkdir usr/share/ppsspp vcopy build/assets usr/share/ppsspp/ if [ $build_option_sdl2 ]; then vbin build/PPSSPPSDL ppsspp-sdl sed -e 's,^Exec=.*,Exec=/usr/bin/ppsspp-sdl,' -i $DESTDIR/usr/share/applications/PPSSPP.desktop elif [ $build_option_qt ] ;then vbin build/PPSSPPQt ppsspp-qt sed -e 's,^Exec=.*,Exec=/usr/bin/ppsspp-qt,' -i $DESTDIR/usr/share/applications/PPSSPP.desktop fi sed -e 's,^Icon=.*,Icon=/usr/share/pixmaps/ppsspp.svg,' -i $DESTDIR/usr/share/applications/PPSSPP.desktop }