Index: head/net/freerdp/Makefile =================================================================== --- head/net/freerdp/Makefile (revision 468742) +++ head/net/freerdp/Makefile (revision 468743) @@ -1,116 +1,116 @@ # Created by: Alexander Logvinov # $FreeBSD$ PORTNAME= freerdp DISTVERSION= 2.0.0-rc1 -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= net comms ipv6 PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/ PATCHFILES= 78df32c77f28.patch:-p1 ed571e74a594.patch:-p1 MAINTAINER= kevans@FreeBSD.org COMMENT= Free implementation of Remote Desktop Protocol LICENSE= APACHE20 LICENSE_FILE= ${WRKSRC}/LICENSE USES= alias cmake:outsource compiler:c++11-lib cpe gettext localbase pathfix pkgconfig ssl USE_LDCONFIG= yes CPE_VENDOR= freerdp_project USE_GITHUB= yes GH_ACCOUNT= FreeRDP GH_PROJECT= ${GH_ACCOUNT} CMAKE_ARGS+= -DWITH_LIBSYSTEMD=OFF -DWITH_GSTREAMER_0_10=OFF ${CMAKE_ARGS_${ARCH}} CMAKE_ARGS_aarch64= -DWITH_NEON=ON CFLAGS_aarch64= -D__ARM_NEON__=__ARM_NEON # clang OPTIONS_DEFINE= ALSA CUPS FFMPEG GSTREAMER ICU KERBEROS MANPAGES \ PULSEAUDIO WAYLAND X11 OPTIONS_DEFAULT= CUPS GSTREAMER ICU KERBEROS MANPAGES WAYLAND X11 OPTIONS_SUB= yes OPTIONS_DEFINE_armv6= NEON OPTIONS_DEFINE_armv7= NEON OPTIONS_DEFINE_amd64= SSE OPTIONS_DEFINE_i386= SSE OPTIONS_DEFAULT_amd64= SSE ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib ALSA_CMAKE_BOOL= WITH_ALSA CUPS_LIB_DEPENDS= libcups.so:print/cups CUPS_CMAKE_BOOL= WITH_CUPS FFMPEG_LIB_DEPENDS= libavcodec.so:multimedia/ffmpeg \ libavutil.so:multimedia/ffmpeg FFMPEG_CMAKE_BOOL= WITH_FFMPEG GSTREAMER_CMAKE_BOOL= WITH_GSTREAMER_1_0 GSTREAMER_USE= gnome=glib20 gstreamer1=yes xorg=x11,xext,xextproto,xrandr GSTREAMER_LIB_DEPENDS= libgstbase-1.0.so:multimedia/gstreamer1 ICU_LIB_DEPENDS= libicuuc.so:devel/icu ICU_CMAKE_BOOL= WITH_ICU KERBEROS_CMAKE_BOOL= WITH_GSSAPI_HEIMDAL MANPAGES_BUILD_DEPENDS= xmlto:textproc/xmlto MANPAGES_CMAKE_BOOL= WITH_MANPAGES MANPAGES_CMAKE_OFF= -DWITH_MANPAGES=OFF NEON_DESC= Enable Media Processing Engine instructions NEON_CMAKE_BOOL= WITH_NEON .if ! ${CFLAGS:M-march*} NEON_CFLAGS= -march=armv7-a .endif PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio PULSEAUDIO_CMAKE_BOOL= WITH_PULSE SSE_CMAKE_BOOL= WITH_SSE2 WAYLAND_DESC= Build FreeRDP Wayland client WAYLAND_BUILD_DEPENDS= ${LOCALBASE}/include/linux/input.h:multimedia/v4l_compat WAYLAND_LIB_DEPENDS= libepoll-shim.so:devel/libepoll-shim \ libwayland-client.so:graphics/wayland \ libwayland-cursor.so:graphics/wayland \ libxkbcommon.so:x11/libxkbcommon WAYLAND_CMAKE_BOOL= WITH_WAYLAND X11_DESC= Build FreeRDP X11 client X11_CMAKE_BOOL= WITH_X11 X11_CMAKE_OFF= -DWITH_XKBFILE=OFF X11_USE= xorg=x11,xcursor,xext,xextproto,xfixes,xi,xinerama,xkbfile,xrandr,xrender,xv .include .if ${OPSYS} == "FreeBSD" && ${ARCH} == "armv6" .if ${OSVERSION} < 1100500 || \ (${OSVERSION} >= 1100500 && ${OSVERSION} < 1100504) || \ (${OSVERSION} >= 1200000 && ${OSVERSION} < 1200008) BROKEN= Fails to build on ARMv6 (libm bug). See: r305380 (HEAD), r305971 (stable/11) [\#199422, \#211965] \ Please update to a later (fixed) version. .endif .endif post-patch: @${REINPLACE_CMD} -e '/CMAKE_INSTALL_RPATH /d' \ ${WRKSRC}/CMakeLists.txt @${REINPLACE_CMD} -e 's/Linux/Linux|FreeBSD/' \ ${WRKSRC}/winpr/CMakeLists.txt @${REINPLACE_CMD} -e 's/NetBSD__)/NetBSD__) || defined(__FreeBSD__)/' \ ${WRKSRC}/winpr/libwinpr/utils/trio/triodef.h @${RM} ${WRKSRC}/cmake/FindOpenSSL.cmake @${REINPLACE_CMD} -e 's|$${CMAKE_INSTALL_LIBDIR}/cmake|$${CMAKE_INSTALL_PREFIX}/share/cmake/Modules|' \ ${WRKSRC}/client/CMakeLists.txt \ ${WRKSRC}/winpr/CMakeLists.txt \ ${WRKSRC}/uwac/CMakeLists.txt \ ${WRKSRC}/server/CMakeLists.txt \ ${WRKSRC}/server/shadow/CMakeLists.txt \ ${WRKSRC}/libfreerdp/CMakeLists.txt .include Index: head/net/freerdp/files/patch-ffmpeg29 =================================================================== --- head/net/freerdp/files/patch-ffmpeg29 (revision 468742) +++ head/net/freerdp/files/patch-ffmpeg29 (nonexistent) @@ -1,38 +0,0 @@ ---- channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c.orig 2016-10-21 07:29:51 UTC -+++ channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c -@@ -346,7 +346,7 @@ static BOOL tsmf_ffmpeg_decode_video(ITS - av_picture_copy((AVPicture*) frame, (AVPicture*) mdecoder->frame, - mdecoder->codec_context->pix_fmt, - mdecoder->codec_context->width, mdecoder->codec_context->height); -- av_free(frame); -+ av_frame_free(&frame); - } - - return ret; -@@ -428,7 +428,7 @@ static BOOL tsmf_ffmpeg_decode_audio(ITS - decoded_frame->nb_samples, mdecoder->codec_context->sample_fmt, 1); - memcpy(dst, decoded_frame->data[0], frame_size); - } -- av_free(decoded_frame); -+ av_frame_free(&decoded_frame); - } - #endif - if (len <= 0 || frame_size <= 0) -@@ -524,7 +524,7 @@ static void tsmf_ffmpeg_free(ITSMFDecode - { - TSMFFFmpegDecoder* mdecoder = (TSMFFFmpegDecoder*) decoder; - if (mdecoder->frame) -- av_free(mdecoder->frame); -+ av_frame_free(&mdecoder->frame); - - free(mdecoder->decoded_data); - -@@ -534,7 +534,7 @@ static void tsmf_ffmpeg_free(ITSMFDecode - avcodec_close(mdecoder->codec_context); - - free(mdecoder->codec_context->extradata); -- av_free(mdecoder->codec_context); -+ av_frame_free(&mdecoder->codec_context); - } - free(decoder); - } Property changes on: head/net/freerdp/files/patch-ffmpeg29 ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/net/freerdp1/Makefile =================================================================== --- head/net/freerdp1/Makefile (revision 468742) +++ head/net/freerdp1/Makefile (revision 468743) @@ -1,108 +1,108 @@ # Created by: Alexander Logvinov # $FreeBSD$ PORTNAME= freerdp PORTVERSION= 1.2.0 -PORTREVISION= 7 +PORTREVISION= 8 CATEGORIES= net comms ipv6 PKGNAMESUFFIX= 1 MAINTAINER= kevans@FreeBSD.org COMMENT= Free implementation of Remote Desktop Protocol LICENSE= APACHE20 LICENSE_FILE= ${WRKSRC}/LICENSE USE_GITHUB= yes GH_ACCOUNT= FreeRDP GH_PROJECT= ${GH_ACCOUNT} GH_TAGNAME= f5ff6e1 USES= alias cmake:outsource compiler:c++11-lib cpe gettext localbase pathfix pkgconfig ssl USE_LDCONFIG= yes CPE_VENDOR= freerdp_project CMAKE_ARGS+= -DWITH_LIBSYSTEMD=OFF -DWITH_WAYLAND=OFF -DWITH_GSTREAMER_0_10=OFF ${CMAKE_ARGS_${ARCH}} CMAKE_ARGS_aarch64= -DWITH_NEON=ON CFLAGS_aarch64= -D__ARM_NEON__=__ARM_NEON # clang OPTIONS_DEFINE= ALSA CUPS FFMPEG GSTREAMER PULSEAUDIO SSE X11 OPTIONS_DEFAULT= CUPS GSTREAMER X11 OPTIONS_SUB= yes OPTIONS_DEFINE_armv6= NEON OPTIONS_DEFINE_armv7= NEON OPTIONS_EXCLUDE_armv6= SSE OPTIONS_EXCLUDE_armv7= SSE ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib ALSA_CMAKE_BOOL= WITH_ALSA CUPS_LIB_DEPENDS= libcups.so:print/cups CUPS_CMAKE_BOOL= WITH_CUPS FFMPEG_LIB_DEPENDS= libavcodec.so:multimedia/ffmpeg \ libavutil.so:multimedia/ffmpeg FFMPEG_CMAKE_BOOL= WITH_FFMPEG GSTREAMER_CMAKE_BOOL= WITH_GSTREAMER_1_0 GSTREAMER_USE= gnome=glib20 gstreamer1=yes xorg=x11,xextproto,xext,xrandr GSTREAMER_LIB_DEPENDS= libgstbase-1.0.so:multimedia/gstreamer1 NEON_DESC= Enable Media Processing Engine instructions NEON_CMAKE_BOOL= WITH_NEON .if ! ${CFLAGS:M-march*} NEON_CFLAGS= -march=armv7-a .endif PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio PULSEAUDIO_CMAKE_BOOL= WITH_PULSE SSE_CMAKE_BOOL= WITH_SSE2 X11_DESC= Build FreeRDP X11 client X11_BUILD_DEPENDS= xmlto:textproc/xmlto X11_CMAKE_BOOL= WITH_X11 X11_CMAKE_OFF= -DWITH_XKBFILE=OFF X11_USE= xorg=x11,xkbfile,xcursor,xextproto,xv,xinerama,xext,xrandr,xi,xfixes,xrender .include .if ${OPSYS} == FreeBSD && (${ARCH} == armv6 || ${ARCH} == armv7) .if ${OSVERSION} < 1100500 || \ (${OSVERSION} >= 1100500 && ${OSVERSION} < 1100504) || \ (${OSVERSION} >= 1200000 && ${OSVERSION} < 1200008) BROKEN= Fails to build on ARMv6/7 (libm bug). See: r305380 (HEAD), r305971 (stable/11) [\#199422, \#211965] \ Please update to a later (fixed) version. .endif .endif post-patch: @${FIND} ${WRKSRC} -name 'CMakeLists.txt' | ${XARGS} \ ${REINPLACE_CMD} \ -e 's|list(APPEND $${MODULE_PREFIX}_LIBS freerdp)|list(APPEND $${MODULE_PREFIX}_LIBS freerdp1)|' \ -e 's|list(APPEND $${MODULE_PREFIX}_LIBS winpr)|list(APPEND $${MODULE_PREFIX}_LIBS winpr1)|' @${FIND} ${WRKSRC} -name 'CMakeLists.txt' | ${XARGS} \ ${REINPLACE_CMD} -E \ -e 's|freerdp winpr|freerdp1 winpr1|' \ -e 's|winpr freerdp|winpr1 freerdp1|' \ -e 's|-lwinpr|-lwinpr1|' \ -e 's|-lfreerdp|-lfreerdp1|' \ -e 's|^([[:blank:]]*)target_link_libraries\((.+) freerdp\)([[:blank:]]*)$$|\1target_link_libraries(\2 freerdp1)\3|' \ -e 's|^([[:blank:]]*)target_link_libraries\((.+) winpr\)([[:blank:]]*)$$|\1target_link_libraries(\2 winpr1)\3|' \ -e 's|^([[:blank:]]*)set\((.+) freerdp (.+) winpr\)([[:blank:]]*)$$|\1set(\2 freerdp1 \3 winpr1)\4|' \ -e 's|^([[:blank:]]*)set\((.+) winpr\)([[:blank:]]*)$$|\1set(\2 winpr1)\3|' @${REINPLACE_CMD} -e '/CMAKE_INSTALL_RPATH /d' \ ${WRKSRC}/CMakeLists.txt @${REINPLACE_CMD} -e 's|share/man/man1|man/man1|' \ ${WRKSRC}/client/X11/CMakeLists.txt @${REINPLACE_CMD} -e 's/NetBSD__)/NetBSD__) || defined(__FreeBSD__)/' \ ${WRKSRC}/winpr/libwinpr/utils/trio/triodef.h @${REINPLACE_CMD} -e 's|||' \ ${WRKSRC}/channels/drive/client/statvfs.c @${REINPLACE_CMD} -e 's|$${CMAKE_INSTALL_LIBDIR}/cmake|$${CMAKE_INSTALL_PREFIX}/share/cmake/Modules|' \ ${WRKSRC}/winpr/CMakeLists.txt \ ${WRKSRC}/CMakeLists.txt .include Index: head/net/freerdp1/files/patch-ffmpeg29 =================================================================== --- head/net/freerdp1/files/patch-ffmpeg29 (revision 468742) +++ head/net/freerdp1/files/patch-ffmpeg29 (revision 468743) @@ -1,77 +1,59 @@ -Description: Replace deprecated FFmpeg API -Author: Andreas Cadhalpun -Last-Update: <2015-11-02> +https://github.com/FreeRDP/FreeRDP/commit/b7b66968f93f --- channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c.orig 2014-09-11 22:46:32 UTC +++ channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c -@@ -103,7 +103,7 @@ static BOOL tsmf_ffmpeg_init_video_strea +@@ -62,6 +62,9 @@ + #define AV_CODEC_ID_AC3 CODEC_ID_AC3 + #endif + ++#if LIBAVUTIL_VERSION_MAJOR < 52 ++#define AV_PIX_FMT_YUV420P PIX_FMT_YUV420P ++#endif + + typedef struct _TSMFFFmpegDecoder + { +@@ -103,7 +106,11 @@ static BOOL tsmf_ffmpeg_init_video_stream(ITSMFDecoder mdecoder->codec_context->bit_rate = media_type->BitRate; mdecoder->codec_context->time_base.den = media_type->SamplesPerSecond.Numerator; mdecoder->codec_context->time_base.num = media_type->SamplesPerSecond.Denominator; -- mdecoder->frame = avcodec_alloc_frame(); ++#if LIBAVCODEC_VERSION_MAJOR < 55 + mdecoder->frame = avcodec_alloc_frame(); ++#else + mdecoder->frame = av_frame_alloc(); ++#endif return TRUE; } -@@ -322,14 +322,14 @@ static BOOL tsmf_ffmpeg_decode_video(ITS +@@ -322,7 +329,11 @@ static BOOL tsmf_ffmpeg_decode_video(ITSMFDecoder *dec mdecoder->codec_context->width, mdecoder->codec_context->height); mdecoder->decoded_data = malloc(mdecoder->decoded_size); ZeroMemory(mdecoder->decoded_data, mdecoder->decoded_size); -- frame = avcodec_alloc_frame(); ++#if LIBAVCODEC_VERSION_MAJOR < 55 + frame = avcodec_alloc_frame(); ++#else + frame = av_frame_alloc(); ++#endif avpicture_fill((AVPicture *) frame, mdecoder->decoded_data, mdecoder->codec_context->pix_fmt, mdecoder->codec_context->width, mdecoder->codec_context->height); - av_picture_copy((AVPicture *) frame, (AVPicture *) mdecoder->frame, - mdecoder->codec_context->pix_fmt, - mdecoder->codec_context->width, mdecoder->codec_context->height); -- av_free(frame); -+ av_frame_free(&frame); - } - return ret; - } -@@ -385,7 +385,7 @@ static BOOL tsmf_ffmpeg_decode_audio(ITS +@@ -385,7 +396,11 @@ static BOOL tsmf_ffmpeg_decode_audio(ITSMFDecoder *dec (int16_t *) dst, &frame_size, src, src_size); #else { -- AVFrame *decoded_frame = avcodec_alloc_frame(); ++#if LIBAVCODEC_VERSION_MAJOR < 55 + AVFrame *decoded_frame = avcodec_alloc_frame(); ++#else + AVFrame *decoded_frame = av_frame_alloc(); ++#endif int got_frame = 0; AVPacket pkt; av_init_packet(&pkt); -@@ -398,7 +398,7 @@ static BOOL tsmf_ffmpeg_decode_audio(ITS - decoded_frame->nb_samples, mdecoder->codec_context->sample_fmt, 1); - memcpy(dst, decoded_frame->data[0], frame_size); - } -- av_free(decoded_frame); -+ av_frame_free(&decoded_frame); - } - #endif - if(len <= 0 || frame_size <= 0) -@@ -464,7 +464,7 @@ static UINT32 tsmf_ffmpeg_get_decoded_fo +@@ -464,7 +479,7 @@ static UINT32 tsmf_ffmpeg_get_decoded_format(ITSMFDeco TSMFFFmpegDecoder *mdecoder = (TSMFFFmpegDecoder *) decoder; switch(mdecoder->codec_context->pix_fmt) { - case PIX_FMT_YUV420P: + case AV_PIX_FMT_YUV420P: return RDP_PIXFMT_I420; default: CLOG_ERR("unsupported pixel format %u", -@@ -492,7 +492,7 @@ static void tsmf_ffmpeg_free(ITSMFDecode - { - TSMFFFmpegDecoder *mdecoder = (TSMFFFmpegDecoder *) decoder; - if(mdecoder->frame) -- av_free(mdecoder->frame); -+ av_frame_free(&mdecoder->frame); - if(mdecoder->decoded_data) - free(mdecoder->decoded_data); - if(mdecoder->codec_context) -@@ -501,7 +501,7 @@ static void tsmf_ffmpeg_free(ITSMFDecode - avcodec_close(mdecoder->codec_context); - if(mdecoder->codec_context->extradata) - free(mdecoder->codec_context->extradata); -- av_free(mdecoder->codec_context); -+ av_frame_free(&mdecoder->codec_context); - } - free(decoder); - }