aboutsummaryrefslogtreecommitdiff
path: root/net/remmina/Makefile
blob: 2fd2d510d1d2e05686f80141ee1dba31050df513 (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
# Created by: Alexander Logvinov <ports@logvinov.com>

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

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

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

LIB_DEPENDS=	libjson-glib-1.0.so:devel/json-glib \
		libpcre2-8.so:devel/pcre2 \
		libsodium.so:security/libsodium \
		libsoup-2.4.so:devel/libsoup

CONFLICTS_INSTALL=	remmina-plugin*

FLAVORS=		default lite
lite_DESCR=		${.CURDIR}/pkg-descr-lite
lite_PKGNAMESUFFIX=	-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=	d848e92df4d19145a10b7872bf85994d5fbf340d

USE_GNOME=	atk cairo gdkpixbuf2 glib20 gtk30 pango
USE_XORG=	ice sm x11 xext xkbfile
USE_LDCONFIG=	yes
INSTALLS_ICONS=	yes
CMAKE_ARGS=	-DWITH_APPINDICATOR:BOOL=false
SHEBANG_FILES=	data/desktop/remmina-file-wrapper.in
bash_CMD=	${SH}

OPTIONS_DEFINE=		AVAHI CUPS GCRYPT NLS SSH TERM
OPTIONS_GROUP=		PLUGINS
OPTIONS_GROUP_PLUGINS=	EXEC KWALLET NX RDP SECRET SPICE ST VNC WWW XDMCP
OPTIONS_DEFAULT=	AVAHI CUPS GCRYPT NLS SSH TERM \
			EXEC NX RDP SECRET SPICE ST VNC WWW XDMCP
OPTIONS_SUB=		yes

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

AVAHI_DESC=		Build with Avahi support
EXEC_DESC=		Plugin to execute a command
GCRYPT_DESC=		Build with libgcrypt support for password encryption
NX_DESC=		NX protocol plugin
RDP_DESC=		Remote Desktop Protocol plugin
SECRET_DESC=		GNOME Keyring plugin
SPICE_DESC=		Spice protocol plugin
SSH_DESC=		Build with SSH tunneling support
ST_DESC=		(Simple) Terminal Plugin
TERM_DESC=		Build with terminal support
VNC_DESC=		VNC protocol plugin
WWW_DESC=		Plugin to open an authenticated web browser
XDMCP_DESC=		XDMCP protocol plugin

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

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

NX_IMPLIES=		SSH

RDP_LIB_DEPENDS=	libfreerdp2.so:net/freerdp

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_LDFLAGS=		-fstack-protector
SSH_CMAKE_BOOL=		WITH_LIBSSH

ST_IMPLIES=		EXEC

TERM_USE=		gnome=vte3
TERM_CMAKE_BOOL=	WITH_VTE

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

WWW_LIB_DEPENDS=	libwebkit2gtk-4.0.so:www/webkit2-gtk3 \
			libsoup-2.4.so:devel/libsoup

XDMCP_RUN_DEPENDS=	Xephyr:x11-servers/xephyr

post-patch:
	${REINPLACE_CMD} -e 's,FreeBSD,FreeBSD|DragonFly,' \
		${WRKSRC}/CMakeLists.txt \
		${WRKSRC}/src/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-NX-off:
	${REINPLACE_CMD} -e '/find_required_package(XKBFILE)/d' ${WRKSRC}/plugins/CMakeLists.txt
	${REINPLACE_CMD} -e '/add_subdirectory(nx)/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-ST-off:
	${REINPLACE_CMD} -e '/add_subdirectory(st)/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

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

.include <bsd.port.mk>