Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package zbar for openSUSE:Factory checked in 
at 2023-04-29 17:27:48
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/zbar (Old)
 and      /work/SRC/openSUSE:Factory/.zbar.new.1533 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "zbar"

Sat Apr 29 17:27:48 2023 rev:17 rq:1083495 version:0.23.90

Changes:
--------
--- /work/SRC/openSUSE:Factory/zbar/zbar.changes        2022-12-24 
14:50:56.187157215 +0100
+++ /work/SRC/openSUSE:Factory/.zbar.new.1533/zbar.changes      2023-04-29 
17:27:54.906485529 +0200
@@ -1,0 +2,5 @@
+Fri Apr 28 08:21:42 UTC 2023 - Dirk Müller <dmuel...@suse.com>
+
+- add py311.patch to fix build against python 3.11
+
+-------------------------------------------------------------------

New:
----
  py311.patch

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

Other differences:
------------------
++++++ zbar.spec ++++++
--- /var/tmp/diff_new_pack.Z2szuY/_old  2023-04-29 17:27:55.398487589 +0200
+++ /var/tmp/diff_new_pack.Z2szuY/_new  2023-04-29 17:27:55.402487606 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package zbar
 #
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
 # Copyright (c) 2010 Carlos Goncalves <cgoncal...@opensuse.org>.
 #
 # All modifications and additions to the file contributed by third parties
@@ -28,6 +28,8 @@
 URL:            https://github.com/mchehab/zbar
 Source0:        
https://linuxtv.org/downloads/%{name}/%{name}-%{version}.tar.bz2
 Source98:       baselibs.conf
+# PATCH-FIX-UPSTREAM: fix build against python 3.11 - 
https://github.com/mchehab/zbar/commit/9bb0cc43f7f9e9c676e07b2e511f03bfa1c491cb
+Patch1:         py311.patch
 BuildRequires:  libjpeg-devel
 BuildRequires:  pkgconfig >= 0.9.0
 BuildRequires:  xmlto

++++++ py311.patch ++++++
>From 9bb0cc43f7f9e9c676e07b2e511f03bfa1c491cb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdan...@gmail.com>
Date: Wed, 21 Sep 2022 10:32:11 +0700
Subject: [PATCH] python: enum: fix build for Python 3.11
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Python 3.9 introduced Py_SET_SIZE function to set size instead of
relying on Py_SIZE() as a macro [3.9].

Python 3.10 started to encourage to use Py_SET_SIZE instead of
assigning into return value of Py_SIZE [3.10].

Python 3.11 flips the switch, turn Py_SIZE into a function [3.11],
thus Py_SIZE(obj) will be a rvalue. We need to use Py_SET_SIZE
to set size now.

[3.9]: https://docs.python.org/3.9/c-api/structures.html#c.Py_SET_SIZE
[3.10]: https://docs.python.org/3.10/c-api/structures.html#c.Py_SIZE
[3.11]: https://docs.python.org/3.11/c-api/structures.html#c.Py_SIZE

Signed-off-by: Đoàn Trần Công Danh <congdan...@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mche...@kernel.org>
---
 python/enum.c | 8 ++++++++
 1 file changed, 8 insertions(+)

Index: zbar-0.23.90/python/enum.c
===================================================================
--- zbar-0.23.90.orig/python/enum.c
+++ zbar-0.23.90/python/enum.c
@@ -49,10 +49,13 @@ enumitem_new (PyTypeObject *type,
         Py_DECREF(self);
         return(NULL);
     }
-
     /* we assume the "fast path" for a single-digit ints (see longobject.c) */
     /* this also holds if we get a small_int preallocated long */
+#if PY_VERSION_HEX >= 0x030900A4
+    Py_SET_SIZE(&self->val, Py_SIZE(longval));
+#else
     Py_SIZE(&self->val) = Py_SIZE(longval);
+#endif
     self->val.ob_digit[0] = longval->ob_digit[0];
     Py_DECREF(longval);
 #else
@@ -143,7 +146,11 @@ zbarEnumItem_New (PyObject *byname,
 
     /* we assume the "fast path" for a single-digit ints (see longobject.c) */
     /* this also holds if we get a small_int preallocated long */
+#if PY_VERSION_HEX >= 0x030900A4
+    Py_SET_SIZE(&self->val, Py_SIZE(longval));
+#else
     Py_SIZE(&self->val) = Py_SIZE(longval);
+#endif
     self->val.ob_digit[0] = longval->ob_digit[0];
     Py_DECREF(longval);
 

Reply via email to