summaryrefslogtreecommitdiff
path: root/app-office/endeavour/endeavour-42.0.ebuild
blob: cb393edc681b88f2fa09322409e17f15708ee013 (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
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

inherit gnome.org gnome2-utils meson xdg

DESCRIPTION="Personal task manager"
HOMEPAGE="https://wiki.gnome.org/Apps/Todo https://gitlab.gnome.org/World/Endeavour"

if [[ ${PV} == 9999 ]]; then
	inherit git-r3
	EGIT_REPO_URI="https://gitlab.gnome.org/World/Endeavour.git"
	SRC_URI=""
else
	SRC_URI="https://gitlab.gnome.org/World/${PN^}/-/archive/v${PV}/${PN^}-v${PV}.tar.bz2"
	KEYWORDS="~amd64"
	S="${WORKDIR}/${PN^}-v${PV}"
fi

LICENSE="GPL-3+"
SLOT="0"
IUSE="+introspection"
RESTRICT="test" # Tests are broken in 42.0

RDEPEND="
	>=dev-libs/glib-2.58.0:2
	>=gui-libs/gtk-3.92.0:4[introspection?]
	>=gui-libs/libadwaita-1.2.0:1
	>=net-libs/gnome-online-accounts-3.25.3:=
	>=dev-libs/libpeas-1.17
	dev-libs/libportal:0=[gtk]
	>=gnome-extra/evolution-data-server-3.33.2:=[gtk]
	net-libs/rest:0.7
	dev-libs/json-glib
	introspection? ( >=dev-libs/gobject-introspection-1.42:= )
"
DEPEND="${RDEPEND}"
BDEPEND="
	dev-libs/libxml2:2
	dev-util/glib-utils
	>=sys-devel/gettext-0.19.8
	virtual/pkgconfig
"

PATCHES=(
	"${FILESDIR}"/${PV}-build-Generate-enum-headers-first.patch
)

src_configure() {
	# TODO: There aren't any consumers of the introspection outside gnome-todo's own plugins, so maybe we
	# TODO: should just always build introspection support as an application that needs it for full functionality?
	# Todoist plugin requires 3.25.3 GOA for being able to add a Todoist account
	local emesonargs=(
		$(meson_use introspection)
		-Dtracing=false
		-Dprofile=default

		-Dtodo_txt_plugin=true
		-Dtodoist_plugin=true
		-Dunscheduled_panel_plugin=true
		-Dbackground_plugin=true
	)
	meson_src_configure
}

pkg_postinst() {
	xdg_pkg_postinst
	gnome2_schemas_update
}

pkg_postrm() {
	xdg_pkg_postrm
	gnome2_schemas_update
}