diff options
author | fluffy <fluffy@FreeBSD.org> | 2013-03-17 17:04:56 +0800 |
---|---|---|
committer | fluffy <fluffy@FreeBSD.org> | 2013-03-17 17:04:56 +0800 |
commit | 655a5c3678e2749ee18ecd026db6619551e178cc (patch) | |
tree | 53dcd78e03cac8819f293f85e0f222cee2e03651 /net | |
parent | 1837af85d84dd71aea616dd43247ba5b89f027b0 (diff) | |
download | freebsd-ports-gnome-655a5c3678e2749ee18ecd026db6619551e178cc.tar.gz freebsd-ports-gnome-655a5c3678e2749ee18ecd026db6619551e178cc.tar.zst freebsd-ports-gnome-655a5c3678e2749ee18ecd026db6619551e178cc.zip |
- Update FreeRDP to 1.0.2 release
- Big thanks for Andriy Gapon and Koichiro IWAO for submitting patches
PR: 164843
Submitted by: Andriy Gapon, Koichiro IWAO
Diffstat (limited to 'net')
-rw-r--r-- | net/freerdp/Makefile | 121 | ||||
-rw-r--r-- | net/freerdp/distinfo | 4 | ||||
-rw-r--r-- | net/freerdp/files/patch-cmake_FindFFmpeg.cmake | 26 | ||||
-rw-r--r-- | net/freerdp/files/patch-libfreerdp-codec_CMakeLists.txt | 11 | ||||
-rw-r--r-- | net/freerdp/files/patch-libfreerdp-codec_color.c | 40 | ||||
-rw-r--r-- | net/freerdp/files/patch-libfreerdp-core_fastpath.c | 22 | ||||
-rw-r--r-- | net/freerdp/files/patch-libfreerdp-core_orders.c | 121 | ||||
-rw-r--r-- | net/freerdp/files/patch-libfreerdp-gdi_16bpp.c | 117 | ||||
-rw-r--r-- | net/freerdp/files/patch-libfreerdp-gdi_32bpp.c | 117 | ||||
-rw-r--r-- | net/freerdp/files/patch-libfreerdp-gdi_8bpp.c | 117 | ||||
-rw-r--r-- | net/freerdp/pkg-descr | 15 | ||||
-rw-r--r-- | net/freerdp/pkg-plist | 188 |
12 files changed, 783 insertions, 116 deletions
diff --git a/net/freerdp/Makefile b/net/freerdp/Makefile index 4a4621e9b73c..d30c17b3e0b5 100644 --- a/net/freerdp/Makefile +++ b/net/freerdp/Makefile @@ -1,88 +1,107 @@ -# New ports collection makefile for: freerdp -# Date created: 04 July 2010 -# Whom: Alexander Logvinov <avl@FreeBSD.org> -# +# Created by: Alexander Logvinov <avl@FreeBSD.org> # $FreeBSD$ -# PORTNAME= freerdp -PORTVERSION= 0.8.2 -PORTREVISION= 1 +PORTVERSION= 1.0.2 CATEGORIES= net comms ipv6 -MASTER_SITES= SF/${PORTNAME}/0.8 MAINTAINER= fluffy@FreeBSD.org -COMMENT= A free remote desktop protocol client +COMMENT= A free implementation of Remote Desktop Protocol -OPTIONS= CUPS "Enable printer support via CUPS" on \ - SOUND "Enable sound support via ALSA" on \ - SAMPLERATE "Enable libsamplerate support for sound" off +LICENSE= AL2 +LICENSE_FILE= ${WRKSRC}/LICENSE -GNU_CONFIGURE= yes +USE_PKGCONFIG= build USE_OPENSSL= yes -USE_GNOME= gnomehack pkgconfig USE_LDCONFIG= yes +USE_CMAKE= yes +USE_GITHUB= yes +GH_ACCOUNT= FreeRDP +GH_PROJECT= FreeRDP +GH_COMMIT= 616aed4 +GH_TAGNAME= ${GH_COMMIT} +GNU_CONFIGURE= yes LDFLAGS+= -L${LOCALBASE}/lib +CFLAGS+= -I${LOCALBASE}/include CPPFLAGS+= -I${LOCALBASE}/include -LICENSE= GPLv2 -LICENSE_FILE= ${WRKSRC}/COPYING +OPTIONS_DEFINE= ALSA DIRECTFB FFMPEG PULSEAUDIO SSE X11 +OPTIONS_DEFAULT= CUPS PULSEAUDIO X11 +X11_DESC= Build FreeRDP X11 client +DIRECTFB_DESC= Build FreeRDP DirectFB client .include <bsd.port.options.mk> -.if !defined(WITHOUT_IPV6) -CONFIGURE_ARGS+=--enable-ipv6 +.if ${PORT_OPTIONS:MX11} +USE_XORG= x11 xkbfile xcursor xextproto xv xinerama xext xcursor +CMAKE_ARGS+= -DWITH_X11=ON +BUILD_DEPENDS+= xmlto:${PORTSDIR}/textproc/xmlto +MAN1= xfreerdp.1 +PLIST_SUB+= X11="" .else -CONFIGURE_ARGS+=--disable-ipv6 +CMAKE_ARGS+= -DWITH_X11=OFF +PLIST_SUB+= X11="@comment " .endif -.if !defined(WITHOUT_ICONV) -USE_ICONV= yes -CONFIGURE_ARGS+=--with-libiconv-prefix=${LOCALBASE} +.if ${PORT_OPTIONS:MDIRECTFB} +LIB_DEPENDS+= directfb:${PORTSDIR}/devel/directfb +CMAKE_ARGS+= -DWITH_DIRECTFB=ON +PLIST_SUB+= DIRECTFB="" +# currently DirectFB option fails with clang +USE_GCC= yes .else -CONFIGURE_ARGS+=--disable-iconv +PLIST_SUB+= DIRECTFB="@comment " .endif -.if defined(WITHOUT_X11) -CONFIGURE_ARGS+=--with-x=no -PLIST_SUB+= X11="@comment " +.if ${PORT_OPTIONS:MALSA} +PLIST_SUB+= ALSA="" .else -USE_XORG= x11 xcursor xextproto -CONFIGURE_ARGS+=--with-x -MAN1= xfreerdp.1 -PLIST_SUB+= X11="" +PLIST_SUB+= ALSA="@comment " +CMAKE_ARGS+= -DWITH_ALSA=OFF .endif -.if !defined(WITHOUT_CUPS) -CONFIGURE_ARGS+=--with-printer=cups -LIB_DEPENDS+= cups.2:${PORTSDIR}/print/cups-base +.if ${PORT_OPTIONS:MFFMPEG} +# the newer ffmpeg is prefered +LIB_DEPENDS+= avcodec-devel:${PORTSDIR}/multimedia/ffmpeg-devel \ + avutil-devel:${PORTSDIR}/multimedia/ffmpeg-devel +AVCODEC_INCLUDE_DIR= ${LOCALBASE}/include/ffmpeg-devel +AVCODEC_LIBRARY= ${LOCALBASE}/lib/ffmpeg-devel +AVUTIL_INCLUDE_DIR= ${AVCODEC_INCLUDE_DIR} +AVUTIL_LIBRARY= ${AVCODEC_LIBRARY} +CFLAGS+= -I${AVCODEC_INCLUDE_DIR} +LDFLAGS+= -I${AVCODEC_LIBRARY} +PLIST_SUB+= FFMPEG="" .else -CONFIGURE_ARGS+=--with-printer=no +CMAKE_ARGS+= -DWITH_FFMPEG=OFF +PLIST_SUB+= FFMPEG="@comment " .endif -.if !defined(WITHOUT_SOUND) -CONFIGURE_ARGS+=--with-sound=alsa -LIB_DEPENDS+= asound.2:${PORTSDIR}/audio/alsa-lib -PLIST_SUB+= SOUND="" -.if !defined(WITHOUT_SAMPLERATE) -LIB_DEPENDS+= samplerate.1:${PORTSDIR}/audio/libsamplerate +.if ${PORT_OPTIONS:MCUPS} +CMAKE_ARGS+= -DWITH_CUPS=ON +LIB_DEPENDS+= cups:${PORTSDIR}/print/cups-base .else -CONFIGURE_ARGS+=--without-libsamplerate +CMAKE_ARGS+= -DWITH_CUPS=OFF .endif + +.if ${PORT_OPTIONS:MPULSEAUDIO} +CMAKE_ARGS+= -DWITH_PULSEAUDIO=ON +LIB_DEPENDS+= pulse:${PORTSDIR}/audio/pulseaudio +PLIST_SUB+= PULSE="" .else -CONFIGURE_ARGS+=--with-sound=no -PLIST_SUB+= SOUND="@comment " +PLIST_SUB+= PULSE="@comment " +CMAKE_ARGS+= -DWITH_PULSEAUDIO=OFF .endif -post-patch: -.if defined(WITHOUT_X11) - @${REINPLACE_CMD} -e 's|man_MANS = |man_MANS1 = |g' ${WRKSRC}/doc/Makefile.in +.if ${PORT_OPTIONS:MSSE} +CMAKE_ARGS+= -DWITH_SSE2=ON +.else +CMAKE_ARGS+= -DWITH_SSE2=OFF .endif - @${REINPLACE_CMD} -e 's|-ldl -lpthread|${PTHREAD_LIBS}|' \ - ${WRKSRC}/libfreerdpchanman/Makefile.in - @${REINPLACE_CMD} -e 's|-I$$(top_builddir)|-I$$(top_builddir)/include|' \ - ${WRKSRC}/libfreerdp/Makefile.in ${WRKSRC}/libfreerdpgdi/Makefile.in \ - ${WRKSRC}/libfreerdpkbd/Makefile.in ${WRKSRC}/X11/Makefile.in +post-extract: + ${REINPLACE_CMD} -e 's|$${CMAKE_INSTALL_LIBDIR}/pkgconfig|libdata/pkgconfig|' \ + ${WRKSRC}/CMakeLists.txt + ${REINPLACE_CMD} -e 's|share/man/man1|man/man1|' \ + ${WRKSRC}/client/X11/CMakeLists.txt .include <bsd.port.mk> diff --git a/net/freerdp/distinfo b/net/freerdp/distinfo index 3d5996469b4b..601a1f7cca33 100644 --- a/net/freerdp/distinfo +++ b/net/freerdp/distinfo @@ -1,2 +1,2 @@ -SHA256 (freerdp-0.8.2.tar.gz) = 389a707b491bd1905c8395ede3df61ac73a55d866f8a56354c6442c23c8730e1 -SIZE (freerdp-0.8.2.tar.gz) = 936410 +SHA256 (freerdp-1.0.2.tar.gz) = 0b12eca36a97327a3202866a08a3afef645e4e4534dfca2138449246fac4ff6a +SIZE (freerdp-1.0.2.tar.gz) = 3506618 diff --git a/net/freerdp/files/patch-cmake_FindFFmpeg.cmake b/net/freerdp/files/patch-cmake_FindFFmpeg.cmake new file mode 100644 index 000000000000..ee2c89c26693 --- /dev/null +++ b/net/freerdp/files/patch-cmake_FindFFmpeg.cmake @@ -0,0 +1,26 @@ +--- cmake/FindFFmpeg.cmake.orig 2013-03-07 10:38:36.747254870 +0000 ++++ cmake/FindFFmpeg.cmake 2013-03-07 10:42:07.891253483 +0000 +@@ -8,19 +8,19 @@ + include(FindPkgConfig) + + if (PKG_CONFIG_FOUND) +- pkg_check_modules(AVCODEC libavcodec) +- pkg_check_modules(AVUTIL libavutil) ++ pkg_check_modules(AVCODEC libavcodec-devel) ++ pkg_check_modules(AVUTIL libavutil-devel) + endif ( PKG_CONFIG_FOUND ) + + # avcodec + find_path(AVCODEC_INCLUDE_DIR avcodec.h PATHS ${AVCODEC_INCLUDE_DIRS} + PATH_SUFFIXES libavcodec ) +-find_library(AVCODEC_LIBRARY avcodec PATHS ${AVCODEC_LIBRARY_DIRS}) ++find_library(AVCODEC_LIBRARY avcodec-devel PATHS ${AVCODEC_LIBRARY_DIRS}) + + # avutil + find_path(AVUTIL_INCLUDE_DIR avutil.h PATHS ${AVUTIL_INCLUDE_DIRS} + PATH_SUFFIXES libavutil ) +-find_library(AVUTIL_LIBRARY avutil PATHS ${AVUTIL_LIBRARY_DIRS}) ++find_library(AVUTIL_LIBRARY avutil-devel PATHS ${AVUTIL_LIBRARY_DIRS}) + + if(AVCODEC_INCLUDE_DIR AND AVCODEC_LIBRARY) + set(AVCODEC_FOUND TRUE) diff --git a/net/freerdp/files/patch-libfreerdp-codec_CMakeLists.txt b/net/freerdp/files/patch-libfreerdp-codec_CMakeLists.txt new file mode 100644 index 000000000000..0cc797abfd83 --- /dev/null +++ b/net/freerdp/files/patch-libfreerdp-codec_CMakeLists.txt @@ -0,0 +1,11 @@ +--- libfreerdp-codec/CMakeLists.txt.orig 2013-01-02 21:46:59.000000000 +0000 ++++ libfreerdp-codec/CMakeLists.txt 2013-02-27 09:09:10.180252424 +0000 +@@ -46,7 +46,7 @@ + rfx_sse2.c + rfx_sse2.h + ) +- set_property(SOURCE rfx_sse2.c PROPERTY COMPILE_FLAGS "-msse2") ++ set_property(SOURCE rfx_sse2.c nsc_sse2.c PROPERTY COMPILE_FLAGS "-msse2") + endif() + + if(WITH_NEON) diff --git a/net/freerdp/files/patch-libfreerdp-codec_color.c b/net/freerdp/files/patch-libfreerdp-codec_color.c new file mode 100644 index 000000000000..7dd14a9184b1 --- /dev/null +++ b/net/freerdp/files/patch-libfreerdp-codec_color.c @@ -0,0 +1,40 @@ +diff --git a/libfreerdp-codec/color.c b/libfreerdp-codec/color.c +index dc77707..ee3c1fa 100644 +--- libfreerdp-codec/color.c ++++ libfreerdp-codec/color.c +@@ -86,7 +86,7 @@ void freerdp_set_pixel(uint8* data, int x, int y, int width, int height, int bpp + } + } + +-INLINE void freerdp_color_split_rgb(uint32* color, int bpp, uint8* red, uint8* green, uint8* blue, uint8* alpha, HCLRCONV clrconv) ++static INLINE void freerdp_color_split_rgb(uint32* color, int bpp, uint8* red, uint8* green, uint8* blue, uint8* alpha, HCLRCONV clrconv) + { + *red = *green = *blue = 0; + *alpha = (clrconv->alpha) ? 0xFF : 0x00; +@@ -137,7 +137,7 @@ INLINE void freerdp_color_split_rgb(uint32* color, int bpp, uint8* red, uint8* g + } + } + +-INLINE void freerdp_color_split_bgr(uint32* color, int bpp, uint8* red, uint8* green, uint8* blue, uint8* alpha, HCLRCONV clrconv) ++static INLINE void freerdp_color_split_bgr(uint32* color, int bpp, uint8* red, uint8* green, uint8* blue, uint8* alpha, HCLRCONV clrconv) + { + *red = *green = *blue = 0; + *alpha = (clrconv->alpha) ? 0xFF : 0x00; +@@ -188,7 +188,7 @@ INLINE void freerdp_color_split_bgr(uint32* color, int bpp, uint8* red, uint8* g + } + } + +-INLINE void freerdp_color_make_rgb(uint32* color, int bpp, uint8* red, uint8* green, uint8* blue, uint8* alpha, HCLRCONV clrconv) ++static INLINE void freerdp_color_make_rgb(uint32* color, int bpp, uint8* red, uint8* green, uint8* blue, uint8* alpha, HCLRCONV clrconv) + { + switch (bpp) + { +@@ -229,7 +229,7 @@ INLINE void freerdp_color_make_rgb(uint32* color, int bpp, uint8* red, uint8* gr + } + } + +-INLINE void freerdp_color_make_bgr(uint32* color, int bpp, uint8* red, uint8* green, uint8* blue, uint8* alpha, HCLRCONV clrconv) ++static INLINE void freerdp_color_make_bgr(uint32* color, int bpp, uint8* red, uint8* green, uint8* blue, uint8* alpha, HCLRCONV clrconv) + { + switch (bpp) + { diff --git a/net/freerdp/files/patch-libfreerdp-core_fastpath.c b/net/freerdp/files/patch-libfreerdp-core_fastpath.c new file mode 100644 index 000000000000..09feb4a58ffa --- /dev/null +++ b/net/freerdp/files/patch-libfreerdp-core_fastpath.c @@ -0,0 +1,22 @@ +diff --git a/libfreerdp-core/fastpath.c b/libfreerdp-core/fastpath.c +index dc9caac..587c316 100644 +--- libfreerdp-core/fastpath.c ++++ libfreerdp-core/fastpath.c +@@ -82,7 +82,7 @@ uint16 fastpath_read_header(rdpFastPath* fastpath, STREAM* s) + return length; + } + +-INLINE void fastpath_read_update_header(STREAM* s, uint8* updateCode, uint8* fragmentation, uint8* compression) ++static INLINE void fastpath_read_update_header(STREAM* s, uint8* updateCode, uint8* fragmentation, uint8* compression) + { + uint8 updateHeader; + +@@ -92,7 +92,7 @@ INLINE void fastpath_read_update_header(STREAM* s, uint8* updateCode, uint8* fra + *compression = (updateHeader >> 6) & 0x03; + } + +-INLINE void fastpath_write_update_header(STREAM* s, uint8 updateCode, uint8 fragmentation, uint8 compression) ++static INLINE void fastpath_write_update_header(STREAM* s, uint8 updateCode, uint8 fragmentation, uint8 compression) + { + uint8 updateHeader = 0; + diff --git a/net/freerdp/files/patch-libfreerdp-core_orders.c b/net/freerdp/files/patch-libfreerdp-core_orders.c new file mode 100644 index 000000000000..ca4f8a27e83f --- /dev/null +++ b/net/freerdp/files/patch-libfreerdp-core_orders.c @@ -0,0 +1,121 @@ +diff --git a/libfreerdp-core/orders.c b/libfreerdp-core/orders.c +index 1ee0b89..6c33805 100644 +--- libfreerdp-core/orders.c ++++ libfreerdp-core/orders.c +@@ -138,7 +138,7 @@ static const uint8 BMF_BPP[] = + 0, 1, 0, 8, 16, 24, 32 + }; + +-INLINE void update_read_coord(STREAM* s, sint32* coord, boolean delta) ++static INLINE void update_read_coord(STREAM* s, sint32* coord, boolean delta) + { + sint8 lsi8; + sint16 lsi16; +@@ -155,7 +155,7 @@ INLINE void update_read_coord(STREAM* s, sint32* coord, boolean delta) + } + } + +-INLINE void update_read_color(STREAM* s, uint32* color) ++static INLINE void update_read_color(STREAM* s, uint32* color) + { + uint8 byte; + +@@ -167,7 +167,7 @@ INLINE void update_read_color(STREAM* s, uint32* color) + *color |= (byte << 16); + } + +-INLINE void update_read_colorref(STREAM* s, uint32* color) ++static INLINE void update_read_colorref(STREAM* s, uint32* color) + { + uint8 byte; + +@@ -180,7 +180,7 @@ INLINE void update_read_colorref(STREAM* s, uint32* color) + stream_seek_uint8(s); + } + +-INLINE void update_read_color_quad(STREAM* s, uint32* color) ++static INLINE void update_read_color_quad(STREAM* s, uint32* color) + { + uint8 byte; + +@@ -193,7 +193,7 @@ INLINE void update_read_color_quad(STREAM* s, uint32* color) + stream_seek_uint8(s); + } + +-INLINE void update_read_2byte_unsigned(STREAM* s, uint32* value) ++static INLINE void update_read_2byte_unsigned(STREAM* s, uint32* value) + { + uint8 byte; + +@@ -211,7 +211,7 @@ INLINE void update_read_2byte_unsigned(STREAM* s, uint32* value) + } + } + +-INLINE void update_read_2byte_signed(STREAM* s, sint32* value) ++static INLINE void update_read_2byte_signed(STREAM* s, sint32* value) + { + uint8 byte; + boolean negative; +@@ -232,7 +232,7 @@ INLINE void update_read_2byte_signed(STREAM* s, sint32* value) + *value *= -1; + } + +-INLINE void update_read_4byte_unsigned(STREAM* s, uint32* value) ++static INLINE void update_read_4byte_unsigned(STREAM* s, uint32* value) + { + uint8 byte; + uint8 count; +@@ -276,7 +276,7 @@ INLINE void update_read_4byte_unsigned(STREAM* s, uint32* value) + } + } + +-INLINE void update_read_delta(STREAM* s, sint32* value) ++static INLINE void update_read_delta(STREAM* s, sint32* value) + { + uint8 byte; + +@@ -294,7 +294,7 @@ INLINE void update_read_delta(STREAM* s, sint32* value) + } + } + +-INLINE void update_read_glyph_delta(STREAM* s, uint16* value) ++static INLINE void update_read_glyph_delta(STREAM* s, uint16* value) + { + uint8 byte; + +@@ -306,7 +306,7 @@ INLINE void update_read_glyph_delta(STREAM* s, uint16* value) + *value = (byte & 0x3F); + } + +-INLINE void update_seek_glyph_delta(STREAM* s) ++static INLINE void update_seek_glyph_delta(STREAM* s) + { + uint8 byte; + +@@ -316,7 +316,7 @@ INLINE void update_seek_glyph_delta(STREAM* s) + stream_seek_uint8(s); + } + +-INLINE void update_read_brush(STREAM* s, rdpBrush* brush, uint8 fieldFlags) ++static INLINE void update_read_brush(STREAM* s, rdpBrush* brush, uint8 fieldFlags) + { + if (fieldFlags & ORDER_FIELD_01) + stream_read_uint8(s, brush->x); +@@ -354,7 +354,7 @@ INLINE void update_read_brush(STREAM* s, rdpBrush* brush, uint8 fieldFlags) + } + } + +-INLINE void update_read_delta_rects(STREAM* s, DELTA_RECT* rectangles, int number) ++static INLINE void update_read_delta_rects(STREAM* s, DELTA_RECT* rectangles, int number) + { + int i; + uint8 flags = 0; +@@ -399,7 +399,7 @@ INLINE void update_read_delta_rects(STREAM* s, DELTA_RECT* rectangles, int numbe + } + } + +-INLINE void update_read_delta_points(STREAM* s, DELTA_POINT* points, int number, sint16 x, sint16 y) ++static INLINE void update_read_delta_points(STREAM* s, DELTA_POINT* points, int number, sint16 x, sint16 y) + { + int i; + uint8 flags = 0; diff --git a/net/freerdp/files/patch-libfreerdp-gdi_16bpp.c b/net/freerdp/files/patch-libfreerdp-gdi_16bpp.c new file mode 100644 index 000000000000..c69ea3dbd195 --- /dev/null +++ b/net/freerdp/files/patch-libfreerdp-gdi_16bpp.c @@ -0,0 +1,117 @@ +diff --git a/libfreerdp-gdi/16bpp.c b/libfreerdp-gdi/16bpp.c +index 22b0009..46ca0df 100644 +--- libfreerdp-gdi/16bpp.c ++++ libfreerdp-gdi/16bpp.c +@@ -878,96 +878,96 @@ int PatBlt_16bpp(HGDI_DC hdc, int nXLeft, int nYLeft, int nWidth, int nHeight, i + return 1; + } + +-INLINE void SetPixel_BLACK_16bpp(uint16 *pixel, uint16 *pen) ++static INLINE void SetPixel_BLACK_16bpp(uint16 *pixel, uint16 *pen) + { + /* D = 0 */ + *pixel = 0; + } + +-INLINE void SetPixel_NOTMERGEPEN_16bpp(uint16 *pixel, uint16 *pen) ++static INLINE void SetPixel_NOTMERGEPEN_16bpp(uint16 *pixel, uint16 *pen) + { + /* D = ~(D | P) */ + *pixel = ~(*pixel | *pen); + } + +-INLINE void SetPixel_MASKNOTPEN_16bpp(uint16 *pixel, uint16 *pen) ++static INLINE void SetPixel_MASKNOTPEN_16bpp(uint16 *pixel, uint16 *pen) + { + /* D = D & ~P */ + *pixel &= ~(*pen); + } + +-INLINE void SetPixel_NOTCOPYPEN_16bpp(uint16 *pixel, uint16 *pen) ++static INLINE void SetPixel_NOTCOPYPEN_16bpp(uint16 *pixel, uint16 *pen) + { + /* D = ~P */ + *pixel = ~(*pen); + } + +-INLINE void SetPixel_MASKPENNOT_16bpp(uint16 *pixel, uint16 *pen) ++static INLINE void SetPixel_MASKPENNOT_16bpp(uint16 *pixel, uint16 *pen) + { + /* D = P & ~D */ + *pixel = *pen & ~*pixel; + } + +-INLINE void SetPixel_NOT_16bpp(uint16 *pixel, uint16 *pen) ++static INLINE void SetPixel_NOT_16bpp(uint16 *pixel, uint16 *pen) + { + /* D = ~D */ + *pixel = ~(*pixel); + } + +-INLINE void SetPixel_XORPEN_16bpp(uint16 *pixel, uint16 *pen) ++static INLINE void SetPixel_XORPEN_16bpp(uint16 *pixel, uint16 *pen) + { + /* D = D ^ P */ + *pixel = *pixel ^ *pen; + } + +-INLINE void SetPixel_NOTMASKPEN_16bpp(uint16 *pixel, uint16 *pen) ++static INLINE void SetPixel_NOTMASKPEN_16bpp(uint16 *pixel, uint16 *pen) + { + /* D = ~(D & P) */ + *pixel = ~(*pixel & *pen); + } + +-INLINE void SetPixel_MASKPEN_16bpp(uint16 *pixel, uint16 *pen) ++static INLINE void SetPixel_MASKPEN_16bpp(uint16 *pixel, uint16 *pen) + { + /* D = D & P */ + *pixel &= *pen; + } + +-INLINE void SetPixel_NOTXORPEN_16bpp(uint16 *pixel, uint16 *pen) ++static INLINE void SetPixel_NOTXORPEN_16bpp(uint16 *pixel, uint16 *pen) + { + /* D = ~(D ^ P) */ + *pixel = ~(*pixel ^ *pen); + } + +-INLINE void SetPixel_NOP_16bpp(uint16 *pixel, uint16 *pen) ++static INLINE void SetPixel_NOP_16bpp(uint16 *pixel, uint16 *pen) + { + /* D = D */ + } + +-INLINE void SetPixel_MERGENOTPEN_16bpp(uint16 *pixel, uint16 *pen) ++static INLINE void SetPixel_MERGENOTPEN_16bpp(uint16 *pixel, uint16 *pen) + { + /* D = D | ~P */ + *pixel |= ~(*pen); + } + +-INLINE void SetPixel_COPYPEN_16bpp(uint16 *pixel, uint16 *pen) ++static INLINE void SetPixel_COPYPEN_16bpp(uint16 *pixel, uint16 *pen) + { + /* D = P */ + *pixel = *pen; + } + +-INLINE void SetPixel_MERGEPENNOT_16bpp(uint16 *pixel, uint16 *pen) ++static INLINE void SetPixel_MERGEPENNOT_16bpp(uint16 *pixel, uint16 *pen) + { + /* D = P | ~D */ + *pixel = *pen | ~(*pixel); + } + +-INLINE void SetPixel_MERGEPEN_16bpp(uint16 *pixel, uint16 *pen) ++static INLINE void SetPixel_MERGEPEN_16bpp(uint16 *pixel, uint16 *pen) + { + /* D = P | D */ + *pixel |= *pen; + } + +-INLINE void SetPixel_WHITE_16bpp(uint16 *pixel, uint16 *pen) ++static INLINE void SetPixel_WHITE_16bpp(uint16 *pixel, uint16 *pen) + { + /* D = 1 */ + *pixel = 0xFFFF; diff --git a/net/freerdp/files/patch-libfreerdp-gdi_32bpp.c b/net/freerdp/files/patch-libfreerdp-gdi_32bpp.c new file mode 100644 index 000000000000..1a7877820c67 --- /dev/null +++ b/net/freerdp/files/patch-libfreerdp-gdi_32bpp.c @@ -0,0 +1,117 @@ +diff --git a/libfreerdp-gdi/32bpp.c b/libfreerdp-gdi/32bpp.c +index 8ed8553..0d5fbd2 100644 +--- libfreerdp-gdi/32bpp.c ++++ libfreerdp-gdi/32bpp.c +@@ -920,96 +920,96 @@ int PatBlt_32bpp(HGDI_DC hdc, int nXLeft, int nYLeft, int nWidth, int nHeight, i + return 1; + } + +-INLINE void SetPixel_BLACK_32bpp(uint32* pixel, uint32* pen) ++static INLINE void SetPixel_BLACK_32bpp(uint32* pixel, uint32* pen) + { + /* D = 0 */ + *pixel = 0; + } + +-INLINE void SetPixel_NOTMERGEPEN_32bpp(uint32* pixel, uint32* pen) ++static INLINE void SetPixel_NOTMERGEPEN_32bpp(uint32* pixel, uint32* pen) + { + /* D = ~(D | P) */ + *pixel = ~(*pixel | *pen); + } + +-INLINE void SetPixel_MASKNOTPEN_32bpp(uint32* pixel, uint32* pen) ++static INLINE void SetPixel_MASKNOTPEN_32bpp(uint32* pixel, uint32* pen) + { + /* D = D & ~P */ + *pixel &= ~(*pen); + } + +-INLINE void SetPixel_NOTCOPYPEN_32bpp(uint32* pixel, uint32* pen) ++static INLINE void SetPixel_NOTCOPYPEN_32bpp(uint32* pixel, uint32* pen) + { + /* D = ~P */ + *pixel = ~(*pen); + } + +-INLINE void SetPixel_MASKPENNOT_32bpp(uint32* pixel, uint32* pen) ++static INLINE void SetPixel_MASKPENNOT_32bpp(uint32* pixel, uint32* pen) + { + /* D = P & ~D */ + *pixel = *pen & ~*pixel; + } + +-INLINE void SetPixel_NOT_32bpp(uint32* pixel, uint32* pen) ++static INLINE void SetPixel_NOT_32bpp(uint32* pixel, uint32* pen) + { + /* D = ~D */ + *pixel = ~(*pixel); + } + +-INLINE void SetPixel_XORPEN_32bpp(uint32* pixel, uint32* pen) ++static INLINE void SetPixel_XORPEN_32bpp(uint32* pixel, uint32* pen) + { + /* D = D ^ P */ + *pixel = *pixel ^ *pen; + } + +-INLINE void SetPixel_NOTMASKPEN_32bpp(uint32* pixel, uint32* pen) ++static INLINE void SetPixel_NOTMASKPEN_32bpp(uint32* pixel, uint32* pen) + { + /* D = ~(D & P) */ + *pixel = ~(*pixel & *pen); + } + +-INLINE void SetPixel_MASKPEN_32bpp(uint32* pixel, uint32* pen) ++static INLINE void SetPixel_MASKPEN_32bpp(uint32* pixel, uint32* pen) + { + /* D = D & P */ + *pixel &= *pen; + } + +-INLINE void SetPixel_NOTXORPEN_32bpp(uint32* pixel, uint32* pen) ++static INLINE void SetPixel_NOTXORPEN_32bpp(uint32* pixel, uint32* pen) + { + /* D = ~(D ^ P) */ + *pixel = ~(*pixel ^ *pen); + } + +-INLINE void SetPixel_NOP_32bpp(uint32* pixel, uint32* pen) ++static INLINE void SetPixel_NOP_32bpp(uint32* pixel, uint32* pen) + { + /* D = D */ + } + +-INLINE void SetPixel_MERGENOTPEN_32bpp(uint32* pixel, uint32* pen) ++static INLINE void SetPixel_MERGENOTPEN_32bpp(uint32* pixel, uint32* pen) + { + /* D = D | ~P */ + *pixel |= ~(*pen); + } + +-INLINE void SetPixel_COPYPEN_32bpp(uint32* pixel, uint32* pen) ++static INLINE void SetPixel_COPYPEN_32bpp(uint32* pixel, uint32* pen) + { + /* D = P */ + *pixel = *pen; + } + +-INLINE void SetPixel_MERGEPENNOT_32bpp(uint32* pixel, uint32* pen) ++static INLINE void SetPixel_MERGEPENNOT_32bpp(uint32* pixel, uint32* pen) + { + /* D = P | ~D */ + *pixel = *pen | ~(*pixel); + } + +-INLINE void SetPixel_MERGEPEN_32bpp(uint32* pixel, uint32* pen) ++static INLINE void SetPixel_MERGEPEN_32bpp(uint32* pixel, uint32* pen) + { + /* D = P | D */ + *pixel |= *pen; + } + +-INLINE void SetPixel_WHITE_32bpp(uint32* pixel, uint32* pen) ++static INLINE void SetPixel_WHITE_32bpp(uint32* pixel, uint32* pen) + { + /* D = 1 */ + *pixel = 0xFFFFFF; diff --git a/net/freerdp/files/patch-libfreerdp-gdi_8bpp.c b/net/freerdp/files/patch-libfreerdp-gdi_8bpp.c new file mode 100644 index 000000000000..df60570b59f2 --- /dev/null +++ b/net/freerdp/files/patch-libfreerdp-gdi_8bpp.c @@ -0,0 +1,117 @@ +diff --git a/libfreerdp-gdi/8bpp.c b/libfreerdp-gdi/8bpp.c +index e10dde4..bddf327 100644 +--- libfreerdp-gdi/8bpp.c ++++ libfreerdp-gdi/8bpp.c +@@ -793,96 +793,96 @@ int PatBlt_8bpp(HGDI_DC hdc, int nXLeft, int nYLeft, int nWidth, int nHeight, in + return 1; + } + +-INLINE void SetPixel_BLACK_8bpp(uint8* pixel, uint8* pen) ++static INLINE void SetPixel_BLACK_8bpp(uint8* pixel, uint8* pen) + { + /* D = 0 */ + *pixel = 0; + } + +-INLINE void SetPixel_NOTMERGEPEN_8bpp(uint8* pixel, uint8* pen) ++static INLINE void SetPixel_NOTMERGEPEN_8bpp(uint8* pixel, uint8* pen) + { + /* D = ~(D | P) */ + *pixel = ~(*pixel | *pen); + } + +-INLINE void SetPixel_MASKNOTPEN_8bpp(uint8* pixel, uint8* pen) ++static INLINE void SetPixel_MASKNOTPEN_8bpp(uint8* pixel, uint8* pen) + { + /* D = D & ~P */ + *pixel &= ~(*pen); + } + +-INLINE void SetPixel_NOTCOPYPEN_8bpp(uint8* pixel, uint8* pen) ++static INLINE void SetPixel_NOTCOPYPEN_8bpp(uint8* pixel, uint8* pen) + { + /* D = ~P */ + *pixel = ~(*pen); + } + +-INLINE void SetPixel_MASKPENNOT_8bpp(uint8* pixel, uint8* pen) ++static INLINE void SetPixel_MASKPENNOT_8bpp(uint8* pixel, uint8* pen) + { + /* D = P & ~D */ + *pixel = *pen & ~*pixel; + } + +-INLINE void SetPixel_NOT_8bpp(uint8* pixel, uint8* pen) ++static INLINE void SetPixel_NOT_8bpp(uint8* pixel, uint8* pen) + { + /* D = ~D */ + *pixel = ~(*pixel); + } + +-INLINE void SetPixel_XORPEN_8bpp(uint8* pixel, uint8* pen) ++static INLINE void SetPixel_XORPEN_8bpp(uint8* pixel, uint8* pen) + { + /* D = D ^ P */ + *pixel = *pixel ^ *pen; + } + +-INLINE void SetPixel_NOTMASKPEN_8bpp(uint8* pixel, uint8* pen) ++static INLINE void SetPixel_NOTMASKPEN_8bpp(uint8* pixel, uint8* pen) + { + /* D = ~(D & P) */ + *pixel = ~(*pixel & *pen); + } + +-INLINE void SetPixel_MASKPEN_8bpp(uint8* pixel, uint8* pen) ++static INLINE void SetPixel_MASKPEN_8bpp(uint8* pixel, uint8* pen) + { + /* D = D & P */ + *pixel &= *pen; + } + +-INLINE void SetPixel_NOTXORPEN_8bpp(uint8* pixel, uint8* pen) ++static INLINE void SetPixel_NOTXORPEN_8bpp(uint8* pixel, uint8* pen) + { + /* D = ~(D ^ P) */ + *pixel = ~(*pixel ^ *pen); + } + +-INLINE void SetPixel_NOP_8bpp(uint8* pixel, uint8* pen) ++static INLINE void SetPixel_NOP_8bpp(uint8* pixel, uint8* pen) + { + /* D = D */ + } + +-INLINE void SetPixel_MERGENOTPEN_8bpp(uint8* pixel, uint8* pen) ++static INLINE void SetPixel_MERGENOTPEN_8bpp(uint8* pixel, uint8* pen) + { + /* D = D | ~P */ + *pixel |= ~(*pen); + } + +-INLINE void SetPixel_COPYPEN_8bpp(uint8* pixel, uint8* pen) ++static INLINE void SetPixel_COPYPEN_8bpp(uint8* pixel, uint8* pen) + { + /* D = P */ + *pixel = *pen; + } + +-INLINE void SetPixel_MERGEPENNOT_8bpp(uint8* pixel, uint8* pen) ++static INLINE void SetPixel_MERGEPENNOT_8bpp(uint8* pixel, uint8* pen) + { + /* D = P | ~D */ + *pixel = *pen | ~(*pixel); + } + +-INLINE void SetPixel_MERGEPEN_8bpp(uint8* pixel, uint8* pen) ++static INLINE void SetPixel_MERGEPEN_8bpp(uint8* pixel, uint8* pen) + { + /* D = P | D */ + *pixel |= *pen; + } + +-INLINE void SetPixel_WHITE_8bpp(uint8* pixel, uint8* pen) ++static INLINE void SetPixel_WHITE_8bpp(uint8* pixel, uint8* pen) + { + /* D = 1 */ + *pixel = 0xFF; diff --git a/net/freerdp/pkg-descr b/net/freerdp/pkg-descr index 73d0eca5458e..c40b0cc19a5c 100644 --- a/net/freerdp/pkg-descr +++ b/net/freerdp/pkg-descr @@ -1,13 +1,6 @@ -FreeRDP is a fork of the rdesktop project that intends to rapidly start moving -forward and implement features that rdesktop lacks the most. - -Improvements: - - * Support for cursors on Windows Server 2008 R2 - * Support for bitmap caching, which provides a good performance boost - * Support for Windows Server 2008 Terminal Services Session Broker Load - Balancing - * New keyboard input system based on the XKB database, providing better support - for international keyboards +FreeRDP is a free implementation of the Remote Desktop Protocol (RDP), +released under the Apache license. Enjoy the freedom of using your +software wherever you want, the way you want it, in a world where +interoperability can finally liberate your computing experience. WWW: http://www.freerdp.com/ diff --git a/net/freerdp/pkg-plist b/net/freerdp/pkg-plist index 7b74cc1ff267..919595087f37 100644 --- a/net/freerdp/pkg-plist +++ b/net/freerdp/pkg-plist @@ -1,59 +1,133 @@ -%%X11%%bin/xfreerdp -include/freerdp/chanman.h -include/freerdp/constants_ui.h -include/freerdp/constants_vchan.h +%%DIRECTFB%%bin/dfreerdp +bin/xfreerdp +include/freerdp/altsec.h +include/freerdp/api.h +include/freerdp/cache/bitmap.h +include/freerdp/cache/brush.h +include/freerdp/cache/cache.h +include/freerdp/cache/glyph.h +include/freerdp/cache/offscreen.h +include/freerdp/cache/palette.h +include/freerdp/cache/pointer.h +include/freerdp/channels/channels.h +include/freerdp/channels/wtsvc.h +include/freerdp/codec/bitmap.h +include/freerdp/codec/color.h +include/freerdp/codec/nsc.h +include/freerdp/codec/rfx.h +include/freerdp/constants.h include/freerdp/dvc.h +include/freerdp/extension.h include/freerdp/freerdp.h -include/freerdp/kbd.h -include/freerdp/rdpset.h -include/freerdp/types_ui.h -include/freerdp/vchan.h -lib/freerdp/audin.a -lib/freerdp/audin.la +include/freerdp/gdi/16bpp.h +include/freerdp/gdi/32bpp.h +include/freerdp/gdi/8bpp.h +include/freerdp/gdi/bitmap.h +include/freerdp/gdi/brush.h +include/freerdp/gdi/clipping.h +include/freerdp/gdi/dc.h +include/freerdp/gdi/drawing.h +include/freerdp/gdi/gdi.h +include/freerdp/gdi/line.h +include/freerdp/gdi/palette.h +include/freerdp/gdi/pen.h +include/freerdp/gdi/region.h +include/freerdp/gdi/shape.h +include/freerdp/graphics.h +include/freerdp/input.h +include/freerdp/kbd/kbd.h +include/freerdp/kbd/layouts.h +include/freerdp/kbd/locales.h +include/freerdp/kbd/vkcodes.h +include/freerdp/listener.h +include/freerdp/peer.h +include/freerdp/plugins/cliprdr.h +include/freerdp/plugins/tsmf.h +include/freerdp/pointer.h +include/freerdp/primary.h +include/freerdp/rail.h +include/freerdp/rail/icon.h +include/freerdp/rail/rail.h +include/freerdp/rail/window.h +include/freerdp/rail/window_list.h +include/freerdp/secondary.h +include/freerdp/settings.h +include/freerdp/svc.h +include/freerdp/types.h +include/freerdp/update.h +include/freerdp/utils/args.h +include/freerdp/utils/bitmap.h +include/freerdp/utils/blob.h +include/freerdp/utils/debug.h +include/freerdp/utils/dsp.h +include/freerdp/utils/event.h +include/freerdp/utils/file.h +include/freerdp/utils/hexdump.h +include/freerdp/utils/list.h +include/freerdp/utils/load_plugin.h +include/freerdp/utils/memory.h +include/freerdp/utils/mutex.h +include/freerdp/utils/passphrase.h +include/freerdp/utils/pcap.h +include/freerdp/utils/print.h +include/freerdp/utils/profiler.h +include/freerdp/utils/rail.h +include/freerdp/utils/rect.h +include/freerdp/utils/registry.h +include/freerdp/utils/semaphore.h +include/freerdp/utils/signal.h +include/freerdp/utils/sleep.h +include/freerdp/utils/stopwatch.h +include/freerdp/utils/stream.h +include/freerdp/utils/string.h +include/freerdp/utils/svc_plugin.h +include/freerdp/utils/thread.h +include/freerdp/utils/unicode.h +include/freerdp/utils/wait_obj.h +include/freerdp/window.h +%%ALSA%%lib/freerdp/audin_alsa.so +%%ALSA%%lib/freerdp/tsmf_alsa.so +%%ALSA%%lib/freerdp/rdpsnd_alsa.so +%%PULSE%%lib/freerdp/audin_pulse.so +%%PULSE%%lib/freerdp/rdpsnd_pulse.so +%%PULSE%%lib/freerdp/tsmf_pulse.so +%%FFMPEG%%lib/freerdp/tsmf_ffmpeg.so lib/freerdp/audin.so -lib/freerdp/cliprdr.a -lib/freerdp/cliprdr.la lib/freerdp/cliprdr.so -lib/freerdp/disk.a -lib/freerdp/disk.la lib/freerdp/disk.so -lib/freerdp/drdynvc.a -lib/freerdp/drdynvc.la lib/freerdp/drdynvc.so -lib/freerdp/parallel.a -lib/freerdp/parallel.la lib/freerdp/parallel.so -lib/freerdp/pnpdr.a -lib/freerdp/pnpdr.la -lib/freerdp/pnpdr.so -lib/freerdp/printer.a -lib/freerdp/printer.la lib/freerdp/printer.so -lib/freerdp/rdpdr.a -lib/freerdp/rdpdr.la +lib/freerdp/rail.so +lib/freerdp/rdpdbg.so lib/freerdp/rdpdr.so -%%SOUND%%lib/freerdp/rdpsnd.a -%%SOUND%%lib/freerdp/rdpsnd.la -%%SOUND%%lib/freerdp/rdpsnd.so -lib/freerdp/serial.a -lib/freerdp/serial.la +lib/freerdp/rdpsnd.so lib/freerdp/serial.so -lib/libfreerdp.a -lib/libfreerdp.la -lib/libfreerdp.so -lib/libfreerdp.so.0 -lib/libfreerdpchanman.a -lib/libfreerdpchanman.la -lib/libfreerdpchanman.so -lib/libfreerdpchanman.so.0 -lib/libfreerdpgdi.a -lib/libfreerdpgdi.la -lib/libfreerdpgdi.so -lib/libfreerdpgdi.so.0 -lib/libfreerdpkbd.a -lib/libfreerdpkbd.la -lib/libfreerdpkbd.so -lib/libfreerdpkbd.so.0 +lib/freerdp/tsmf.so +lib/libfreerdp-cache.so +lib/libfreerdp-cache.so.1.0 +lib/libfreerdp-cache.so.1.0.2 +lib/libfreerdp-channels.so +lib/libfreerdp-channels.so.1.0 +lib/libfreerdp-channels.so.1.0.2 +lib/libfreerdp-codec.so +lib/libfreerdp-codec.so.1.0 +lib/libfreerdp-codec.so.1.0.2 +lib/libfreerdp-core.so +lib/libfreerdp-core.so.1.0 +lib/libfreerdp-core.so.1.0.2 +lib/libfreerdp-gdi.so +lib/libfreerdp-gdi.so.1.0 +lib/libfreerdp-gdi.so.1.0.2 +lib/libfreerdp-kbd.so +lib/libfreerdp-kbd.so.1.0 +lib/libfreerdp-kbd.so.1.0.2 +lib/libfreerdp-rail.so +lib/libfreerdp-rail.so.1.0 +lib/libfreerdp-rail.so.1.0.2 +lib/libfreerdp-utils.so +lib/libfreerdp-utils.so.1.0 +lib/libfreerdp-utils.so.1.0.2 libdata/pkgconfig/freerdp.pc %%DATADIR%%/keymaps/aliases %%DATADIR%%/keymaps/amiga @@ -66,6 +140,7 @@ libdata/pkgconfig/freerdp.pc %%DATADIR%%/keymaps/hp %%DATADIR%%/keymaps/ibm %%DATADIR%%/keymaps/macintosh +%%DATADIR%%/keymaps/macosx %%DATADIR%%/keymaps/sgi_vndr/indigo %%DATADIR%%/keymaps/sgi_vndr/indy %%DATADIR%%/keymaps/sgi_vndr/iris @@ -73,9 +148,18 @@ libdata/pkgconfig/freerdp.pc %%DATADIR%%/keymaps/sun %%DATADIR%%/keymaps/xfree86 %%DATADIR%%/keymaps/xfree98 -@dirrm include/freerdp -@dirrm lib/freerdp -@dirrm %%DATADIR%%/keymaps/sgi_vndr -@dirrm %%DATADIR%%/keymaps/digital_vndr -@dirrm %%DATADIR%%/keymaps -@dirrm %%DATADIR%% +%%DATADIR%%/keymaps/xkb.pl +@dirrmtry include/freerdp/utils +@dirrmtry include/freerdp/channels +@dirrmtry include/freerdp/cache +@dirrmtry include/freerdp/gdi +@dirrmtry include/freerdp/kbd +@dirrmtry include/freerdp/rail +@dirrmtry include/freerdp/codec +@dirrmtry include/freerdp/plugins +@dirrmtry include/freerdp +@dirrmtry lib/freerdp +@dirrmtry %%DATADIR%%/keymaps/digital_vndr +@dirrmtry %%DATADIR%%/keymaps/sgi_vndr +@dirrmtry %%DATADIR%%/keymaps +@dirrmtry %%DATADIR%% |