aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAric Belsito <lluixhi@gmail.com>2016-11-26 15:17:09 -0800
committerAric Belsito <lluixhi@gmail.com>2016-11-26 15:17:09 -0800
commitacbf0c64d8fd73e3cf48f8aeb09771effdde31b1 (patch)
tree820823250ba68e256e464e39d387aedc4cab7bd3 /net-misc
parentsys-fs/f2fs-tools: Add stable and unstable. (diff)
downloadmusl-acbf0c64d8fd73e3cf48f8aeb09771effdde31b1.tar.gz
musl-acbf0c64d8fd73e3cf48f8aeb09771effdde31b1.tar.bz2
musl-acbf0c64d8fd73e3cf48f8aeb09771effdde31b1.zip
net-misc/freerdp: Add stable version.
Some musl specific issues, expects the system to have sys/queue.h
Diffstat (limited to 'net-misc')
-rw-r--r--net-misc/freerdp/Manifest7
-rw-r--r--net-misc/freerdp/files/1.2.1-gstreamer.patch71
-rw-r--r--net-misc/freerdp/files/freerdp-armfp.patch84
-rw-r--r--net-misc/freerdp/files/freerdp-ffmpeg29.patch42
-rw-r--r--net-misc/freerdp/files/freerdp-musl.patch48
-rw-r--r--net-misc/freerdp/freerdp-1.2.1_pre20150326-r1.ebuild115
-rw-r--r--net-misc/freerdp/metadata.xml15
7 files changed, 382 insertions, 0 deletions
diff --git a/net-misc/freerdp/Manifest b/net-misc/freerdp/Manifest
new file mode 100644
index 00000000..8652b690
--- /dev/null
+++ b/net-misc/freerdp/Manifest
@@ -0,0 +1,7 @@
+AUX 1.2.1-gstreamer.patch 3675 SHA256 1834db2d676c562192d9821050794e853d581bdad3520d6e176bf8d795595120 SHA512 758675e9f9292acc9877c37e240c8144a2e4f2f0440f9a75b64895f0f8514bb991cab4295250107b85df2058f07988c93f399690c8e06dbcfcb023d9dfde921e WHIRLPOOL 984e7c6b6f5da0e2d70025d57373d8029e3494e9ec3b511ad4d00c1535ecc9d856572b25fbcce0668440cc7376bae23d7a7b9a8c73693fc91b74ed0852826150
+AUX freerdp-armfp.patch 2930 SHA256 c23833cf722098cc0f74a6c130c30e57ead3effd3a04a6b4206f2aa887ace6e7 SHA512 57dd03e82b822fed95a5379aa79ada99910ef6c2a9cfaab1dc721181f76aa249d839576d31aa83e3568a37abc5b81a3ff8c5c2d0d15e6a5e457d254660581a48 WHIRLPOOL 546448549b20e4a4b81c2cba4a4db92d9c971a070ff5d21ef9c6db22bd67157a6eb8b54901e038876926fa6a7d8f9208185580214132c91ce460b417be0b0af9
+AUX freerdp-ffmpeg29.patch 1778 SHA256 34495290e5b3a49c0028ad755fab86d7cb86d5c28c0008d52681458b5bbd38ee SHA512 c58acc5ddab34fe664d38649b7271ad793430cb1c9ad8e6b78f1924a8b70e1b8d76c426fb633cf6dd97fe3277664649fd7254e2e4377330c64234d23f1b26fd1 WHIRLPOOL 7473fbe86dc56c0f7d57a68a6b06b1cfa2058e844eff228f9d8c41cc6e54ed72ae57b67b80dd6069e157d94a74eac2b57f1f442cc63222431771d8f1eedae152
+AUX freerdp-musl.patch 2215 SHA256 57022041307d6752e014dd2385b8a5c1ff716589b38a811555b6199cffdb2704 SHA512 b519ca028486961fe057d8d42e8734e95eb266ac211d1d180956b9ca5a9872d227ca11565fb2f26f738848f4aa9207759e86a07263b9cbd03d0825c86bae3325 WHIRLPOOL 878c57f36221e5fd7448bf9dcb4540414a94512331bf7a1fd29ddf4c6b1442e5c30f9b03aee23565129ab39858edbd37509e096157fc3bf3a5d0660e05c74339
+DIST freerdp-1.2.1_pre20150326.tar.gz 6146857 SHA256 c0646f224ea30a485e165fb31eb8a039af2ca3f257cdf784b319e1b5c13e0425 SHA512 ca1499d56ecb9c9bc624de2ecc976eb9633b795050ac01e16fcc9e0a8951d274cc63644a0e2b830e75f66de894f6a22274864fd20a9351834f6d664874e65ec8 WHIRLPOOL 1ff6ce70d454a7e0cbb3cd4fbafe1fb4191dadc3b2f8a6dbff10d8c725b8fc2838a863837d9b01f6daa670483fe40266fb57569904ad8ac8503549d6605c9e64
+EBUILD freerdp-1.2.1_pre20150326-r1.ebuild 2840 SHA256 70b5af4c4f6371a2134c0d1f575f9371a7b9b95aeaf2c3914e95c29a122b08c2 SHA512 6237e70fe059f6c93d57d2fabe0e7c21cd5e0883c82f973f4cfb02f909b3098ff8aada7793064370b61e907ac1ecd424579d77bf449dd4528b07e9cddaabd478 WHIRLPOOL 085acc6aaa5d1f4cb607b0c65be76dececa23f53369c0fc9a97a3b1cf1bf92cf283a4b7d6a1ca3b517ec8e6aaa57117926b14c61631b8a718dcb67fceb204688
+MISC metadata.xml 459 SHA256 4563bd423d6adeabd391d8db063fe692cfeeedd78ecf1ff254ab5099697fc2f8 SHA512 80802a9f78e1438de0bbc396a0d1d4534e49a9519413b12bacceadcf20d52b7ff4c3a13e70627a78dc9a71f89f4c46f01d8c2f30bd39003ca78d99cf43e49dd7 WHIRLPOOL fd9d9b714a864de10e3efe694bdbd6eee674bf252004e8cb5422e8cc890025f0efa1a128fc53fe45801551b640dc931b767173ccbfc421ac23d7b46cb70d659e
diff --git a/net-misc/freerdp/files/1.2.1-gstreamer.patch b/net-misc/freerdp/files/1.2.1-gstreamer.patch
new file mode 100644
index 00000000..cafe9702
--- /dev/null
+++ b/net-misc/freerdp/files/1.2.1-gstreamer.patch
@@ -0,0 +1,71 @@
+From bea27fd919b64ee8d97996409e279e1e83d13594 Mon Sep 17 00:00:00 2001
+From: Jean-Louis Dupond <jean-louis@dupond.be>
+Date: Sun, 4 Oct 2015 18:17:33 +0200
+Subject: [PATCH] FindGStreamer_1_0: fix build failure for new gstreamer
+ versions
+
+---
+ cmake/FindGStreamer_1_0.cmake | 30 +++++++++++++++---------------
+ 1 file changed, 15 insertions(+), 15 deletions(-)
+
+diff --git a/cmake/FindGStreamer_1_0.cmake b/cmake/FindGStreamer_1_0.cmake
+index f7bf990..3aa8fc6 100644
+--- a/cmake/FindGStreamer_1_0.cmake
++++ b/cmake/FindGStreamer_1_0.cmake
+@@ -53,17 +53,17 @@ set(GSTREAMER_1_0_MINIMUM_VERSION 1.0.5)
+ # Helper macro to find a Gstreamer plugin (or Gstreamer itself)
+ # _component_prefix is prepended to the _INCLUDE_DIRS and _LIBRARIES variables (eg. "GSTREAMER_1_0_AUDIO")
+ # _pkgconfig_name is the component's pkg-config name (eg. "gstreamer-1.0", or "gstreamer-video-1.0").
+-# _header is the component's header, relative to the gstreamer-1.0 directory (eg. "gst/gst.h").
+ # _library is the component's library name (eg. "gstreamer-1.0" or "gstvideo-1.0")
+-macro(FIND_GSTREAMER_COMPONENT _component_prefix _pkgconfig_name _header _library)
++macro(FIND_GSTREAMER_COMPONENT _component_prefix _pkgconfig_name _library)
+ # FIXME: The QUIET keyword can be used once we require CMake 2.8.2.
+- pkg_check_modules(PC_${_component_prefix} ${_pkgconfig_name})
+
+- find_path(${_component_prefix}_INCLUDE_DIRS
+- NAMES ${_header}
+- HINTS ${PC_${_component_prefix}_INCLUDE_DIRS} ${PC_${_component_prefix}_INCLUDEDIR}
+- PATH_SUFFIXES gstreamer-1.0
+- )
++ string(REGEX MATCH "(.*)>=(.*)" _dummy "${_pkgconfig_name}")
++ if ("${CMAKE_MATCH_2}" STREQUAL "")
++ pkg_check_modules(PC_${_component_prefix} "${_pkgconfig_name} >= ${GStreamer_FIND_VERSION}")
++ else ()
++ pkg_check_modules(PC_${_component_prefix} ${_pkgconfig_name})
++ endif ()
++ set(${_component_prefix}_INCLUDE_DIRS ${PC_${_component_prefix}_INCLUDE_DIRS})
+
+ find_library(${_component_prefix}_LIBRARIES
+ NAMES ${_library} gstreamer_android
+@@ -78,8 +78,8 @@ endmacro()
+ # 1.1. Find headers and libraries
+ set(GLIB_ROOT_DIR ${GSTREAMER_1_0_ROOT_DIR})
+ find_package(Glib REQUIRED)
+-FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0 gstreamer-1.0 gst/gst.h gstreamer-1.0)
+-FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0_BASE gstreamer-base-1.0 gst/gst.h gstbase-1.0)
++FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0 gstreamer-1.0 gstreamer-1.0)
++FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0_BASE gstreamer-base-1.0 gstbase-1.0)
+
+ # 1.2. Check Gstreamer version
+ if (GSTREAMER_1_0_INCLUDE_DIRS)
+@@ -110,11 +110,11 @@ endif ()
+ # 2. Find Gstreamer plugins
+ # -------------------------
+
+-FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0_APP gstreamer-app-1.0 gst/app/gstappsink.h gstapp-1.0)
+-FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0_AUDIO gstreamer-audio-1.0 gst/audio/audio.h gstaudio-1.0)
+-FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0_FFT gstreamer-fft-1.0 gst/fft/gstfft.h gstfft-1.0)
+-FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0_PBUTILS gstreamer-pbutils-1.0 gst/pbutils/pbutils.h gstpbutils-1.0)
+-FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0_VIDEO gstreamer-video-1.0 gst/video/video.h gstvideo-1.0)
++FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0_APP gstreamer-app-1.0 gstapp-1.0)
++FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0_AUDIO gstreamer-audio-1.0 gstaudio-1.0)
++FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0_FFT gstreamer-fft-1.0 gstfft-1.0)
++FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0_PBUTILS gstreamer-pbutils-1.0 gstpbutils-1.0)
++FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0_VIDEO gstreamer-video-1.0 gstvideo-1.0)
+
+ # ------------------------------------------------
+ # 3. Process the COMPONENTS passed to FIND_PACKAGE
+--
+2.6.3
+
diff --git a/net-misc/freerdp/files/freerdp-armfp.patch b/net-misc/freerdp/files/freerdp-armfp.patch
new file mode 100644
index 00000000..1a367d56
--- /dev/null
+++ b/net-misc/freerdp/files/freerdp-armfp.patch
@@ -0,0 +1,84 @@
+From 2355b54f8516a6e1c600df8f26ac7d56916bfd99 Mon Sep 17 00:00:00 2001
+From: Mike Gilbert <floppym@gentoo.org>
+Date: Fri, 1 May 2015 17:35:21 -0400
+Subject: [PATCH] Remove the ARM_FP_ABI option
+
+It's unclear why this option would be necessary, and it causes problems
+when people do not match it to their toolchain and CFLAGS.
+
+To set the float abi, either use a toolchain with an appropriate default
+or set the float-abi option in the CFLAGS environment variable.
+
+This should resolve #2586.
+---
+ cmake/ConfigOptions.cmake | 6 ------
+ libfreerdp/CMakeLists.txt | 4 ++--
+ packaging/deb/freerdp-nightly/rules | 7 -------
+ 3 files changed, 2 insertions(+), 15 deletions(-)
+
+diff --git a/cmake/ConfigOptions.cmake b/cmake/ConfigOptions.cmake
+index b51a46b..cef6ba6 100644
+--- a/cmake/ConfigOptions.cmake
++++ b/cmake/ConfigOptions.cmake
+@@ -29,12 +29,6 @@ if(TARGET_ARCH MATCHES "ARM")
+ else()
+ option(WITH_NEON "Enable NEON optimization." OFF)
+ endif()
+- if (NOT DEFINED ARM_FP_ABI)
+- set(ARM_FP_ABI "softfp" CACHE STRING "Floating point ABI to use on arm")
+- else()
+- set(ARM_FP_ABI ${ARM_FP_API} CACHE STRING "Floating point ABI to use on arm")
+- endif()
+- mark_as_advanced(ARM_FP_ABI)
+ else()
+ if(NOT APPLE)
+ option(WITH_IPP "Use Intel Performance Primitives." OFF)
+diff --git a/libfreerdp/CMakeLists.txt b/libfreerdp/CMakeLists.txt
+index a1cbd9d..112b75a 100644
+--- a/libfreerdp/CMakeLists.txt
++++ b/libfreerdp/CMakeLists.txt
+@@ -156,7 +156,7 @@ if(WITH_SSE2)
+ endif()
+
+ if(WITH_NEON)
+- set_source_files_properties(${CODEC_NEON_SRCS} PROPERTIES COMPILE_FLAGS "-mfpu=neon -mfloat-abi=${ARM_FP_ABI} -Wno-unused-variable" )
++ set_source_files_properties(${CODEC_NEON_SRCS} PROPERTIES COMPILE_FLAGS "-mfpu=neon -Wno-unused-variable" )
+ set(CODEC_SRCS ${CODEC_SRCS} ${CODEC_NEON_SRCS})
+ endif()
+
+@@ -236,7 +236,7 @@ if(WITH_SSE2)
+ endif()
+ elseif(WITH_NEON)
+ if(CMAKE_COMPILER_IS_GNUCC)
+- set(OPTIMIZATION "${OPTIMIZATION} -mfpu=neon -mfloat-abi=${ARM_FP_ABI}")
++ set(OPTIMIZATION "${OPTIMIZATION} -mfpu=neon")
+ endif()
+ # TODO: Add MSVC equivalent
+ endif()
+diff --git a/packaging/deb/freerdp-nightly/rules b/packaging/deb/freerdp-nightly/rules
+index 4366f63..44ceb56 100755
+--- a/packaging/deb/freerdp-nightly/rules
++++ b/packaging/deb/freerdp-nightly/rules
+@@ -1,11 +1,5 @@
+ #!/usr/bin/make -f
+
+-DEB_HOST_ARCH=$(shell dpkg-architecture -qDEB_HOST_ARCH)
+-ifneq (,$(filter armhf,$(DEB_HOST_ARCH)))
+-ARM_FLOAT_ABI = -DARM_FP_ABI=hard
+-else
+-ARM_FLOAT_ABI =
+-endif
+ NULL =
+
+ DEB_CMAKE_EXTRA_FLAGS := -DCMAKE_SKIP_RPATH=FALSE \
+@@ -26,7 +20,6 @@ DEB_CMAKE_EXTRA_FLAGS := -DCMAKE_SKIP_RPATH=FALSE \
+ -DCMAKE_INSTALL_PREFIX=/opt/freerdp-nightly/ \
+ -DCMAKE_INSTALL_INCLUDEDIR=include \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+- $(ARM_FLOAT_ABI) \
+ $(NULL)
+
+ %:
+--
+2.5.0
+
diff --git a/net-misc/freerdp/files/freerdp-ffmpeg29.patch b/net-misc/freerdp/files/freerdp-ffmpeg29.patch
new file mode 100644
index 00000000..e4d81bd1
--- /dev/null
+++ b/net-misc/freerdp/files/freerdp-ffmpeg29.patch
@@ -0,0 +1,42 @@
+https://github.com/FreeRDP/FreeRDP/pull/2895
+
+Index: freerdp-1.2.1_pre20150326/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c
+===================================================================
+--- freerdp-1.2.1_pre20150326.orig/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c
++++ freerdp-1.2.1_pre20150326/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c
+@@ -102,7 +102,7 @@ static BOOL tsmf_ffmpeg_init_video_strea
+ 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();
++ mdecoder->frame = av_frame_alloc();
+ return TRUE;
+ }
+
+@@ -320,7 +320,7 @@ static BOOL tsmf_ffmpeg_decode_video(ITS
+ 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();
++ frame = av_frame_alloc();
+ avpicture_fill((AVPicture*) frame, mdecoder->decoded_data,
+ mdecoder->codec_context->pix_fmt,
+ mdecoder->codec_context->width, mdecoder->codec_context->height);
+@@ -389,7 +389,7 @@ static BOOL tsmf_ffmpeg_decode_audio(ITS
+ (int16_t *) dst, &frame_size, src, src_size);
+ #else
+ {
+- AVFrame *decoded_frame = avcodec_alloc_frame();
++ AVFrame *decoded_frame = av_frame_alloc();
+ int got_frame = 0;
+ AVPacket pkt;
+ av_init_packet(&pkt);
+@@ -469,7 +469,7 @@ static UINT32 tsmf_ffmpeg_get_decoded_fo
+
+ switch (mdecoder->codec_context->pix_fmt)
+ {
+- case PIX_FMT_YUV420P:
++ case AV_PIX_FMT_YUV420P:
+ return RDP_PIXFMT_I420;
+ default:
+ WLog_ERR(TAG, "unsupported pixel format %u",
diff --git a/net-misc/freerdp/files/freerdp-musl.patch b/net-misc/freerdp/files/freerdp-musl.patch
new file mode 100644
index 00000000..d9c93341
--- /dev/null
+++ b/net-misc/freerdp/files/freerdp-musl.patch
@@ -0,0 +1,48 @@
+diff -Naurw FreeRDP-aa2181dcf2dd98693767ba738c5b2ad8c3d742d4.orig/winpr/libwinpr/comm/comm_io.c FreeRDP-aa2181dcf2dd98693767ba738c5b2ad8c3d742d4/winpr/libwinpr/comm/comm_io.c
+--- FreeRDP-aa2181dcf2dd98693767ba738c5b2ad8c3d742d4.orig/winpr/libwinpr/comm/comm_io.c 2015-03-26 08:42:54.000000000 -0700
++++ FreeRDP-aa2181dcf2dd98693767ba738c5b2ad8c3d742d4/winpr/libwinpr/comm/comm_io.c 2015-09-02 18:59:22.610753099 -0700
+@@ -27,6 +27,7 @@
+ #include <errno.h>
+ #include <termios.h>
+ #include <unistd.h>
++#include <sys/select.h>
+
+ #include <winpr/io.h>
+ #include <winpr/wlog.h>
+diff -Naurw FreeRDP-aa2181dcf2dd98693767ba738c5b2ad8c3d742d4.orig/winpr/libwinpr/comm/comm_serial_sys.c FreeRDP-aa2181dcf2dd98693767ba738c5b2ad8c3d742d4/winpr/libwinpr/comm/comm_serial_sys.c
+--- FreeRDP-aa2181dcf2dd98693767ba738c5b2ad8c3d742d4.orig/winpr/libwinpr/comm/comm_serial_sys.c 2015-03-26 08:42:54.000000000 -0700
++++ FreeRDP-aa2181dcf2dd98693767ba738c5b2ad8c3d742d4/winpr/libwinpr/comm/comm_serial_sys.c 2015-09-02 18:59:22.610753099 -0700
+@@ -42,6 +42,9 @@
+ #define TTY_THRESHOLD_UNTHROTTLE 128
+ #define N_TTY_BUF_SIZE 4096
+
++#ifndef CMSPAR
++#define CMSPAR 010000000000
++#endif
+
+ #define _BAUD_TABLE_END 0010020 /* __MAX_BAUD + 1 */
+
+diff -Naurw FreeRDP-aa2181dcf2dd98693767ba738c5b2ad8c3d742d4.orig/winpr/libwinpr/synch/wait.c FreeRDP-aa2181dcf2dd98693767ba738c5b2ad8c3d742d4/winpr/libwinpr/synch/wait.c
+--- FreeRDP-aa2181dcf2dd98693767ba738c5b2ad8c3d742d4.orig/winpr/libwinpr/synch/wait.c 2015-03-26 08:42:54.000000000 -0700
++++ FreeRDP-aa2181dcf2dd98693767ba738c5b2ad8c3d742d4/winpr/libwinpr/synch/wait.c 2015-09-02 18:59:22.610753099 -0700
+@@ -25,6 +25,7 @@
+ #ifdef HAVE_PTHREAD_GNU_EXT
+ #define _GNU_SOURCE
+ #endif
++#include <sys/select.h>
+
+ #ifdef HAVE_UNISTD_H
+ #include <unistd.h>
+@@ -109,12 +110,7 @@
+ #if !defined(HAVE_PTHREAD_GNU_EXT)
+ #include <pthread.h>
+
+-#if defined(__FreeBSD__) || defined(sun)
+-/*the only way to get it work is to remove the static*/
+ int pthread_mutex_timedlock(pthread_mutex_t *mutex, const struct timespec *timeout)
+-#else
+-static int pthread_mutex_timedlock(pthread_mutex_t *mutex, const struct timespec *timeout)
+-#endif
+ {
+ struct timespec timenow;
+ struct timespec sleepytime;
diff --git a/net-misc/freerdp/freerdp-1.2.1_pre20150326-r1.ebuild b/net-misc/freerdp/freerdp-1.2.1_pre20150326-r1.ebuild
new file mode 100644
index 00000000..a01c2423
--- /dev/null
+++ b/net-misc/freerdp/freerdp-1.2.1_pre20150326-r1.ebuild
@@ -0,0 +1,115 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit cmake-utils vcs-snapshot
+
+if [[ ${PV} != 9999* ]]; then
+ COMMIT="aa2181dcf2dd98693767ba738c5b2ad8c3d742d4"
+ SRC_URI="https://github.com/FreeRDP/FreeRDP/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="alpha amd64 arm ppc ppc64 x86"
+else
+ inherit git-r3
+ SRC_URI=""
+ EGIT_REPO_URI="git://github.com/FreeRDP/FreeRDP.git
+ https://github.com/FreeRDP/FreeRDP.git"
+fi
+
+DESCRIPTION="Free implementation of the Remote Desktop Protocol"
+HOMEPAGE="http://www.freerdp.com/"
+
+LICENSE="Apache-2.0"
+SLOT="0/1.2"
+IUSE="alsa +client cpu_flags_x86_sse2 cups debug doc ffmpeg gstreamer jpeg
+ libressl neon pulseaudio server smartcard test usb wayland X xinerama xv"
+
+RDEPEND="
+ !libressl? ( dev-libs/openssl:0 )
+ libressl? ( dev-libs/libressl )
+ sys-libs/zlib:0
+ alsa? ( media-libs/alsa-lib )
+ cups? ( net-print/cups )
+ client? (
+ usb? (
+ virtual/libudev:0=
+ sys-apps/util-linux:0=
+ dev-libs/dbus-glib:0=
+ virtual/libusb:1=
+ )
+ X? (
+ x11-libs/libXcursor
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXrender
+ xinerama? ( x11-libs/libXinerama )
+ xv? ( x11-libs/libXv )
+ )
+ )
+ ffmpeg? ( >=virtual/ffmpeg-9 )
+ gstreamer? (
+ media-libs/gstreamer:1.0
+ media-libs/gst-plugins-base:1.0
+ x11-libs/libXrandr
+ )
+ jpeg? ( virtual/jpeg:0 )
+ pulseaudio? ( media-sound/pulseaudio )
+ server? (
+ X? (
+ x11-libs/libXcursor
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ xinerama? ( x11-libs/libXinerama )
+ )
+ )
+ smartcard? ( sys-apps/pcsc-lite )
+ wayland? ( dev-libs/wayland )
+ X? (
+ x11-libs/libX11
+ x11-libs/libxkbfile
+ )
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ client? ( X? ( doc? (
+ app-text/docbook-xml-dtd:4.1.2
+ app-text/xmlto
+ ) ) )
+ elibc_musl? ( sys-libs/queue )
+"
+
+DOCS=( README )
+
+PATCHES=(
+ "${FILESDIR}/freerdp-armfp.patch"
+ "${FILESDIR}/freerdp-ffmpeg29.patch"
+ "${FILESDIR}/1.2.1-gstreamer.patch"
+ "${FILESDIR}/freerdp-musl.patch"
+)
+
+src_configure() {
+ local mycmakeargs=(
+ $(cmake-utils_use_with alsa ALSA)
+ $(cmake-utils_use_with client CLIENT)
+ $(cmake-utils_use_with cups CUPS)
+ $(cmake-utils_use_with debug DEBUG_ALL)
+ $(cmake-utils_use_with doc MANPAGES)
+ $(cmake-utils_use_with ffmpeg FFMPEG)
+ $(cmake-utils_use_with gstreamer GSTREAMER_1_0)
+ $(cmake-utils_use_with jpeg JPEG)
+ $(cmake-utils_use_with neon NEON)
+ $(cmake-utils_use_with pulseaudio PULSE)
+ $(cmake-utils_use_with server SERVER)
+ $(cmake-utils_use_with smartcard PCSC)
+ $(cmake-utils_use_with cpu_flags_x86_sse2 SSE2)
+ $(cmake-utils_use usb CHANNEL_URBDRC)
+ $(cmake-utils_use_with X X11)
+ $(cmake-utils_use_with xinerama XINERAMA)
+ $(cmake-utils_use_with xv XV)
+ $(cmake-utils_use_build test TESTING)
+ $(cmake-utils_use_with wayland WAYLAND)
+ )
+ cmake-utils_src_configure
+}
diff --git a/net-misc/freerdp/metadata.xml b/net-misc/freerdp/metadata.xml
new file mode 100644
index 00000000..e48eff5f
--- /dev/null
+++ b/net-misc/freerdp/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>floppym@gentoo.org</email>
+ <name>Mike Gilbert</name>
+ </maintainer>
+ <use>
+ <flag name="client">Build client binaries</flag>
+ <flag name="server">Build server binaries</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">FreeRDP/FreeRDP</remote-id>
+ </upstream>
+</pkgmetadata>