Hello community, here is the log from the commit of package libwacom for openSUSE:Factory checked in at 2019-11-20 15:00:11 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libwacom (Old) and /work/SRC/openSUSE:Factory/.libwacom.new.26869 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libwacom" Wed Nov 20 15:00:11 2019 rev:26 rq:749855 version:1.1 Changes: -------- --- /work/SRC/openSUSE:Factory/libwacom/libwacom.changes 2019-11-18 20:03:45.489792710 +0100 +++ /work/SRC/openSUSE:Factory/.libwacom.new.26869/libwacom.changes 2019-11-20 15:00:12.434757943 +0100 @@ -1,0 +2,7 @@ +Wed Nov 20 10:06:24 UTC 2019 - Dominique Leuenberger <[email protected]> + +- Add 174.patch + (https://patch-diff.githubusercontent.com/raw/linuxwacom/libwacom/pull/174.patch): + + Disable deprecated symbol test when using LTO. + +------------------------------------------------------------------- New: ---- 174.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libwacom.spec ++++++ --- /var/tmp/diff_new_pack.VMBDyV/_old 2019-11-20 15:00:13.118757728 +0100 +++ /var/tmp/diff_new_pack.VMBDyV/_new 2019-11-20 15:00:13.122757728 +0100 @@ -32,6 +32,7 @@ Source2: https://github.com/linuxwacom/libwacom/releases/download/%{name}-%{version}/%{name}-%{version}.tar.bz2.sig Source3: %{name}.keyring Source99: baselibs.conf +Patch0: https://patch-diff.githubusercontent.com/raw/linuxwacom/libwacom/pull/174.patch %if %{with meson} BuildRequires: meson >= 0.47.0 %endif @@ -85,6 +86,7 @@ %prep %setup -q +%patch0 -p1 %build %if %{with meson} ++++++ 174.patch ++++++ >From b81ab0fec2273f2ff20664660fe5e9b58dc67a9c Mon Sep 17 00:00:00 2001 From: Peter Hutterer <[email protected]> Date: Mon, 4 Nov 2019 14:55:24 +1000 Subject: [PATCH] meson.build: disable the deprecated symbols test with LTO If I understand this correctly: - our deprecated symbols are remapped into a specific library version - nothing in the test calls those symbols, so they're optimized away (they end up as local symbols) - our test uses asm to link to those functions but by then they're already gone Rather than fixing this let's just disable the test, it doesn't provide us with anything useful in the LTO condition anyway. Fixes #152 Signed-off-by: Peter Hutterer <[email protected]> --- meson.build | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/meson.build b/meson.build index 8283613..28d93a3 100644 --- a/meson.build +++ b/meson.build @@ -543,13 +543,18 @@ if get_option('tests') message('valgrind not found, disabling valgrind test suite') endif - test_deprecated = executable('test-deprecated', - 'test/test-deprecated.c', - dependencies: [dep_libwacom, dep_dl], - include_directories: [includes_src], - c_args: tests_cflags, - install: false) - test('test-deprecated', test_deprecated, suite: ['all']) + # because of the tricks we use in calling the function and exposing + # it to begin with, LTO gets confused and this fails to link. + # Let's just disable it here. + if not get_option('b_lto') + test_deprecated = executable('test-deprecated', + 'test/test-deprecated.c', + dependencies: [dep_libwacom, dep_dl], + include_directories: [includes_src], + c_args: tests_cflags, + install: false) + test('test-deprecated', test_deprecated, suite: ['all']) + endif endif # This is a non-optional test
