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