summaryrefslogtreecommitdiff
path: root/emulators/ppsspp
diff options
context:
space:
mode:
Diffstat (limited to 'emulators/ppsspp')
-rw-r--r--emulators/ppsspp/Makefile42
-rw-r--r--emulators/ppsspp/distinfo44
-rw-r--r--emulators/ppsspp/files/patch-cmake_Modules_FindFFmpeg.cmake8
-rw-r--r--emulators/ppsspp/files/patch-no-egl27
-rw-r--r--emulators/ppsspp/files/patch-no-egl-plus-warnings-fix33
-rw-r--r--emulators/ppsspp/pkg-plist1
6 files changed, 73 insertions, 82 deletions
diff --git a/emulators/ppsspp/Makefile b/emulators/ppsspp/Makefile
index a7b6168210be..18747dd52b1d 100644
--- a/emulators/ppsspp/Makefile
+++ b/emulators/ppsspp/Makefile
@@ -1,48 +1,48 @@
PORTNAME= ppsspp
DISTVERSIONPREFIX= v
-DISTVERSION?= 1.18.1
-PORTREVISION?= 1
+DISTVERSION?= 1.19.3
CATEGORIES= emulators
-# XXX Get from Debian once #697821 lands
-MASTER_SITES= https://bazaar.launchpad.net/~sergio-br2/${PORTNAME}/debian-sdl/download/5/${PORTNAME}.1-20140802045408-dd26dik367ztj5xg-8/:manpage
-DISTFILES= ${PORTNAME}.1:manpage
-EXTRACT_ONLY= ${DISTFILES:N*\:manpage:C/:.*//}
MAINTAINER= kreinholz@gmail.com
COMMENT= PSP emulator in C++ with dynarec JIT for x86, ARM, MIPS
WWW= https://www.ppsspp.org/
-LICENSE= GPLv2+
+LICENSE= GPLv2+ BSD3CLAUSE
+LICENSE_COMB= multi
+LICENSE_FILE= ${WRKSRC}/LICENSE.TXT
# Bi-endian architectures default to big for some reason
NOT_FOR_ARCHS= mips mips64 powerpc powerpc64 powerpcspe
NOT_FOR_ARCHS_REASON= only little-endian is supported, see \
https://github.com/hrydgard/ppsspp/issues/8823
-BUILD_DEPENDS= /usr/local/ffmpeg3/lib/libavcodec.a:multimedia/ffmpeg3
+BUILD_DEPENDS= ${LOCALBASE}/ffmpeg3/lib/libavcodec.a:multimedia/ffmpeg3
LIB_DEPENDS= libzip.so:archivers/libzip \
libsnappy.so:archivers/snappy \
libzstd.so:archivers/zstd \
+ libminiupnpc.so:net/miniupnpc \
libopenxr_loader.so:graphics/openxr
RUN_DEPENDS= xdg-open:devel/xdg-utils
-USES= cmake compiler:c++11-lib gl localbase:ldflags pkgconfig
+USES= cmake compiler:c++11-lib gl localbase:ldflags pkgconfig \
+ desktop-file-utils
USE_GITHUB= yes
GH_ACCOUNT= hrydgard
-GH_TUPLE?= hrydgard:glslang:8.13.3743-948-gb34f619e:glslang/ext/glslang \
- google:cpu_features:v0.8.0-27-gfd4ffc1:cpu_features/ext/cpu_features \
+GH_TUPLE?= Kingcom:armips:v0.11.0-195-ga8d71f0:armips/ext/armips \
+ hrydgard:glslang:2.3-3991-g50e0708e:glslang/ext/glslang \
+ KhronosGroup:SPIRV-Cross:4212eef67ed0ca048cb726a6767185504e7695e5:SPIRVCross/ext/SPIRV-Cross \
+ Tencent:rapidjson:73063f5002612c6bf64fe24f851cd5cc0d83eef9:rapidjson/ext/rapidjson \
+ unknownbrackets:ppsspp-debugger:9776332f720c854ef26f325a0cf9e32c02115a9c:ppssppdebugger/assets/debugger \
+ google:cpu_features:v0.4.1-211-gfd4ffc1:cpu_features/ext/cpu_features \
+ RetroAchievements:rcheevos:v11.6.0-61-gef0e22b:rcheevos/ext/rcheevos \
rtissera:libchdr:26d27ca:libchdr/ext/libchdr \
- unknownbrackets:ppsspp-debugger:d358a87:debugger/assets/debugger \
- KhronosGroup:SPIRV-Cross:sdk-1.3.239.0:SPIRV/ext/SPIRV-Cross \
- Kingcom:armips:v0.11.0-195-ga8d71f0:armips/ext/armips \
- Kingcom:filesystem:v1.3.2-12-g3f1c185:filesystem/ext/armips/ext/filesystem \
- RetroAchievements:rcheevos:v11.6.0-g32917bd:rcheevos/ext/rcheevos \
- Tencent:rapidjson:v1.1.0-415-g73063f50:rapidjson/ext/rapidjson \
- miniupnp:miniupnp:miniupnpd_2_3_7-g27d13ca:miniupnp/ext/miniupnp
+ hrydgard:ppsspp-lua:7648485f14e8e5ee45e8e39b1eb4d3206dbd405a:ppsspplua/ext/lua \
+ Kingcom:filesystem:v1.1.2-171-g3f1c185:filesystem/ext/armips/ext/filesystem
+
EXCLUDE= libzip zlib
USE_GL= glew opengl
-CMAKE_ON= ${LIBZIP SNAPPY ZSTD:L:S/^/USE_SYSTEM_/} USE_VULKAN_DISPLAY_KHR
+CMAKE_ON= ${LIBZIP MINIUPNPC SNAPPY ZSTD:L:S/^/USE_SYSTEM_/} USE_VULKAN_DISPLAY_KHR
CMAKE_OFF= USE_DISCORD
LDFLAGS+= -Wl,--as-needed # ICE/SM/X11/Xext, Qt5Network
CONFLICTS_INSTALL= ${PORTNAME}-*
@@ -86,13 +86,14 @@ post-patch:
@${REINPLACE_CMD} -e 's/Linux/${OPSYS}/' ${WRKSRC}/assets/gamecontrollerdb.txt
@${REINPLACE_CMD} -e 's,/usr/share,${PREFIX}/share,' ${WRKSRC}/UI/NativeApp.cpp
@${REINPLACE_CMD} -e 's/"unknown"/"${DISTVERSIONFULL}"/' ${WRKSRC}/git-version.cmake
+ @${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|' ${WRKSRC}/cmake/Modules/FindFFmpeg.cmake
do-install-LIBRETRO-on:
${MKDIR} ${STAGEDIR}${PREFIX}/${LIBRETRO_PLIST_FILES:H}
${INSTALL_LIB} ${BUILD_WRKSRC}/lib/${LIBRETRO_PLIST_FILES:T} \
${STAGEDIR}${PREFIX}/${LIBRETRO_PLIST_FILES:H}
.if ${OPTIONS_SLAVE} == LIBRETRO
-. for d in applications icons man mime ${PORTNAME}
+. for d in applications icons mime ${PORTNAME}
${RM} -r ${STAGEDIR}${PREFIX}/share/${d}
. endfor
.endif
@@ -102,6 +103,5 @@ do-install-QT5-on do-install-SDL-on:
${ELFCTL} -e +wxneeded ${STAGEDIR}${PREFIX}/bin/*
.endif
${MV} ${STAGEDIR}${PREFIX}/bin/${EXENAME} ${STAGEDIR}${PREFIX}/bin/${PORTNAME}
- ${INSTALL_MAN} ${_DISTDIR}/${PORTNAME}.1 ${STAGEDIR}${PREFIX}/share/man/man1
.include <bsd.port.mk>
diff --git a/emulators/ppsspp/distinfo b/emulators/ppsspp/distinfo
index f08f66084632..bfe6f531f0ef 100644
--- a/emulators/ppsspp/distinfo
+++ b/emulators/ppsspp/distinfo
@@ -1,25 +1,23 @@
-TIMESTAMP = 1731811906
-SHA256 (ppsspp.1) = 64a7cca4c3a5fc6ad5b63399edef9056b0c85ea68fed00fb7e97f4b2724e503b
-SIZE (ppsspp.1) = 1598
-SHA256 (hrydgard-ppsspp-v1.18.1_GH0.tar.gz) = cc9425202552cbce8bc7ee5b883670703761011ab5c987c426887f7c2ef2703f
-SIZE (hrydgard-ppsspp-v1.18.1_GH0.tar.gz) = 37089272
-SHA256 (hrydgard-glslang-8.13.3743-948-gb34f619e_GH0.tar.gz) = 8f002c902a5bc5a9d3c7e58b82ba2a6845ee08a01b756eaf4afefff806d109c7
-SIZE (hrydgard-glslang-8.13.3743-948-gb34f619e_GH0.tar.gz) = 3689872
-SHA256 (google-cpu_features-v0.8.0-27-gfd4ffc1_GH0.tar.gz) = 0bcb1a537b8fc184b9df9ddde9d15868efe7f651139ea84d3e20ac9900a43c60
-SIZE (google-cpu_features-v0.8.0-27-gfd4ffc1_GH0.tar.gz) = 109044
-SHA256 (rtissera-libchdr-26d27ca_GH0.tar.gz) = 49e028fadd0640926da158408c9eafb22fc89ccb0de69c67b167ef0a11f6a0c5
-SIZE (rtissera-libchdr-26d27ca_GH0.tar.gz) = 4274377
-SHA256 (unknownbrackets-ppsspp-debugger-d358a87_GH0.tar.gz) = 468ec2ca27aefa81657bc679c0983dbbd693b99e8b803a465bb42cd8e2993cb2
-SIZE (unknownbrackets-ppsspp-debugger-d358a87_GH0.tar.gz) = 815889
-SHA256 (KhronosGroup-SPIRV-Cross-sdk-1.3.239.0_GH0.tar.gz) = a1695022880e7ef3c2d407647f79876045dc2a3ed012753adc71ead5cc5178ba
-SIZE (KhronosGroup-SPIRV-Cross-sdk-1.3.239.0_GH0.tar.gz) = 1707048
+TIMESTAMP = 1752627057
+SHA256 (hrydgard-ppsspp-v1.19.3_GH0.tar.gz) = 2e02c3e0a7f5a2311f6e37f3e2fc9760d14eb7af5051bc251f168505f1ca9ad8
+SIZE (hrydgard-ppsspp-v1.19.3_GH0.tar.gz) = 38805948
SHA256 (Kingcom-armips-v0.11.0-195-ga8d71f0_GH0.tar.gz) = 8a46d92b070de90cefcd89c2894344d040481e1cf6216b31f4a5e531254fed88
SIZE (Kingcom-armips-v0.11.0-195-ga8d71f0_GH0.tar.gz) = 223306
-SHA256 (Kingcom-filesystem-v1.3.2-12-g3f1c185_GH0.tar.gz) = 9fa5a690e341bea1935a7f6b256e1bbd864abee988f834f10307f646dc38e604
-SIZE (Kingcom-filesystem-v1.3.2-12-g3f1c185_GH0.tar.gz) = 163401
-SHA256 (RetroAchievements-rcheevos-v11.6.0-g32917bd_GH0.tar.gz) = 0cf21acaa01f3fc55718e5fd04cfd55a03d3135ec52f928dcd5956a11e78d660
-SIZE (RetroAchievements-rcheevos-v11.6.0-g32917bd_GH0.tar.gz) = 673529
-SHA256 (Tencent-rapidjson-v1.1.0-415-g73063f50_GH0.tar.gz) = 45e801225dd7a8d09bde7e5a2dc52c18d630f07bbbec7587017ca19bac9446fe
-SIZE (Tencent-rapidjson-v1.1.0-415-g73063f50_GH0.tar.gz) = 1054127
-SHA256 (miniupnp-miniupnp-miniupnpd_2_3_7-g27d13ca_GH0.tar.gz) = d44ea2ea688ff851e55d9408bc64b4c81363a9d6646246b9cbcd2c2c057ec8bc
-SIZE (miniupnp-miniupnp-miniupnpd_2_3_7-g27d13ca_GH0.tar.gz) = 464237
+SHA256 (hrydgard-glslang-2.3-3991-g50e0708e_GH0.tar.gz) = 720e01f16e5ee2f7ada49ba0464232380bf71339c836cc4fabbabef2a741818b
+SIZE (hrydgard-glslang-2.3-3991-g50e0708e_GH0.tar.gz) = 3689100
+SHA256 (KhronosGroup-SPIRV-Cross-4212eef67ed0ca048cb726a6767185504e7695e5_GH0.tar.gz) = a7adf77b5680795302aee160309c6cb81b0da341d92bd7face01f9a156b65aeb
+SIZE (KhronosGroup-SPIRV-Cross-4212eef67ed0ca048cb726a6767185504e7695e5_GH0.tar.gz) = 1703767
+SHA256 (Tencent-rapidjson-73063f5002612c6bf64fe24f851cd5cc0d83eef9_GH0.tar.gz) = 896eb817fb2bc62a0a84ca65fac3e3c385b410e6dbf70d69c411e25776663e39
+SIZE (Tencent-rapidjson-73063f5002612c6bf64fe24f851cd5cc0d83eef9_GH0.tar.gz) = 1054419
+SHA256 (unknownbrackets-ppsspp-debugger-9776332f720c854ef26f325a0cf9e32c02115a9c_GH0.tar.gz) = 495db15fa9716d78c4958004df5a1487a94155694cceabd61fb40a2d0090fea3
+SIZE (unknownbrackets-ppsspp-debugger-9776332f720c854ef26f325a0cf9e32c02115a9c_GH0.tar.gz) = 810347
+SHA256 (google-cpu_features-v0.4.1-211-gfd4ffc1_GH0.tar.gz) = 20115fd59cf2db71594d71acf3dacfdaf6c1bdf54c1656f781fce4844a803e08
+SIZE (google-cpu_features-v0.4.1-211-gfd4ffc1_GH0.tar.gz) = 109042
+SHA256 (RetroAchievements-rcheevos-v11.6.0-61-gef0e22b_GH0.tar.gz) = 11c12a5ce2e61917edbd4634fc0623528267c51dae2303bfc55cbbb7ee7299fa
+SIZE (RetroAchievements-rcheevos-v11.6.0-61-gef0e22b_GH0.tar.gz) = 417819
+SHA256 (rtissera-libchdr-26d27ca_GH0.tar.gz) = 49e028fadd0640926da158408c9eafb22fc89ccb0de69c67b167ef0a11f6a0c5
+SIZE (rtissera-libchdr-26d27ca_GH0.tar.gz) = 4274377
+SHA256 (hrydgard-ppsspp-lua-7648485f14e8e5ee45e8e39b1eb4d3206dbd405a_GH0.tar.gz) = ee31027159979d7be564e19710e10339179992f6d663d38337e78340dd31987b
+SIZE (hrydgard-ppsspp-lua-7648485f14e8e5ee45e8e39b1eb4d3206dbd405a_GH0.tar.gz) = 239843
+SHA256 (Kingcom-filesystem-v1.1.2-171-g3f1c185_GH0.tar.gz) = 9f3866efc8b8b29cd9ff51c0cce8a281ff88cd34694d8da0d064cb82d95b8b71
+SIZE (Kingcom-filesystem-v1.1.2-171-g3f1c185_GH0.tar.gz) = 163405
diff --git a/emulators/ppsspp/files/patch-cmake_Modules_FindFFmpeg.cmake b/emulators/ppsspp/files/patch-cmake_Modules_FindFFmpeg.cmake
index 2cbf2cfee23d..69f59462eb5d 100644
--- a/emulators/ppsspp/files/patch-cmake_Modules_FindFFmpeg.cmake
+++ b/emulators/ppsspp/files/patch-cmake_Modules_FindFFmpeg.cmake
@@ -7,7 +7,7 @@
- if(DEFINED ENV{FFMPEG_DIR})
- set(FFMPEG_DIR $ENV{FFMPEG_DIR})
- endif()
-+ set(FFMPEG_DIR /usr/local/ffmpeg3)
++ set(FFMPEG_DIR %%LOCALBASE%%/ffmpeg3)
if(FFMPEG_DIR)
list(APPEND INCLUDE_PATHS
@@ -22,15 +22,15 @@
- /usr/include/lib${LIBNAME}
- /usr/include/ffmpeg/lib${LIBNAME}
+ list(SET INCLUDE_PATHS
-+ /usr/local/ffmpeg3/include/ffmpeg
-+ /usr/local/ffmpeg3/include/lib${LIBNAME}
++ %%LOCALBASE%%/ffmpeg3/include/ffmpeg
++ %%LOCALBASE%%/ffmpeg3/include/lib${LIBNAME}
)
- list(APPEND LIB_PATHS
- /usr/local/lib
- /usr/lib
+ list(SET LIB_PATHS
-+ /usr/local/ffmpeg3/lib
++ %%LOCALBASE%%/ffmpeg3/lib
)
endif()
diff --git a/emulators/ppsspp/files/patch-no-egl b/emulators/ppsspp/files/patch-no-egl
new file mode 100644
index 000000000000..9ddc70081066
--- /dev/null
+++ b/emulators/ppsspp/files/patch-no-egl
@@ -0,0 +1,27 @@
+EGL hangs on X11 and doesn't build without GLESv2.
+https://github.com/hrydgard/ppsspp/issues/10626
+
+--- CMakeLists.txt.orig 2025-05-30 21:23:20 UTC
++++ CMakeLists.txt
+@@ -83,12 +83,6 @@ endif()
+ set(USE_SYSTEM_FFMPEG ON)
+ endif()
+
+-if(NOT ANDROID AND NOT IOS)
+- if(ARM_DEVICE OR SIMULATOR)
+- set(USING_EGL ON)
+- endif()
+-endif()
+-
+ if(${CMAKE_SYSTEM_NAME} MATCHES "Linux" AND NOT USE_LIBNX)
+ set(LINUX ON)
+ add_compile_definitions(__STDC_CONSTANT_MACROS)
+@@ -1009,6 +1003,8 @@ if(USE_FFMPEG)
+ elseif(X86)
+ set(PLATFORM_ARCH "Windows/x86")
+ endif()
++ else()
++ set(PLATFORM_ARCH "FreeBSD/%%ARCH%%")
+ endif()
+ if(PLATFORM_ARCH)
+ set(FFMPEG_DIR "ffmpeg/${PLATFORM_ARCH}")
diff --git a/emulators/ppsspp/files/patch-no-egl-plus-warnings-fix b/emulators/ppsspp/files/patch-no-egl-plus-warnings-fix
deleted file mode 100644
index 14da15c4d6e8..000000000000
--- a/emulators/ppsspp/files/patch-no-egl-plus-warnings-fix
+++ /dev/null
@@ -1,33 +0,0 @@
-EGL hangs on X11 and doesn't build without GLESv2.
-https://github.com/hrydgard/ppsspp/issues/10626
-
---- CMakeLists.txt.orig 2024-11-04 16:16:10 UTC
-+++ CMakeLists.txt
-@@ -79,12 +79,6 @@ endif()
- set(USE_SYSTEM_FFMPEG ON)
- endif()
-
--if(NOT ANDROID AND NOT IOS)
-- if(ARM_DEVICE OR SIMULATOR)
-- set(USING_EGL ON)
-- endif()
--endif()
--
- if(${CMAKE_SYSTEM_NAME} MATCHES "Linux" AND NOT USE_LIBNX)
- set(LINUX ON)
- add_definitions(-D__STDC_CONSTANT_MACROS)
-@@ -383,8 +377,12 @@ if(NOT MSVC)
- add_definitions(-DPNG_ARM_NEON_OPT=0)
-
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Werror=return-type -Wno-unused-function -Wno-sign-compare -Wno-unused-but-set-variable -Wno-reorder -Wno-unknown-pragmas -Wno-unused-value -Wno-unused-variable")
-- # This one is very useful but has many false positives.
-- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-class-memaccess")
-+ if(NOT CLANG)
-+ # This one is very useful but has many false positives.
-+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-class-memaccess")
-+ else()
-+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-deprecated-declarations")
-+ endif()
-
- if(ANDROID)
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++17")
diff --git a/emulators/ppsspp/pkg-plist b/emulators/ppsspp/pkg-plist
index 911494696f2a..a2dc9f0cfb3e 100644
--- a/emulators/ppsspp/pkg-plist
+++ b/emulators/ppsspp/pkg-plist
@@ -11,5 +11,4 @@ share/icons/hicolor/512x512/apps/ppsspp.png
share/icons/hicolor/64x64/apps/ppsspp.png
share/icons/hicolor/96x96/apps/ppsspp.png
share/icons/hicolor/scalable/apps/ppsspp.svg
-share/man/man1/ppsspp.1.gz
share/mime/packages/ppsspp.xml