Hello community,

here is the log from the commit of package libzbc for openSUSE:Factory checked 
in at 2020-03-19 19:44:59
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libzbc (Old)
 and      /work/SRC/openSUSE:Factory/.libzbc.new.3160 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libzbc"

Thu Mar 19 19:44:59 2020 rev:16 rq:785464 version:5.8.5

Changes:
--------
--- /work/SRC/openSUSE:Factory/libzbc/libzbc.changes    2020-03-11 
18:47:31.907457708 +0100
+++ /work/SRC/openSUSE:Factory/.libzbc.new.3160/libzbc.changes  2020-03-19 
19:48:39.424127233 +0100
@@ -1,0 +2,6 @@
+Mon Mar 16 07:20:10 UTC 2020 - Jan Engelhardt <jeng...@inai.de>
+
+- Add 0001-build-avoid-double-definition-of-zbc_log_drv-etc.patch
+  [boo#1166503]
+
+-------------------------------------------------------------------

New:
----
  0001-build-avoid-double-definition-of-zbc_log_drv-etc.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libzbc.spec ++++++
--- /var/tmp/diff_new_pack.wWE7jq/_old  2020-03-19 19:48:39.876127494 +0100
+++ /var/tmp/diff_new_pack.wWE7jq/_new  2020-03-19 19:48:39.880127496 +0100
@@ -26,6 +26,7 @@
 URL:            https://github.com/hgst/libzbc
 
 Source:         https://github.com/hgst/libzbc/archive/v%version.tar.gz
+Patch1:         0001-build-avoid-double-definition-of-zbc_log_drv-etc.patch
 BuildRequires:  autoconf-archive
 BuildRequires:  libtool >= 2
 BuildRequires:  pkg-config
@@ -84,7 +85,7 @@
 mkdir obj
 pushd obj/
 %define _configure ../configure
-%configure --disable-static --includedir="%_includedir/%name"
+%configure --disable-static --includedir="%_includedir/%name" 
CFLAGS="%optflags -fno-common"
 make %{?_smp_mflags}
 popd
 

++++++ 0001-build-avoid-double-definition-of-zbc_log_drv-etc.patch ++++++
>From abf34849c0b4e43900535a3a5d68753ab1107b65 Mon Sep 17 00:00:00 2001
From: Jan Engelhardt <jeng...@inai.de>
Date: Mon, 16 Mar 2020 08:01:44 +0100
Subject: [PATCH] build: avoid double definition of zbc_log_drv etc.
Upstream: https://github.com/hgst/libzbc/pull/37

When -fno-common is in use, what compiler writers are trying to make
a standard, libzbc fails to build.

$ make V=1
Making all in .
make[1]: Entering directory '~/libzbc'
/bin/sh ./libtool  --tag=CC   --mode=link gcc  -fPIC -fno-common -O2 -g 
-pthread -Wl,--version-script,./exports -release '5.8.5'  -o libzbc.la -rpath 
/usr/lib lib/libzbc_la-zbc.lo lib/libzbc_la-zbc_block.lo 
lib/libzbc_la-zbc_sg.lo lib/libzbc_la-zbc_scsi.lo lib/libzbc_la-zbc_ata.lo 
lib/libzbc_la-zbc_fake.lo
libtool: link: gcc -shared  -fPIC -DPIC  lib/.libs/libzbc_la-zbc.o 
lib/.libs/libzbc_la-zbc_block.o lib/.libs/libzbc_la-zbc_sg.o 
lib/.libs/libzbc_la-zbc_scsi.o lib/.libs/libzbc_la-zbc_ata.o 
lib/.libs/libzbc_la-zbc_fake.o    -O2 -g -pthread -Wl,--version-script 
-Wl,./exports   -pthread -Wl,-soname -Wl,libzbc-5.8.5.so -o 
.libs/libzbc-5.8.5.so
/usr/lib64/gcc/x86_64-suse-linux/9/../../../../x86_64-suse-linux/bin/ld: 
lib/.libs/libzbc_la-zbc_block.o:~/libzbc/lib/zbc.h:269: multiple definition of 
`zbc_log_level'; lib/.libs/libzbc_la-zbc.o:~/libzbc/lib/zbc.h:269: first 
defined here
/usr/lib64/gcc/x86_64-suse-linux/9/../../../../x86_64-suse-linux/bin/ld: 
lib/.libs/libzbc_la-zbc_block.o:~/libzbc/lib/zbc.h:195: multiple definition of 
`zbc_fake_drv'; lib/.libs/libzbc_la-zbc.o:~/libzbc/lib/zbc.h:195: first defined 
here

References: https://bugzilla.suse.com/show_bug.cgi?id=1160244
---
 lib/zbc.h | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/lib/zbc.h b/lib/zbc.h
index 7dec298..73d76db 100644
--- a/lib/zbc.h
+++ b/lib/zbc.h
@@ -177,22 +177,22 @@ static inline void zbc_set_errno(enum zbc_sk sk, enum 
zbc_asc_ascq asc_ascq)
 /**
  * Block device driver (requires kernel support).
  */
-struct zbc_drv zbc_block_drv;
+extern struct zbc_drv zbc_block_drv;
 
 /**
  * ZAC (ATA) device driver (uses SG_IO).
  */
-struct zbc_drv zbc_ata_drv;
+extern struct zbc_drv zbc_ata_drv;
 
 /**
  * ZBC (SCSI) device driver (uses SG_IO).
  */
-struct zbc_drv zbc_scsi_drv;
+extern struct zbc_drv zbc_scsi_drv;
 
 /**
  * ZBC emulation driver (file or block device).
  */
-struct zbc_drv zbc_fake_drv;
+extern struct zbc_drv zbc_fake_drv;
 
 #define container_of(ptr, type, member) \
     ((type *)((char *)(ptr)-(unsigned long)(&((type *)0)->member)))
@@ -266,7 +266,7 @@ enum {
 /**
  * Library log level.
  */
-int zbc_log_level;
+extern int zbc_log_level;
 
 #define zbc_print(stream,format,args...)               \
        do {                                            \
-- 
2.25.1


Reply via email to