You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
181 lines
4.0 KiB
181 lines
4.0 KiB
# Copyright 2011-2024 Gentoo Authors
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
EAPI=8
|
|
|
|
inherit cmake flag-o-matic
|
|
|
|
if [[ ${PV} == *9999 ]]; then
|
|
inherit git-r3
|
|
EGIT_REPO_URI="https://github.com/FreeRDP/FreeRDP.git"
|
|
case ${PV} in
|
|
2.*) EGIT_BRANCH="stable-2.0";;
|
|
esac
|
|
else
|
|
MY_P=${P/_/-}
|
|
S="${WORKDIR}/${MY_P}"
|
|
SRC_URI="https://pub.freerdp.com/releases/${MY_P}.tar.gz"
|
|
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
|
|
fi
|
|
|
|
DESCRIPTION="Free implementation of the Remote Desktop Protocol"
|
|
HOMEPAGE="https://www.freerdp.com/"
|
|
|
|
LICENSE="Apache-2.0"
|
|
SLOT="3"
|
|
IUSE="aad alsa cpu_flags_arm_neon +client cups debug +ffmpeg +fuse gstreamer +icu jpeg kerberos openh264 pulseaudio sdl server smartcard systemd test usb valgrind wayland X xinerama xv"
|
|
RESTRICT="!test? ( test )"
|
|
|
|
BDEPEND="
|
|
virtual/pkgconfig
|
|
app-text/docbook-xsl-stylesheets
|
|
dev-libs/libxslt
|
|
"
|
|
COMMON_DEPEND="
|
|
dev-libs/openssl:0=
|
|
sys-libs/zlib:0
|
|
aad? ( dev-libs/cJSON )
|
|
alsa? ( media-libs/alsa-lib )
|
|
cups? ( net-print/cups )
|
|
usb? (
|
|
virtual/libudev:0=
|
|
sys-apps/util-linux:0=
|
|
dev-libs/dbus-glib:0=
|
|
virtual/libusb:1=
|
|
)
|
|
X? (
|
|
x11-libs/libXcursor
|
|
x11-libs/libXext
|
|
x11-libs/libXi
|
|
x11-libs/libXrender
|
|
xinerama? ( x11-libs/libXinerama )
|
|
xv? ( x11-libs/libXv )
|
|
)
|
|
ffmpeg? ( media-video/ffmpeg:0= )
|
|
!ffmpeg? (
|
|
x11-libs/cairo:0=
|
|
)
|
|
fuse? ( sys-fs/fuse:3 )
|
|
gstreamer? (
|
|
media-libs/gstreamer:1.0
|
|
media-libs/gst-plugins-base:1.0
|
|
X? ( x11-libs/libXrandr )
|
|
)
|
|
icu? ( dev-libs/icu:0= )
|
|
jpeg? ( media-libs/libjpeg-turbo:0= )
|
|
kerberos? ( virtual/krb5 )
|
|
openh264? ( media-libs/openh264:0= )
|
|
pulseaudio? ( media-libs/libpulse )
|
|
sdl? (
|
|
media-libs/libsdl2[haptic(+),joystick(+),sound(+),video(+)]
|
|
media-libs/sdl2-ttf
|
|
)
|
|
server? (
|
|
X? (
|
|
x11-libs/libXcursor
|
|
x11-libs/libXdamage
|
|
x11-libs/libXext
|
|
x11-libs/libXfixes
|
|
x11-libs/libXrandr
|
|
x11-libs/libXtst
|
|
xinerama? ( x11-libs/libXinerama )
|
|
)
|
|
)
|
|
smartcard? (
|
|
dev-libs/pkcs11-helper
|
|
sys-apps/pcsc-lite
|
|
)
|
|
systemd? ( sys-apps/systemd:0= )
|
|
client? (
|
|
wayland? (
|
|
dev-libs/wayland
|
|
x11-libs/libxkbcommon
|
|
)
|
|
)
|
|
X? (
|
|
x11-libs/libX11
|
|
x11-libs/libxkbfile
|
|
)
|
|
"
|
|
DEPEND="${COMMON_DEPEND}
|
|
valgrind? ( dev-debug/valgrind )
|
|
"
|
|
RDEPEND="${COMMON_DEPEND}
|
|
!net-misc/freerdp:0
|
|
client? ( !net-misc/freerdp:2[client] )
|
|
server? ( !net-misc/freerdp:2[server] )
|
|
"
|
|
|
|
option() {
|
|
usex "$1" ON OFF
|
|
}
|
|
|
|
option_client() {
|
|
if use client; then
|
|
option "$1"
|
|
else
|
|
echo OFF
|
|
fi
|
|
}
|
|
|
|
src_configure() {
|
|
# bug #881695
|
|
filter-lto
|
|
|
|
local mycmakeargs=(
|
|
-Wno-dev
|
|
|
|
# https://bugs.gentoo.org/927037
|
|
-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=OFF
|
|
|
|
-DBUILD_TESTING=$(option test)
|
|
-DCHANNEL_URBDRC=$(option usb)
|
|
-DWITH_AAD=$(option aad)
|
|
-DWITH_ALSA=$(option alsa)
|
|
-DWITH_CCACHE=OFF
|
|
-DWITH_CLIENT=$(option client)
|
|
-DWITH_CLIENT_SDL=$(option sdl)
|
|
-DWITH_SAMPLE=OFF
|
|
-DWITH_CUPS=$(option cups)
|
|
-DWITH_DEBUG_ALL=$(option debug)
|
|
-DWITH_MANPAGES=ON
|
|
-DWITH_FFMPEG=$(option ffmpeg)
|
|
-DWITH_FREERDP_DEPRECATED_COMMANDLINE=ON
|
|
-DWITH_SWSCALE=$(option ffmpeg)
|
|
-DWITH_CAIRO=$(option !ffmpeg)
|
|
-DWITH_DSP_FFMPEG=$(option ffmpeg)
|
|
-DWITH_FUSE=$(option fuse)
|
|
-DWITH_GSTREAMER_1_0=$(option gstreamer)
|
|
-DWITH_JPEG=$(option jpeg)
|
|
-DWITH_KRB5=$(option kerberos)
|
|
-DWITH_NEON=$(option cpu_flags_arm_neon)
|
|
-DWITH_OPENH264=$(option openh264)
|
|
-DWITH_OSS=OFF
|
|
-DWITH_PCSC=$(option smartcard)
|
|
-DWITH_PKCS11=$(option smartcard)
|
|
-DWITH_PULSE=$(option pulseaudio)
|
|
-DWITH_SERVER=$(option server)
|
|
-DWITH_LIBSYSTEMD=$(option systemd)
|
|
-DWITH_UNICODE_BUILTIN=$(option !icu)
|
|
-DWITH_VALGRIND_MEMCHECK=$(option valgrind)
|
|
-DWITH_X11=$(option X)
|
|
-DWITH_XINERAMA=$(option xinerama)
|
|
-DWITH_XV=$(option xv)
|
|
-DWITH_WAYLAND=$(option_client wayland)
|
|
-DWITH_WEBVIEW=OFF
|
|
-DWITH_WINPR_TOOLS=$(option server)
|
|
)
|
|
cmake_src_configure
|
|
}
|
|
|
|
src_test() {
|
|
local myctestargs=( -E TestBacktrace )
|
|
has network-sandbox ${FEATURES} && myctestargs+=( -E TestConnect )
|
|
cmake_src_test
|
|
}
|
|
|
|
src_install() {
|
|
cmake_src_install
|
|
mv "${ED}"/usr/share/man/man7/wlog{,3}.7 || die
|
|
}
|