diff options
| author | Manuel Bachmann <manuel.bachmann@iot.bzh> | 2015-10-12 16:09:01 +0200 |
|---|---|---|
| committer | Martin Jansa <Martin.Jansa@gmail.com> | 2015-10-26 21:37:38 +0100 |
| commit | bf7d1ab47f2923852aec48ca88529e249556fb50 (patch) | |
| tree | af87e84581889f013413a2e2c41253004940a023 /meta-oe/recipes-support/freerdp/freerdp.inc | |
| parent | aaf7140847f33b85dbe6382d4084e44e3247e34c (diff) | |
| download | meta-openembedded-bf7d1ab47f2923852aec48ca88529e249556fb50.tar.gz | |
freerdp: get out of PNBLACKLIST, fix build, improve
We make the "freerdp" recipe active again, fix the build
by pulling a more recent version (the "stable" branches are
buggy and useless), and fix ARM runtime with -fPIC.
We can then :
- make X11 non-mandatory ;
- add support for Wayland ("wlfreerdp" client) ;
- add support for DirectFB ("dfreerdp" client) ;
- add support for GStreamer 1.0 ;
- make "heavy" features such as pulseaudio, cups...
non-mandatory.
We really want to install the "winpr-makecert" tool to have
TLS, but CMake does not position its RPATH cleanly, so let
us have a custom patch for that until it gets sorted out.
Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Diffstat (limited to 'meta-oe/recipes-support/freerdp/freerdp.inc')
| -rw-r--r-- | meta-oe/recipes-support/freerdp/freerdp.inc | 39 |
1 files changed, 31 insertions, 8 deletions
diff --git a/meta-oe/recipes-support/freerdp/freerdp.inc b/meta-oe/recipes-support/freerdp/freerdp.inc index 34dac4b7e7..2937bc59bb 100644 --- a/meta-oe/recipes-support/freerdp/freerdp.inc +++ b/meta-oe/recipes-support/freerdp/freerdp.inc | |||
| @@ -1,23 +1,39 @@ | |||
| 1 | # Copyright (C) 2010-2012 O.S. Systems Software Ltda. All Rights Reserved | 1 | # Copyright (C) 2010-2012 O.S. Systems Software Ltda. All Rights Reserved |
| 2 | # Released under the MIT license | 2 | # Released under the MIT license |
| 3 | 3 | ||
| 4 | DESCRIPTION = "FreeRDP RDP client" | 4 | DESCRIPTION = "FreeRDP RDP client & server library" |
| 5 | HOMEPAGE = "http://www.freerdp.com" | 5 | HOMEPAGE = "http://www.freerdp.com" |
| 6 | DEPENDS = "virtual/libx11 openssl libxcursor libxv cups alsa-lib pulseaudio pcsc-lite libxkbfile libxinerama" | 6 | DEPENDS = "openssl alsa-lib pcsc-lite" |
| 7 | SECTION = "x11/network" | 7 | SECTION = "net" |
| 8 | LICENSE = "Apache-2.0" | 8 | LICENSE = "Apache-2.0" |
| 9 | LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" | 9 | LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" |
| 10 | 10 | ||
| 11 | inherit pkgconfig cmake | 11 | inherit pkgconfig cmake |
| 12 | 12 | ||
| 13 | EXTRA_OECMAKE += "-DWITH_PULSEAUDIO=ON \ | 13 | EXTRA_OECMAKE += "-DWITH_ALSA=ON \ |
| 14 | -DWITH_PCSC=ON \ | 14 | -DWITH_PCSC=ON \ |
| 15 | -DWITH_CUPS=ON \ | ||
| 16 | -DWITH_FFMPEG=OFF \ | 15 | -DWITH_FFMPEG=OFF \ |
| 17 | -DWITH_CUNIT=OFF \ | 16 | -DWITH_CUNIT=OFF \ |
| 18 | -DWITH_X11=ON \ | 17 | -DWITH_NEON=OFF \ |
| 19 | -DWITH_XKBFILE=ON \ | 18 | " |
| 20 | -DWITH_XINERAMA=ON" | 19 | |
| 20 | PACKAGECONFIG ??= " \ | ||
| 21 | ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}\ | ||
| 22 | ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)}\ | ||
| 23 | ${@bb.utils.contains('DISTRO_FEATURES', 'directfb', 'directfb', '', d)}\ | ||
| 24 | ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam', '', d)}\ | ||
| 25 | ${@bb.utils.contains('DISTRO_FEATURES', 'pulseaudio', 'pulseaudio', '', d)}\ | ||
| 26 | gstreamer cups \ | ||
| 27 | " | ||
| 28 | |||
| 29 | X11_DEPS = "virtual/libx11 libxinerama libxext libxcursor libxv libxi libxrender libxfixes libxdamage libxrandr libxkbfile" | ||
| 30 | PACKAGECONFIG[x11] = "-DWITH_X11=ON -DWITH_XINERAMA=ON -DWITH_XEXT=ON -DWITH_XCURSOR=ON -DWITH_XV=ON -DWITH_XI=ON -DWITH_XRENDER=ON -DWITH_XFIXES=ON -DWITH_XDAMAGE=ON -DWITH_XRANDR=ON -DWITH_XKBFILE=ON,-DWITH_X11=OFF,${X11_DEPS}" | ||
| 31 | PACKAGECONFIG[wayland] = "-DWITH_WAYLAND=ON,-DWITH_WAYLAND=OFF,wayland" | ||
| 32 | PACKAGECONFIG[directfb] = "-DWITH_DIRECTFB=ON,-DWITH_DIRECTFB=OFF,directfb" | ||
| 33 | PACKAGECONFIG[pam] = "-DWITH_PAM=ON,-DWITH_PAM=OFF,libpam" | ||
| 34 | PACKAGECONFIG[pulseaudio] = "-DWITH_PULSEAUDIO=ON,-DWITH_PULSEAUDIO=OFF,pulseaudio" | ||
| 35 | PACKAGECONFIG[gstreamer] = "-DWITH_GSTREAMER_1_0=ON,-DWITH_GSTREAMER_1_0=OFF,gstreamer1.0 gstreamer1.0-plugins-base" | ||
| 36 | PACKAGECONFIG[cups] = "-DWITH_CUPS=ON,-DWITH_CUPS=OFF,cups" | ||
| 21 | 37 | ||
| 22 | PACKAGES =+ "libfreerdp" | 38 | PACKAGES =+ "libfreerdp" |
| 23 | 39 | ||
| @@ -26,6 +42,13 @@ FILES_libfreerdp = "${libdir}/lib*${SOLIBS}" | |||
| 26 | 42 | ||
| 27 | PACKAGES_DYNAMIC += "^libfreerdp-plugin-.*" | 43 | PACKAGES_DYNAMIC += "^libfreerdp-plugin-.*" |
| 28 | 44 | ||
| 45 | # we will need winpr-makecert to generate TLS certificates | ||
| 46 | do_install_append () { | ||
| 47 | install -m755 winpr/tools/makecert/cli/winpr-makecert ${D}${bindir} | ||
| 48 | rm -rf ${D}/${libdir}/cmake | ||
| 49 | rm -rf ${D}/${libdir}/freerdp | ||
| 50 | } | ||
| 51 | |||
| 29 | python populate_packages_prepend () { | 52 | python populate_packages_prepend () { |
| 30 | freerdp_root = d.expand('${libdir}/freerdp') | 53 | freerdp_root = d.expand('${libdir}/freerdp') |
| 31 | 54 | ||
