diff --git a/network/misc/freerdp/actions.py b/network/misc/freerdp/actions.py new file mode 100644 index 0000000000..b7d466d15a --- /dev/null +++ b/network/misc/freerdp/actions.py @@ -0,0 +1,24 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# Licensed under the GNU General Public License, version 3. +# See the file http://www.gnu.org/copyleft/gpl.txt. + +from pisi.actionsapi import pisitools +from pisi.actionsapi import cmaketools + +def setup(): + cmaketools.configure("-DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_INSTALL_LIBDIR=lib") + +def build(): + cmaketools.make() + +def check(): + pass + +def install(): + #cmaketools.rawInstall("DESTDIR=%s" % get.installDIR()) + cmaketools.install() + + pisitools.dodoc("LICENSE", "README", ) diff --git a/network/misc/freerdp/files/ffmpeg2.0.patch b/network/misc/freerdp/files/ffmpeg2.0.patch new file mode 100644 index 0000000000..1c84b54ac7 --- /dev/null +++ b/network/misc/freerdp/files/ffmpeg2.0.patch @@ -0,0 +1,77 @@ +diff -rupN a/channels/drdynvc/tsmf/ffmpeg/tsmf_ffmpeg.c b/channels/drdynvc/tsmf/ffmpeg/tsmf_ffmpeg.c +--- a/channels/drdynvc/tsmf/ffmpeg/tsmf_ffmpeg.c 2013-01-02 22:46:59.000000000 +0100 ++++ b/channels/drdynvc/tsmf/ffmpeg/tsmf_ffmpeg.c 2013-07-22 18:12:18.001576713 +0200 +@@ -28,6 +28,8 @@ + #include "tsmf_constants.h" + #include "tsmf_decoder.h" + ++#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000 ++ + /* Compatibility with older FFmpeg */ + #if LIBAVUTIL_VERSION_MAJOR < 50 + #define AVMEDIA_TYPE_VIDEO 0 +@@ -39,7 +41,7 @@ typedef struct _TSMFFFmpegDecoder + ITSMFDecoder iface; + + int media_type; +- enum CodecID codec_id; ++ enum AVCodecID codec_id; + AVCodecContext* codec_context; + AVCodec* codec; + AVFrame* frame; +@@ -54,7 +56,7 @@ static boolean tsmf_ffmpeg_init_context( + { + TSMFFFmpegDecoder* mdecoder = (TSMFFFmpegDecoder*) decoder; + +- mdecoder->codec_context = avcodec_alloc_context(); ++ mdecoder->codec_context = avcodec_alloc_context3(NULL); + if (!mdecoder->codec_context) + { + DEBUG_WARN("avcodec_alloc_context failed."); +@@ -88,16 +90,6 @@ static boolean tsmf_ffmpeg_init_audio_st + mdecoder->codec_context->channels = media_type->Channels; + mdecoder->codec_context->block_align = media_type->BlockAlign; + +-#ifdef AV_CPU_FLAG_SSE2 +- mdecoder->codec_context->dsp_mask = AV_CPU_FLAG_SSE2 | AV_CPU_FLAG_MMX2; +-#else +-#if LIBAVCODEC_VERSION_MAJOR < 53 +- mdecoder->codec_context->dsp_mask = FF_MM_SSE2 | FF_MM_MMXEXT; +-#else +- mdecoder->codec_context->dsp_mask = FF_MM_SSE2 | FF_MM_MMX2; +-#endif +-#endif +- + return true; + } + +@@ -174,7 +166,7 @@ static boolean tsmf_ffmpeg_prepare(ITSMF + { + TSMFFFmpegDecoder* mdecoder = (TSMFFFmpegDecoder*) decoder; + +- if (avcodec_open(mdecoder->codec_context, mdecoder->codec) < 0) ++ if (avcodec_open2(mdecoder->codec_context, mdecoder->codec, NULL) < 0) + { + DEBUG_WARN("avcodec_open failed."); + return false; +@@ -372,8 +364,9 @@ static boolean tsmf_ffmpeg_decode_audio( + av_init_packet(&pkt); + pkt.data = (uint8*) src; + pkt.size = src_size; +- len = avcodec_decode_audio3(mdecoder->codec_context, +- (int16_t*) dst, &frame_size, &pkt); ++ AVFrame * frame = avcodec_alloc_frame (); ++ len = avcodec_decode_audio4(mdecoder->codec_context, ++ frame, &frame_size, &pkt); + } + #endif + if (len <= 0 || frame_size <= 0) +@@ -499,7 +492,6 @@ TSMFDecoderEntry(void) + + if (!initialized) + { +- avcodec_init(); + avcodec_register_all(); + initialized = true; + } + diff --git a/network/misc/freerdp/files/patch_numblock.patch b/network/misc/freerdp/files/patch_numblock.patch new file mode 100644 index 0000000000..62a23d5828 --- /dev/null +++ b/network/misc/freerdp/files/patch_numblock.patch @@ -0,0 +1,12 @@ +diff -u -r -N old/include/freerdp/kbd/vkcodes.h new/include/freerdp/kbd/vkcodes.h +--- old/include/freerdp/kbd/vkcodes.h 2013-09-19 12:46:07.124339712 +0200 ++++ new/include/freerdp/kbd/vkcodes.h 2013-09-19 12:45:51.621005583 +0200 +@@ -434,7 +434,7 @@ + { 0x00, 0, "VK_SEPARATOR" , NULL }, + { 0x4A, 0, "VK_SUBTRACT" , "KPSU" }, + { 0x53, 0, "VK_DECIMAL" , "KPDL" }, +- { 0x35, 0, "VK_DIVIDE" , "KPDV" }, ++ { 0x35, 1, "VK_DIVIDE" , "KPDV" }, + { 0x3B, 0, "VK_F1" , "FK01" }, + { 0x3C, 0, "VK_F2" , "FK02" }, + { 0x3D, 0, "VK_F3" , "FK03" }, diff --git a/network/misc/freerdp/pspec.xml b/network/misc/freerdp/pspec.xml new file mode 100644 index 0000000000..55e9a8f08a --- /dev/null +++ b/network/misc/freerdp/pspec.xml @@ -0,0 +1,92 @@ + + + + + freerdp + http://www.freerdp.com + + Aydın Demirel + aydin.demirel@pisilinux.org + + ASF + app:console + A Remote Desktop Implementation + FreeRDP is a free implementation of the Remote Desktop Protocol (RDP), released under Apacle License. + http://pub.freerdp.com/releases/freerdp-1.0.2.tar.gz + + cups-devel + ffmpeg-devel + alsa-lib-devel + libXinerama-devel + xmlto + libXcursor-devel + libxkbfile-devel + libXv-devel + + + krdc + + + ffmpeg2.0.patch + patch_numblock.patch + + + + + freerdp + + cups + libXv + ffmpeg + libXext + alsa-lib + libXcursor + libxkbfile + libXinerama + + + /usr/bin + /usr/lib + /usr/share/freerdp + /usr/share/doc + /usr/share/man + + + + freerdp-devel + + /usr/include + + + + + + 2015-01-01 + 1.0.2 + Rebuild, fix build dep. + Ertuğrul Erata + ertugrulerata@gmail.com + + + 2014-05-31 + 1.0.2 + Rebuild. + Alihan Öztürk + alihan@pisilinux.org + + + 2013-11-29 + 1.0.2 + rebuild for ffmpeg + PisiLinux Community + admins@pisilinux.org + + + 2013-09-28 + 1.0.2 + First release + Aydın Demirel + aydin.demirel@pisilinux.org + + + diff --git a/network/misc/freerdp/translations.xml b/network/misc/freerdp/translations.xml new file mode 100644 index 0000000000..4b25709c73 --- /dev/null +++ b/network/misc/freerdp/translations.xml @@ -0,0 +1,8 @@ + + + + freerdp + Bir uzak masaüstü protokol uygulaması + FreeRDP Apache lisansı altında dağıtılan, Uzak Masaüstü Uygulamasının (RDP) özgür bir uygulamasıdır. + +