Gentoo Archives: gentoo-commits

From: Quentin Retornaz <gentoo@××××××××.com>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/proj/libressl:master commit in: dev-libs/efl/, dev-libs/efl/files/
Date: Mon, 04 Jul 2022 16:49:34
Message-Id: 1656953340.f650d60ee2fd69b8ca71460fb6bf1d9f3a5a8a4f.quentin@gentoo
1 commit: f650d60ee2fd69b8ca71460fb6bf1d9f3a5a8a4f
2 Author: orbea <orbea <AT> riseup <DOT> net>
3 AuthorDate: Mon Jul 4 16:16:50 2022 +0000
4 Commit: Quentin Retornaz <gentoo <AT> retornaz <DOT> com>
5 CommitDate: Mon Jul 4 16:49:00 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/proj/libressl.git/commit/?id=f650d60e
7
8 dev-libs/efl: Add package
9
10 Upstream-PR: https://git.enlightenment.org/enlightenment/efl/pulls/10
11 Signed-off-by: orbea <orbea <AT> riseup.net>
12 Closes: https://github.com/gentoo/libressl/pull/432
13 Signed-off-by: Quentin Retornaz <gentoo <AT> retornaz.com>
14
15 dev-libs/efl/Manifest | 1 +
16 dev-libs/efl/efl-1.26.2.ebuild | 315 +++++++++++++++++++++++++++
17 dev-libs/efl/files/efl-1.26.2-libressl.patch | 178 +++++++++++++++
18 dev-libs/efl/metadata.xml | 37 ++++
19 4 files changed, 531 insertions(+)
20
21 diff --git a/dev-libs/efl/Manifest b/dev-libs/efl/Manifest
22 new file mode 100644
23 index 0000000..0a70299
24 --- /dev/null
25 +++ b/dev-libs/efl/Manifest
26 @@ -0,0 +1 @@
27 +DIST efl-1.26.2.tar.xz 168537016 BLAKE2B b7ca59dbcd483edf31e68aae4df512a195a8239935febf8497ce039eb18696ca84e4f6d0206818c84f6e1f625abf3e730fc812304459e5615feca2c3fa07092c SHA512 d8478b6f197600c5abb7e2fcc030f8938e6726dde5e1947df4b042e6e9c77b0f31770b6b86a76ee2be52bf5354e02716bd7e5daf0771d149004d9447e432dc32
28
29 diff --git a/dev-libs/efl/efl-1.26.2.ebuild b/dev-libs/efl/efl-1.26.2.ebuild
30 new file mode 100644
31 index 0000000..b762062
32 --- /dev/null
33 +++ b/dev-libs/efl/efl-1.26.2.ebuild
34 @@ -0,0 +1,315 @@
35 +# Copyright 1999-2022 Gentoo Authors
36 +# Distributed under the terms of the GNU General Public License v2
37 +
38 +EAPI=7
39 +
40 +DOCS_BUILDER="doxygen"
41 +DOCS_DEPEND="dev-texlive/texlive-fontutils"
42 +DOCS_DIR="${S}/doc"
43 +
44 +LUA_REQ_USE="deprecated(+)"
45 +LUA_COMPAT=( lua5-{1,2} luajit )
46 +
47 +PYTHON_COMPAT=( python3_{8..11} )
48 +
49 +inherit docs lua-single meson python-any-r1 xdg
50 +
51 +DESCRIPTION="Enlightenment Foundation Libraries all-in-one package"
52 +HOMEPAGE="https://www.enlightenment.org"
53 +SRC_URI="https://download.enlightenment.org/rel/libs/${PN}/${P}.tar.xz"
54 +
55 +LICENSE="BSD-2 GPL-2 LGPL-2.1 ZLIB"
56 +SLOT="0"
57 +KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv x86"
58 +IUSE="+X avif bmp connman cpu_flags_arm_neon dds debug drm +eet efl-one elogind examples fbcon
59 + +fontconfig fribidi gif gnutls glib +gstreamer harfbuzz heif hyphen ibus ico
60 + jpeg2k json nls mono opengl +pdf physics pmaps postscript psd pulseaudio raw scim
61 + sdl +sound +svg +system-lz4 systemd tga tgv tiff tslib unwind v4l vnc wayland webp xcf
62 + xim xpm xpresent zeroconf"
63 +
64 +REQUIRED_USE="${LUA_REQUIRED_USE}
65 + ?? ( elogind systemd )
66 + ?? ( fbcon tslib )
67 + drm? ( wayland )
68 + examples? ( eet svg )
69 + ibus? ( glib )
70 + opengl? ( X )
71 + pulseaudio? ( sound )
72 + xim? ( X )
73 + xpresent? ( X )"
74 +
75 +# Requires everything to be enabled unconditionally.
76 +RESTRICT="test"
77 +
78 +RDEPEND="${LUA_DEPS}
79 + !x11-themes/e-flat-theme
80 + dev-libs/libinput:=
81 + net-misc/curl
82 + media-libs/giflib:=
83 + media-libs/libpng:0=
84 + sys-apps/dbus
85 + sys-libs/zlib
86 + virtual/jpeg
87 + X? (
88 + !opengl? ( media-libs/mesa[egl(+),gles2] )
89 + media-libs/freetype
90 + x11-libs/libX11
91 + x11-libs/libXScrnSaver
92 + x11-libs/libXcomposite
93 + x11-libs/libXcursor
94 + x11-libs/libXdamage
95 + x11-libs/libXext
96 + x11-libs/libXfixes
97 + x11-libs/libXi
98 + x11-libs/libXinerama
99 + x11-libs/libXrandr
100 + x11-libs/libXrender
101 + x11-libs/libXtst
102 + x11-libs/libxkbcommon
103 + wayland? ( x11-libs/libxkbcommon[X] )
104 + )
105 + avif? ( media-libs/libavif:= )
106 + connman? ( net-misc/connman )
107 + drm? (
108 + dev-libs/libinput:=
109 + dev-libs/wayland
110 + media-libs/mesa[gbm(+)]
111 + x11-libs/libdrm
112 + x11-libs/libxkbcommon
113 + )
114 + elogind? (
115 + sys-auth/elogind
116 + virtual/libudev:=
117 + )
118 + fontconfig? ( media-libs/fontconfig )
119 + fribidi? ( dev-libs/fribidi )
120 + glib? ( dev-libs/glib:2 )
121 + gnutls? ( net-libs/gnutls:= )
122 + !gnutls? ( dev-libs/openssl:0= )
123 + gstreamer? (
124 + media-libs/gstreamer:1.0
125 + media-libs/gst-plugins-base:1.0
126 + )
127 + harfbuzz? ( media-libs/harfbuzz:= )
128 + heif? ( media-libs/libheif:= )
129 + hyphen? ( dev-libs/hyphen )
130 + ibus? ( app-i18n/ibus )
131 + jpeg2k? ( media-libs/openjpeg:= )
132 + json? ( >=media-libs/rlottie-0.0.1_pre20200424:= )
133 + mono? ( dev-lang/mono )
134 + opengl? ( virtual/opengl )
135 + pdf? ( app-text/poppler:=[cxx] )
136 + physics? ( sci-physics/bullet:= )
137 + postscript? ( app-text/libspectre )
138 + pulseaudio? ( media-sound/pulseaudio )
139 + raw? ( media-libs/libraw:= )
140 + scim? ( app-i18n/scim )
141 + sdl? ( media-libs/libsdl2 )
142 + sound? ( media-libs/libsndfile )
143 + svg? ( gnome-base/librsvg:2 )
144 + system-lz4? ( app-arch/lz4:= )
145 + systemd? ( sys-apps/systemd:= )
146 + tiff? ( media-libs/tiff )
147 + tslib? ( x11-libs/tslib:= )
148 + unwind? ( sys-libs/libunwind:= )
149 + v4l? ( media-libs/libv4l )
150 + vnc? ( net-libs/libvncserver )
151 + wayland? (
152 + dev-libs/wayland
153 + media-libs/mesa[gles2,wayland]
154 + x11-libs/libxkbcommon
155 + )
156 + webp? ( media-libs/libwebp:= )
157 + xpm? ( x11-libs/libXpm )
158 + xpresent? ( x11-libs/libXpresent )
159 + zeroconf? ( net-dns/avahi )"
160 +DEPEND="${RDEPEND}
161 + wayland? ( dev-libs/wayland-protocols )"
162 +BDEPEND="${PYTHON_DEPS}
163 + virtual/pkgconfig
164 + nls? ( sys-devel/gettext )
165 + wayland? ( dev-util/wayland-scanner )"
166 +
167 +pkg_setup() {
168 + # Deprecated, provided for backward-compatibility. Everything is moved to libefreet.so.
169 + QA_FLAGS_IGNORED="/usr/$(get_libdir)/libefreet_trash.so.${PV}
170 + /usr/$(get_libdir)/libefreet_mime.so.${PV}"
171 +
172 + python-any-r1_pkg_setup
173 +}
174 +
175 +PATCHES=(
176 + "${FILESDIR}"/${P}-libressl.patch
177 +)
178 +
179 +src_prepare() {
180 + default
181 +
182 + # Remove automagic unwind configure option, #743154
183 + if ! use unwind; then
184 + sed -i "/config_h.set('HAVE_UNWIND/,/eina_ext_deps += unwind/d" src/lib/eina/meson.build ||
185 + die "Failed to remove libunwind dep"
186 + fi
187 +
188 + # Fixup Doxyfile
189 + pushd "${DOCS_DIR}" || die
190 + cp Doxyfile.in Doxyfile || die
191 + sed -i \
192 + -e "s/@PACKAGE_VERSION@/${PV}/g" \
193 + -e "s/@top_builddir@/../g" \
194 + -e "s/@top_srcdir@/../g" \
195 + -e "s/@srcdir@/./g" \
196 + Doxyfile || die
197 + popd || die
198 +
199 + # Fix python shebangs for python-exec[-native-symlinks], #764086
200 + local shebangs=($(grep -rl "#!/usr/bin/env python3" || die))
201 + python_fix_shebang -q ${shebangs[*]}
202 +}
203 +
204 +src_configure() {
205 + local emesonargs=(
206 + --buildtype=plain
207 +
208 + -D buffer=false
209 + -D build-tests=false
210 + -D cocoa=false
211 + -D drm-deprecated=false
212 + -D g-mainloop=false
213 + -D mono-beta=false
214 + -D dotnet=false
215 + -D pixman=false
216 + -D wl-deprecated=false
217 + -D dotnet-stylecop-severity=Warning
218 +
219 + -D edje-sound-and-video=true
220 + -D eeze=true
221 + -D input=true
222 + -D install-eo-files=true
223 + -D libmount=true
224 + -D native-arch-optimization=true
225 + -D xinput2=true
226 + -D xinput22=true
227 +
228 + $(meson_use X x11)
229 + $(meson_use debug debug-threads)
230 + $(meson_use drm)
231 + $(meson_use examples build-examples)
232 + $(meson_use fbcon fb)
233 + $(meson_use fontconfig)
234 + $(meson_use fribidi)
235 + $(meson_use glib)
236 + $(meson_use gstreamer)
237 + $(meson_use harfbuzz)
238 + $(meson_use hyphen)
239 + $(meson_use lua_single_target_luajit elua)
240 + $(meson_use nls)
241 + $(meson_use physics)
242 + $(meson_use pulseaudio)
243 + $(meson_use sdl)
244 + $(meson_use sound audio)
245 + $(meson_use tslib)
246 + $(meson_use v4l v4l2)
247 + $(meson_use vnc vnc-server)
248 + $(meson_use wayland wl)
249 + $(meson_use xpresent)
250 + $(meson_use zeroconf avahi)
251 +
252 + $(meson_use !system-lz4 embedded-lz4)
253 + )
254 +
255 + if use elogind || use systemd; then
256 + emesonargs+=( -D systemd=true )
257 + else
258 + emesonargs+=( -D systemd=false )
259 + fi
260 +
261 + if use wayland; then
262 + emesonargs+=( -D opengl=es-egl )
263 + elif ! use wayland && use opengl; then
264 + emesonargs+=( -D opengl=full )
265 + elif ! use wayland && use X && ! use opengl; then
266 + emesonargs+=( -D opengl=es-egl )
267 + else
268 + emesonargs+=( -D opengl=none )
269 + fi
270 +
271 + if use gnutls; then
272 + emesonargs+=( -D crypto=gnutls )
273 + else
274 + emesonargs+=( -D crypto=openssl )
275 + fi
276 +
277 + if use connman; then
278 + emesonargs+=( -D network-backend=connman )
279 + else
280 + emesonargs+=( -D network-backend=none )
281 + fi
282 +
283 + local disabledEvasLoaders=""
284 + ! use avif && disabledEvasLoaders="avif,"
285 + ! use bmp && disabledEvasLoaders+="bmp,wbmp,"
286 + ! use dds && disabledEvasLoaders+="dds,"
287 + ! use eet && disabledEvasLoaders+="eet,"
288 + ! use gstreamer && disabledEvasLoaders+="gst,"
289 + ! use heif && disabledEvasLoaders+="heif,"
290 + ! use ico && disabledEvasLoaders+="ico,"
291 + ! use jpeg2k && disabledEvasLoaders+="jp2k,"
292 + ! use json && disabledEvasLoaders+="json,"
293 + ! use pdf && disabledEvasLoaders+="pdf,"
294 + ! use pmaps && disabledEvasLoaders+="pmaps,"
295 + ! use postscript && disabledEvasLoaders+="ps,"
296 + ! use psd && disabledEvasLoaders+="psd,"
297 + ! use raw && disabledEvasLoaders+="raw,"
298 + ! use svg && disabledEvasLoaders+="rsvg,svg,"
299 + ! use tga && disabledEvasLoaders+="tga,"
300 + ! use tgv && disabledEvasLoaders+="tgv,"
301 + ! use tiff && disabledEvasLoaders+="tiff,"
302 + ! use webp && disabledEvasLoaders+="webp,"
303 + ! use xcf && disabledEvasLoaders+="xcf,"
304 + ! use xpm && disabledEvasLoaders+="xpm,"
305 + [[ ! -z "$disabledEvasLoaders" ]] && disabledEvasLoaders=${disabledEvasLoaders::-1}
306 + emesonargs+=( -D evas-loaders-disabler="${disabledEvasLoaders}" )
307 +
308 + local disabledImfLoaders=""
309 + ! use ibus && disabledImfLoaders+="ibus,"
310 + ! use scim && disabledImfLoaders+="scim,"
311 + ! use xim && disabledImfLoaders+="xim,"
312 + [[ ! -z "$disabledImfLoaders" ]] && disabledImfLoaders=${disabledImfLoaders::-1}
313 + emesonargs+=( -D ecore-imf-loaders-disabler="${disabledImfLoaders}" )
314 +
315 + local bindingsList="cxx,"
316 + use lua_single_target_luajit && bindingsList+="lua,"
317 + use mono && bindingsList+="mono,"
318 + [[ ! -z "$bindingsList" ]] && bindingsList=${bindingsList::-1}
319 + emesonargs+=( -D bindings="${bindingsList}" )
320 +
321 + local luaChoice=""
322 + if use lua_single_target_luajit; then
323 + luaChoice+="luajit"
324 + else
325 + luaChoice+="lua"
326 + fi
327 + emesonargs+=( -D lua-interpreter="${luaChoice}" )
328 +
329 + # Not all arm CPU's have neon instruction set, #722552
330 + if use arm && ! use cpu_flags_arm_neon; then
331 + emesonargs+=( -D native-arch-optimization=false )
332 + fi
333 +
334 + meson_src_configure
335 +}
336 +
337 +src_compile() {
338 + docs_compile
339 + meson_src_compile
340 +}
341 +
342 +src_install() {
343 + meson_src_install
344 +
345 + if use examples; then
346 + docompress -x /usr/share/doc/${PF}/examples/
347 + dodoc -r "${BUILD_DIR}"/src/examples/
348 + fi
349 +}
350
351 diff --git a/dev-libs/efl/files/efl-1.26.2-libressl.patch b/dev-libs/efl/files/efl-1.26.2-libressl.patch
352 new file mode 100644
353 index 0000000..9f6b1a8
354 --- /dev/null
355 +++ b/dev-libs/efl/files/efl-1.26.2-libressl.patch
356 @@ -0,0 +1,178 @@
357 +Upstream-PR: https://git.enlightenment.org/enlightenment/efl/pulls/10
358 +
359 +From bdd5b244e6a6161228f4a98210cefd9ef8a12e85 Mon Sep 17 00:00:00 2001
360 +From: orbea <orbea@××××××.net>
361 +Date: Mon, 4 Jul 2022 09:05:38 -0700
362 +Subject: [PATCH] Support LibreSSL 3.5.x
363 +
364 +LibreSSL 3.5.x now works with the standard OpenSSL code paths.
365 +---
366 + src/lib/ecore_con/efl_net_ssl_conn-openssl.c | 12 ++++++------
367 + src/lib/eet/eet_cipher.c | 8 ++++----
368 + src/lib/emile/emile_cipher_openssl.c | 14 +++++++-------
369 + 3 files changed, 17 insertions(+), 17 deletions(-)
370 +
371 +diff --git a/src/lib/ecore_con/efl_net_ssl_conn-openssl.c b/src/lib/ecore_con/efl_net_ssl_conn-openssl.c
372 +index e59c6811c9..b20179fc33 100644
373 +--- a/src/lib/ecore_con/efl_net_ssl_conn-openssl.c
374 ++++ b/src/lib/ecore_con/efl_net_ssl_conn-openssl.c
375 +@@ -27,7 +27,7 @@
376 + static int
377 + efl_net_socket_bio_create(BIO *b)
378 + {
379 +-#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
380 ++#if LIBRESSL_VERSION_NUMBER >= 0x3050000fL || OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
381 + BIO_set_init(b, 1);
382 + BIO_set_data(b, NULL);
383 + BIO_set_flags(b, 0);
384 +@@ -44,7 +44,7 @@ static int
385 + efl_net_socket_bio_destroy(BIO *b)
386 + {
387 + if (!b) return 0;
388 +-#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
389 ++#if LIBRESSL_VERSION_NUMBER >= 0x3050000fL || OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
390 + BIO_set_init(b, 0);
391 + BIO_set_data(b, NULL);
392 + BIO_set_flags(b, 0);
393 +@@ -63,7 +63,7 @@ efl_net_socket_bio_read(BIO *b, char *buf, int len)
394 + .mem = buf,
395 + .len = len
396 + };
397 +-#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
398 ++#if LIBRESSL_VERSION_NUMBER >= 0x3050000fL || OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
399 + Eo *sock = BIO_get_data(b);
400 + #else
401 + Eo *sock = b->ptr;
402 +@@ -99,7 +99,7 @@ efl_net_socket_bio_write(BIO *b, const char *buf, int len)
403 + .mem = buf,
404 + .len = len
405 + };
406 +-#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
407 ++#if LIBRESSL_VERSION_NUMBER >= 0x3050000fL || OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
408 + Eo *sock = BIO_get_data(b);
409 + #else
410 + Eo *sock = b->ptr;
411 +@@ -146,7 +146,7 @@ efl_net_socket_bio_puts(BIO *b, const char *str)
412 + static BIO_METHOD *
413 + __efl_net_socket_bio_get(void)
414 + {
415 +-#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
416 ++#if LIBRESSL_VERSION_NUMBER >= 0x3050000fL || OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
417 + static BIO_METHOD *efl_net_socket_bio = NULL;
418 +
419 + if (efl_net_socket_bio) return efl_net_socket_bio;
420 +@@ -359,7 +359,7 @@ efl_net_ssl_conn_setup(Efl_Net_Ssl_Conn *conn, Eina_Bool is_dialer, Efl_Net_Sock
421 + conn->bio = BIO_new(__efl_net_socket_bio_get());
422 + EINA_SAFETY_ON_NULL_GOTO(conn->bio, error_bio);
423 +
424 +-#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
425 ++#if LIBRESSL_VERSION_NUMBER >= 0x3050000fL || OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
426 + BIO_set_data(conn->bio, sock);
427 + #else
428 + conn->bio->ptr = sock;
429 +diff --git a/src/lib/eet/eet_cipher.c b/src/lib/eet/eet_cipher.c
430 +index 025750cc98..f2056e56d3 100644
431 +--- a/src/lib/eet/eet_cipher.c
432 ++++ b/src/lib/eet/eet_cipher.c
433 +@@ -472,7 +472,7 @@ eet_identity_sign(FILE *fp,
434 + gnutls_datum_t signum = { NULL, 0 };
435 + gnutls_privkey_t privkey;
436 + # else /* ifdef HAVE_GNUTLS */
437 +-# if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
438 ++# if LIBRESSL_VERSION_NUMBER >= 0x3050000fL || OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
439 + EVP_MD_CTX *md_ctx;
440 + # else
441 + EVP_MD_CTX md_ctx;
442 +@@ -562,7 +562,7 @@ eet_identity_sign(FILE *fp,
443 + }
444 +
445 + /* Do the signature. */
446 +-#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
447 ++#if LIBRESSL_VERSION_NUMBER >= 0x3050000fL || OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
448 + md_ctx = EVP_MD_CTX_new();
449 + if (!md_ctx)
450 + {
451 +@@ -756,7 +756,7 @@ eet_identity_check(const void *data_base,
452 + const unsigned char *tmp;
453 + EVP_PKEY *pkey;
454 + X509 *x509;
455 +-#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
456 ++#if LIBRESSL_VERSION_NUMBER >= 0x3050000fL || OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
457 + EVP_MD_CTX *md_ctx;
458 + #else
459 + EVP_MD_CTX md_ctx;
460 +@@ -779,7 +779,7 @@ eet_identity_check(const void *data_base,
461 + }
462 +
463 + /* Verify the signature */
464 +-#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
465 ++#if LIBRESSL_VERSION_NUMBER >= 0x3050000fL || OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
466 + md_ctx = EVP_MD_CTX_new();
467 + if (!md_ctx)
468 + {
469 +diff --git a/src/lib/emile/emile_cipher_openssl.c b/src/lib/emile/emile_cipher_openssl.c
470 +index e5a1ed4135..acce2a2fa2 100644
471 +--- a/src/lib/emile/emile_cipher_openssl.c
472 ++++ b/src/lib/emile/emile_cipher_openssl.c
473 +@@ -45,12 +45,12 @@ struct _Emile_SSL
474 + Eina_Bool
475 + _emile_cipher_init(void)
476 + {
477 +-#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
478 ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || LIBRESSL_VERSION_NUMBER < 0x3050000fL
479 + ERR_load_crypto_strings();
480 + SSL_library_init();
481 + SSL_load_error_strings();
482 + OpenSSL_add_all_algorithms();
483 +-#endif /* if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) */
484 ++#endif /* if OPENSSL_VERSION_NUMBER < 0x10100000L || LIBRESSL_VERSION_NUMBER < 0x3050000fL */
485 +
486 + return EINA_TRUE;
487 + }
488 +@@ -73,7 +73,7 @@ emile_binbuf_sha1(const Eina_Binbuf * data, unsigned char digest[20])
489 + {
490 + const EVP_MD *md = EVP_sha1();
491 + Eina_Slice slice = eina_binbuf_slice_get(data);
492 +-#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
493 ++#if LIBRESSL_VERSION_NUMBER >= 0x3050000fL || OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
494 + EVP_MD_CTX *ctx = EVP_MD_CTX_new();
495 + if (!ctx) return EINA_FALSE;
496 +
497 +@@ -196,7 +196,7 @@ on_error:
498 + memset(ik, 0, sizeof (ik));
499 +
500 + /* Openssl error */
501 +-#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
502 ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || LIBRESSL_VERSION_NUMBER < 0x3050000fL
503 + if (ctx)
504 + EVP_CIPHER_CTX_cleanup(ctx);
505 + #else
506 +@@ -204,7 +204,7 @@ on_error:
507 + EVP_CIPHER_CTX_cleanup(ctx);
508 + EVP_CIPHER_CTX_free(ctx);
509 + }
510 +-#endif /* if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) */
511 ++#endif /* if OPENSSL_VERSION_NUMBER < 0x10100000L || LIBRESSL_VERSION_NUMBER < 0x3050000fL */
512 +
513 +
514 + free(buffer);
515 +@@ -331,7 +331,7 @@ emile_cipher_server_listen(Emile_Cipher_Type t)
516 + SSL_CTX_set_options(r->ssl_ctx,
517 + options | SSL_OP_NO_SSLv2 | SSL_OP_SINGLE_DH_USE);
518 + break;
519 +-#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
520 ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || LIBRESSL_VERSION_NUMBER < 0x3050000fL
521 + case EMILE_TLSv1:
522 + r->ssl_ctx = SSL_CTX_new(TLSv1_server_method());
523 + break;
524 +@@ -780,7 +780,7 @@ emile_cipher_server_connect(Emile_Cipher_Type t)
525 + options | SSL_OP_NO_SSLv2 | SSL_OP_SINGLE_DH_USE);
526 + break;
527 + case EMILE_TLSv1:
528 +-#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
529 ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || LIBRESSL_VERSION_NUMBER < 0x3050000fL
530 + r->ssl_ctx = SSL_CTX_new(TLSv1_client_method());
531 + break;
532 + #endif
533 +--
534 +2.25.1
535
536 diff --git a/dev-libs/efl/metadata.xml b/dev-libs/efl/metadata.xml
537 new file mode 100644
538 index 0000000..7d08658
539 --- /dev/null
540 +++ b/dev-libs/efl/metadata.xml
541 @@ -0,0 +1,37 @@
542 +<?xml version="1.0" encoding="UTF-8"?>
543 +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
544 +<pkgmetadata>
545 + <maintainer type="person">
546 + <email>juippis@g.o</email>
547 + <name>Joonas Niilola</name>
548 + </maintainer>
549 + <use>
550 + <flag name="avif">Enable AVIF image loader</flag>
551 + <flag name="bmp">Enable WBMP image loader</flag>
552 + <flag name="dds">Enable DDS image loader</flag>
553 + <flag name="drm">Enable DRM engine</flag>
554 + <flag name="eet">Enable Eet image loader</flag>
555 + <flag name="efl-one">Combine multiple core libraries into one libefl.so</flag>
556 + <flag name="fribidi">Enable bidirectional text support</flag>
557 + <flag name="glib">Enable <pkg>dev-libs/glib</pkg> support</flag>
558 + <flag name="harfbuzz">Enable complex text shaping and layout support</flag>
559 + <flag name="heif">Enable HEIF image loader</flag>
560 + <flag name="hyphen">Enable text hyphenation support</flag>
561 + <flag name="ibus">Enable Intelligent Input Bus</flag>
562 + <flag name="ico">Enable Ico image loader</flag>
563 + <flag name="json">Enable lottie animation support</flag>
564 + <flag name="mono">Enable mono bindings</flag>
565 + <flag name="physics">Enable Bullet physics effects and support</flag>
566 + <flag name="pmaps">Enable PMAPS image loader</flag>
567 + <flag name="psd">Enable PSD image loader</flag>
568 + <flag name="scim">Enable Smart Common Input Method</flag>
569 + <flag name="system-lz4">Use system liblz4 instead of bundled one</flag>
570 + <flag name="tga">Enable Tga image loader</flag>
571 + <flag name="tgv">Enable Tgv image loader</flag>
572 + <flag name="tslib">Enable <pkg>x11-libs/tslib</pkg> for touchscreen events</flag>
573 + <flag name="unwind">Enable debug support via <pkg>sys-libs/libunwind</pkg></flag>
574 + <flag name="xcf">Enable XCF image loader</flag>
575 + <flag name="xim">Enable X Input Method</flag>
576 + <flag name="xpresent">Enable <pkg>x11-libs/libXpresent</pkg> support</flag>
577 + </use>
578 +</pkgmetadata>