From aaa523e87c73abc2cf8cf3ea55d9e2c6789d3b9a Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Thu, 4 Jan 2018 15:12:33 +0200 Subject: libepoxy: convert to meson build Add a patch to work around absence of dlvsym() on musl (wasn't previously a problem as autotools weren't building tests by default) Signed-off-by: Alexander Kanavin Signed-off-by: Richard Purdie --- ...sible-to-disable-the-use-of-dlvsym-needed.patch | 55 ++++++++++++++++++++++ meta/recipes-graphics/libepoxy/libepoxy_1.4.3.bb | 12 +++-- 2 files changed, 63 insertions(+), 4 deletions(-) create mode 100644 meta/recipes-graphics/libepoxy/libepoxy/0001-Make-it-possible-to-disable-the-use-of-dlvsym-needed.patch diff --git a/meta/recipes-graphics/libepoxy/libepoxy/0001-Make-it-possible-to-disable-the-use-of-dlvsym-needed.patch b/meta/recipes-graphics/libepoxy/libepoxy/0001-Make-it-possible-to-disable-the-use-of-dlvsym-needed.patch new file mode 100644 index 0000000000..c2a2fa3453 --- /dev/null +++ b/meta/recipes-graphics/libepoxy/libepoxy/0001-Make-it-possible-to-disable-the-use-of-dlvsym-needed.patch @@ -0,0 +1,55 @@ +From 7bcefd311cd696955376fe2c5298ec85e8f954ce Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin +Date: Wed, 15 Nov 2017 12:48:27 +0200 +Subject: [PATCH] Make it possible to disable the use of dlvsym() (needed for + musl) + +Upstream-Status: Pending +Signed-off-by: Alexander Kanavin + +--- + meson_options.txt | 3 +++ + test/meson.build | 6 +++--- + 2 files changed, 6 insertions(+), 3 deletions(-) + +diff --git a/meson_options.txt b/meson_options.txt +index 244476a..071f0b6 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -1,6 +1,9 @@ + option('enable-docs', + type: 'boolean', value: false, + description: 'Enable generating the Epoxy API reference (depends on Doxygen)') ++option('has-dlvsym', ++ type: 'boolean', value: true, ++ description: 'Whether dlvsym() is available (it is not when using musl C library)') + option('enable-glx', + type: 'combo', + choices: [ 'auto', 'yes', 'no' ], +diff --git a/test/meson.build b/test/meson.build +index 2340fc6..bc4330b 100644 +--- a/test/meson.build ++++ b/test/meson.build +@@ -86,8 +86,8 @@ if build_glx + [ 'glx_has_extension_nocontext', [ 'glx_has_extension_nocontext.c' ], [], [], true ], + [ 'glx_static', [ 'glx_static.c' ], [ '-DNEEDS_TO_BE_STATIC'], [ '-static' ], libtype == 'static' ], + [ 'glx_shared_znow', [ 'glx_static.c', ], [], [ '-Wl,-z,now' ], has_znow ], +- [ 'glx_alias_prefer_same_name', [ 'glx_alias_prefer_same_name.c', 'dlwrap.c', 'dlwrap.h' ], [], [ '-rdynamic' ], not build_apple ], +- [ 'glx_gles2', [ 'glx_gles2.c', 'dlwrap.c', 'dlwrap.h' ], [], [ '-rdynamic' ], not build_apple ], ++ [ 'glx_alias_prefer_same_name', [ 'glx_alias_prefer_same_name.c', 'dlwrap.c', 'dlwrap.h' ], [], [ '-rdynamic' ], not build_apple and get_option('has-dlvsym') == true ], ++ [ 'glx_gles2', [ 'glx_gles2.c', 'dlwrap.c', 'dlwrap.h' ], [], [ '-rdynamic' ], not build_apple and get_option('has-dlvsym') == true ], + ] + + foreach test: glx_tests +@@ -108,7 +108,7 @@ if build_glx + endif + endforeach + +- if not build_apple ++ if not build_apple and get_option('has-dlvsym') == true + # GLX/EGL tests + if build_egl + glx_egl_sources = [ +-- +2.15.0 + diff --git a/meta/recipes-graphics/libepoxy/libepoxy_1.4.3.bb b/meta/recipes-graphics/libepoxy/libepoxy_1.4.3.bb index 0172322b92..72167a2fb8 100644 --- a/meta/recipes-graphics/libepoxy/libepoxy_1.4.3.bb +++ b/meta/recipes-graphics/libepoxy/libepoxy_1.4.3.bb @@ -6,17 +6,21 @@ LICENSE = "MIT" LIC_FILES_CHKSUM = "file://COPYING;md5=58ef4c80d401e07bd9ee8b6b58cf464b" SRC_URI = "https://github.com/anholt/${BPN}/releases/download/${PV}/${BP}.tar.xz \ - file://Add-fallback-definition-for-EGL-CAST.patch" + file://Add-fallback-definition-for-EGL-CAST.patch \ + file://0001-Make-it-possible-to-disable-the-use-of-dlvsym-needed.patch \ + " SRC_URI[md5sum] = "af4c3ce0fb1143bdc4e43f85695a9bed" SRC_URI[sha256sum] = "0b808a06c9685a62fca34b680abb8bc7fb2fda074478e329b063c1f872b826f6" UPSTREAM_CHECK_URI = "https://github.com/anholt/libepoxy/releases" -inherit autotools pkgconfig distro_features_check +inherit meson pkgconfig distro_features_check REQUIRED_DISTRO_FEATURES = "opengl" DEPENDS = "util-macros" -PACKAGECONFIG[egl] = "--enable-egl, --disable-egl, virtual/egl" -PACKAGECONFIG[x11] = "--enable-glx, --disable-glx, virtual/libx11" +PACKAGECONFIG[egl] = "-Denable-egl=yes, -Denable-egl=no, virtual/egl" +PACKAGECONFIG[x11] = "-Denable-glx=yes, -Denable-glx=no, virtual/libx11" PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)} egl" + +EXTRA_OEMESON_append_libc-musl = " -Dhas-dlvsym=false " -- cgit 1.2.3-korg