diff --git a/devel/websocketpp/Makefile b/devel/websocketpp/Makefile index 12cd87d532f7..70784d13e2a8 100644 --- a/devel/websocketpp/Makefile +++ b/devel/websocketpp/Makefile @@ -1,28 +1,28 @@ PORTNAME= websocketpp PORTVERSION= 0.8.2 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= devel MAINTAINER= sigsegv@radiotube.org COMMENT= Header-only implementation of the WebSocket protocol WWW= https://www.zaphoyd.com/websocketpp/ LICENSE= MIT BSD3CLAUSE ZLIB LICENSE_COMB= multi LICENSE_FILE= ${WRKSRC}/COPYING RUN_DEPENDS= boost-libs>0:devel/boost-libs USES= cmake:insource,testing cpe CPE_VENDOR= zaphoyd USE_GITHUB= yes GH_ACCOUNT= zaphoyd CMAKE_TESTING_ON= BUILD_TESTS NO_ARCH= yes post-stage: # https://github.com/zaphoyd/websocketpp/issues/781 @${RMDIR} ${STAGEDIR}${PREFIX}/include/websocketpp/CMakeFiles .include diff --git a/devel/websocketpp/files/patch-websocketpp_transport_asio_connection.hpp b/devel/websocketpp/files/patch-websocketpp_transport_asio_connection.hpp index 30872545d7b5..0c37aa055508 100644 --- a/devel/websocketpp/files/patch-websocketpp_transport_asio_connection.hpp +++ b/devel/websocketpp/files/patch-websocketpp_transport_asio_connection.hpp @@ -1,96 +1,96 @@ --- websocketpp/transport/asio/connection.hpp.orig 2020-04-19 18:25:17 UTC +++ websocketpp/transport/asio/connection.hpp @@ -86,9 +86,9 @@ class connection : public config::socket_type::socket_ typedef typename response_type::ptr response_ptr; /// Type of a pointer to the Asio io_service being used - typedef lib::asio::io_service * io_service_ptr; + typedef lib::asio::io_context * io_context_ptr; /// Type of a pointer to the Asio io_service::strand being used - typedef lib::shared_ptr strand_ptr; + typedef lib::shared_ptr strand_ptr; /// Type of a pointer to the Asio timer class typedef lib::shared_ptr timer_ptr; @@ -458,11 +458,11 @@ class connection : public config::socket_type::socket_ * * @return Status code for the success or failure of the initialization */ - lib::error_code init_asio (io_service_ptr io_service) { + lib::error_code init_asio (io_context_ptr io_service) { m_io_service = io_service; if (config::enable_multithreading) { - m_strand.reset(new lib::asio::io_service::strand(*io_service)); + m_strand.reset(new lib::asio::io_context::strand(*io_service)); } lib::error_code ec = socket_con_type::init_asio(io_service, m_strand, @@ -573,7 +573,7 @@ class connection : public config::socket_type::socket_ lib::error_code const & ec) { if (ec == transport::error::operation_aborted || - (post_timer && lib::asio::is_neg(post_timer->expires_from_now()))) + (post_timer && lib::asio::is_neg(post_timer->expiry() - std::chrono::steady_clock::now()))) { m_alog->write(log::alevel::devel,"post_init cancelled"); return; @@ -679,7 +679,7 @@ class connection : public config::socket_type::socket_ // Whatever aborted it will be issuing the callback so we are safe to // return if (ec == lib::asio::error::operation_aborted || - lib::asio::is_neg(m_proxy_data->timer->expires_from_now())) + lib::asio::is_neg(m_proxy_data->timer->expiry() - std::chrono::steady_clock::now())) { m_elog->write(log::elevel::devel,"write operation aborted"); return; @@ -751,7 +751,7 @@ class connection : public config::socket_type::socket_ // Whatever aborted it will be issuing the callback so we are safe to // return if (ec == lib::asio::error::operation_aborted || - lib::asio::is_neg(m_proxy_data->timer->expires_from_now())) + lib::asio::is_neg(m_proxy_data->timer->expiry() - std::chrono::steady_clock::now())) { m_elog->write(log::elevel::devel,"read operation aborted"); return; @@ -1012,18 +1012,18 @@ class connection : public config::socket_type::socket_ */ lib::error_code interrupt(interrupt_handler handler) { if (config::enable_multithreading) { - m_io_service->post(m_strand->wrap(handler)); -+ boost::asio::post(*m_io_service, m_strand->wrap(handler)); ++ lib::asio::post(*m_io_service, m_strand->wrap(handler)); } else { - m_io_service->post(handler); -+ boost::asio::post(*m_io_service, handler); ++ lib::asio::post(*m_io_service, handler); } return lib::error_code(); } lib::error_code dispatch(dispatch_handler handler) { if (config::enable_multithreading) { - m_io_service->post(m_strand->wrap(handler)); -+ boost::asio::post(*m_io_service, m_strand->wrap(handler)); ++ lib::asio::post(*m_io_service, m_strand->wrap(handler)); } else { - m_io_service->post(handler); -+ boost::asio::post(*m_io_service, handler); ++ lib::asio::post(*m_io_service, handler); } return lib::error_code(); } @@ -1095,7 +1095,7 @@ class connection : public config::socket_type::socket_ callback, lib::asio::error_code const & ec) { if (ec == lib::asio::error::operation_aborted || - lib::asio::is_neg(shutdown_timer->expires_from_now())) + lib::asio::is_neg(shutdown_timer->expiry() - std::chrono::steady_clock::now())) { m_alog->write(log::alevel::devel,"async_shutdown cancelled"); return; @@ -1172,7 +1172,7 @@ class connection : public config::socket_type::socket_ lib::shared_ptr m_proxy_data; // transport resources - io_service_ptr m_io_service; + io_context_ptr m_io_service; strand_ptr m_strand; connection_hdl m_connection_hdl; diff --git a/multimedia/obs-studio/Makefile b/multimedia/obs-studio/Makefile index 0f4330e6004e..76af6a21a134 100644 --- a/multimedia/obs-studio/Makefile +++ b/multimedia/obs-studio/Makefile @@ -1,137 +1,136 @@ PORTNAME= obs-studio DISTVERSION= 31.0.3 PORTREVISION= 2 CATEGORIES= multimedia PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/ PATCHFILES= ff4522e2edf0f3bb40753f412944344050139794.patch:-p1 # v4l2loopback/virtual camera: Add support for non-Linux environments (updated PR) MAINTAINER= yuri@FreeBSD.org COMMENT= Open source streaming/recording software WWW= https://obsproject.com/ \ https://github.com/obsproject/obs-studio LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/COPYING -BROKEN= fails due to incompability of devel/boost-libs>=1.87 and devel/websocketpp<=0.82_2, see https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=287916 BROKEN_armv7= compilation fails: format specifies type 'unsigned long' but the argument has type 'size_t' (aka 'unsigned int') [-Werror,-Wformat] (32-builds aren't supported, see issue 10481) BROKEN_i386= link fails: relocation R_386_PC32 cannot be used against symbol 'strlist_split'; recompile with -fPIC, see https://github.com/obsproject/obs-studio/issues/10481 BUILD_DEPENDS= asio>0:net/asio \ ${LOCALBASE}/include/nlohmann/json.hpp:devel/nlohmann-json \ v4l_compat>=0:multimedia/v4l_compat \ swig:devel/swig \ uthash>0:devel/uthash \ websocketpp>0:devel/websocketpp LIB_DEPENDS= libasound.so:audio/alsa-lib \ libavcodec.so:multimedia/ffmpeg \ libcurl.so:ftp/curl \ libdatachannel.so:www/libdatachannel \ libdbus-1.so:devel/dbus \ libdrm.so:graphics/libdrm \ libfdk-aac.so:audio/fdk-aac \ libfontconfig.so:x11-fonts/fontconfig \ libfreetype.so:print/freetype2 \ libjansson.so:devel/jansson \ libmbedtls.so:security/mbedtls3 \ libpci.so:devel/libpci \ libqrcodegencpp.so:graphics/qr-code-generator \ librist.so:multimedia/librist \ librnnoise.so:audio/rnnoise \ libspeexdsp.so:audio/speexdsp \ libsrt.so:www/srt \ libsysinfo.so:devel/libsysinfo \ libudev.so:devel/libudev-devd \ libv4l2.so:multimedia/libv4l \ libx264.so:multimedia/libx264 \ libxcb-ewmh.so:x11/xcb-util-wm \ libxcb-image.so:x11/xcb-util-image \ libxcb-keysyms.so:x11/xcb-util-keysyms \ libxcb-render-util.so:x11/xcb-util-renderutil \ libxcb-util.so:x11/xcb-util \ libxkbcommon.so:x11/libxkbcommon \ libuuid.so:misc/libuuid \ libva.so:multimedia/libva USES= cmake compiler:c++17-lang desktop-file-utils gl gnome lua luajit \ pkgconfig python qt:6 xorg USE_QT= base svg tools:build USE_GNOME= glib20 USE_GL= gl USE_XORG= ice sm x11 xcb xcomposite xext xfixes xinerama xrandr USE_LDCONFIG= yes USE_GITHUB= yes GH_ACCOUNT= obsproject GH_TUPLE= obsproject:libdshowcapture:ef8c1d2e19c93e664100dd41e1a0df4f8ad45430:obsproject_libdshowcapture/plugins/win-dshow/libdshowcapture \ obsproject:obs-browser:e4e523df775bd6fa216d40a7488b76f3b21c1733:obsproject_obs_browser/plugins/obs-browser \ Mixer:ftl-sdk:d0c8469f66806b5ea738d607f7d2b000af8b1129:Mixer_ftl_sdk/plugins/obs-outputs/ftl-sdk \ obsproject:obs-websocket:a73c92788d70f08f91b8c0477b74f99c999beb09:obsproject_obs_websocket/plugins/obs-websocket \ elgatosf:capture-device-support:81c94fb13dfddb412fcb17f1ba031917ec24be64:elgatosf_capture_device_support/deps/libdshowcapture/src/external/capture-device-support CMAKE_ON= UNIX_STRUCTURE CMAKE_ARGS= -DOBS_VERSION_OVERRIDE:STRING="${PORTVERSION}" \ -DQT_VERSION=6 \ -DPython_EXECUTABLE="${PYTHON_CMD}" CFLAGS_powerpc64= -Wno-error=deprecated-altivec-src-compat -Wno-error=pass-failed CFLAGS_powerpc64le= -Wno-error=deprecated-altivec-src-compat LDFLAGS+= -fPIC # pending https://github.com/obsproject/obs-studio/issues/3436 OPTIONS_DEFINE= BROWSER PIPEWIRE VLC VST WAYLAND OPTIONS_DEFAULT= PIPEWIRE VLC VST WAYLAND OPTIONS_MULTI= AUDIO OPTIONS_MULTI_AUDIO= JACK PULSEAUDIO SNDIO OPTIONS_DEFAULT+= ${OPTIONS_MULTI_AUDIO} OPTIONS_SUB= yes AUDIO_DESC= Audio backends BROWSER_DESC= Build OSB browser BROWSER_CMAKE_BOOL= BUILD_BROWSER BROWSER_BROKEN= Needs CEF (Chromium Embedded Framework) which isn't yet ported JACK_LIB_DEPENDS= libjack.so:audio/jack JACK_CMAKE_ON= -DENABLE_JACK=TRUE JACK_CMAKE_OFF= -DDISABLE_JACK=TRUE PIPEWIRE_DESC= Screen capture via PipeWire PIPEWIRE_LIB_DEPENDS= libpipewire-0.3.so:multimedia/pipewire PIPEWIRE_CMAKE_BOOL= ENABLE_PIPEWIRE PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio PULSEAUDIO_CMAKE_ON= -DENABLE_PULSEAUDIO=TRUE PULSEAUDIO_CMAKE_OFF= -DDISABLE_PULSEAUDIO=TRUE PULSEAUDIO_BROKEN_OFF= https://github.com/obsproject/obs-studio/issues/4025 SNDIO_LIB_DEPENDS= libsndio.so:audio/sndio SNDIO_CMAKE_ON= -DENABLE_SNDIO=TRUE SNDIO_CMAKE_OFF= -DDISABLE_SNDIO=TRUE VLC_DESC= Enable VLC plugin VLC_CMAKE_BOOL= ENABLE_VLC VLC_LIB_DEPENDS= libvlc.so:multimedia/vlc VST_DESC= Build VST submodule VST_CMAKE_BOOL= BUILD_VST WAYLAND_CATEGORIES= wayland WAYLAND_LIB_DEPENDS= libwayland-client.so:graphics/wayland WAYLAND_CMAKE_BOOL= ENABLE_WAYLAND .include .if ${ARCH} != amd64 && ${ARCH} != armv7 && ${ARCH} != i386 && ${ARCH} != powerpc && ${ARCH} != powerpc64 && ${ARCH} != powerpc64le PLIST_SUB+= LUAJIT="@comment " .else PLIST_SUB+= LUAJIT="" .endif xpost-install: # https://github.com/obsproject/obs-studio/issues/2625 ${INSTALL_DATA} ${WRKSRC}/UI/obs-frontend-api/obs-frontend-api.h ${STAGEDIR}${PREFIX}/include/obs # https://github.com/obsproject/obs-studio/issues/2647 (only for multimedia/obs-audio-spectralizer, should be removed later) ${INSTALL_DATA} ${WRKSRC}/cmake/Modules/ObsHelpers.cmake ${STAGEDIR}${PREFIX}/lib/cmake ${INSTALL_DATA} ${WRKSRC}/cmake/external/ObsPluginHelpers.cmake ${STAGEDIR}${PREFIX}/lib/cmake .include