1 |
commit: 32578b4efcf9161fef1b2267cc1fc2d31aa52a7e |
2 |
Author: Joonas Niilola <juippis <AT> gmail <DOT> com> |
3 |
AuthorDate: Wed Dec 5 07:16:15 2018 +0000 |
4 |
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org> |
5 |
CommitDate: Wed Dec 5 08:35:31 2018 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=32578b4e |
7 |
|
8 |
dev-libs/efl: revbump 1.21.1 to fix evas-preload segfault |
9 |
|
10 |
- thanks to tbartdev <AT> gmx-topmail.de for the patch |
11 |
- upstream bug: https://phab.enlightenment.org/T7354 |
12 |
|
13 |
Closes: https://bugs.gentoo.org/671876 |
14 |
Package-Manager: Portage[mgorny]-2.3.51.1 |
15 |
Signed-off-by: Joonas Niilola <juippis <AT> gmail.com> |
16 |
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org> |
17 |
|
18 |
dev-libs/efl/efl-1.21.1-r1.ebuild | 279 +++++++++++++++++++++ |
19 |
.../efl-1.21.1-fix_evas_preload_segfault.patch | 10 + |
20 |
2 files changed, 289 insertions(+) |
21 |
|
22 |
diff --git a/dev-libs/efl/efl-1.21.1-r1.ebuild b/dev-libs/efl/efl-1.21.1-r1.ebuild |
23 |
new file mode 100644 |
24 |
index 00000000000..c6e1fed2916 |
25 |
--- /dev/null |
26 |
+++ b/dev-libs/efl/efl-1.21.1-r1.ebuild |
27 |
@@ -0,0 +1,279 @@ |
28 |
+# Copyright 1999-2018 Gentoo Authors |
29 |
+# Distributed under the terms of the GNU General Public License v2 |
30 |
+ |
31 |
+EAPI=6 |
32 |
+ |
33 |
+inherit gnome2-utils pax-utils xdg-utils |
34 |
+ |
35 |
+DESCRIPTION="Enlightenment Foundation Libraries all-in-one package" |
36 |
+HOMEPAGE="https://www.enlightenment.org" |
37 |
+SRC_URI="https://download.enlightenment.org/rel/libs/${PN}/${P}.tar.xz" |
38 |
+ |
39 |
+LICENSE="BSD-2 GPL-2 LGPL-2.1 ZLIB" |
40 |
+SLOT="0" |
41 |
+KEYWORDS="~amd64 ~arm ~ppc ~x86 ~amd64-linux ~x86-linux" |
42 |
+IUSE="avahi +bmp dds connman debug drm +eet egl examples fbcon +fontconfig fribidi gif gles glib gnutls gstreamer harfbuzz hyphen +ico ibus jpeg2k libressl libuv luajit neon nls opengl ssl pdf physics postscript +ppm +psd pulseaudio raw scim sdl sound static-libs svg +system-lz4 systemd tga tiff tslib unwind v4l valgrind vlc vnc wayland webp X xcf xim xine xpresent xpm" |
43 |
+ |
44 |
+REQUIRED_USE=" |
45 |
+ ?? ( opengl egl ) |
46 |
+ ?? ( opengl gles ) |
47 |
+ fbcon? ( !tslib ) |
48 |
+ gles? ( |
49 |
+ || ( X wayland ) |
50 |
+ !sdl |
51 |
+ egl |
52 |
+ ) |
53 |
+ ibus? ( glib ) |
54 |
+ opengl? ( X ) |
55 |
+ pulseaudio? ( sound ) |
56 |
+ sdl? ( opengl ) |
57 |
+ vnc? ( X fbcon ) |
58 |
+ wayland? ( egl gles !opengl ) |
59 |
+ xim? ( X ) |
60 |
+ xpresent? ( X ) |
61 |
+" |
62 |
+ |
63 |
+RDEPEND=" |
64 |
+ net-misc/curl |
65 |
+ media-libs/libpng:0= |
66 |
+ sys-apps/dbus |
67 |
+ sys-apps/util-linux |
68 |
+ sys-libs/zlib:= |
69 |
+ virtual/jpeg:0= |
70 |
+ avahi? ( net-dns/avahi ) |
71 |
+ connman? ( net-misc/connman ) |
72 |
+ drm? ( |
73 |
+ dev-libs/libinput |
74 |
+ media-libs/mesa[gbm] |
75 |
+ x11-libs/libdrm |
76 |
+ x11-libs/libxkbcommon |
77 |
+ ) |
78 |
+ egl? ( media-libs/mesa[egl] ) |
79 |
+ fontconfig? ( media-libs/fontconfig ) |
80 |
+ fribidi? ( dev-libs/fribidi ) |
81 |
+ gif? ( media-libs/giflib:= ) |
82 |
+ gles? ( media-libs/mesa[gles2] ) |
83 |
+ glib? ( dev-libs/glib:2 ) |
84 |
+ gstreamer? ( |
85 |
+ media-libs/gstreamer:1.0 |
86 |
+ media-libs/gst-plugins-base:1.0 |
87 |
+ ) |
88 |
+ harfbuzz? ( media-libs/harfbuzz ) |
89 |
+ hyphen? ( dev-libs/hyphen ) |
90 |
+ ibus? ( app-i18n/ibus ) |
91 |
+ jpeg2k? ( media-libs/openjpeg:0= ) |
92 |
+ libuv? ( dev-libs/libuv ) |
93 |
+ luajit? ( dev-lang/luajit:= ) |
94 |
+ !luajit? ( dev-lang/lua:* ) |
95 |
+ nls? ( sys-devel/gettext ) |
96 |
+ pdf? ( app-text/poppler:=[cxx] ) |
97 |
+ physics? ( sci-physics/bullet:= ) |
98 |
+ postscript? ( app-text/libspectre ) |
99 |
+ pulseaudio? ( media-sound/pulseaudio ) |
100 |
+ raw? ( media-libs/libraw:= ) |
101 |
+ scim? ( app-i18n/scim ) |
102 |
+ sdl? ( |
103 |
+ media-libs/libsdl2 |
104 |
+ virtual/opengl |
105 |
+ ) |
106 |
+ sound? ( media-libs/libsndfile ) |
107 |
+ ssl? ( |
108 |
+ gnutls? ( net-libs/gnutls:= ) |
109 |
+ !gnutls? ( |
110 |
+ !libressl? ( dev-libs/openssl:= ) |
111 |
+ libressl? ( dev-libs/libressl:= ) |
112 |
+ ) |
113 |
+ ) |
114 |
+ svg? ( |
115 |
+ gnome-base/librsvg |
116 |
+ x11-libs/cairo |
117 |
+ ) |
118 |
+ system-lz4? ( app-arch/lz4 ) |
119 |
+ systemd? ( sys-apps/systemd ) |
120 |
+ tiff? ( media-libs/tiff:0= ) |
121 |
+ tslib? ( x11-libs/tslib:= ) |
122 |
+ unwind? ( sys-libs/libunwind ) |
123 |
+ valgrind? ( dev-util/valgrind ) |
124 |
+ vlc? ( media-video/vlc ) |
125 |
+ vnc? ( net-libs/libvncserver ) |
126 |
+ wayland? ( |
127 |
+ dev-libs/wayland |
128 |
+ media-libs/mesa[gles2,wayland] |
129 |
+ x11-libs/libxkbcommon |
130 |
+ ) |
131 |
+ webp? ( media-libs/libwebp:= ) |
132 |
+ X? ( |
133 |
+ media-libs/freetype |
134 |
+ x11-libs/libXcursor |
135 |
+ x11-libs/libX11 |
136 |
+ x11-libs/libXcomposite |
137 |
+ x11-libs/libXdamage |
138 |
+ x11-libs/libXext |
139 |
+ x11-libs/libXfixes |
140 |
+ x11-libs/libXinerama |
141 |
+ x11-libs/libXrandr |
142 |
+ x11-libs/libXrender |
143 |
+ x11-libs/libXtst |
144 |
+ x11-libs/libXScrnSaver |
145 |
+ gles? ( |
146 |
+ x11-libs/libX11 |
147 |
+ x11-libs/libXrender |
148 |
+ virtual/opengl |
149 |
+ ) |
150 |
+ opengl? ( |
151 |
+ x11-libs/libX11 |
152 |
+ x11-libs/libXrender |
153 |
+ virtual/opengl |
154 |
+ ) |
155 |
+ ) |
156 |
+ xine? ( media-libs/xine-lib ) |
157 |
+ xpm? ( x11-libs/libXpm ) |
158 |
+ xpresent? ( x11-libs/libXpresent ) |
159 |
+" |
160 |
+ |
161 |
+DEPEND=" |
162 |
+ ${RDEPEND} |
163 |
+ virtual/pkgconfig |
164 |
+" |
165 |
+ |
166 |
+PATCHES=( |
167 |
+ "${FILESDIR}/${P}-fix_evas_preload_segfault.patch" |
168 |
+) |
169 |
+ |
170 |
+src_prepare() { |
171 |
+ default |
172 |
+ |
173 |
+ # Upstream still doesnt offer a configure flag. #611108 |
174 |
+ if ! use unwind ; then |
175 |
+ sed -i -e 's:libunwind libunwind-generic:xxxxxxxxxxxxxxxx:' \ |
176 |
+ configure || die "Sedding configure file with unwind fix failed." |
177 |
+ fi |
178 |
+ |
179 |
+ xdg_environment_reset |
180 |
+} |
181 |
+ |
182 |
+src_configure() { |
183 |
+ local myconf=( |
184 |
+ --enable-cserve |
185 |
+ --enable-image-loader-generic |
186 |
+ --enable-image-loader-jpeg |
187 |
+ --enable-image-loader-png |
188 |
+ --enable-libeeze |
189 |
+ --enable-libmount |
190 |
+ --enable-xinput22 |
191 |
+ |
192 |
+ --disable-doc |
193 |
+ --disable-eglfs |
194 |
+ --disable-gesture |
195 |
+ --disable-gstreamer |
196 |
+ --disable-image-loader-tgv |
197 |
+ --disable-tizen |
198 |
+ --disable-wayland-ivi-shell |
199 |
+ |
200 |
+ $(use_enable avahi) |
201 |
+ $(use_enable bmp image-loader-bmp) |
202 |
+ $(use_enable bmp image-loader-wbmp) |
203 |
+ $(use_enable dds image-loader-dds) |
204 |
+ $(use_enable drm) |
205 |
+ $(use_enable drm elput) |
206 |
+ $(use_enable eet image-loader-eet) |
207 |
+ $(use_enable egl) |
208 |
+ $(use_enable examples always-build-examples) |
209 |
+ $(use_enable fbcon fb) |
210 |
+ $(use_enable fontconfig) |
211 |
+ $(use_enable fribidi) |
212 |
+ $(use_enable gif image-loader-gif) |
213 |
+ $(use_enable gstreamer gstreamer1) |
214 |
+ $(use_enable harfbuzz) |
215 |
+ $(use_enable hyphen) |
216 |
+ $(use_enable ico image-loader-ico) |
217 |
+ $(use_enable ibus) |
218 |
+ $(use_enable jpeg2k image-loader-jp2k) |
219 |
+ $(use_enable libuv) |
220 |
+ $(use_enable !luajit lua-old) |
221 |
+ $(use_enable neon) |
222 |
+ $(use_enable nls) |
223 |
+ $(use_enable pdf poppler) |
224 |
+ $(use_enable physics) |
225 |
+ $(use_enable postscript spectre) |
226 |
+ $(use_enable ppm image-loader-pmaps) |
227 |
+ $(use_enable psd image-loader-psd) |
228 |
+ $(use_enable pulseaudio) |
229 |
+ $(use_enable raw libraw) |
230 |
+ $(use_enable scim) |
231 |
+ $(use_enable sdl) |
232 |
+ $(use_enable sound audio) |
233 |
+ $(use_enable static-libs static) |
234 |
+ $(use_enable svg librsvg) |
235 |
+ $(use_enable system-lz4 liblz4) |
236 |
+ $(use_enable systemd) |
237 |
+ $(use_enable tga image-loader-tga) |
238 |
+ $(use_enable tiff image-loader-tiff) |
239 |
+ $(use_enable tslib) |
240 |
+ $(use_enable v4l v4l2) |
241 |
+ $(use_enable valgrind) |
242 |
+ $(use_enable vlc libvlc) |
243 |
+ $(use_enable vnc vnc-server) |
244 |
+ $(use_enable wayland) |
245 |
+ $(use_enable webp image-loader-webp) |
246 |
+ $(use_enable xcf) |
247 |
+ $(use_enable xim) |
248 |
+ $(use_enable xine) |
249 |
+ $(use_enable xpm image-loader-xpm) |
250 |
+ $(use_enable xpresent) |
251 |
+ |
252 |
+ --with-crypto=$(usex gnutls gnutls $(usex ssl openssl none)) |
253 |
+ --with-glib=$(usex glib) |
254 |
+ --with-js=none |
255 |
+ --with-net-control=$(usex connman connman none) |
256 |
+ --with-profile=$(usex debug debug release) |
257 |
+ --with-x11=$(usex X xlib none) |
258 |
+ |
259 |
+ $(use_with X x) |
260 |
+ ) |
261 |
+ |
262 |
+ use drm && use wayland && myconf+=( --enable-gl-drm ) |
263 |
+ |
264 |
+ if use opengl ; then |
265 |
+ myconf+=( --with-opengl=full ) |
266 |
+ elif use egl ; then |
267 |
+ myconf+=( --with-opengl=es ) |
268 |
+ elif use drm && use wayland ; then |
269 |
+ myconf+=( --with-opengl=es ) |
270 |
+ else |
271 |
+ myconf+=( --with-opengl=none ) |
272 |
+ fi |
273 |
+ |
274 |
+ econf "${myconf[@]}" |
275 |
+} |
276 |
+ |
277 |
+src_compile() { |
278 |
+ if host-is-pax && use luajit ; then |
279 |
+ # We need to build the lua code first so we can pax-mark it. #547076 |
280 |
+ local target='_e_built_sources_target_gogogo_' |
281 |
+ printf '%s: $(BUILT_SOURCES)\n' "${target}" >> src/Makefile || die |
282 |
+ emake -C src "${target}" |
283 |
+ emake -C src bin/elua/elua |
284 |
+ pax-mark m src/bin/elua/.libs/elua |
285 |
+ fi |
286 |
+ |
287 |
+ V=1 emake || die "Compiling EFL failed." |
288 |
+} |
289 |
+ |
290 |
+src_install() { |
291 |
+ einstalldocs |
292 |
+ |
293 |
+ V=1 emake install DESTDIR="${D}" || die "Installing EFL files failed." |
294 |
+ |
295 |
+ find "${D}" -name '*.la' -delete || die |
296 |
+} |
297 |
+ |
298 |
+pkg_postinst() { |
299 |
+ gnome2_icon_cache_update |
300 |
+ xdg_mimeinfo_database_update |
301 |
+} |
302 |
+ |
303 |
+pkg_postrm() { |
304 |
+ gnome2_icon_cache_update |
305 |
+ xdg_mimeinfo_database_update |
306 |
+} |
307 |
|
308 |
diff --git a/dev-libs/efl/files/efl-1.21.1-fix_evas_preload_segfault.patch b/dev-libs/efl/files/efl-1.21.1-fix_evas_preload_segfault.patch |
309 |
new file mode 100644 |
310 |
index 00000000000..8d42cbb0f25 |
311 |
--- /dev/null |
312 |
+++ b/dev-libs/efl/files/efl-1.21.1-fix_evas_preload_segfault.patch |
313 |
@@ -0,0 +1,10 @@ |
314 |
+--- a/src/lib/evas/cache/evas_cache_image.c 14:09:44.971119099 +0100 |
315 |
++++ b/src/lib/evas/cache/evas_cache_image.c 14:10:21.521226043 +0100 |
316 |
+@@ -361,6 +361,7 @@ |
317 |
+ cache = current->cache; |
318 |
+ |
319 |
+ if ((!current->flags.loaded) && |
320 |
++ (current->info.loader) && |
321 |
+ current->info.loader->threadable) |
322 |
+ { |
323 |
+ evas_module_task_register(evas_cache_image_cancelled, current); |