diff --git a/emulators/pcsx2/Makefile b/emulators/pcsx2/Makefile index 48d2b4355f92..70f8932b7a8d 100644 --- a/emulators/pcsx2/Makefile +++ b/emulators/pcsx2/Makefile @@ -1,99 +1,94 @@ PORTNAME= pcsx2 -PORTVERSION= 1.7.4097 +PORTVERSION= 1.7.4970 DISTVERSIONPREFIX= v -PORTREVISION= 5 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 # Notes on dependencies (see cmake/SearchForStuff.cmake): -# - rapidyaml (and c4core) come from 3rdparty/ (0.4.0 is needed) # - glad comes from 3rdparty/ (conflicts with libglvnd) -# - zydis comes from 3rdparty/ +# - fmt, rapidyaml, soundtouch, zydis, zstd, libzip +# are always included from 3rdparty/ LIB_DEPENDS= libpng.so:graphics/png \ + libdbus-1.so:devel/dbus \ libavcodec.so:multimedia/ffmpeg \ libavformat.so:multimedia/ffmpeg \ libavutil.so:multimedia/ffmpeg \ libswresample.so:multimedia/ffmpeg \ libswscale.so:multimedia/ffmpeg \ - libSoundTouch.so:audio/soundtouch \ - libfmt.so:devel/libfmt \ - libzip.so:archivers/libzip \ libcurl.so:ftp/curl \ libpulse.so:audio/pulseaudio \ libjack.so:audio/jack \ libsndio.so:audio/sndio \ - libzstd.so:archivers/zstd -# libryml.so:devel/rapidyaml \ -# libglad.so:graphics/glad \ + libbacktrace.so:devel/libbacktrace -USES= cmake desktop-file-utils gl pkgconfig qt:6 sdl xorg +USES= cmake compiler:c++20-lang \ + desktop-file-utils gl pkgconfig qt:6 sdl xorg USE_GITHUB= yes GH_PROJECT= pcsx2 .include "${.CURDIR}/Makefile.tuples" USE_GL= egl USE_SDL= sdl2 USE_XORG= ice x11 xcb xext xpm xrandr USE_QT= base tools # 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 CMAKE_ARGS+= \ -DCMAKE_REQUIRED_INCLUDES:STRING=${LOCALBASE}/include/ \ - -DQT_BUILD:BOOL=ON \ + -DPCSX2_RESOURCES_PATH:STRING=${DATADIR}/resources \ -DUSE_VTUNE:BOOL=OFF \ -DUSE_VULKAN:BOOL=OFF \ - -DENABLE_TESTS:BOOL=OFF \ - -DPCSX2_RESOURCES_PATH:STRING=${DATADIR}/resources + -DWAYLAND_API=OFF \ + -DENABLE_TESTS:BOOL=OFF OPTIONS_DEFINE= DOCS -PORTDOCS= Debugger.pdf GameIndex.pdf PCSX2_FAQ.pdf +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}/ ${INSTALL_PROGRAM} ${CONFIGURE_WRKSRC}/bin/pcsx2-qt \ ${STAGEDIR}${PREFIX}/bin/ - ${INSTALL_DATA} ${WRKSRC}/pcsx2/Resources/AppIcon64.png \ + ${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 - ${INSTALL_MAN} ${WRKSRC}/bin/docs/PCSX2.1 ${STAGEDIR}${MANPREFIX}/man/man1/ post-install-DOCS-on: ${MKDIR} ${STAGEDIR}${DOCSDIR} && \ ${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/bin/docs/|} \ ${STAGEDIR}${DOCSDIR} # For maintainer (do not forget to clean up Makefile.tuples afterwards to # remove useless submodules) Makefile.tuples:: @${RM} -f ${.CURDIR}/Makefile.tuples @${RM} -rf ${WRKDIR}/.maintainer.checkout @${MKDIR} ${WRKDIR}/.maintainer.checkout && \ cd ${WRKDIR}/.maintainer.checkout && \ git clone --recursive --branch=v${PORTVERSION} \ https://github.com/${PORTNAME}/${PORTNAME} . && \ ${SH} ${FILESDIR}/gen_gh_tuple.sh >> ${.CURDIR}/Makefile.tuples .include diff --git a/emulators/pcsx2/Makefile.tuples b/emulators/pcsx2/Makefile.tuples index 44efae57512e..fe3593f99e02 100644 --- a/emulators/pcsx2/Makefile.tuples +++ b/emulators/pcsx2/Makefile.tuples @@ -1,9 +1,11 @@ GH_TUPLE= \ - rtissera:libchdr:5de1a59019815ccdbba0fe07c71b31406d023248:libchdr/3rdparty/libchdr/libchdr \ + fmtlib:fmt:b6f4ceaed0a0a24ccf575fab6c56dd50ccf6f1a9:fmt/3rdparty/fmt/fmt \ + rtissera:libchdr:fec8ab94212cc65d9d9a62cb3da924f5830c04b0:libchdr/3rdparty/libchdr/libchdr \ biojppm:rapidyaml:213b201d264139cd1b887790197e08850af628e3:rapidyaml/3rdparty/rapidyaml/rapidyaml \ - RetroAchievements:rcheevos:31f8788fe0e694e99db7ce138d45a655c556fa96:rcheevos/3rdparty/rcheevos/rcheevos \ + facebook:zstd:e47e674cd09583ff0503f0f6defd6d23d8b718d3:zstd/3rdparty/zstd/zstd \ + RetroAchievements:rcheevos:3af1e2fc5188d6e932ee379942f4049ea877e648:rcheevos/3rdparty/rcheevos/rcheevos \ biojppm:c4core:d35c7c9bf370134595699d791e6ff8db018ddc8d:c4core/3rdparty/rapidyaml/rapidyaml/ext/c4core \ biojppm:cmake:371982300ff5a076d7c3199057ebed77bbe3472f:cmake/3rdparty/rapidyaml/rapidyaml/ext/c4core/cmake \ biojppm:debugbreak:5dcbe41d2bd4712c8014aa7e843723ad7b40fd74:debugbreak/3rdparty/rapidyaml/rapidyaml/ext/c4core/src/c4/ext/debugbreak \ - fastfloat:fast_float:32d21dcecb404514f94fb58660b8029a4673c2c1:fast_float/3rdparty/rapidyaml/rapidyaml/ext/c4core/src/c4/ext/fast_float + fastfloat:fast_float:32d21dcecb404514f94fb58660b8029a4673c2c1:fast_float/3rdparty/rapidyaml/rapidyaml/ext/c4core/src/c4/ext/fast_float \ diff --git a/emulators/pcsx2/distinfo b/emulators/pcsx2/distinfo index 68e5fba4abda..a90c71e3bebc 100644 --- a/emulators/pcsx2/distinfo +++ b/emulators/pcsx2/distinfo @@ -1,17 +1,21 @@ -TIMESTAMP = 1676582077 -SHA256 (pcsx2-pcsx2-v1.7.4097_GH0.tar.gz) = 0dd25d4b4dd864f2d695f0704b3122668c1f0ecf55457cc5fbe6c27ce72458c6 -SIZE (pcsx2-pcsx2-v1.7.4097_GH0.tar.gz) = 9195636 -SHA256 (rtissera-libchdr-5de1a59019815ccdbba0fe07c71b31406d023248_GH0.tar.gz) = e0df9f88cd93e673d384cbf7cf28ea396aba96c769b41ec149a259768b27b00c -SIZE (rtissera-libchdr-5de1a59019815ccdbba0fe07c71b31406d023248_GH0.tar.gz) = 414409 +TIMESTAMP = 1693509549 +SHA256 (pcsx2-pcsx2-v1.7.4970_GH0.tar.gz) = bfbb6ea26d749b5fe80d9275f33de5912f67c259bb255ad73df240fd5632c57c +SIZE (pcsx2-pcsx2-v1.7.4970_GH0.tar.gz) = 12536525 +SHA256 (fmtlib-fmt-b6f4ceaed0a0a24ccf575fab6c56dd50ccf6f1a9_GH0.tar.gz) = de3061d275cb5c09c30dd809fcb425dce5bfd1dededcb272231263c95de05c61 +SIZE (fmtlib-fmt-b6f4ceaed0a0a24ccf575fab6c56dd50ccf6f1a9_GH0.tar.gz) = 826246 +SHA256 (rtissera-libchdr-fec8ab94212cc65d9d9a62cb3da924f5830c04b0_GH0.tar.gz) = 8b87f1a2b22de38c9fb1675137c8f19743105b8373ad8ca70ecf03a639e04fcf +SIZE (rtissera-libchdr-fec8ab94212cc65d9d9a62cb3da924f5830c04b0_GH0.tar.gz) = 1748513 SHA256 (biojppm-rapidyaml-213b201d264139cd1b887790197e08850af628e3_GH0.tar.gz) = c206d4565ccfa721991a8df90821d1a1f747e68385a0f3f5b9ab995e191c06be SIZE (biojppm-rapidyaml-213b201d264139cd1b887790197e08850af628e3_GH0.tar.gz) = 446070 -SHA256 (RetroAchievements-rcheevos-31f8788fe0e694e99db7ce138d45a655c556fa96_GH0.tar.gz) = ffe7020e443f724299352e72abdd9bee432fc00d3d260fbc0fee9fb28ce4f678 -SIZE (RetroAchievements-rcheevos-31f8788fe0e694e99db7ce138d45a655c556fa96_GH0.tar.gz) = 522855 +SHA256 (facebook-zstd-e47e674cd09583ff0503f0f6defd6d23d8b718d3_GH0.tar.gz) = 2a7b7e5d3f8c759894f0fea9917a590733600574d20cb53f3be827c7c62862e1 +SIZE (facebook-zstd-e47e674cd09583ff0503f0f6defd6d23d8b718d3_GH0.tar.gz) = 1952167 +SHA256 (RetroAchievements-rcheevos-3af1e2fc5188d6e932ee379942f4049ea877e648_GH0.tar.gz) = 2350d4479a9ca725a269eee5c1aeccf3e54ea2cf7bf9dd82bd0f07c59f96f5bd +SIZE (RetroAchievements-rcheevos-3af1e2fc5188d6e932ee379942f4049ea877e648_GH0.tar.gz) = 541818 SHA256 (biojppm-c4core-d35c7c9bf370134595699d791e6ff8db018ddc8d_GH0.tar.gz) = b768c8fb5dd4740317b7e1a3e43a0b32615d4d4e1e974d7ab515a80d2f1f318d SIZE (biojppm-c4core-d35c7c9bf370134595699d791e6ff8db018ddc8d_GH0.tar.gz) = 262210 SHA256 (biojppm-cmake-371982300ff5a076d7c3199057ebed77bbe3472f_GH0.tar.gz) = 1d3ded3a552a5993c8ebe5059a9829e0e26ae4f4780c179a11882d25da203de6 SIZE (biojppm-cmake-371982300ff5a076d7c3199057ebed77bbe3472f_GH0.tar.gz) = 122880 SHA256 (biojppm-debugbreak-5dcbe41d2bd4712c8014aa7e843723ad7b40fd74_GH0.tar.gz) = 4b424d23dad957937c57c142648d32571a78a6c6b2e473709748e5c1bb8a0f92 SIZE (biojppm-debugbreak-5dcbe41d2bd4712c8014aa7e843723ad7b40fd74_GH0.tar.gz) = 7033 SHA256 (fastfloat-fast_float-32d21dcecb404514f94fb58660b8029a4673c2c1_GH0.tar.gz) = 8035a9ca28a8e3dfee332c7960af3c06ef0ab5169d5f31228b89c469e882bef7 SIZE (fastfloat-fast_float-32d21dcecb404514f94fb58660b8029a4673c2c1_GH0.tar.gz) = 76108 diff --git a/emulators/pcsx2/files/patch-relocate-resources.txt b/emulators/pcsx2/files/patch-relocate-resources.txt index 1339fab26c1d..f2be4ea8e074 100644 --- a/emulators/pcsx2/files/patch-relocate-resources.txt +++ b/emulators/pcsx2/files/patch-relocate-resources.txt @@ -1,36 +1,36 @@ Allow relocation of resource files --- cmake/BuildParameters.cmake.orig 2023-02-10 03:43:10 UTC +++ cmake/BuildParameters.cmake @@ -260,6 +260,10 @@ list(APPEND PCSX2_DEFS DISABLE_BUILD_DATE) endif() +if(DEFINED PCSX2_RESOURCES_PATH) + add_compile_definitions(PCSX2_RESOURCES_PATH="${PCSX2_RESOURCES_PATH}") +endif() + #------------------------------------------------------------------------------- # MacOS-specific things #------------------------------------------------------------------------------- ---- pcsx2/Frontend/CommonHost.cpp.orig 2023-02-10 03:43:10 UTC -+++ pcsx2/Frontend/CommonHost.cpp -@@ -128,6 +128,10 @@ +--- pcsx2/Pcsx2Config.cpp.orig 2023-08-31 07:45:23 UTC ++++ pcsx2/Pcsx2Config.cpp +@@ -1676,6 +1676,10 @@ void EmuFolders::SetAppRoot() - void CommonHost::SetResourcesDirectory() + void EmuFolders::SetResourcesDirectory() { +#ifdef PCSX2_RESOURCES_PATH + // Resources' path specified at compile time + EmuFolders::Resources = Path::Canonicalize(PCSX2_RESOURCES_PATH); +#else #ifndef __APPLE__ // On Windows/Linux, these are in the binary directory. - EmuFolders::Resources = Path::Combine(EmuFolders::AppRoot, "resources"); -@@ -135,6 +139,7 @@ + Resources = Path::Combine(AppRoot, "resources"); +@@ -1683,6 +1687,7 @@ void EmuFolders::SetResourcesDirectory() // On macOS, this is in the bundle resources directory. - EmuFolders::Resources = Path::Canonicalize(Path::Combine(EmuFolders::AppRoot, "../Resources")); + Resources = Path::Canonicalize(Path::Combine(AppRoot, "../Resources")); #endif +#endif // PCSX2_RESOURCES_PATH } - bool CommonHost::ShouldUsePortableMode() + bool EmuFolders::ShouldUsePortableMode() diff --git a/emulators/pcsx2/pkg-plist b/emulators/pcsx2/pkg-plist index b9a4c78bf633..a41ea40a0052 100644 --- a/emulators/pcsx2/pkg-plist +++ b/emulators/pcsx2/pkg-plist @@ -1,73 +1,75 @@ bin/pcsx2-qt -man/man1/PCSX2.1.gz share/applications/PCSX2.desktop share/pixmaps/PCSX2.png %%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/fullscreenui/applications-system.png %%DATADIR%%/resources/fullscreenui/media-cdrom.png %%DATADIR%%/resources/fullscreenui/placeholder.png %%DATADIR%%/resources/game_controller_db.txt %%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/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/common_header.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