blob: c656458a7962922f5dbbb4ccb37ee2b050e11e6b (
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
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
|
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit flag-o-matic linux-info meson systemd xdg-utils
DESCRIPTION="A small daemon to act on remote or local events"
HOMEPAGE="https://www.eventd.org/"
SRC_URI="https://www.eventd.org/download/${PN}/${P}.tar.xz"
LICENSE="GPL-3+ LGPL-3+ MIT"
SLOT="0"
KEYWORDS="~amd64"
IUSE="debug fbcon +introspection ipv6 libcanberra libnotify +notification
pulseaudio purple speech systemd test upnp websocket +X zeroconf"
REQUIRED_USE="
X? ( notification )
fbcon? ( notification )
notification? ( || ( X fbcon ) )
test? ( websocket )
"
COMMON_DEPEND="
>=dev-libs/glib-2.40:2
sys-apps/util-linux
introspection? ( >=dev-libs/gobject-introspection-1.42 )
libcanberra? ( media-libs/libcanberra )
libnotify? ( x11-libs/gdk-pixbuf:2 )
notification? (
x11-libs/cairo
x11-libs/pango
x11-libs/gdk-pixbuf:2
X? (
x11-libs/cairo[xcb]
x11-libs/libxcb:=
x11-libs/xcb-util
x11-libs/xcb-util-wm
)
)
pulseaudio? (
media-libs/libsndfile
media-sound/pulseaudio
)
purple? ( net-im/pidgin )
speech? ( app-accessibility/speech-dispatcher )
systemd? ( sys-apps/systemd:= )
upnp? ( net-libs/gssdp:= )
websocket? ( >=net-libs/libsoup-2.50:2.4 )
zeroconf? ( net-dns/avahi[dbus] )
"
DEPEND="${COMMON_DEPEND}
app-text/docbook-xml-dtd:4.5
app-text/docbook-xsl-stylesheets
dev-libs/libxslt
virtual/pkgconfig
fbcon? ( virtual/os-headers )
"
RDEPEND="${COMMON_DEPEND}
net-libs/glib-networking[ssl]
"
eventd_check_compiler() {
if [[ ${MERGE_TYPE} != "binary" ]] && ! test-flag-CXX -std=c++11; then
die "Your compiler lacks C++11 support. Use GCC>=4.7.0 or Clang>=3.3."
fi
}
pkg_pretend() {
eventd_check_compiler
}
pkg_setup() {
if use ipv6; then
CONFIG_CHECK=$(usex test 'IPV6' '~IPV6')
linux-info_pkg_setup
fi
eventd_check_compiler
}
src_prepare() {
default_src_prepare
# Workaround Gentoo bug 604398.
sed -i \
-e 's|libspeechd|speech-dispatcher/libspeechd|g' \
plugins/tts/src/tts.c || die
# Prevent access violations from introspection metadata generation.
xdg_environment_reset
}
eventd_use_enable() {
echo "-Denable-${2:-${1}}=$(usex ${1} 'true' 'false')" || die
}
src_configure() {
local emesonargs=(
-Dsystemduserunitdir="$(systemd_get_userunitdir)"
-Dsystemdsystemunitdir="$(systemd_get_systemunitdir)"
-Ddbussessionservicedir="${EPREFIX}/usr/share/dbus-1/services"
$(eventd_use_enable websocket)
$(eventd_use_enable zeroconf dns-sd)
$(eventd_use_enable upnp ssdp)
$(eventd_use_enable ipv6)
$(eventd_use_enable systemd)
$(eventd_use_enable notification notification-daemon)
# Wayland plugin requires wayland-wall, which is currently WIP.
# See https://github.com/wayland-wall/wayland-wall/issues/1
-Denable-nd-wayland="false"
$(eventd_use_enable X nd-xcb)
$(eventd_use_enable fbcon nd-fbdev)
$(eventd_use_enable purple im)
$(eventd_use_enable pulseaudio sound)
$(eventd_use_enable speech tts)
$(eventd_use_enable libnotify)
$(eventd_use_enable libcanberra)
$(eventd_use_enable introspection gobject-introspection)
$(eventd_use_enable debug)
)
meson_src_configure
}
src_test() {
EVENTD_TESTS_TMP_DIR="${T}" meson_src_test
}
pkg_postinst() {
if { use notification || use libnotify; } && ! has_version 'gnome-base/librsvg'; then
elog
elog "For SVG icons in notifications, please install 'gnome-base/librsvg'."
elog
fi
}
|