Index: head/emulators/rpcs3/Makefile =================================================================== --- head/emulators/rpcs3/Makefile (revision 514864) +++ head/emulators/rpcs3/Makefile (revision 514865) @@ -1,89 +1,90 @@ # $FreeBSD$ PORTNAME= rpcs3 DISTVERSIONPREFIX= v -DISTVERSION= 0.0.7-8909 # git rev-list --count HEAD -DISTVERSIONSUFFIX= -gcb362b408 +DISTVERSION= 0.0.7-8941 # git rev-list --count HEAD +DISTVERSIONSUFFIX= -g0ef7ad129 CATEGORIES= emulators MAINTAINER= jbeich@FreeBSD.org COMMENT= PS3 emulator/debugger LICENSE= BSD3CLAUSE BSL GPLv2 MIT ZLIB LICENSE_COMB= multi LICENSE_FILE_BSD3CLAUSE=${WRKSRC_cereal}/LICENSE LICENSE_FILE_MIT= ${WRKSRC_GSL}/LICENSE LICENSE_FILE_ZLIB= ${WRKSRC_asmjit}/LICENSE.md LIB_DEPENDS= libpng.so:graphics/png \ libavcodec.so:multimedia/ffmpeg ONLY_FOR_ARCHS= amd64 ONLY_FOR_ARCHS_REASON= requires int128 and SSE2 USE_GITHUB= yes GH_ACCOUNT= RPCS3 GH_TUPLE= RPCS3:hidapi:hidapi-0.8.0-rc1-27-g9220f5e:hidapi/3rdparty/hidapi \ RPCS3:llvm:b860b5e8f4ee:llvm/llvm \ Cyan4973:xxHash:v0.6.5:xxHash/3rdparty/xxHash \ jbeder:yaml-cpp:yaml-cpp-0.6.2-23-geca9cfd:yamlcpp/3rdparty/yaml-cpp \ kobalicek:asmjit:fc251c9:asmjit/asmjit \ KhronosGroup:glslang:7.11.3214:glslang/Vulkan/glslang \ Microsoft:GSL:v2.0.0:GSL/3rdparty/GSL \ USCiLab:cereal:v1.2.0:cereal/3rdparty/cereal \ zeux:pugixml:v1.9-51-g8bf806c:pugixml/3rdparty/pugixml USES= cmake compiler:c++17-lang iconv:wchar_t localbase:ldflags \ openal:soft pkgconfig qt:5 USE_GL= gl glew USE_QT= qmake_build buildtools_build core dbus declarative gui network widgets USE_XORG= x11 CMAKE_ON= CMAKE_SKIP_RPATH USE_SYSTEM_FFMPEG USE_SYSTEM_LIBPNG CMAKE_OFF= USE_NATIVE_INSTRUCTIONS LDFLAGS+= -Wl,--as-needed # GLU # XXX Drop after FreeBSD 12.0 EOL .if exists(/usr/lib/clang/6.0.1) LLD_UNSAFE= yes # XXX ports/219089 .endif # XXX Remove after FreeBSD 11.2/12.0 reach EOL i.e., around 2020-02-01 # XXX Switch to bundled libc++ to avoid error-prone reverts .if !exists(/usr/include/c++/v1/charconv) && exists(/usr/lib/libc++.so) +EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-revert-db7042b986ab EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-revert-6b1e1e402049 EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-revert-9710473a2e3e EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-revert-f9ad6358563b EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-revert-4504ac2d1248 EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-revert-5bd17a44c972 .endif OPTIONS_DEFINE= ALSA EVDEV LLVM PULSEAUDIO VULKAN OPTIONS_DEFAULT=LLVM VULKAN ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib ALSA_RUN_DEPENDS= ${LOCALBASE}/lib/alsa-lib/libasound_module_pcm_oss.so:audio/alsa-plugins ALSA_CMAKE_BOOL= USE_ALSA EVDEV_DESC= libevdev-based joystick support EVDEV_CMAKE_BOOL= USE_LIBEVDEV EVDEV_BUILD_DEPENDS= evdev-proto>0:devel/evdev-proto EVDEV_LIB_DEPENDS= libevdev.so:devel/libevdev LLVM_DESC= LLVM-based PPU recompiler LLVM_CMAKE_BOOL_OFF= WITHOUT_LLVM PULSEAUDIO_LIB_DEPENDS= libpulse-simple.so:audio/pulseaudio PULSEAUDIO_CMAKE_BOOL= USE_PULSE VULKAN_DESC= Vulkan renderer VULKAN_BUILD_DEPENDS= ${LOCALBASE}/include/vulkan/vulkan.h:devel/vulkan-headers VULKAN_LIB_DEPENDS= libvulkan.so:graphics/vulkan-loader VULKAN_CMAKE_BOOL= USE_VULKAN post-patch: @${REINPLACE_CMD} -e '/GIT_BRANCH/s/unknown/master/' \ -e '/GIT_TAG/s/unknown/${GH_TAGNAME:C/-.*//}/' \ -e '/GIT_VERSION/s/unknown/${GH_TAGNAME:C/[^-]*-//}/' \ ${WRKSRC}/${PORTNAME}/git-version.cmake .include Index: head/emulators/rpcs3/distinfo =================================================================== --- head/emulators/rpcs3/distinfo (revision 514864) +++ head/emulators/rpcs3/distinfo (revision 514865) @@ -1,21 +1,21 @@ -TIMESTAMP = 1571268603 -SHA256 (RPCS3-rpcs3-v0.0.7-8909-gcb362b408_GH0.tar.gz) = 0fe96755219b210e9bc921f06f9bbb90a5b25efb163c15310c0542b446e1417e -SIZE (RPCS3-rpcs3-v0.0.7-8909-gcb362b408_GH0.tar.gz) = 5617386 +TIMESTAMP = 1571505618 +SHA256 (RPCS3-rpcs3-v0.0.7-8941-g0ef7ad129_GH0.tar.gz) = daf9c83bc14d274c267cc110bdfe22d1e839eec6bfa0c9ba24d2d4eae279c857 +SIZE (RPCS3-rpcs3-v0.0.7-8941-g0ef7ad129_GH0.tar.gz) = 5625433 SHA256 (RPCS3-hidapi-hidapi-0.8.0-rc1-27-g9220f5e_GH0.tar.gz) = 3120e0b701943f452760e45f9fc1ac50bab356ad4c807b4cac4598041c5ca1a5 SIZE (RPCS3-hidapi-hidapi-0.8.0-rc1-27-g9220f5e_GH0.tar.gz) = 105400 SHA256 (RPCS3-llvm-b860b5e8f4ee_GH0.tar.gz) = c151972a0c8ceac568c24b61e63d2ecbdac0f125185e23fc2238e0a14048256e SIZE (RPCS3-llvm-b860b5e8f4ee_GH0.tar.gz) = 47286737 SHA256 (Cyan4973-xxHash-v0.6.5_GH0.tar.gz) = 19030315f4fc1b4b2cdb9d7a317069a109f90e39d1fe4c9159b7aaa39030eb95 SIZE (Cyan4973-xxHash-v0.6.5_GH0.tar.gz) = 37521 SHA256 (jbeder-yaml-cpp-yaml-cpp-0.6.2-23-geca9cfd_GH0.tar.gz) = 554f6fac1d9524f807345f95ba9223332c644e56d7a7fdb2bcea1f5793b764fa SIZE (jbeder-yaml-cpp-yaml-cpp-0.6.2-23-geca9cfd_GH0.tar.gz) = 1397220 SHA256 (kobalicek-asmjit-fc251c9_GH0.tar.gz) = 0fb6271fccf8ee86d27affda7e27a6d655bfabfda83a7dd0d41f7fd05b384aad SIZE (kobalicek-asmjit-fc251c9_GH0.tar.gz) = 446910 SHA256 (KhronosGroup-glslang-7.11.3214_GH0.tar.gz) = b30b4668734328d256e30c94037e60d3775b1055743c04d8fd709f2960f302a9 SIZE (KhronosGroup-glslang-7.11.3214_GH0.tar.gz) = 2841979 SHA256 (Microsoft-GSL-v2.0.0_GH0.tar.gz) = 6cce6fb16b651e62711a4f58e484931013c33979b795d1b1f7646f640cfa9c8e SIZE (Microsoft-GSL-v2.0.0_GH0.tar.gz) = 64726 SHA256 (USCiLab-cereal-v1.2.0_GH0.tar.gz) = 1ccf3ed205a7a2f0d6a060415b123f1ae0d984cd4435db01af8de11a2eda49c1 SIZE (USCiLab-cereal-v1.2.0_GH0.tar.gz) = 299883 SHA256 (zeux-pugixml-v1.9-51-g8bf806c_GH0.tar.gz) = 37bed90f3dadb642acca41508391d1409a75af05f34f13da56c866d5c3c4b00d SIZE (zeux-pugixml-v1.9-51-g8bf806c_GH0.tar.gz) = 560956 Index: head/emulators/rpcs3/files/extra-patch-revert-db7042b986ab =================================================================== --- head/emulators/rpcs3/files/extra-patch-revert-db7042b986ab (nonexistent) +++ head/emulators/rpcs3/files/extra-patch-revert-db7042b986ab (revision 514865) @@ -0,0 +1,73 @@ +--- Utilities/sync.h.orig 2019-10-19 17:20:18 UTC ++++ Utilities/sync.h +@@ -24,8 +24,6 @@ + #include + + #ifdef _WIN32 +-DYNAMIC_IMPORT("ntdll.dll", NtWaitForKeyedEvent, NTSTATUS(HANDLE, PVOID Key, BOOLEAN Alertable, PLARGE_INTEGER Timeout)); +-DYNAMIC_IMPORT("ntdll.dll", NtReleaseKeyedEvent, NTSTATUS(HANDLE, PVOID Key, BOOLEAN Alertable, PLARGE_INTEGER Timeout)); + DYNAMIC_IMPORT("ntdll.dll", NtWaitForSingleObject, NTSTATUS(HANDLE Handle, BOOLEAN Alertable, PLARGE_INTEGER Timeout)); + DYNAMIC_IMPORT("ntdll.dll", NtDelayExecution, NTSTATUS(BOOLEAN Alertable, PLARGE_INTEGER DelayInterval)); + #endif +--- rpcs3/util/atomic.cpp.orig 2019-10-19 17:20:18 UTC ++++ rpcs3/util/atomic.cpp +@@ -59,7 +59,7 @@ static thread_local bool(*s_tls_wait_cb)(const void* d + #ifdef USE_POSIX + using sema_handle = sem_t; + #elif defined(_WIN32) +-using sema_handle = std::uint16_t; ++using sema_handle = HANDLE; + #else + namespace + { +@@ -119,7 +119,10 @@ static u32 sema_alloc() + // Initialize semaphore (should be very fast) + sem_init(&s_sema_list[id], 0, 0); + #elif defined(_WIN32) +- // Do nothing ++ if (!s_sema_list[id]) ++ { ++ s_sema_list[id] = CreateSemaphoreW(nullptr, 0, 0x7fff'ffff, nullptr); ++ } + #else + if (!s_sema_list[id]) + { +@@ -454,7 +457,7 @@ void atomic_storage_futex::wait(const void* data, std: + qw.QuadPart -= 1; + } + +- if (!NtWaitForKeyedEvent(nullptr, &s_sema_list[sema_id], false, timeout + 1 ? &qw : nullptr)) ++ if (!NtWaitForSingleObject(s_sema_list[sema_id], false, timeout + 1 ? &qw : nullptr)) + { + fallback = true; + } +@@ -569,7 +572,7 @@ void atomic_storage_futex::wait(const void* data, std: + #if defined(_WIN32) && !defined(USE_POSIX) + static LARGE_INTEGER instant{}; + +- if (!NtWaitForKeyedEvent(nullptr, &s_sema_list[sema_id], false, &instant)) ++ if (!NtWaitForSingleObject(s_sema_list[sema_id], false, &instant)) + { + fallback = true; + } +@@ -765,7 +768,7 @@ void atomic_storage_futex::notify_one(const void* data + #ifdef USE_POSIX + sem_post(&s_sema_list[sema_id]); + #elif defined(_WIN32) +- NtReleaseKeyedEvent(nullptr, &s_sema_list[sema_id], 1, nullptr); ++ ReleaseSemaphore(s_sema_list[sema_id], 1, nullptr); + #else + dumb_sema& sema = *s_sema_list[sema_id]; + +@@ -836,9 +839,9 @@ void atomic_storage_futex::notify_all(const void* data + sem_post(&s_sema_list[sema_id]); + } + #elif defined(_WIN32) +- for (u32 i = 0; i < count; i++) ++ if (count) + { +- NtReleaseKeyedEvent(nullptr, &s_sema_list[sema_id], count, nullptr); ++ ReleaseSemaphore(s_sema_list[sema_id], count, nullptr); + } + #else + if (count) Property changes on: head/emulators/rpcs3/files/extra-patch-revert-db7042b986ab ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property