summaryrefslogtreecommitdiff
path: root/net/remmina/Makefile
blob: 4b643650232282179d911e4381ed6f427bb77212 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
# Created by: Alexander Logvinov <ports@logvinov.com>

PORTNAME=	remmina
DISTVERSION=	1.4.27
PORTREVISION=	1
CATEGORIES=	net gnome

MAINTAINER=	fernape@FreeBSD.org
COMMENT=	GTK+ Remote Desktop Client

LICENSE=	GPLv2+
LICENSE_FILE=	${WRKSRC}/LICENSE

LIB_DEPENDS=	libappindicator3.so:devel/libappindicator \
		libjson-glib-1.0.so:devel/json-glib \
		libpcre2-8.so:devel/pcre2 \
		libsodium.so:security/libsodium \
		libsoup-2.4.so:devel/libsoup \
		libwayland-client.so:graphics/wayland

FLAVORS=		default lite
lite_PKGNAMESUFFIX=	-lite
lite_DESCR=		${.CURDIR}/pkg-descr-lite

USES=		cmake compiler:c11 desktop-file-utils gettext gnome localbase:ldflags pathfix \
		pkgconfig shared-mime-info ssl shebangfix xorg

USE_GITLAB=	yes
GL_ACCOUNT=	Remmina
GL_PROJECT=	Remmina
GL_COMMIT=	9d409a3556c8c2759a376b4f4ac5149db7aacf4f

USE_GNOME=	atk cairo gdkpixbuf2 glib20 gtk30 pango

USE_XORG=	ice sm x11 xext

SHEBANG_FILES=	data/desktop/remmina-file-wrapper.in
bash_CMD=	${SH}

CMAKE_ARGS=	-DWITH_APPINDICATOR:BOOL=false

CONFLICTS_INSTALL=	remmina-plugin*

OPTIONS_DEFINE=		AVAHI CUPS GCRYPT NLS PYTHON SSH TERM
OPTIONS_DEFAULT=	AVAHI CUPS GCRYPT NLS SSH TERM \
			EXEC RDP SECRET SPICE VNC WWW BASH
OPTIONS_GROUP=		PLUGINS
OPTIONS_GROUP_PLUGINS=	EXEC KWALLET RDP SECRET SPICE VNC WWW
OPTIONS_SINGLE=		SHELL
OPTIONS_SINGLE_SHELL=	BASH ZSH
OPTIONS_SUB=		yes

.if ${FLAVOR:U} == lite
OPTIONS_EXCLUDE=	AVAHI CUPS KWALLET PYTHON SECRET SPICE SSH TERM WWW
COMMENT+=		(lite flavor)
.endif

AVAHI_DESC=		Build with Avahi support
BASH_DESC=		Use BASH for shell wrapper scripts
EXEC_DESC=		Plugin to execute a command
GCRYPT_DESC=		Build with libgcrypt support for password encryption
PYTHON_DESC=		Build with support for Python plugins
RDP_DESC=		Remote Desktop Protocol plugin
SECRET_DESC=		GNOME Keyring plugin
SHELL_DESC=		Shell Scripts
SPICE_DESC=		Spice protocol plugin
SSH_DESC=		Build with SSH tunneling support
TERM_DESC=		Build with terminal support
VNC_DESC=		VNC protocol plugin
WWW_DESC=		Plugin to open an authenticated web browser
ZSH_DESC=		Use ZSH for shell wrapper scripts

AVAHI_LIB_DEPENDS=	libavahi-client.so:net/avahi-app \
			libavahi-ui-gtk3.so:net/avahi-gtk3
AVAHI_CMAKE_BOOL=	WITH_AVAHI

BASH_RUN_DEPENDS=	bash:shells/bash
BASH_VARS=		SH_BIN=${PREFIX}/bin/bash

CUPS_LIB_DEPENDS=	libcups.so:print/cups
CUPS_CMAKE_BOOL=	WITH_CUPS

GCRYPT_LIB_DEPENDS=	libgcrypt.so:security/libgcrypt
GCRYPT_CMAKE_BOOL=	WITH_GCRYPT

KWALLET_USES=		kde:5 qt:5
KWALLET_USE=		kde=wallet qt=buildtools_build,core,gui,qmake_build
KWALLET_CMAKE_BOOL=	WITH_KF5WALLET

