diff --git a/emulators/pcsx2/Makefile b/emulators/pcsx2/Makefile index 886ef0e69fed..2430f5ea598d 100644 --- a/emulators/pcsx2/Makefile +++ b/emulators/pcsx2/Makefile @@ -1,89 +1,95 @@ PORTNAME= pcsx2 -PORTVERSION= 2.3.212 +PORTVERSION= 2.3.439 DISTVERSIONPREFIX= v CATEGORIES= emulators MAINTAINER= martymac@FreeBSD.org COMMENT= Free and open-source PlayStation 2 emulator WWW= https://pcsx2.net LICENSE= GPLv3 LGPL3 LICENSE_COMB= multi ONLY_FOR_ARCHS= amd64 +BUILD_DEPENDS= vulkan-headers>0:graphics/vulkan-headers # Notes on dependencies (see cmake/SearchForStuff.cmake): # - glad comes from 3rdparty/ (conflicts with libglvnd) # - fmt, rapidyaml, soundtouch, zydis, libzip # are always included from 3rdparty/ LIB_DEPENDS= libpng.so:graphics/png \ libzstd.so:archivers/zstd \ liblz4.so:archivers/liblz4 \ libwebp.so:graphics/webp \ libfreetype.so:print/freetype2 \ - libdbus-1.so:devel/dbus \ + libplutovg.so:graphics/plutovg \ + libplutosvg.so:graphics/plutosvg \ + libshaderc_shared.so:graphics/shaderc \ + libcurl.so:ftp/curl \ libavcodec.so:multimedia/ffmpeg \ libavformat.so:multimedia/ffmpeg \ libavutil.so:multimedia/ffmpeg \ libswresample.so:multimedia/ffmpeg \ libswscale.so:multimedia/ffmpeg \ - libshaderc_shared.so:graphics/shaderc \ - libcurl.so:ftp/curl \ + libbacktrace.so:devel/libbacktrace \ + libdbus-1.so:devel/dbus \ libpulse.so:audio/pulseaudio \ libjack.so:audio/jack \ libsndio.so:audio/sndio \ - libbacktrace.so:devel/libbacktrace + libkddockwidgets-qt6.so:x11-toolkits/kddockwidgets \ + libsysinfo.so:devel/libsysinfo USES= cmake compiler:c++20-lang \ desktop-file-utils elfctl gl jpeg pkgconfig qt:6 sdl xorg USE_GITHUB= yes GH_PROJECT= pcsx2 USE_GL= egl -USE_SDL= sdl3 -USE_XORG= ice x11 xcb xext xpm xrandr xrender -USE_QT= base tools +USE_SDL= sdl3 ttf3 +USE_XORG= ice x11 xcb xext xi xpm xrandr xrender +USE_QT= base declarative tools ELF_FEATURES= +wxneeded:bin/pcsx2-qt # SSE 4.1 instructions are a hard requirement, if CPUTYPE is defined # use whatever is set and let the build fail if it falls below # baseline requirements. If it's undefined set penryn as target # as it's the oldest CPU arch that supports SSE 4.1 .if defined(CPUTYPE) EXTRA_PATCHES= ${PATCHDIR}/extra-patch-no-march-native .else EXTRA_PATCHES= ${PATCHDIR}/extra-patch-no-march-minimum-req .endif # See: cmake/BuildParameters.cmake # XXX Vulkan comes from 3rdparty/ CMAKE_ARGS+= \ -DCMAKE_REQUIRED_INCLUDES:STRING=${LOCALBASE}/include/ \ + -DCMAKE_LOCALBASE:STRING=${LOCALBASE} \ -DPCSX2_RESOURCES_PATH:STRING=${DATADIR}/resources \ -DUSE_VTUNE:BOOL=OFF \ -DWAYLAND_API=OFF \ -DENABLE_TESTS:BOOL=OFF OPTIONS_DEFINE= DOCS PORTDOCS= Debugger.pdf GameIndex.pdf # - Program and resources are copied from target dir ${CONFIGURE_WRKSRC}/bin # because only necessary resources are installed there (e.g. no dx11 stuff) do-install: cd ${CONFIGURE_WRKSRC}/bin && \ ${COPYTREE_SHARE} resources/ ${STAGEDIR}${DATADIR}/ && \ ${RM} -rf ${STAGEDIR}${DATADIR}/resources/docs/ ${INSTALL_PROGRAM} ${CONFIGURE_WRKSRC}/bin/pcsx2-qt \ ${STAGEDIR}${PREFIX}/bin/ ${INSTALL_DATA} ${WRKSRC}/pcsx2-qt/resources/icons/AppIcon64.png \ ${STAGEDIR}${PREFIX}/share/pixmaps/PCSX2.png ${INSTALL_DATA} ${WRKSRC}/.github/workflows/scripts/linux/pcsx2-qt.desktop \ ${STAGEDIR}${PREFIX}/share/applications/PCSX2.desktop post-install-DOCS-on: ${MKDIR} ${STAGEDIR}${DOCSDIR} && \ ${INSTALL_DATA} ${PORTDOCS:S|^|${CONFIGURE_WRKSRC}/bin/resources/docs/|} \ ${STAGEDIR}${DOCSDIR} .include diff --git a/emulators/pcsx2/distinfo b/emulators/pcsx2/distinfo index 7ad172abe331..742e5ac06800 100644 --- a/emulators/pcsx2/distinfo +++ b/emulators/pcsx2/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1749583437 -SHA256 (pcsx2-pcsx2-v2.3.212_GH0.tar.gz) = 4f4de87d324501818af0805f54f3fafe3be036badcdec86b93ac7895a2155fdb -SIZE (pcsx2-pcsx2-v2.3.212_GH0.tar.gz) = 20115629 +TIMESTAMP = 1750709445 +SHA256 (pcsx2-pcsx2-v2.3.439_GH0.tar.gz) = ed75141b426964a63b87b19ddfdd7b3659d3652254de4e694eea1784cf3ace3f +SIZE (pcsx2-pcsx2-v2.3.439_GH0.tar.gz) = 19851256 diff --git a/emulators/pcsx2/files/patch-cmake-SearchForStuff.cmake b/emulators/pcsx2/files/patch-cmake-SearchForStuff.cmake new file mode 100644 index 000000000000..e67cb027fb7f --- /dev/null +++ b/emulators/pcsx2/files/patch-cmake-SearchForStuff.cmake @@ -0,0 +1,11 @@ +--- cmake/SearchForStuff.cmake.orig 2025-06-23 10:47:03 UTC ++++ cmake/SearchForStuff.cmake +@@ -1,6 +1,8 @@ + #------------------------------------------------------------------------------- + # Search all libraries on the system + #------------------------------------------------------------------------------- ++list(APPEND CMAKE_MODULE_PATH ${CMAKE_LOCALBASE}/lib/cmake/SDL3_ttf) ++include(PkgConfigHelper) + find_package(Git) + + # Require threads on all OSes. diff --git a/emulators/pcsx2/files/patch-common-CMakeLists.txt b/emulators/pcsx2/files/patch-common-CMakeLists.txt new file mode 100644 index 000000000000..f0918e407dde --- /dev/null +++ b/emulators/pcsx2/files/patch-common-CMakeLists.txt @@ -0,0 +1,10 @@ +--- common/CMakeLists.txt.orig 2025-06-23 14:55:49 UTC ++++ common/CMakeLists.txt +@@ -169,6 +169,7 @@ else() + X11::X11 + X11::Xrandr + X11::Xi ++ -lsysinfo + ) + if(USE_BACKTRACE) + target_compile_definitions(common PRIVATE "HAS_LIBBACKTRACE=1") diff --git a/emulators/pcsx2/pkg-plist b/emulators/pcsx2/pkg-plist index e6c42d69090c..bb7a5b01dff3 100644 --- a/emulators/pcsx2/pkg-plist +++ b/emulators/pcsx2/pkg-plist @@ -1,85 +1,87 @@ bin/pcsx2-qt share/applications/PCSX2.desktop %%DATADIR%%/resources/GameIndex.yaml %%DATADIR%%/resources/RedumpDatabase.yaml %%DATADIR%%/resources/cover-placeholder.png %%DATADIR%%/resources/fonts/Roboto-Regular-copyright %%DATADIR%%/resources/fonts/Roboto-Regular.ttf %%DATADIR%%/resources/fonts/RobotoMono-Medium.ttf %%DATADIR%%/resources/fonts/fa-solid-900.ttf %%DATADIR%%/resources/fonts/promptfont-license %%DATADIR%%/resources/fonts/promptfont.otf -%%DATADIR%%/resources/fullscreenui/applications-system.png -%%DATADIR%%/resources/fullscreenui/back-icon.png -%%DATADIR%%/resources/fullscreenui/desktop-mode.png -%%DATADIR%%/resources/fullscreenui/drive-cdrom.png -%%DATADIR%%/resources/fullscreenui/exit.png -%%DATADIR%%/resources/fullscreenui/game-list.png -%%DATADIR%%/resources/fullscreenui/media-cdrom.png +%%DATADIR%%/resources/fullscreenui/applications-system.svg +%%DATADIR%%/resources/fullscreenui/back-icon.svg +%%DATADIR%%/resources/fullscreenui/desktop-mode.svg +%%DATADIR%%/resources/fullscreenui/drive-cdrom.svg +%%DATADIR%%/resources/fullscreenui/exit.svg +%%DATADIR%%/resources/fullscreenui/game-list.svg +%%DATADIR%%/resources/fullscreenui/media-cdrom.svg %%DATADIR%%/resources/fullscreenui/no-save.png %%DATADIR%%/resources/fullscreenui/placeholder.png -%%DATADIR%%/resources/fullscreenui/start-bios.png -%%DATADIR%%/resources/fullscreenui/start-file.png +%%DATADIR%%/resources/fullscreenui/start-bios.svg +%%DATADIR%%/resources/fullscreenui/start-file.svg %%DATADIR%%/resources/game_controller_db.txt +%%DATADIR%%/resources/icons/AppBanner.svg %%DATADIR%%/resources/icons/AppIconLarge.png -%%DATADIR%%/resources/icons/flags/NTSC-B.png -%%DATADIR%%/resources/icons/flags/NTSC-C.png -%%DATADIR%%/resources/icons/flags/NTSC-HK.png -%%DATADIR%%/resources/icons/flags/NTSC-J.png -%%DATADIR%%/resources/icons/flags/NTSC-K.png -%%DATADIR%%/resources/icons/flags/NTSC-T.png -%%DATADIR%%/resources/icons/flags/NTSC-U.png -%%DATADIR%%/resources/icons/flags/Other.png -%%DATADIR%%/resources/icons/flags/PAL-A.png -%%DATADIR%%/resources/icons/flags/PAL-AF.png -%%DATADIR%%/resources/icons/flags/PAL-AU.png -%%DATADIR%%/resources/icons/flags/PAL-BE.png -%%DATADIR%%/resources/icons/flags/PAL-E.png -%%DATADIR%%/resources/icons/flags/PAL-F.png -%%DATADIR%%/resources/icons/flags/PAL-FI.png -%%DATADIR%%/resources/icons/flags/PAL-G.png -%%DATADIR%%/resources/icons/flags/PAL-GR.png -%%DATADIR%%/resources/icons/flags/PAL-I.png -%%DATADIR%%/resources/icons/flags/PAL-IN.png -%%DATADIR%%/resources/icons/flags/PAL-M.png -%%DATADIR%%/resources/icons/flags/PAL-NL.png -%%DATADIR%%/resources/icons/flags/PAL-NO.png -%%DATADIR%%/resources/icons/flags/PAL-P.png -%%DATADIR%%/resources/icons/flags/PAL-PL.png -%%DATADIR%%/resources/icons/flags/PAL-R.png -%%DATADIR%%/resources/icons/flags/PAL-S.png -%%DATADIR%%/resources/icons/flags/PAL-SC.png -%%DATADIR%%/resources/icons/flags/PAL-SW.png -%%DATADIR%%/resources/icons/flags/PAL-SWI.png -%%DATADIR%%/resources/icons/flags/PAL-UK.png -%%DATADIR%%/resources/icons/star-0.png -%%DATADIR%%/resources/icons/star-1.png -%%DATADIR%%/resources/icons/star-2.png -%%DATADIR%%/resources/icons/star-3.png -%%DATADIR%%/resources/icons/star-4.png -%%DATADIR%%/resources/icons/star-5.png +%%DATADIR%%/resources/icons/flags/LICENSE +%%DATADIR%%/resources/icons/flags/NTSC-B.svg +%%DATADIR%%/resources/icons/flags/NTSC-C.svg +%%DATADIR%%/resources/icons/flags/NTSC-HK.svg +%%DATADIR%%/resources/icons/flags/NTSC-J.svg +%%DATADIR%%/resources/icons/flags/NTSC-K.svg +%%DATADIR%%/resources/icons/flags/NTSC-T.svg +%%DATADIR%%/resources/icons/flags/NTSC-U.svg +%%DATADIR%%/resources/icons/flags/Other.svg +%%DATADIR%%/resources/icons/flags/PAL-A.svg +%%DATADIR%%/resources/icons/flags/PAL-AF.svg +%%DATADIR%%/resources/icons/flags/PAL-AU.svg +%%DATADIR%%/resources/icons/flags/PAL-BE.svg +%%DATADIR%%/resources/icons/flags/PAL-E.svg +%%DATADIR%%/resources/icons/flags/PAL-F.svg +%%DATADIR%%/resources/icons/flags/PAL-FI.svg +%%DATADIR%%/resources/icons/flags/PAL-G.svg +%%DATADIR%%/resources/icons/flags/PAL-GR.svg +%%DATADIR%%/resources/icons/flags/PAL-I.svg +%%DATADIR%%/resources/icons/flags/PAL-IN.svg +%%DATADIR%%/resources/icons/flags/PAL-M.svg +%%DATADIR%%/resources/icons/flags/PAL-NL.svg +%%DATADIR%%/resources/icons/flags/PAL-NO.svg +%%DATADIR%%/resources/icons/flags/PAL-P.svg +%%DATADIR%%/resources/icons/flags/PAL-PL.svg +%%DATADIR%%/resources/icons/flags/PAL-R.svg +%%DATADIR%%/resources/icons/flags/PAL-S.svg +%%DATADIR%%/resources/icons/flags/PAL-SC.svg +%%DATADIR%%/resources/icons/flags/PAL-SW.svg +%%DATADIR%%/resources/icons/flags/PAL-SWI.svg +%%DATADIR%%/resources/icons/flags/PAL-UK.svg +%%DATADIR%%/resources/icons/star-0.svg +%%DATADIR%%/resources/icons/star-1.svg +%%DATADIR%%/resources/icons/star-2.svg +%%DATADIR%%/resources/icons/star-3.svg +%%DATADIR%%/resources/icons/star-4.svg +%%DATADIR%%/resources/icons/star-5.svg %%DATADIR%%/resources/shaders/common/ffx_a.h %%DATADIR%%/resources/shaders/common/ffx_cas.h %%DATADIR%%/resources/shaders/common/fxaa.fx %%DATADIR%%/resources/shaders/opengl/cas.glsl %%DATADIR%%/resources/shaders/opengl/convert.glsl %%DATADIR%%/resources/shaders/opengl/imgui.glsl %%DATADIR%%/resources/shaders/opengl/interlace.glsl %%DATADIR%%/resources/shaders/opengl/merge.glsl %%DATADIR%%/resources/shaders/opengl/present.glsl %%DATADIR%%/resources/shaders/opengl/shadeboost.glsl %%DATADIR%%/resources/shaders/opengl/tfx_fs.glsl %%DATADIR%%/resources/shaders/opengl/tfx_vgs.glsl %%DATADIR%%/resources/shaders/vulkan/cas.glsl %%DATADIR%%/resources/shaders/vulkan/convert.glsl %%DATADIR%%/resources/shaders/vulkan/imgui.glsl %%DATADIR%%/resources/shaders/vulkan/interlace.glsl %%DATADIR%%/resources/shaders/vulkan/merge.glsl %%DATADIR%%/resources/shaders/vulkan/present.glsl %%DATADIR%%/resources/shaders/vulkan/shadeboost.glsl %%DATADIR%%/resources/shaders/vulkan/tfx.glsl %%DATADIR%%/resources/sounds/achievements/README.txt %%DATADIR%%/resources/sounds/achievements/lbsubmit.wav %%DATADIR%%/resources/sounds/achievements/message.wav %%DATADIR%%/resources/sounds/achievements/unlock.wav share/pixmaps/PCSX2.png