diff --git a/.gitignore b/.gitignore index 153a457..5a6ac22 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,4 @@ zbar-0.10.tar.bz2 /zbar-0.22.92.tar.bz2 /zbar-0.23.tar.bz2 /zbar-0.23.90.tar.bz2 +/zbar-0.23.93.tar.bz2 diff --git a/fix_qt_overlinking.patch b/fix_qt_overlinking.patch new file mode 100644 index 0000000..727a57e --- /dev/null +++ b/fix_qt_overlinking.patch @@ -0,0 +1,16 @@ +This was causing Qt5 to be linked into every binary in zbar, where it is only +needed for the Qt bindings (which already specify QT_CFLAGS, QT_LIBS, etc). + +diff --git a/configure.ac b/configure.ac +index f0f9723..2a26973 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -689,8 +689,6 @@ AM_CONDITIONAL([HAVE_QT], [test "x$with_qt" = "xyes"]) + AM_COND_IF([HAVE_QT], + [AC_MSG_NOTICE([using Qt version $QT_VERSION]) + AC_MSG_NOTICE([using moc from $MOC]) +- CPPFLAGS="$CPPFLAGS $QT_CPPFLAGS" +- LIBS="$LIBS $QT_LIBS" + AC_CONFIG_FILES([zbar-qt.pc:"${qt_pkgconfig_file}.in"]) + #dnl -fPIC has no effect on Windows and breaks windres + AS_IF([test "x$win32" = "xno"], [CPPFLAGS="$CPPFLAGS -fPIC"])]) diff --git a/py311.patch b/py311.patch deleted file mode 100644 index 6977d95..0000000 --- a/py311.patch +++ /dev/null @@ -1,35 +0,0 @@ ---- python/enum.c~ 2022-01-12 10:07:02.151116991 -0600 -+++ python/enum.c 2022-01-12 10:14:04.093001534 -0600 -@@ -23,6 +23,12 @@ - - #include "zbarmodule.h" - -+#if PY_VERSION_HEX < 0x030900A4 && !defined(Py_SET_SIZE) -+static inline void _Py_SET_SIZE(PyVarObject *ob, Py_ssize_t size) -+{ ob->ob_size = size; } -+#define Py_SET_SIZE(ob, size) _Py_SET_SIZE((PyVarObject*)(ob), size) -+#endif -+ - static char enumitem_doc[] = PyDoc_STR( - "simple enumeration item.\n" - "\n" ---- python/enum.c~ 2022-01-12 10:16:29.670271662 -0600 -+++ python/enum.c 2022-01-12 10:52:11.671258442 -0600 -@@ -58,7 +58,7 @@ - - /* we assume the "fast path" for a single-digit ints (see longobject.c) */ - /* this also holds if we get a small_int preallocated long */ -- Py_SIZE(&self->val) = Py_SIZE(longval); -+ Py_SET_SIZE(&self->val, longval); - self->val.ob_digit[0] = longval->ob_digit[0]; - Py_DECREF(longval); - #else -@@ -148,7 +148,7 @@ - - /* we assume the "fast path" for a single-digit ints (see longobject.c) */ - /* this also holds if we get a small_int preallocated long */ -- Py_SIZE(&self->val) = Py_SIZE(longval); -+ Py_SET_SIZE(&self->val, longval); - self->val.ob_digit[0] = longval->ob_digit[0]; - Py_DECREF(longval); - diff --git a/sources b/sources index 6fa09be..4eacb18 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (zbar-0.23.90.tar.bz2) = c4ccac8526acab4e28c6145c5cdb95b6a6c5c81b6d2f883053435794f7c351edee20abdc9599cb0de96db546f584c9479896baa87b01ad409d5e75ea8b48118c +SHA512 (zbar-0.23.93.tar.bz2) = 8b1d57557cb1c425109b709f0cbe94830939cb4cd9a0cb505d44ba3c7cfb3522560c3bbf2a8b37985da4577b677ad675491f6ef0e9796749382079c0e844e21e diff --git a/zbar.spec b/zbar.spec index 1041c3d..255f4e8 100644 --- a/zbar.spec +++ b/zbar.spec @@ -5,15 +5,15 @@ %endif Name: zbar -Version: 0.23.90 -Release: 5%{?dist} +Version: 0.23.93 +Release: 13%{?dist} Summary: Bar code reader -License: LGPLv2+ +License: LGPL-2.1-or-later URL: http://zbar.sourceforge.net/ Source0: https://linuxtv.org/downloads/%{name}/%{name}-%{version}.tar.bz2 Patch0: use_python3_on_python_script.patch -Patch1: py311.patch +Patch1: fix_qt_overlinking.patch BuildRequires: autoconf BuildRequires: automake @@ -26,14 +26,16 @@ BuildRequires: libtool BuildRequires: libv4l-devel BuildRequires: libXv-devel BuildRequires: make -BuildRequires: pygobject3-devel +BuildRequires: python3-gobject-devel BuildRequires: qt5-qtbase-devel BuildRequires: qt5-qtx11extras-devel -BuildRequires: xmlto %if %{JAVA} -BuildRequires: java-11-openjdk-devel +BuildRequires: java-devel %endif BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: xmlto +BuildRequires: gobject-introspection-devel %description ZBar Bar Code Reader is an open source software suite for reading bar @@ -117,11 +119,12 @@ on Java Native Interface (JNI) applications using ZBar. %prep %setup -q -%patch0 -p1 -%patch1 -p0 +%patch 0 -p1 +%patch 1 -p1 %build -%configure --with-python=python3 --with-gtk=auto --docdir=%{_docdir}/%{name}-%{version} --with-graphicsmagick --without-xshm --without-xv --enable-codes=ean,databar,code128,code93,code39,codabar,i25,qrcode,sqcode,pdf417 +autoreconf -fiv +%configure --with-python=python3 --with-gtk=auto --with-dbusconfdir=%{_sysconfdir} --docdir=%{_docdir}/%{name}-%{version} --with-graphicsmagick --without-xshm --without-xv --enable-codes=ean,databar,code128,code93,code39,codabar,i25,qrcode,sqcode,pdf417 # rpath sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool @@ -142,7 +145,7 @@ cp test/test_python.py %{buildroot}%{_docdir} find ${RPM_BUILD_ROOT} -name '*.la' -or -name '*.a' | xargs rm -f # Remove installed doc -rm -rf $RPM_BUILD_ROOT/usr/share/doc/zbar-%{version}/ +rm -rf $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/ %ldconfig_scriptlets @@ -164,6 +167,7 @@ rm -rf $RPM_BUILD_ROOT/usr/share/doc/zbar-%{version}/ %files libs -f zbar.lang %license COPYING LICENSE.md %{_libdir}/libzbar.so.0* +%{_libdir}/girepository-1.0/ZBar-1.0.typelib %files devel %doc HACKING.md TODO.md @@ -180,19 +184,16 @@ rm -rf $RPM_BUILD_ROOT/usr/share/doc/zbar-%{version}/ %{_includedir}/zbar/Video.h %{_includedir}/zbar/Window.h %{_includedir}/zbar/Processor.h +%{_datadir}/gir-1.0/ZBar-1.0.gir %files gtk %{_libdir}/libzbargtk.so.* %{_bindir}/zbarcam-gtk -%dir %{_libdir}/girepository-1.0 -%{_libdir}/girepository-1.0/ZBar-1.0.typelib %files gtk-devel %{_libdir}/libzbargtk.so %{_libdir}/pkgconfig/zbar-gtk.pc %{_includedir}/zbar/zbargtk.h -%dir %{_datadir}/gir-1.0 -%{_datadir}/gir-1.0/ZBar-1.0.gir %files qt %{_libdir}/libzbarqt.so.* @@ -214,6 +215,66 @@ rm -rf $RPM_BUILD_ROOT/usr/share/doc/zbar-%{version}/ %{_docdir}/test_python.py %changelog +* Tue Aug 04 2026 Gwyn Ciesla - 0.23.93-13 +- Rebuild for Python 3.15.0b4 + +* Fri Jul 17 2026 Fedora Release Engineering - 0.23.93-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild + +* Wed Jun 03 2026 Python Maint - 0.23.93-11 +- Rebuilt for Python 3.15 + +* Sat Jan 17 2026 Fedora Release Engineering - 0.23.93-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + +* Fri Sep 05 2025 Yaakov Selkowitz - 0.23.93-9 +- Fix Qt overlinking + +* Fri Jul 25 2025 Fedora Release Engineering - 0.23.93-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Tue Jun 03 2025 Python Maint - 0.23.93-7 +- Rebuilt for Python 3.14 + +* Sun Jan 19 2025 Fedora Release Engineering - 0.23.93-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Sat Jul 20 2024 Fedora Release Engineering - 0.23.93-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Fri Jun 07 2024 Python Maint - 0.23.93-4 +- Rebuilt for Python 3.13 + +* Mon Apr 15 2024 Gwyn Ciesla - 0.23.93-3 +- Update python3-gobject BuildRequires + +* Sat Jan 27 2024 Fedora Release Engineering - 0.23.93-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Tue Jan 09 2024 Gwyn Ciesla - 0.23.93-1 +- 0.23.93 + +* Fri Jan 05 2024 Florian Weimer - 0.23.90-12 +- Add missing Py_SIZE to py311.patch + +* Sat Jul 22 2023 Fedora Release Engineering - 0.23.90-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Fri Jul 07 2023 Michael J Gruber - 0.23.90-10 +- Fix FTBFS with python 3.12 (rhbz#2220630) + +* Thu Jun 15 2023 Python Maint - 0.23.90-9 +- Rebuilt for Python 3.12 + +* Wed Mar 01 2023 Gwyn Ciesla - 0.23.90-8 +- migrated to SPDX license + +* Sat Jan 21 2023 Fedora Release Engineering - 0.23.90-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Wed Dec 21 2022 Gwyn Ciesla - 0.23.90-6 +- BR setuptools + * Fri Aug 26 2022 Kalev Lember - 0.23.90-5 - Misc packaging cleanup - Sort BuildRequires and Requires and split them out one per line