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



Reply via email to