Files
meta-openembedded/meta-oe/recipes-support/freerdp/freerdp_2.4.1.bb
Marek Vasut 23b5517f82 freerdp: Make PCSC dependency optional
The PCSC is used for smartcard forwarding, make this optional as
not all users need this functionality and it pulls in considerable
amount of dependencies. Keep this enabled by default to retain
backward compatibility.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Alexander Kanavin <alex@linutronix.de>
Cc: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-11-18 11:07:56 -08:00

86 lines
3.1 KiB
BlitzBasic

# Copyright (C) 2010-2012 O.S. Systems Software Ltda. All Rights Reserved
# Released under the MIT license
DESCRIPTION = "FreeRDP RDP client & server library"
HOMEPAGE = "http://www.freerdp.com"
DEPENDS = "openssl alsa-lib libusb1"
SECTION = "net"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
inherit pkgconfig cmake gitpkgv
PE = "1"
PKGV = "${GITPKGVTAG}"
SRCREV = "d39a7ba5c38e3ba3b99b1558dc2ab0970cbfb0c5"
SRC_URI = "git://github.com/FreeRDP/FreeRDP.git;branch=stable-2.0;protocol=https \
file://winpr-makecert-Build-with-install-RPATH.patch \
"
S = "${WORKDIR}/git"
EXTRA_OECMAKE += " \
-DWITH_ALSA=ON \
-DWITH_FFMPEG=OFF \
-DWITH_CUNIT=OFF \
-DWITH_NEON=OFF \
-DBUILD_STATIC_LIBS=OFF \
-DCMAKE_POSITION_INDEPENDANT_CODE=ON \
-DWITH_MANPAGES=OFF \
"
PACKAGECONFIG ??= " \
${@bb.utils.filter('DISTRO_FEATURES', 'directfb pam pulseaudio wayland x11', d)}\
gstreamer cups pcsc \
"
X11_DEPS = "virtual/libx11 libxinerama libxext libxcursor libxv libxi libxrender libxfixes libxdamage libxrandr libxkbfile"
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}"
PACKAGECONFIG[wayland] = "-DWITH_WAYLAND=ON,-DWITH_WAYLAND=OFF,wayland wayland-native libxkbcommon"
PACKAGECONFIG[directfb] = "-DWITH_DIRECTFB=ON,-DWITH_DIRECTFB=OFF,directfb"
PACKAGECONFIG[pam] = "-DWITH_PAM=ON,-DWITH_PAM=OFF,libpam"
PACKAGECONFIG[pcsc] = "-DWITH_PCSC=ON,-DWITH_PCSC=OFF,pcsc-lite"
PACKAGECONFIG[pulseaudio] = "-DWITH_PULSEAUDIO=ON,-DWITH_PULSEAUDIO=OFF,pulseaudio"
PACKAGECONFIG[gstreamer] = "-DWITH_GSTREAMER_1_0=ON,-DWITH_GSTREAMER_1_0=OFF,gstreamer1.0 gstreamer1.0-plugins-base"
PACKAGECONFIG[cups] = "-DWITH_CUPS=ON,-DWITH_CUPS=OFF,cups"
PACKAGES =+ "libfreerdp"
LEAD_SONAME = "libfreerdp.so"
FILES:libfreerdp = "${libdir}/lib*${SOLIBS}"
PACKAGES_DYNAMIC += "^libfreerdp-plugin-.*"
# we will need winpr-makecert to generate TLS certificates
do_install:append () {
install -d ${D}${bindir}
install -m755 winpr/tools/makecert-cli/winpr-makecert ${D}${bindir}
rm -rf ${D}${libdir}/cmake
rm -rf ${D}${libdir}/freerdp
}
python populate_packages:prepend () {
freerdp_root = d.expand('${libdir}/freerdp')
do_split_packages(d, freerdp_root, '^(audin_.*)\.so$',
output_pattern='libfreerdp-plugin-%s',
description='FreeRDP plugin %s',
prepend=True, extra_depends='libfreerdp-plugin-audin')
do_split_packages(d, freerdp_root, '^(rdpsnd_.*)\.so$',
output_pattern='libfreerdp-plugin-%s',
description='FreeRDP plugin %s',
prepend=True, extra_depends='libfreerdp-plugin-rdpsnd')
do_split_packages(d, freerdp_root, '^(tsmf_.*)\.so$',
output_pattern='libfreerdp-plugin-%s',
description='FreeRDP plugin %s',
prepend=True, extra_depends='libfreerdp-plugin-tsmf')
do_split_packages(d, freerdp_root, '^([^-]*)\.so$',
output_pattern='libfreerdp-plugin-%s',
description='FreeRDP plugin %s',
prepend=True, extra_depends='')
}