Patrick Williams | b48b7b4 | 2016-08-17 15:04:38 -0500 | [diff] [blame] | 1 | # Copyright (C) 2010-2012 O.S. Systems Software Ltda. All Rights Reserved |
| 2 | # Released under the MIT license |
| 3 | |
| 4 | DESCRIPTION = "FreeRDP RDP client & server library" |
| 5 | HOMEPAGE = "http://www.freerdp.com" |
| 6 | DEPENDS = "openssl alsa-lib pcsc-lite" |
| 7 | SECTION = "net" |
| 8 | LICENSE = "Apache-2.0" |
| 9 | LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" |
| 10 | |
| 11 | inherit pkgconfig cmake gitpkgv |
| 12 | |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 13 | PE = "1" |
Patrick Williams | b48b7b4 | 2016-08-17 15:04:38 -0500 | [diff] [blame] | 14 | PKGV = "${GITPKGVTAG}" |
| 15 | |
Andrew Geissler | 97771a3 | 2021-03-05 15:23:11 -0600 | [diff] [blame] | 16 | SRCREV = "14c7f7aed7dd4e2454ee0cd81028b9f790885021" |
Andrew Geissler | bffdb3e | 2020-08-21 16:13:29 -0500 | [diff] [blame] | 17 | SRC_URI = "git://github.com/FreeRDP/FreeRDP.git;branch=stable-2.0 \ |
Patrick Williams | b48b7b4 | 2016-08-17 15:04:38 -0500 | [diff] [blame] | 18 | file://winpr-makecert-Build-with-install-RPATH.patch \ |
Patrick Williams | b48b7b4 | 2016-08-17 15:04:38 -0500 | [diff] [blame] | 19 | " |
| 20 | |
| 21 | S = "${WORKDIR}/git" |
| 22 | |
| 23 | EXTRA_OECMAKE += " \ |
| 24 | -DWITH_ALSA=ON \ |
| 25 | -DWITH_PCSC=ON \ |
| 26 | -DWITH_FFMPEG=OFF \ |
| 27 | -DWITH_CUNIT=OFF \ |
| 28 | -DWITH_NEON=OFF \ |
| 29 | -DBUILD_STATIC_LIBS=OFF \ |
| 30 | -DCMAKE_POSITION_INDEPENDANT_CODE=ON \ |
| 31 | -DWITH_MANPAGES=OFF \ |
| 32 | " |
| 33 | |
Brad Bishop | 6e60e8b | 2018-02-01 10:27:11 -0500 | [diff] [blame] | 34 | PACKAGECONFIG ??= " \ |
| 35 | ${@bb.utils.filter('DISTRO_FEATURES', 'directfb pam pulseaudio wayland x11', d)}\ |
| 36 | gstreamer cups \ |
| 37 | " |
Patrick Williams | b48b7b4 | 2016-08-17 15:04:38 -0500 | [diff] [blame] | 38 | |
| 39 | X11_DEPS = "virtual/libx11 libxinerama libxext libxcursor libxv libxi libxrender libxfixes libxdamage libxrandr libxkbfile" |
| 40 | 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}" |
Andrew Geissler | d688a01 | 2020-09-18 13:36:00 -0500 | [diff] [blame] | 41 | PACKAGECONFIG[wayland] = "-DWITH_WAYLAND=ON,-DWITH_WAYLAND=OFF,wayland wayland-native libxkbcommon" |
Patrick Williams | b48b7b4 | 2016-08-17 15:04:38 -0500 | [diff] [blame] | 42 | PACKAGECONFIG[directfb] = "-DWITH_DIRECTFB=ON,-DWITH_DIRECTFB=OFF,directfb" |
| 43 | PACKAGECONFIG[pam] = "-DWITH_PAM=ON,-DWITH_PAM=OFF,libpam" |
| 44 | PACKAGECONFIG[pulseaudio] = "-DWITH_PULSEAUDIO=ON,-DWITH_PULSEAUDIO=OFF,pulseaudio" |
| 45 | PACKAGECONFIG[gstreamer] = "-DWITH_GSTREAMER_1_0=ON,-DWITH_GSTREAMER_1_0=OFF,gstreamer1.0 gstreamer1.0-plugins-base" |
| 46 | PACKAGECONFIG[cups] = "-DWITH_CUPS=ON,-DWITH_CUPS=OFF,cups" |
| 47 | |
| 48 | PACKAGES =+ "libfreerdp" |
| 49 | |
| 50 | LEAD_SONAME = "libfreerdp.so" |
| 51 | FILES_libfreerdp = "${libdir}/lib*${SOLIBS}" |
| 52 | |
| 53 | PACKAGES_DYNAMIC += "^libfreerdp-plugin-.*" |
| 54 | |
| 55 | # we will need winpr-makecert to generate TLS certificates |
| 56 | do_install_append () { |
| 57 | install -d ${D}${bindir} |
Brad Bishop | 316dfdd | 2018-06-25 12:45:53 -0400 | [diff] [blame] | 58 | install -m755 winpr/tools/makecert-cli/winpr-makecert ${D}${bindir} |
Patrick Williams | b48b7b4 | 2016-08-17 15:04:38 -0500 | [diff] [blame] | 59 | rm -rf ${D}${libdir}/cmake |
| 60 | rm -rf ${D}${libdir}/freerdp |
| 61 | } |
| 62 | |
| 63 | python populate_packages_prepend () { |
| 64 | freerdp_root = d.expand('${libdir}/freerdp') |
| 65 | |
| 66 | do_split_packages(d, freerdp_root, '^(audin_.*)\.so$', |
| 67 | output_pattern='libfreerdp-plugin-%s', |
| 68 | description='FreeRDP plugin %s', |
| 69 | prepend=True, extra_depends='libfreerdp-plugin-audin') |
| 70 | |
| 71 | do_split_packages(d, freerdp_root, '^(rdpsnd_.*)\.so$', |
| 72 | output_pattern='libfreerdp-plugin-%s', |
| 73 | description='FreeRDP plugin %s', |
| 74 | prepend=True, extra_depends='libfreerdp-plugin-rdpsnd') |
| 75 | |
| 76 | do_split_packages(d, freerdp_root, '^(tsmf_.*)\.so$', |
| 77 | output_pattern='libfreerdp-plugin-%s', |
| 78 | description='FreeRDP plugin %s', |
| 79 | prepend=True, extra_depends='libfreerdp-plugin-tsmf') |
| 80 | |
| 81 | do_split_packages(d, freerdp_root, '^([^-]*)\.so$', |
| 82 | output_pattern='libfreerdp-plugin-%s', |
| 83 | description='FreeRDP plugin %s', |
| 84 | prepend=True, extra_depends='') |
| 85 | } |