summaryrefslogtreecommitdiff
path: root/x11/squeekboard/Makefile
blob: b03340fe393c556f4990e75f4a8dc6e75ac14e6b (plain)
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
PORTNAME=	squeekboard
DISTVERSIONPREFIX=	v
DISTVERSION=	1.22.0
PORTREVISION=	1
CATEGORIES=	x11 wayland

PATCH_SITES=	${GL_SITE}/${GL_ACCOUNT}/${GL_PROJECT}/-/commit/
PATCHFILES+=	db00c0b4eb73.patch:-p1 # https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/597

MAINTAINER=	jbeich@FreeBSD.org
COMMENT=	On-screen keyboard input method for Wayland
WWW=		https://gitlab.gnome.org/World/Phosh/squeekboard

LICENSE=	GPLv3
LICENSE_FILE=	${WRKSRC}/COPYING

BROKEN_FreeBSD_12_powerpc64=	fails to compile: rs.e2mg9us3-cgu.14:(.text.imservice_handle_commit_state+0x228): undefined reference to 'eekboard_context_service_show_keyboard'
BROKEN_FreeBSD_13_powerpc64=	fails to link: ld: error: undefined symbol: eekboard_context_service_get_overlay

BUILD_DEPENDS=	wayland-protocols>=1.12:graphics/wayland-protocols
LIB_DEPENDS=	libfeedback-0.0.so:accessibility/feedbackd \
		libwayland-client.so:graphics/wayland \
		libxkbcommon.so:x11/libxkbcommon
RUN_DEPENDS=	gsettings-desktop-schemas>0:devel/gsettings-desktop-schemas

USES=		cargo compiler:c11 gettext-tools gnome meson pkgconfig python:build shebangfix
USE_GITLAB=	yes
USE_GNOME=	cairo gdkpixbuf2 gnomedesktop3 gtk30
GL_SITE=	https://gitlab.gnome.org
GL_ACCOUNT=	World/Phosh
SHEBANG_FILES=	tools/entry.py
MAKE_ENV=	${CARGO_ENV}
CARGO_BUILD=	no
CARGO_INSTALL=	no
CARGO_TEST=	no
TARGET_ORDER_OVERRIDE=	750:cargo-configure
CARGO_CARGOTOML=	${BUILD_WRKSRC}/Cargo.toml
MESON_ARGS=	-Dstrict=false
MESON_ARGS+=	-Dnewer=true # XXX Cargo.lock
PLIST_FILES=	bin/${PORTNAME} \
		bin/${PORTNAME}-entry \
		bin/${PORTNAME}-test-layout \
		share/applications/sm.puri.Squeekboard.desktop \
		share/locale/ca/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/cs/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/de/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/el/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/es/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/eu/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/fa/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/fi/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/fr/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/fur/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/gl/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/he/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/hi/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/hr/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/hu/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/it/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/ka/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/ko/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/nl/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/oc/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/pl/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/pt/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/pt_BR/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/ro/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/ru/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/sl/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/sr/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/sv/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/tr/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/uk/LC_MESSAGES/${PORTNAME}.mo \
		share/locale/zh_CN/LC_MESSAGES/${PORTNAME}.mo \
		${NULL}

post-extract:
.if ${MESON_ARGS:M-Dnewer=true}
	@${CP} -p ${WRKSRC}/Cargo.lock.newer ${WRKSRC}/Cargo.lock
.endif

post-patch:
# Make each cargo subcommand very verbose
	@${REINPLACE_CMD} -e '/^cargo/s/"$$@"/--verbose --verbose &/' \
		${WRKSRC}/cargo.sh

post-configure:
# Provide preprocessed Cargo.toml for USES=cargo
	@${DO_MAKE_BUILD} -C ${BUILD_WRKSRC} Cargo.toml

.include <bsd.port.mk>