diff --git a/freerdp-args.patch b/freerdp-args.patch deleted file mode 100644 index efedc4c..0000000 --- a/freerdp-args.patch +++ /dev/null @@ -1,184 +0,0 @@ -diff -up FreeRDP-1.2.0-beta1-android9/client/common/cmdline.c.args FreeRDP-1.2.0-beta1-android9/client/common/cmdline.c ---- FreeRDP-1.2.0-beta1-android9/client/common/cmdline.c.args 2015-01-15 14:38:15.573870682 -0700 -+++ FreeRDP-1.2.0-beta1-android9/client/common/cmdline.c 2015-01-15 14:51:29.640391722 -0700 -@@ -1087,8 +1087,10 @@ BOOL freerdp_client_detect_command_line( - *flags |= COMMAND_LINE_SIGIL_DASH | COMMAND_LINE_SIGIL_DOUBLE_DASH; - *flags |= COMMAND_LINE_SIGIL_ENABLE_DISABLE; - -- if (windows_cli_count >= posix_cli_count) -+ /* Check, if this may be windows style syntax... */ -+ if (windows_cli_count && (windows_cli_count >= posix_cli_count) || (windows_cli_status <= COMMAND_LINE_STATUS_PRINT)) - { -+ windows_cli_count = 1; - *flags = COMMAND_LINE_SEPARATOR_COLON; - *flags |= COMMAND_LINE_SIGIL_SLASH | COMMAND_LINE_SIGIL_PLUS_MINUS; - } -diff -up FreeRDP-1.2.0-beta1-android9/client/common/compatibility.c.args FreeRDP-1.2.0-beta1-android9/client/common/compatibility.c ---- FreeRDP-1.2.0-beta1-android9/client/common/compatibility.c.args 2014-09-11 16:46:32.000000000 -0600 -+++ FreeRDP-1.2.0-beta1-android9/client/common/compatibility.c 2015-01-15 14:53:19.418773129 -0700 -@@ -119,16 +119,20 @@ void freerdp_client_old_parse_hostname(c - - int freerdp_client_old_process_plugin(rdpSettings* settings, ADDIN_ARGV* args) - { -+ int args_handled = 0; - if (strcmp(args->argv[0], "cliprdr") == 0) - { -+ args_handled++; - settings->RedirectClipboard = TRUE; - DEBUG_WARN( "--plugin cliprdr -> +clipboard\n"); - } - else if (strcmp(args->argv[0], "rdpdr") == 0) - { -+ args_handled++; - if (args->argc < 2) -- return -1; -+ return 1; - -+ args_handled++; - if ((strcmp(args->argv[1], "disk") == 0) || - (strcmp(args->argv[1], "drive") == 0)) - { -@@ -156,21 +160,26 @@ int freerdp_client_old_process_plugin(rd - } - else if (strcmp(args->argv[0], "drdynvc") == 0) - { -+ args_handled++; - freerdp_client_add_dynamic_channel(settings, args->argc - 1, &args->argv[1]); - } - else if (strcmp(args->argv[0], "rdpsnd") == 0) - { -+ args_handled++; - if (args->argc < 2) -- return -1; -+ return 1; - -+ args_handled++; - freerdp_addin_replace_argument_value(args, args->argv[1], "sys", args->argv[1]); - freerdp_client_add_static_channel(settings, args->argc, args->argv); - } - else if (strcmp(args->argv[0], "rail") == 0) - { -+ args_handled++; - if (args->argc < 2) -- return -1; -+ return 1; - -+ args_handled++; - settings->RemoteApplicationProgram = _strdup(args->argv[1]); - } - else -@@ -178,14 +187,12 @@ int freerdp_client_old_process_plugin(rd - freerdp_client_add_static_channel(settings, args->argc, args->argv); - } - -- return 1; -+ return args_handled; - } - - int freerdp_client_old_command_line_pre_filter(void* context, int index, int argc, LPCSTR* argv) - { -- rdpSettings* settings; -- -- settings = (rdpSettings*) context; -+ rdpSettings* settings = (rdpSettings*) context; - - if (index == (argc - 1)) - { -@@ -201,11 +208,10 @@ int freerdp_client_old_command_line_pre_ - return -1; - } - -- if (settings) -- { -- freerdp_client_old_parse_hostname((char*) argv[index], -- &settings->ServerHostname, &settings->ServerPort); -- } -+ freerdp_client_old_parse_hostname((char*) argv[index], -+ &settings->ServerHostname, &settings->ServerPort); -+ -+ return 2; - } - else - { -@@ -215,6 +221,7 @@ int freerdp_client_old_command_line_pre_ - - if (strcmp("--plugin", argv[index]) == 0) - { -+ int args_handled = 0; - int length; - char *a, *p; - int i, j, t; -@@ -230,20 +237,19 @@ int freerdp_client_old_command_line_pre_ - return -1; - - args = (ADDIN_ARGV*) malloc(sizeof(ADDIN_ARGV)); -- args->argv = (char**) malloc(sizeof(char*) * 5); -+ args->argv = (char**) calloc(argc, sizeof(char*)); - args->argc = 1; - -- args->argv[0] = _strdup(argv[t]); -- - if ((index < argc - 1) && strcmp("--data", argv[index + 1]) == 0) - { - i = 0; - index += 2; -- args->argc = 1; - - while ((index < argc) && (strcmp("--", argv[index]) != 0)) - { -+ args_handled ++; - args->argc = 1; -+ args->argv[0] = _strdup(argv[t]); - - for (j = 0, p = (char*) argv[index]; (j < 4) && (p != NULL); j++) - { -@@ -264,6 +270,9 @@ int freerdp_client_old_command_line_pre_ - if (p != NULL) - { - p = strchr(p, ':'); -+ } -+ if (p != NULL) -+ { - length = (int) (p - a); - args->argv[j + 1] = (char*) malloc(length + 1); - CopyMemory(args->argv[j + 1], a, length); -@@ -278,11 +287,14 @@ int freerdp_client_old_command_line_pre_ - args->argc++; - } - -- if (settings->instance) -+ if (settings) - { - freerdp_client_old_process_plugin(settings, args); - } - -+ for (i = 0; i < args->argc; i++) -+ free(args->argv[i]); -+ memset(args->argv, 0, argc * sizeof(char*)); - index++; - i++; - } -@@ -291,19 +303,16 @@ int freerdp_client_old_command_line_pre_ - { - if (settings) - { -- if (settings->instance) -- { -- freerdp_client_old_process_plugin(settings, args); -- } -+ args->argv[0] = _strdup(argv[t]); -+ args_handled = freerdp_client_old_process_plugin(settings, args); -+ free (args->argv[0]); - } - } - -- for (i = 0; i < args->argc; i++) -- free(args->argv[i]); - free(args->argv); - free(args); - -- return (index - old_index); -+ return (index - old_index) + args_handled; - } - - return 0; diff --git a/freerdp-cmake-list.patch b/freerdp-cmake-list.patch deleted file mode 100644 index 332a331..0000000 --- a/freerdp-cmake-list.patch +++ /dev/null @@ -1,79 +0,0 @@ -diff --git a/channels/CMakeLists.txt b/channels/CMakeLists.txt -index c4e6048..540b1ac 100644 ---- a/channels/CMakeLists.txt -+++ b/channels/CMakeLists.txt -@@ -253,8 +253,8 @@ set(FILENAME "ChannelOptions.cmake") - file(GLOB FILEPATHS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*/${FILENAME}") - - foreach(FILEPATH ${FILEPATHS}) -- if(${FILEPATH} MATCHES "^([^/]*)//${FILENAME}") -- string(REGEX REPLACE "^([^/]*)//${FILENAME}" "\\1" DIR ${FILEPATH}) -+ if(${FILEPATH} MATCHES "^([^/]*)/+${FILENAME}") -+ string(REGEX REPLACE "^([^/]*)/+${FILENAME}" "\\1" DIR ${FILEPATH}) - set(CHANNEL_OPTION) - include(${FILEPATH}) - if(${CHANNEL_OPTION}) -diff --git a/channels/client/CMakeLists.txt b/channels/client/CMakeLists.txt -index 049bc7b..2db18e8 100644 ---- a/channels/client/CMakeLists.txt -+++ b/channels/client/CMakeLists.txt -@@ -24,7 +24,9 @@ set(${MODULE_PREFIX}_SRCS - ${CMAKE_CURRENT_SOURCE_DIR}/addin.c - ${CMAKE_CURRENT_SOURCE_DIR}/addin.h) - -+if(CHANNEL_STATIC_CLIENT_ENTRIES) - list(REMOVE_DUPLICATES CHANNEL_STATIC_CLIENT_ENTRIES) -+endif() - - foreach(STATIC_ENTRY ${CHANNEL_STATIC_CLIENT_ENTRIES}) - foreach(STATIC_MODULE ${CHANNEL_STATIC_CLIENT_MODULES}) -diff --git a/client/CMakeLists.txt b/client/CMakeLists.txt -index 14ed363..b8b7699 100644 ---- a/client/CMakeLists.txt -+++ b/client/CMakeLists.txt -@@ -63,8 +63,8 @@ set(FILENAME "ModuleOptions.cmake") - file(GLOB FILEPATHS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*/${FILENAME}") - - foreach(FILEPATH ${FILEPATHS}) -- if(${FILEPATH} MATCHES "^([^/]*)//${FILENAME}") -- string(REGEX REPLACE "^([^/]*)//${FILENAME}" "\\1" FREERDP_CLIENT ${FILEPATH}) -+ if(${FILEPATH} MATCHES "^([^/]*)/+${FILENAME}") -+ string(REGEX REPLACE "^([^/]*)/+${FILENAME}" "\\1" FREERDP_CLIENT ${FILEPATH}) - set(FREERDP_CLIENT_ENABLED 0) - include(${FILEPATH}) - if(FREERDP_CLIENT_ENABLED) -diff --git a/server/CMakeLists.txt b/server/CMakeLists.txt -index cda14ba..ee9458e 100644 ---- a/server/CMakeLists.txt -+++ b/server/CMakeLists.txt -@@ -48,8 +48,8 @@ set(FILENAME "ModuleOptions.cmake") - file(GLOB FILEPATHS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*/${FILENAME}") - - foreach(FILEPATH ${FILEPATHS}) -- if(${FILEPATH} MATCHES "^([^/]*)//${FILENAME}") -- string(REGEX REPLACE "^([^/]*)//${FILENAME}" "\\1" FREERDP_SERVER ${FILEPATH}) -+ if(${FILEPATH} MATCHES "^([^/]*)/+${FILENAME}") -+ string(REGEX REPLACE "^([^/]*)/+${FILENAME}" "\\1" FREERDP_SERVER ${FILEPATH}) - set(FREERDP_SERVER_ENABLED 0) - include(${FILEPATH}) - if(FREERDP_SERVER_ENABLED) -diff --git a/third-party/CMakeLists.txt b/third-party/CMakeLists.txt -index 09b1fd4..610f35e 100644 ---- a/third-party/CMakeLists.txt -+++ b/third-party/CMakeLists.txt -@@ -22,11 +22,11 @@ - file(GLOB all_valid_subdirs RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*/CMakeLists.txt") - - foreach(dir ${all_valid_subdirs}) -- if(${dir} MATCHES "^([^/]*)//CMakeLists.txt") -- string(REGEX REPLACE "^([^/]*)//CMakeLists.txt" "\\1" dir_trimmed ${dir}) -+ if(${dir} MATCHES "^([^/]*)/+CMakeLists.txt") -+ string(REGEX REPLACE "^([^/]*)/+CMakeLists.txt" "\\1" dir_trimmed ${dir}) - message(STATUS "Adding third-party component ${dir_trimmed}") - add_subdirectory(${dir_trimmed}) - endif() - endforeach(dir) - --set(THIRD_PARTY_INCLUDES ${THIRD_PARTY_INCLUDES} PARENT_SCOPE) -\ No newline at end of file -+set(THIRD_PARTY_INCLUDES ${THIRD_PARTY_INCLUDES} PARENT_SCOPE) diff --git a/freerdp.spec b/freerdp.spec index c32963a..3c2b06b 100644 --- a/freerdp.spec +++ b/freerdp.spec @@ -1,18 +1,13 @@ Name: freerdp Version: 1.2.0 -Release: 0.6.beta.1%{?dist} +Release: 0.2.beta.1%{?dist} Epoch: 1 Summary: Free implementation of the Remote Desktop Protocol (RDP) License: ASL 2.0 URL: http://www.freerdp.com/ -Source0: https://github.com/FreeRDP/FreeRDP/archive/%{version}-beta1+android9.tar.gz +Source0: https://github.com/FreeRDP/FreeRDP/archive/%{version}-beta1+android7.tar.gz Patch0: freerdp-aarch64.patch -# https://github.com/FreeRDP/FreeRDP/commit/1b663ceffe51008af7ae9749e5b7999b2f7d6698 -Patch1: freerdp-cmake-list.patch -# https://bugzilla.redhat.com/show_bug.cgi?id=1150349 -# https://github.com/FreeRDP/FreeRDP/pull/2310 -Patch2: freerdp-args.patch BuildRequires: alsa-lib-devel BuildRequires: cmake >= 2.8 @@ -90,10 +85,8 @@ The %{name}-libwinpr-devel package contains libraries and header files for developing applications that use %{name}-libwinpr. %prep -%setup -qn FreeRDP-%{version}-beta1-android9 +%setup -qn FreeRDP-%{version}-beta1-android7 %patch0 -p1 -b .aarch64 -%patch1 -p1 -b .cmake-list -%patch2 -p1 -b .args # Rpmlint fixes find . -name "*.h" -exec chmod 664 {} \; @@ -187,19 +180,6 @@ find %{buildroot} -name "*.a" -delete %{_libdir}/pkgconfig/winpr.pc %changelog -* Thu Jan 15 2015 Orion Poplawski - 1:1.2.0-0.6.beta.1 -- Use better upstream patch to fix command line parsing - -* Wed Jan 14 2015 Orion Poplawski - 1:1.2.0-0.5.beta.1 -- Add patch to fix command line parsing segfault (bug #1150349) and to - fix old style command line options - -* Tue Dec 16 2014 Simone Caronni - 1:1.2.0-0.4.beta.1 -- Fix build on CMake 3.1. - -* Wed Nov 12 2014 Simone Caronni - 1:1.2.0-0.3.beta.1 -- Update to latest 1.2.0 beta 1 refresh. - * Sat Aug 16 2014 Fedora Release Engineering - 1:1.2.0-0.2.beta.1 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild diff --git a/sources b/sources index a7c3088..c7af031 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -a4a0a4f6e69c871aeab0600091ca6118 1.2.0-beta1+android9.tar.gz +545037c48430d8c1592a968b05d3c389 1.2.0-beta1+android7.tar.gz