1PORTNAME=	remmina
2DISTVERSION=	1.4.40
3PORTREVISION=	1
4CATEGORIES=	net gnome
5
6MAINTAINER=	ports@MidnightBSD.org
7COMMENT=	GTK Remote Desktop Client
8WWW=		https://www.remmina.org/
9
10LICENSE=	gpl2+
11LICENSE_FILE=	${WRKSRC}/LICENSE
12
13LIB_DEPENDS=	libayatana-appindicator3.so:devel/libayatana-appindicator \
14		libcurl.so:ftp/curl \
15		libjson-glib-1.0.so:devel/json-glib \
16		libsodium.so:security/libsodium \
17		libwayland-client.so:graphics/wayland
18
19FLAVORS=		default lite
20lite_PKGNAMESUFFIX=	-lite
21lite_DESCR=		${.CURDIR}/pkg-descr-lite
22
23USES=		cmake compiler:c11 desktop-file-utils gettext gnome localbase:ldflags pathfix \
24		pkgconfig shared-mime-info shebangfix ssl xorg
25
26USE_GITLAB=	yes
27GL_ACCOUNT=	Remmina
28GL_PROJECT=	Remmina
29GL_TAGNAME=	2a455eadd6462457d08c2d066c5c245e0dee3bf9
30
31USE_GNOME=	cairo gdkpixbuf glib20 gtk30 pango
32
33USE_XORG=	ice sm x11 xext
34
35SHEBANG_FILES=	data/desktop/remmina-file-wrapper.in
36bash_CMD=	${SH}
37
38CONFLICTS_INSTALL=	remmina-plugin*
39
40OPTIONS_DEFINE=		AVAHI CUPS GCRYPT NLS PYTHON SSH TERM
41OPTIONS_DEFAULT=	AVAHI CUPS GCRYPT NLS SSH TERM \
42			EXEC PULSEAUDIO RDP SECRET SPICE VNC WWW BASH
43OPTIONS_GROUP=		PLUGINS
44OPTIONS_GROUP_PLUGINS=	EXEC GVNC KWALLET PULSEAUDIO RDP SECRET SPICE VNC WWW
45OPTIONS_SINGLE=		SHELL
46OPTIONS_SINGLE_SHELL=	BASH ZSH
47OPTIONS_SUB=		yes
48
49.if ${FLAVOR:U} == lite
50OPTIONS_EXCLUDE=	AVAHI CUPS KWALLET PYTHON SECRET SPICE SSH TERM WWW
51COMMENT+=		(lite flavor)
52.endif
53
54AVAHI_DESC=		Build with Avahi support
55BASH_DESC=		Use BASH for shell wrapper scripts
56EXEC_DESC=		Plugin to execute a command
57GCRYPT_DESC=		Build with libgcrypt support for password encryption
58GVNC_DESC=		Build with Gnome VNC support
59PULSEAUDIO_DESC=	PulseAudio sound support for GVNC: require net/gtk-vnc build with PULSEAUDIO
60PYTHON_DESC=		Build with support for Python plugins
61RDP_DESC=		Remote Desktop Protocol plugin
62SECRET_DESC=		GNOME Keyring plugin
63SHELL_DESC=		Shell Scripts
64SPICE_DESC=		Spice protocol plugin
65SSH_DESC=		Build with SSH tunneling support
66TERM_DESC=		Build with terminal support
67VNC_DESC=		VNC protocol plugin
68WWW_DESC=		Plugin to open an authenticated web browser
69ZSH_DESC=		Use ZSH for shell wrapper scripts
70
71AVAHI_LIB_DEPENDS=	libavahi-client.so:net/avahi-app \
72			libavahi-ui-gtk3.so:net/avahi-gtk3
73AVAHI_CMAKE_BOOL=	WITH_AVAHI
74
75BASH_RUN_DEPENDS=	bash:shells/bash
76BASH_VARS=		SH_BIN=${PREFIX}/bin/bash
77
78CUPS_LIB_DEPENDS=	libcups.so:print/cups
79CUPS_CMAKE_BOOL=	WITH_CUPS
80
81GCRYPT_LIB_DEPENDS=	libgcrypt.so:security/libgcrypt
82GCRYPT_CMAKE_BOOL=	WITH_GCRYPT
83
84GVNC_LIB_DEPENDS=	libgtk-vnc-2.0.so:net/gtk-vnc
85GVNC_CMAKE_BOOL=	WITH_GVNC
86
87KWALLET_USES=		kde:5 qt:5
88KWALLET_USE=		kde=wallet qt=buildtools:build,core,gui,qmake:build
89KWALLET_CMAKE_BOOL=	WITH_KF5WALLET
90
91NLS_CMAKE_BOOL=		WITH_TRANSLATIONS
92
93PULSEAUDIO_EXTRA_PATCHES_OFF=	${FILESDIR}/extra-patch-nopulse
94
95PYTHON_USES=		python
96PYTHON_CMAKE_BOOL=	WITH_PYTHONLIBS
97
98RDP_LIB_DEPENDS=	libfreerdp-client2.so:net/freerdp \
99			libwinpr2.so.2:net/freerdp
100
101SECRET_LIB_DEPENDS=	libsecret-1.so:security/libsecret
102SECRET_RUN_DEPENDS=	gnome-keyring:security/gnome-keyring
103
104SPICE_BUILD_DEPENDS=	spice-protocol>=0.12.15:devel/spice-protocol
105SPICE_LIB_DEPENDS=	libspice-client-gtk-3.0.so:deskutils/spice-gtk
106SPICE_CMAKE_BOOL=	WITH_SPICE
107
108SSH_LIB_DEPENDS=	libssh.so:security/libssh
109SSH_CMAKE_BOOL=		WITH_LIBSSH
110SSH_LDFLAGS=		-fstack-protector
111
112TERM_USE=		gnome=vte3
113TERM_CMAKE_BOOL=	WITH_VTE
114
115VNC_LIB_DEPENDS=	libvncserver.so:net/libvncserver
116VNC_CMAKE_BOOL=		WITH_LIBVNCSERVER
117
118WWW_LIB_DEPENDS=	libsoup-3.0.so:devel/libsoup3 \
119			libwebkit2gtk-4.1.so:www/webkit2-gtk@41
120WWW_CMAKE_BOOL=		WITH_WEBKIT2GTK
121
122ZSH_RUN_DEPENDS=	zsh:shells/zsh
123ZSH_VARS=		SH_BIN=${PREFIX}/bin/zsh
124
125bash_CMD=		${SH_BIN}
126
127post-patch-GCRYPT-off:
128	${REINPLACE_CMD} -e '/find_suggested_package(GCRYPT)/d' ${WRKSRC}/CMakeLists.txt
129
130post-patch-RDP-off:
131	${REINPLACE_CMD} -e '/find_suggested_package(FREERDP)/d' ${WRKSRC}/plugins/CMakeLists.txt
132	${REINPLACE_CMD} -e '/add_subdirectory(rdp)/d' ${WRKSRC}/plugins/CMakeLists.txt
133
134post-patch-SECRET-off:
135	${REINPLACE_CMD} -e '/add_subdirectory(plugins\/secret)/d' ${WRKSRC}/CMakeLists.txt
136
137post-patch-SPICE-off:
138	${REINPLACE_CMD} -e '/find_suggested_package(SPICE)/d' ${WRKSRC}/plugins/CMakeLists.txt
139	${REINPLACE_CMD} -e '/add_subdirectory(spice)/d' ${WRKSRC}/plugins/CMakeLists.txt
140
141post-patch-SSH-off:
142	${REINPLACE_CMD} -e '/find_suggested_package(LIBSSH)/d' ${WRKSRC}/plugins/CMakeLists.txt
143
144post-patch-VNC-off:
145	${REINPLACE_CMD} -e' /find_suggested_package(LIBVNCSERVER)/d' ${WRKSRC}/plugins/CMakeLists.txt
146	${REINPLACE_CMD} -e '/add_subdirectory(vnc)/d' ${WRKSRC}/plugins/CMakeLists.txt
147
148post-patch-WWW-off:
149	${REINPLACE_CMD} -e '/add_subdirectory(www)/d' ${WRKSRC}/plugins/CMakeLists.txt
150
151.include <bsd.port.mk>
152