NLS_CMAKE_BOOL=		WITH_TRANSLATIONS

PYTHON_USES=		python
PYTHON_CMAKE_BOOL=	WITH_PYTHONLIBS

RDP_LIB_DEPENDS=	libfreerdp2.so:net/freerdp libxkbfile.so:x11/libxkbfile

SECRET_LIB_DEPENDS=	libsecret-1.so:security/libsecret
SECRET_RUN_DEPENDS=	gnome-keyring:security/gnome-keyring

SPICE_BUILD_DEPENDS=	spice-protocol>=0.12.15:devel/spice-protocol
SPICE_LIB_DEPENDS=	libspice-client-gtk-3.0.so:deskutils/spice-gtk
SPICE_CMAKE_BOOL=	WITH_SPICE

SSH_LIB_DEPENDS=	libssh.so:security/libssh
SSH_CMAKE_BOOL=		WITH_LIBSSH
SSH_LDFLAGS=		-fstack-protector

TERM_USE=		gnome=vte3
TERM_CMAKE_BOOL=	WITH_VTE

VNC_LIB_DEPENDS=	libgnutls.so:security/gnutls \
			libvncserver.so:net/libvncserver
VNC_USES=		jpeg
VNC_CMAKE_BOOL=		WITH_LIBVNCSERVER

WWW_LIB_DEPENDS=	libharfbuzz.so:print/harfbuzz \
			libsoup-2.4.so:devel/libsoup \
			libwebkit2gtk-4.0.so:www/webkit2-gtk3
WWW_CMAKE_BOOL=		WITH_WEBKIT2GTK

ZSH_RUN_DEPENDS=	zsh:shells/zsh
ZSH_VARS=		SH_BIN=${PREFIX}/bin/zsh

bash_CMD=		${SH_BIN}

post-patch:
	${REINPLACE_CMD} -e 's,FreeBSD,FreeBSD|DragonFly,' \
		${WRKSRC}/CMakeLists.txt

post-patch-EXEC-off:
	${REINPLACE_CMD} -e '/add_subdirectory(exec)/d' ${WRKSRC}/plugins/CMakeLists.txt

post-patch-GCRYPT-off:
	${REINPLACE_CMD} -e '/find_suggested_package(GCRYPT)/d' ${WRKSRC}/CMakeLists.txt

post-patch-KWALLET-off:
	${REINPLACE_CMD} -e '/add_definitions(-DWITH_KF5WALLET)/d' ${WRKSRC}/plugins/CMakeLists.txt
	${REINPLACE_CMD} -e '/add_subdirectory(kwallet)/d' ${WRKSRC}/plugins/CMakeLists.txt

post-patch-RDP-off:
	${REINPLACE_CMD} -e '/find_suggested_package(FREERDP)/d' ${WRKSRC}/plugins/CMakeLists.txt
	${REINPLACE_CMD} -e '/add_subdirectory(rdp)/d' ${WRKSRC}/plugins/CMakeLists.txt

post-patch-SECRET-off:
	${REINPLACE_CMD} -e '/add_subdirectory(plugins\/secret)/d' ${WRKSRC}/CMakeLists.txt

post-patch-SPICE-off:
	${REINPLACE_CMD} -e '/find_suggested_package(SPICE)/d' ${WRKSRC}/plugins/CMakeLists.txt
	${REINPLACE_CMD} -e '/add_subdirectory(spice)/d' ${WRKSRC}/plugins/CMakeLists.txt

post-patch-SSH-off:
	${REINPLACE_CMD} -e '/find_suggested_package(LIBSSH)/d' ${WRKSRC}/plugins/CMakeLists.txt

post-patch-VNC-off:
	${REINPLACE_CMD} -e' /find_suggested_package(LIBVNCSERVER)/d' ${WRKSRC}/plugins/CMakeLists.txt
	${REINPLACE_CMD} -e '/add_subdirectory(vnc)/d' ${WRKSRC}/plugins/CMakeLists.txt

post-patch-WWW-off:
	${REINPLACE_CMD} -e '/add_subdirectory(www)/d' ${WRKSRC}/plugins/CMakeLists.txt

.include <bsd.port.mk>