diff options
author | Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com> | 2017-11-16 00:29:09 +0800 |
---|---|---|
committer | Armin Kuster <akuster808@gmail.com> | 2017-11-19 13:41:58 -0800 |
commit | 5c79363f3f48575500de8e514f1f36be7c8ef494 (patch) | |
tree | e15fba84953404a9f00b442bc0b02fec12d98225 | |
parent | dafa2929e137e57e821e96b27d8880b5c8a293f1 (diff) | |
download | meta-openembedded-5c79363f3f48575500de8e514f1f36be7c8ef494.tar.gz |
freerdp: Update to 2.0.0
1) Upgrade freerdp from 1.2.5 to 2.0.0.
2) Delete two patches for they are included in 2.0.0.
0001-FindGStreamer_1_0-fix-build-failure-for-new-gstreame.patch
0003-add-missing-define.patch
3) Add one patch 0001-Fix-gstreamer-1.0-detection.patch to fix the do_configure problem:
| -- Finding required feature XRandR for X11 randr (X11 randr extension)
| -- Found XRANDR: /yocto/work001/fnst/zrq/community/build_master/tmp/work/i586-poky-linux/freerdp/2.0.0+gitrAUTOINC+1648deb435-r0/recipe-sysroot/usr/lib/libXrandr.so
| CMake Error at channels/tsmf/client/gstreamer/CMakeLists.txt:21 (message):
| GStreamer library not found, but required for TSMF module.
4) Modify the do_install directory from winpr/tools/makecert/cli/ to winpr/tools/makecert-cli/
Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
5 files changed, 45 insertions, 135 deletions
diff --git a/meta-oe/recipes-support/freerdp/freerdp/0001-FindGStreamer_1_0-fix-build-failure-for-new-gstreame.patch b/meta-oe/recipes-support/freerdp/freerdp/0001-FindGStreamer_1_0-fix-build-failure-for-new-gstreame.patch deleted file mode 100644 index d5f648568..000000000 --- a/meta-oe/recipes-support/freerdp/freerdp/0001-FindGStreamer_1_0-fix-build-failure-for-new-gstreame.patch +++ /dev/null | |||
@@ -1,71 +0,0 @@ | |||
1 | From bea27fd919b64ee8d97996409e279e1e83d13594 Mon Sep 17 00:00:00 2001 | ||
2 | From: Jean-Louis Dupond <jean-louis@dupond.be> | ||
3 | Date: Sun, 4 Oct 2015 18:17:33 +0200 | ||
4 | Subject: [PATCH] FindGStreamer_1_0: fix build failure for new gstreamer | ||
5 | versions | ||
6 | |||
7 | --- | ||
8 | cmake/FindGStreamer_1_0.cmake | 30 +++++++++++++++--------------- | ||
9 | 1 file changed, 15 insertions(+), 15 deletions(-) | ||
10 | |||
11 | diff --git a/cmake/FindGStreamer_1_0.cmake b/cmake/FindGStreamer_1_0.cmake | ||
12 | index f7bf990..3aa8fc6 100644 | ||
13 | --- a/cmake/FindGStreamer_1_0.cmake | ||
14 | +++ b/cmake/FindGStreamer_1_0.cmake | ||
15 | @@ -53,17 +53,17 @@ set(GSTREAMER_1_0_MINIMUM_VERSION 1.0.5) | ||
16 | # Helper macro to find a Gstreamer plugin (or Gstreamer itself) | ||
17 | # _component_prefix is prepended to the _INCLUDE_DIRS and _LIBRARIES variables (eg. "GSTREAMER_1_0_AUDIO") | ||
18 | # _pkgconfig_name is the component's pkg-config name (eg. "gstreamer-1.0", or "gstreamer-video-1.0"). | ||
19 | -# _header is the component's header, relative to the gstreamer-1.0 directory (eg. "gst/gst.h"). | ||
20 | # _library is the component's library name (eg. "gstreamer-1.0" or "gstvideo-1.0") | ||
21 | -macro(FIND_GSTREAMER_COMPONENT _component_prefix _pkgconfig_name _header _library) | ||
22 | +macro(FIND_GSTREAMER_COMPONENT _component_prefix _pkgconfig_name _library) | ||
23 | # FIXME: The QUIET keyword can be used once we require CMake 2.8.2. | ||
24 | - pkg_check_modules(PC_${_component_prefix} ${_pkgconfig_name}) | ||
25 | |||
26 | - find_path(${_component_prefix}_INCLUDE_DIRS | ||
27 | - NAMES ${_header} | ||
28 | - HINTS ${PC_${_component_prefix}_INCLUDE_DIRS} ${PC_${_component_prefix}_INCLUDEDIR} | ||
29 | - PATH_SUFFIXES gstreamer-1.0 | ||
30 | - ) | ||
31 | + string(REGEX MATCH "(.*)>=(.*)" _dummy "${_pkgconfig_name}") | ||
32 | + if ("${CMAKE_MATCH_2}" STREQUAL "") | ||
33 | + pkg_check_modules(PC_${_component_prefix} "${_pkgconfig_name} >= ${GStreamer_FIND_VERSION}") | ||
34 | + else () | ||
35 | + pkg_check_modules(PC_${_component_prefix} ${_pkgconfig_name}) | ||
36 | + endif () | ||
37 | + set(${_component_prefix}_INCLUDE_DIRS ${PC_${_component_prefix}_INCLUDE_DIRS}) | ||
38 | |||
39 | find_library(${_component_prefix}_LIBRARIES | ||
40 | NAMES ${_library} gstreamer_android | ||
41 | @@ -78,8 +78,8 @@ endmacro() | ||
42 | # 1.1. Find headers and libraries | ||
43 | set(GLIB_ROOT_DIR ${GSTREAMER_1_0_ROOT_DIR}) | ||
44 | find_package(Glib REQUIRED) | ||
45 | -FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0 gstreamer-1.0 gst/gst.h gstreamer-1.0) | ||
46 | -FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0_BASE gstreamer-base-1.0 gst/gst.h gstbase-1.0) | ||
47 | +FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0 gstreamer-1.0 gstreamer-1.0) | ||
48 | +FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0_BASE gstreamer-base-1.0 gstbase-1.0) | ||
49 | |||
50 | # 1.2. Check Gstreamer version | ||
51 | if (GSTREAMER_1_0_INCLUDE_DIRS) | ||
52 | @@ -110,11 +110,11 @@ endif () | ||
53 | # 2. Find Gstreamer plugins | ||
54 | # ------------------------- | ||
55 | |||
56 | -FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0_APP gstreamer-app-1.0 gst/app/gstappsink.h gstapp-1.0) | ||
57 | -FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0_AUDIO gstreamer-audio-1.0 gst/audio/audio.h gstaudio-1.0) | ||
58 | -FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0_FFT gstreamer-fft-1.0 gst/fft/gstfft.h gstfft-1.0) | ||
59 | -FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0_PBUTILS gstreamer-pbutils-1.0 gst/pbutils/pbutils.h gstpbutils-1.0) | ||
60 | -FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0_VIDEO gstreamer-video-1.0 gst/video/video.h gstvideo-1.0) | ||
61 | +FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0_APP gstreamer-app-1.0 gstapp-1.0) | ||
62 | +FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0_AUDIO gstreamer-audio-1.0 gstaudio-1.0) | ||
63 | +FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0_FFT gstreamer-fft-1.0 gstfft-1.0) | ||
64 | +FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0_PBUTILS gstreamer-pbutils-1.0 gstpbutils-1.0) | ||
65 | +FIND_GSTREAMER_COMPONENT(GSTREAMER_1_0_VIDEO gstreamer-video-1.0 gstvideo-1.0) | ||
66 | |||
67 | # ------------------------------------------------ | ||
68 | # 3. Process the COMPONENTS passed to FIND_PACKAGE | ||
69 | -- | ||
70 | 2.6.4 | ||
71 | |||
diff --git a/meta-oe/recipes-support/freerdp/freerdp/0001-Fix-gstreamer-1.0-detection.patch b/meta-oe/recipes-support/freerdp/freerdp/0001-Fix-gstreamer-1.0-detection.patch new file mode 100644 index 000000000..a567cba92 --- /dev/null +++ b/meta-oe/recipes-support/freerdp/freerdp/0001-Fix-gstreamer-1.0-detection.patch | |||
@@ -0,0 +1,27 @@ | |||
1 | From 368989526c32cdf9d680a397fede3cb773fa2609 Mon Sep 17 00:00:00 2001 | ||
2 | From: Mike Gilbert <floppym@gentoo.org> | ||
3 | Date: Fri, 28 Jul 2017 16:31:41 -0400 | ||
4 | Subject: [PATCH] Fix gstreamer-1.0 detection | ||
5 | |||
6 | Upstream State: Backport | ||
7 | |||
8 | --- | ||
9 | cmake/FindGStreamer_1_0.cmake | 2 +- | ||
10 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
11 | |||
12 | diff --git a/cmake/FindGStreamer_1_0.cmake b/cmake/FindGStreamer_1_0.cmake | ||
13 | index 3aa8fc6..6fbc0ec 100644 | ||
14 | --- a/cmake/FindGStreamer_1_0.cmake | ||
15 | +++ b/cmake/FindGStreamer_1_0.cmake | ||
16 | @@ -59,7 +59,7 @@ macro(FIND_GSTREAMER_COMPONENT _component_prefix _pkgconfig_name _library) | ||
17 | |||
18 | string(REGEX MATCH "(.*)>=(.*)" _dummy "${_pkgconfig_name}") | ||
19 | if ("${CMAKE_MATCH_2}" STREQUAL "") | ||
20 | - pkg_check_modules(PC_${_component_prefix} "${_pkgconfig_name} >= ${GStreamer_FIND_VERSION}") | ||
21 | + pkg_check_modules(PC_${_component_prefix} "${_pkgconfig_name} >= ${GSTREAMER_1_0_MINIMUM_VERSION}") | ||
22 | else () | ||
23 | pkg_check_modules(PC_${_component_prefix} ${_pkgconfig_name}) | ||
24 | endif () | ||
25 | -- | ||
26 | 2.7.4 | ||
27 | |||
diff --git a/meta-oe/recipes-support/freerdp/freerdp/0003-add-missing-define.patch b/meta-oe/recipes-support/freerdp/freerdp/0003-add-missing-define.patch deleted file mode 100644 index 220edef30..000000000 --- a/meta-oe/recipes-support/freerdp/freerdp/0003-add-missing-define.patch +++ /dev/null | |||
@@ -1,45 +0,0 @@ | |||
1 | libwinpr/comm_seria: fix missing define | ||
2 | |||
3 | FreeRDP uses CMSPAR, which is defined by glibc in bits/termios.h . | ||
4 | |||
5 | glibc has two flavours of bits/termios.h: a genmeric one and an | ||
6 | architecture-specific one. When installing, glibc will install the | ||
7 | architecture-specific file if it exists, otherwise it installs the | ||
8 | generic file. Only Alpha, MIPS, PPC and Sparc have their own | ||
9 | bits/termios.h. | ||
10 | |||
11 | The generic bits/termios.h, as well as the Alpha, PPC and Sparc flavours | ||
12 | do define CMSPAR. However, the MIPS flavour does not define it. | ||
13 | |||
14 | Define CMSPAR to the value from the generic value, which is also the | ||
15 | value known to the Linux kernel for MIPS. | ||
16 | |||
17 | Fixes: | ||
18 | http://autobuild.buildroot.org/results/0b4/0b4793f0bf9f4c57933897f3480054a4e06528ad/ | ||
19 | http://autobuild.buildroot.org/results/7a2/7a2284d0a2987158fa2e78f789b07c8c6fcdb974/ | ||
20 | http://autobuild.buildroot.org/results/387/3874088c3ccd4bbf76ea0c911ca1ef64c7dc9d1c/ | ||
21 | ... | ||
22 | |||
23 | Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> | ||
24 | Cc: Peter Korsgaard <jacmet@uclibc.org> | ||
25 | Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> | ||
26 | |||
27 | diff -durN freerdp-17834af7bb378f85a3b3cc4dcadaa5125a337e16.orig/winpr/libwinpr/comm/comm_serial_sys.c freerdp-17834af7bb378f85a3b3cc4dcadaa5125a337e16/winpr/libwinpr/comm/comm_serial_sys.c | ||
28 | --- freerdp-17834af7bb378f85a3b3cc4dcadaa5125a337e16.orig/winpr/libwinpr/comm/comm_serial_sys.c 2015-09-04 16:20:17.000000000 +0100 | ||
29 | +++ freerdp-17834af7bb378f85a3b3cc4dcadaa5125a337e16/winpr/libwinpr/comm/comm_serial_sys.c 2015-10-04 11:07:41.868513726 +0100 | ||
30 | @@ -27,6 +27,14 @@ | ||
31 | #include <fcntl.h> | ||
32 | #include <sys/ioctl.h> | ||
33 | #include <termios.h> | ||
34 | + | ||
35 | +/* glibc for MIPS has its own bits/termios.h which does not define | ||
36 | + * CMSPAR, so we vampirise the value from the generic bits/termios.h | ||
37 | + */ | ||
38 | +#ifndef CMSPAR | ||
39 | +#define CMSPAR 010000000000 | ||
40 | +#endif | ||
41 | + | ||
42 | #include <unistd.h> | ||
43 | |||
44 | #include "comm_serial_sys.h" | ||
45 | |||
diff --git a/meta-oe/recipes-support/freerdp/freerdp/winpr-makecert-Build-with-install-RPATH.patch b/meta-oe/recipes-support/freerdp/freerdp/winpr-makecert-Build-with-install-RPATH.patch index d279d6d91..0d7dcc28d 100644 --- a/meta-oe/recipes-support/freerdp/freerdp/winpr-makecert-Build-with-install-RPATH.patch +++ b/meta-oe/recipes-support/freerdp/freerdp/winpr-makecert-Build-with-install-RPATH.patch | |||
@@ -1,31 +1,31 @@ | |||
1 | From 253eafc8c8da83fc2b1a99a9e43824efc6105c7a Mon Sep 17 00:00:00 2001 | ||
2 | From: Manuel Bachmann <manuel.bachmann@iot.bzh> | ||
3 | Date: Sun, 4 Oct 2015 10:44:49 +0200 | ||
4 | Subject: [PATCH] winpr-makecert: Build with install RPATH | 1 | Subject: [PATCH] winpr-makecert: Build with install RPATH |
5 | 2 | ||
6 | As we are installing "winpr-makecert" manually, we do want | 3 | As we are installing "winpr-makecert" manually, we do want |
7 | to refer to the library in DESTDIR, not the one resting in | 4 | to refer to the library in DESTDIR, not the one resting in |
8 | the build tree. | 5 | the build tree. |
9 | 6 | ||
7 | Update it for 2.0.0. | ||
8 | |||
10 | Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh> | 9 | Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh> |
10 | Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com> | ||
11 | --- | 11 | --- |
12 | winpr/tools/makecert/cli/CMakeLists.txt | 4 ++++ | 12 | winpr/tools/makecert-cli/CMakeLists.txt | 3 +++ |
13 | 1 file changed, 4 insertions(+) | 13 | 1 file changed, 3 insertions(+) |
14 | 14 | ||
15 | diff --git a/winpr/tools/makecert/cli/CMakeLists.txt b/winpr/tools/makecert/cli/CMakeLists.txt | 15 | diff --git a/winpr/tools/makecert-cli/CMakeLists.txt b/winpr/tools/makecert-cli/CMakeLists.txt |
16 | index 17954c4..90c446b 100644 | 16 | index 74afa09..8d00ef1 100644 |
17 | --- a/winpr/tools/makecert/cli/CMakeLists.txt | 17 | --- a/winpr/tools/makecert-cli/CMakeLists.txt |
18 | +++ b/winpr/tools/makecert/cli/CMakeLists.txt | 18 | +++ b/winpr/tools/makecert-cli/CMakeLists.txt |
19 | @@ -45,5 +45,9 @@ set(${MODULE_PREFIX}_LIBS winpr-makecert-tool) | 19 | @@ -44,6 +44,9 @@ set(${MODULE_PREFIX}_LIBS winpr-tools) |
20 | 20 | ||
21 | target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS}) | 21 | target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS}) |
22 | 22 | ||
23 | +set_target_properties(${MODULE_NAME} PROPERTIES | 23 | +set_target_properties(${MODULE_NAME} PROPERTIES |
24 | + BUILD_WITH_INSTALL_RPATH 1) | 24 | + BUILD_WITH_INSTALL_RPATH 1) |
25 | + | 25 | + |
26 | set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "WinPR/Tools") | 26 | set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "WinPR/Tools") |
27 | 27 | ||
28 | + | 28 | install(TARGETS ${MODULE_NAME} DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT tools EXPORT WinPRTargets) |
29 | -- | 29 | -- |
30 | 1.8.3.1 | 30 | 2.7.4 |
31 | 31 | ||
diff --git a/meta-oe/recipes-support/freerdp/freerdp_git.bb b/meta-oe/recipes-support/freerdp/freerdp_git.bb index f0aa1b6ef..88aec9c41 100644 --- a/meta-oe/recipes-support/freerdp/freerdp_git.bb +++ b/meta-oe/recipes-support/freerdp/freerdp_git.bb | |||
@@ -10,14 +10,13 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" | |||
10 | 10 | ||
11 | inherit pkgconfig cmake gitpkgv | 11 | inherit pkgconfig cmake gitpkgv |
12 | 12 | ||
13 | PV = "1.2.5+gitr${SRCPV}" | 13 | PV = "2.0.0+gitr${SRCPV}" |
14 | PKGV = "${GITPKGVTAG}" | 14 | PKGV = "${GITPKGVTAG}" |
15 | 15 | ||
16 | SRCREV = "62da9d28c674814c81c245c1c7882eb0da7be76b" | 16 | SRCREV = "1648deb435ad52206f7aa2afe4b4dff71d9329bc" |
17 | SRC_URI = "git://github.com/FreeRDP/FreeRDP.git \ | 17 | SRC_URI = "git://github.com/FreeRDP/FreeRDP.git \ |
18 | file://winpr-makecert-Build-with-install-RPATH.patch \ | 18 | file://winpr-makecert-Build-with-install-RPATH.patch \ |
19 | file://0001-FindGStreamer_1_0-fix-build-failure-for-new-gstreame.patch \ | 19 | file://0001-Fix-gstreamer-1.0-detection.patch \ |
20 | file://0003-add-missing-define.patch \ | ||
21 | " | 20 | " |
22 | 21 | ||
23 | S = "${WORKDIR}/git" | 22 | S = "${WORKDIR}/git" |
@@ -57,7 +56,7 @@ PACKAGES_DYNAMIC += "^libfreerdp-plugin-.*" | |||
57 | # we will need winpr-makecert to generate TLS certificates | 56 | # we will need winpr-makecert to generate TLS certificates |
58 | do_install_append () { | 57 | do_install_append () { |
59 | install -d ${D}${bindir} | 58 | install -d ${D}${bindir} |
60 | install -m755 winpr/tools/makecert/cli/winpr-makecert ${D}${bindir} | 59 | install -m755 winpr/tools/makecert-cli/winpr-makecert ${D}${bindir} |
61 | rm -rf ${D}${libdir}/cmake | 60 | rm -rf ${D}${libdir}/cmake |
62 | rm -rf ${D}${libdir}/freerdp | 61 | rm -rf ${D}${libdir}/freerdp |
63 | } | 62 | } |