libepoxy: improve musl patch

dlvsym() is used by the libepoxy test suite, but this is glibc-specific and
isn't present in musl.

Instead of adding an option to control whether dlvsym is available (which could
be detected by Meson), as we don't install the test suite simply add an option
to disable the entire test suite (and submit the patch upstream).

Also remove the build dependency on util-macros as that is a remnant of the
autotools build.

(From OE-Core rev: 80cee6088fa60eb5197f8ed9d135986b8e7d471a)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Ross Burton
2018-03-01 22:20:39 +00:00
committed by Richard Purdie
parent 824525d94b
commit da2e820471
3 changed files with 35 additions and 62 deletions

View File

@@ -1,58 +0,0 @@
From 9c964427656ef71210e2c5b48b279857806574e9 Mon Sep 17 00:00:00 2001
From: Francesco Giancane <francescogiancane8@gmail.com>
Date: Wed, 28 Feb 2018 21:32:24 +0100
Subject: [PATCH] Make it possible to disable the use of dlvsym() (needed for
musl)
Add a patch to work around absence of dlvsym() on musl
(wasn't previously a problem as autotools weren't building tests by default)
Upstream-Status: Pending
Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Francesco Giancane <francescogiancane8@gmail.com>
---
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 b5d7c98..aa849c2 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -1,6 +1,9 @@
option('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('glx',
type: 'combo',
choices: [ 'auto', 'yes', 'no' ],
diff --git a/test/meson.build b/test/meson.build
index c5788b4..4c46ae6 100644
--- a/test/meson.build
+++ b/test/meson.build
@@ -92,8 +92,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
@@ -114,7 +114,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.14.3

View File

@@ -0,0 +1,33 @@
Add option to disable tests.
Upstream-Status: Submitted (https://github.com/anholt/libepoxy/pull/158)
Signed-off-by: Ross Burton <ross.burton@intel.com>
diff --git a/meson.build b/meson.build
index b2ebaef..9632c7a 100644
--- a/meson.build
+++ b/meson.build
@@ -242,7 +242,10 @@ libepoxy_inc = [
subdir('include/epoxy')
subdir('src')
-subdir('test')
+
+if get_option('tests')
+ subdir('test')
+endif
if get_option('docs')
doxygen = find_program('doxygen', required: false)
diff --git a/meson_options.txt b/meson_options.txt
index b5d7c98..dc30e68 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -15,3 +15,7 @@ option('x11',
type: 'boolean',
value: true,
description: 'Enable X11 support (GLX or EGL-X11)')
+option('tests',
+ type: 'boolean',
+ value: true,
+ description: 'Build the test suite')

View File

@@ -6,7 +6,7 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=58ef4c80d401e07bd9ee8b6b58cf464b"
SRC_URI = "https://github.com/anholt/${BPN}/releases/download/${PV}/${BP}.tar.xz \
file://0001-Make-it-possible-to-disable-the-use-of-dlvsym-needed.patch \
file://no-tests.patch \
"
SRC_URI[md5sum] = "63fe3847789258254dcd7e3fdb9e7f5e"
SRC_URI[sha256sum] = "4c94995398a6ebf691600dda2e9685a0cac261414175c2adf4645cdfab42a5d5"
@@ -16,10 +16,8 @@ inherit meson pkgconfig distro_features_check
REQUIRED_DISTRO_FEATURES = "opengl"
DEPENDS = "util-macros"
PACKAGECONFIG[egl] = "-Degl=yes, -Degl=no, virtual/egl"
PACKAGECONFIG[x11] = "-Dglx=yes, -Dglx=no, virtual/libx11 virtual/libgl"
PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)} egl"
EXTRA_OEMESON_append_libc-musl = " -Dhas-dlvsym=false "
EXTRA_OEMESON += "-Dtests=false"