Architecture specific change in rpms/swig.git
by githook-noreply@fedoraproject.org
The package rpms/swig.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/swig.git/commit/?id=4ddcbf819793f....
Change:
+%ifarch s390 s390x x86_64
Thanks.
Full change:
============
commit 4ddcbf819793f130eedadc0b3b6a605092f114e7
Author: Jitka Plesnikova <jplesnik(a)redhat.com>
Date: Thu Oct 17 16:08:54 2019 +0200
Disable Ruby tests on x86_64
diff --git a/swig.spec b/swig.spec
index 10f6d10..8844df0 100644
--- a/swig.spec
+++ b/swig.spec
@@ -18,8 +18,9 @@
%{!?guile:%global guile 0}
%{!?lualang:%global lualang 1}
%{!?phplang:%global phplang 1}
-# Disable Ruby test failed with swig 4.0.0
-%ifarch s390 s390x
+# Disable Ruby test failed with swig 4.0.0 on s390
+# Tests on x86_64 fails with Ruby 2.6.4
+%ifarch s390 s390x x86_64
%{!?rubylang:%global rubylang 0}
%else
%{!?rubylang:%global rubylang 1}
@@ -53,7 +54,7 @@
Summary: Connects C/C++/Objective C to some high-level programming languages
Name: swig
Version: 4.0.1
-Release: 1%{?dist}
+Release: 2%{?dist}
License: GPLv3+ and BSD
URL: http://swig.sourceforge.net/
Source0: http://downloads.sourceforge.net/project/swig/swig/swig-%{version}/swig-%...
@@ -339,8 +340,11 @@ install -pm 644 Tools/swig.gdb %{buildroot}%{_datadir}/%{name}/gdb
%{_datadir}/%{name}/gdb
%changelog
+* Thu Oct 17 2019 Jitka Plesnikova <jplesnik(a)redhat.com> - 4.0.1-2
+- Disable Ruby tests on x86_64
+
* Wed Aug 21 2019 Jitka Plesnikova <jplesnik(a)redhat.com> - 4.0.1-1
-- Update to 4.0.0
+- Update to 4.0.1
- Add Python 3.8 support
- Python Sphinx compatibility added for Doxygen comments
- Fix some C++17 compatibility problems in Python and Ruby generated
4 years, 6 months
Architecture specific change in rpms/sane-backends.git
by githook-noreply@fedoraproject.org
The package rpms/sane-backends.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/sane-backends.git/commit/?id=1d59...
https://src.fedoraproject.org/cgit/rpms/sane-backends.git/commit/?id=5185...
https://src.fedoraproject.org/cgit/rpms/sane-backends.git/commit/?id=4a94....
Change:
+%ifarch i686 x86_64
+%ifarch armv7hl i686 x86_64
-%ifarch i686 x86_64
Thanks.
Full change:
============
commit 4a9414d15e23dedc4f626f92a5ccc51bf8b0b738
Author: Zdenek Dohnal <zdohnal(a)redhat.com>
Date: Thu Oct 17 14:27:12 2019 +0200
qcam backend support is tricky among different Fedora releases and archs - let the wildcard cover it
diff --git a/sane-backends.spec b/sane-backends.spec
index 4e57c26..db7d7ff 100644
--- a/sane-backends.spec
+++ b/sane-backends.spec
@@ -33,7 +33,7 @@
Summary: Scanner access software
Name: sane-backends
Version: 1.0.28
-Release: 2%{?dist}
+Release: 3%{?dist}
# lib/ is LGPLv2+, backends are GPLv2+ with exceptions
# Tools are GPLv2+, docs are public domain
# see LICENSE for details
@@ -409,10 +409,10 @@ exit 0
# qcam is not on aarch64, ppc64le and s390x. SANE needs
# ioperm, inb and outb functions or portaccess function
# to support qcam backend. Those functions are only in
-# armv7hl, i686 and x86_64 architectures.
-%ifarch i686 x86_64
-%{_libdir}/sane/libsane-qcam.so
-%endif
+# armv7hl (until F30), i686 and x86_64 architectures.
+# Because qcam is missing on some archs and releases,
+# I'll leave here a wildcard record
+%{_libdir}/sane/*.so
%{_libdir}/sane/libsane-ricoh.so
%{_libdir}/sane/libsane-ricoh2.so
%{_libdir}/sane/libsane-rts8891.so
@@ -454,6 +454,9 @@ exit 0
%{_unitdir}/saned@.service
%changelog
+* Thu Oct 17 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-3
+- qcam backend support is tricky among different Fedora releases and archs - let the wildcard cover it
+
* Thu Oct 17 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-2
- 1761145, 1761001, 1761051, 1761234 - genesys backend now needs gcc-c++, it is not built otherwise
- 1758886 - CanoScan LiDE scanners supported by genesys backend are not detected
commit 1d593acb9d053095657e3ff4e85112663edfc8fc
Author: Zdenek Dohnal <zdohnal(a)redhat.com>
Date: Thu Oct 17 13:29:03 2019 +0200
remove qcam from armvhl7 too
diff --git a/sane-backends.spec b/sane-backends.spec
index 7808ce7..4e57c26 100644
--- a/sane-backends.spec
+++ b/sane-backends.spec
@@ -410,7 +410,7 @@ exit 0
# ioperm, inb and outb functions or portaccess function
# to support qcam backend. Those functions are only in
# armv7hl, i686 and x86_64 architectures.
-%ifarch armv7hl i686 x86_64
+%ifarch i686 x86_64
%{_libdir}/sane/libsane-qcam.so
%endif
%{_libdir}/sane/libsane-ricoh.so
@@ -459,6 +459,7 @@ exit 0
- 1758886 - CanoScan LiDE scanners supported by genesys backend are not detected
- 1760916 - Samsung C460 does not have JPEG support
- 1761530 - genesys aborts when accessing invalid vector index and built with GLIBCXX_ASSERTIONS
+- remove qcam from armvhl7 too
* Mon Sep 30 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-1
- 1.0.28
commit f67fcd597558c50136378401267bd27d9f5f82bd
Author: Zdenek Dohnal <zdohnal(a)redhat.com>
Date: Thu Oct 17 11:36:31 2019 +0200
1761530 - genesys aborts when accessing invalid vector index and built with GLIBCXX_ASSERTIONS
diff --git a/sane-backends.spec b/sane-backends.spec
index 27a0aa1..7808ce7 100644
--- a/sane-backends.spec
+++ b/sane-backends.spec
@@ -458,6 +458,7 @@ exit 0
- 1761145, 1761001, 1761051, 1761234 - genesys backend now needs gcc-c++, it is not built otherwise
- 1758886 - CanoScan LiDE scanners supported by genesys backend are not detected
- 1760916 - Samsung C460 does not have JPEG support
+- 1761530 - genesys aborts when accessing invalid vector index and built with GLIBCXX_ASSERTIONS
* Mon Sep 30 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-1
- 1.0.28
diff --git a/sane-genesys-vector-glibcxxassert.patch b/sane-genesys-vector-glibcxxassert.patch
new file mode 100644
index 0000000..48ed253
--- /dev/null
+++ b/sane-genesys-vector-glibcxxassert.patch
@@ -0,0 +1,56 @@
+diff --git a/backend/genesys_low.cc b/backend/genesys_low.cc
+index 097375f..20dd3a4 100644
+--- a/backend/genesys_low.cc
++++ b/backend/genesys_low.cc
+@@ -49,6 +49,11 @@
+
+ #include <vector>
+
++template <typename T>
++T safe_vec_addr(std::vector<T>& vec, int i)
++{
++ return vec.size() >= (unsigned long int)(i+1) ? vec[i] : (T)0;
++}
+
+ Genesys_Device::~Genesys_Device()
+ {
+@@ -1209,17 +1214,17 @@ SANE_Status sanei_genesys_generate_gamma_buffer(Genesys_Device * dev,
+ dev->settings.brightness);
+ for (int i = 0; i < size; i++)
+ {
+- uint16_t value=rgamma[i];
++ uint16_t value = safe_vec_addr(rgamma, i);
+ value=lut[value];
+ gamma[i * 2 + size * 0 + 0] = value & 0xff;
+ gamma[i * 2 + size * 0 + 1] = (value >> 8) & 0xff;
+
+- value=ggamma[i];
++ value = safe_vec_addr(ggamma, i);
+ value=lut[value];
+ gamma[i * 2 + size * 2 + 0] = value & 0xff;
+ gamma[i * 2 + size * 2 + 1] = (value >> 8) & 0xff;
+
+- value=bgamma[i];
++ value = safe_vec_addr(bgamma, i);
+ value=lut[value];
+ gamma[i * 2 + size * 4 + 0] = value & 0xff;
+ gamma[i * 2 + size * 4 + 1] = (value >> 8) & 0xff;
+@@ -1229,15 +1234,15 @@ SANE_Status sanei_genesys_generate_gamma_buffer(Genesys_Device * dev,
+ {
+ for (int i = 0; i < size; i++)
+ {
+- uint16_t value=rgamma[i];
++ uint16_t value = safe_vec_addr(rgamma, i);
+ gamma[i * 2 + size * 0 + 0] = value & 0xff;
+ gamma[i * 2 + size * 0 + 1] = (value >> 8) & 0xff;
+
+- value=ggamma[i];
++ value = safe_vec_addr(ggamma, i);
+ gamma[i * 2 + size * 2 + 0] = value & 0xff;
+ gamma[i * 2 + size * 2 + 1] = (value >> 8) & 0xff;
+
+- value=bgamma[i];
++ value = safe_vec_addr(bgamma, i);
+ gamma[i * 2 + size * 4 + 0] = value & 0xff;
+ gamma[i * 2 + size * 4 + 1] = (value >> 8) & 0xff;
+ }
commit 62dc8e3ea6b5095ce574211295b0a85cb40fc0a1
Author: Zdenek Dohnal <zdohnal(a)redhat.com>
Date: Thu Oct 17 11:33:51 2019 +0200
1760916 - Samsung C460 does not have JPEG support
diff --git a/sane-backends.spec b/sane-backends.spec
index a3814f4..27a0aa1 100644
--- a/sane-backends.spec
+++ b/sane-backends.spec
@@ -57,6 +57,8 @@ Patch2: sane-backends-1.0.23-sane-config-multilib.patch
Patch3: sane-backends-saned-manpage.patch
# several canoscan models did not work due genesys backend rewritten, taken from upstream
Patch4: 0001-genesys-Make-sure-calib_reg-are-available-before-wri.patch
+# blacklist Samsung C460 for JPEG, #1760916
+Patch5: sane-xerox-mfp-blacklist-C460-for-JPEG.patch
URL: http://www.sane-project.org
@@ -193,6 +195,7 @@ access image acquisition devices available on the local host.
%patch2 -p1 -b .sane-config-multilib
%patch3 -p1 -b .saned-manpage
%patch4 -p1 -b .genesys-regression
+%patch5 -p1 -b .c460-blacklist-for-jpeg
%build
CFLAGS="%optflags -fno-strict-aliasing"
@@ -454,6 +457,7 @@ exit 0
* Thu Oct 17 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-2
- 1761145, 1761001, 1761051, 1761234 - genesys backend now needs gcc-c++, it is not built otherwise
- 1758886 - CanoScan LiDE scanners supported by genesys backend are not detected
+- 1760916 - Samsung C460 does not have JPEG support
* Mon Sep 30 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-1
- 1.0.28
diff --git a/sane-xerox-mfp-blacklist-C460-for-JPEG.patch b/sane-xerox-mfp-blacklist-C460-for-JPEG.patch
new file mode 100644
index 0000000..401a4a7
--- /dev/null
+++ b/sane-xerox-mfp-blacklist-C460-for-JPEG.patch
@@ -0,0 +1,12 @@
+diff --git a/backend/xerox_mfp.c b/backend/xerox_mfp.c
+index b7fcbee..2cb73ee 100644
+--- a/backend/xerox_mfp.c
++++ b/backend/xerox_mfp.c
+@@ -209,6 +209,7 @@ static int isSupportedDevice(struct device __sane_unused__ *dev)
+ if (dev->compressionTypes & (1 << 6)) {
+ /* blacklist malfunctioning device(s) */
+ if (!strncmp(dev->sane.model, "SCX-4500W", 9) ||
++ !strncmp(dev->sane.model, "C460", 4) ||
+ !strncmp(dev->sane.model, "M288x", 5))
+ return 0;
+ return 1;
commit 7d3dd917343a955ac80b6cb84febb4e2dbee7c0f
Author: Zdenek Dohnal <zdohnal(a)redhat.com>
Date: Thu Oct 17 11:31:27 2019 +0200
1758886 - CanoScan LiDE scanners supported by genesys backend are not detected
diff --git a/0001-genesys-Make-sure-calib_reg-are-available-before-wri.patch b/0001-genesys-Make-sure-calib_reg-are-available-before-wri.patch
new file mode 100644
index 0000000..4687a24
--- /dev/null
+++ b/0001-genesys-Make-sure-calib_reg-are-available-before-wri.patch
@@ -0,0 +1,13 @@
+diff -up sane-backends-1.0.28/backend/genesys_gl841.cc.genesys-regression sane-backends-1.0.28/backend/genesys_gl841.cc
+--- sane-backends-1.0.28/backend/genesys_gl841.cc.genesys-regression 2019-10-14 13:11:10.772763713 +0200
++++ sane-backends-1.0.28/backend/genesys_gl841.cc 2019-10-14 13:11:57.602389188 +0200
+@@ -5042,6 +5042,9 @@ gl841_init (Genesys_Device * dev)
+ /* Set analog frontend */
+ RIE (gl841_set_fe(dev, sensor, AFE_INIT));
+
++ // FIXME: slow_back_home modifies dev->calib_reg and requires it to be filled
++ dev->calib_reg = dev->reg;
++
+ /* Move home */
+ RIE (gl841_slow_back_home (dev, SANE_TRUE));
+
diff --git a/sane-backends.spec b/sane-backends.spec
index 502c564..a3814f4 100644
--- a/sane-backends.spec
+++ b/sane-backends.spec
@@ -55,6 +55,8 @@ Patch1: sane-backends-1.0.23-soname.patch
Patch2: sane-backends-1.0.23-sane-config-multilib.patch
# saned manpage incomplete and exists when saned is not installed (#1515762)
Patch3: sane-backends-saned-manpage.patch
+# several canoscan models did not work due genesys backend rewritten, taken from upstream
+Patch4: 0001-genesys-Make-sure-calib_reg-are-available-before-wri.patch
URL: http://www.sane-project.org
@@ -190,6 +192,7 @@ access image acquisition devices available on the local host.
%patch1 -p1 -b .soname
%patch2 -p1 -b .sane-config-multilib
%patch3 -p1 -b .saned-manpage
+%patch4 -p1 -b .genesys-regression
%build
CFLAGS="%optflags -fno-strict-aliasing"
@@ -448,8 +451,9 @@ exit 0
%{_unitdir}/saned@.service
%changelog
-* Mon Oct 14 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-2
+* Thu Oct 17 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-2
- 1761145, 1761001, 1761051, 1761234 - genesys backend now needs gcc-c++, it is not built otherwise
+- 1758886 - CanoScan LiDE scanners supported by genesys backend are not detected
* Mon Sep 30 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-1
- 1.0.28
commit 5185ac94abd1821dbf3bf974f7c673cfe6943127
Author: Zdenek Dohnal <zdohnal(a)redhat.com>
Date: Thu Oct 17 11:27:14 2019 +0200
1761145, 1761001, 1761051, 1761234 - genesys backend now needs gcc-c++, it is not built otherwise
diff --git a/sane-backends.spec b/sane-backends.spec
index 6721f08..502c564 100644
--- a/sane-backends.spec
+++ b/sane-backends.spec
@@ -33,7 +33,7 @@
Summary: Scanner access software
Name: sane-backends
Version: 1.0.28
-Release: 1%{?dist}
+Release: 2%{?dist}
# lib/ is LGPLv2+, backends are GPLv2+ with exceptions
# Tools are GPLv2+, docs are public domain
# see LICENSE for details
@@ -56,13 +56,12 @@ Patch2: sane-backends-1.0.23-sane-config-multilib.patch
# saned manpage incomplete and exists when saned is not installed (#1515762)
Patch3: sane-backends-saned-manpage.patch
-
-#Patch5: sane-backends-revert-samsung-patch.patch
-
URL: http://www.sane-project.org
# gcc is no longer in buildroot by default
BuildRequires: gcc
+# genesys backend is not written in C++, so it is needed as buildrequire
+BuildRequires: gcc-c++
BuildRequires: %{_bindir}/latex
%if %libusb1
@@ -333,7 +332,104 @@ exit 0
%{_libdir}/pkgconfig/sane-backends.pc
%files drivers-scanners
-%{_libdir}/sane/*.so
+# we need to specify all .so files for available backends because something like
+# #1761145 can happen - genesys did not compile because of lack gcc-c++ in buildroot
+# and configure printed only warning. So now we can figure out missing backend support
+# during build
+%{_libdir}/sane/libsane-abaton.so
+%{_libdir}/sane/libsane-agfafocus.so
+%{_libdir}/sane/libsane-apple.so
+%{_libdir}/sane/libsane-artec.so
+%{_libdir}/sane/libsane-artec_eplus48u.so
+%{_libdir}/sane/libsane-as6e.so
+%{_libdir}/sane/libsane-avision.so
+%{_libdir}/sane/libsane-bh.so
+%{_libdir}/sane/libsane-canon.so
+%{_libdir}/sane/libsane-canon630u.so
+%{_libdir}/sane/libsane-canon_dr.so
+%{_libdir}/sane/libsane-canon_pp.so
+%{_libdir}/sane/libsane-cardscan.so
+%{_libdir}/sane/libsane-coolscan.so
+%{_libdir}/sane/libsane-coolscan2.so
+%{_libdir}/sane/libsane-coolscan3.so
+%{_libdir}/sane/libsane-dc210.so
+%{_libdir}/sane/libsane-dc240.so
+%{_libdir}/sane/libsane-dc25.so
+%{_libdir}/sane/libsane-dell1600n_net.so
+%{_libdir}/sane/libsane-dll.so
+%{_libdir}/sane/libsane-dmc.so
+%{_libdir}/sane/libsane-epjitsu.so
+%{_libdir}/sane/libsane-epson.so
+%{_libdir}/sane/libsane-epson2.so
+%{_libdir}/sane/libsane-epsonds.so
+%{_libdir}/sane/libsane-fujitsu.so
+%{_libdir}/sane/libsane-genesys.so
+%{_libdir}/sane/libsane-gt68xx.so
+%{_libdir}/sane/libsane-hp.so
+%{_libdir}/sane/libsane-hp3500.so
+%{_libdir}/sane/libsane-hp3900.so
+%{_libdir}/sane/libsane-hp4200.so
+%{_libdir}/sane/libsane-hp5400.so
+%{_libdir}/sane/libsane-hp5590.so
+%{_libdir}/sane/libsane-hpljm1005.so
+%{_libdir}/sane/libsane-hpsj5s.so
+%{_libdir}/sane/libsane-hs2p.so
+%{_libdir}/sane/libsane-ibm.so
+%{_libdir}/sane/libsane-kodak.so
+%{_libdir}/sane/libsane-kodakaio.so
+%{_libdir}/sane/libsane-kvs1025.so
+%{_libdir}/sane/libsane-kvs20xx.so
+%{_libdir}/sane/libsane-kvs40xx.so
+%{_libdir}/sane/libsane-leo.so
+%{_libdir}/sane/libsane-lexmark.so
+%{_libdir}/sane/libsane-ma1509.so
+%{_libdir}/sane/libsane-magicolor.so
+%{_libdir}/sane/libsane-matsushita.so
+%{_libdir}/sane/libsane-microtek.so
+%{_libdir}/sane/libsane-microtek2.so
+%{_libdir}/sane/libsane-mustek.so
+%{_libdir}/sane/libsane-mustek_pp.so
+%{_libdir}/sane/libsane-mustek_usb.so
+%{_libdir}/sane/libsane-mustek_usb2.so
+%{_libdir}/sane/libsane-nec.so
+%{_libdir}/sane/libsane-net.so
+%{_libdir}/sane/libsane-niash.so
+%{_libdir}/sane/libsane-p5.so
+%{_libdir}/sane/libsane-pie.so
+%{_libdir}/sane/libsane-pieusb.so
+%{_libdir}/sane/libsane-pixma.so
+%{_libdir}/sane/libsane-plustek.so
+%{_libdir}/sane/libsane-plustek_pp.so
+# qcam is not on aarch64, ppc64le and s390x. SANE needs
+# ioperm, inb and outb functions or portaccess function
+# to support qcam backend. Those functions are only in
+# armv7hl, i686 and x86_64 architectures.
+%ifarch armv7hl i686 x86_64
+%{_libdir}/sane/libsane-qcam.so
+%endif
+%{_libdir}/sane/libsane-ricoh.so
+%{_libdir}/sane/libsane-ricoh2.so
+%{_libdir}/sane/libsane-rts8891.so
+%{_libdir}/sane/libsane-s9036.so
+%{_libdir}/sane/libsane-sceptre.so
+%{_libdir}/sane/libsane-sharp.so
+%{_libdir}/sane/libsane-sm3600.so
+%{_libdir}/sane/libsane-sm3840.so
+%{_libdir}/sane/libsane-snapscan.so
+%{_libdir}/sane/libsane-sp15c.so
+%{_libdir}/sane/libsane-st400.so
+%{_libdir}/sane/libsane-stv680.so
+%{_libdir}/sane/libsane-tamarack.so
+%{_libdir}/sane/libsane-teco1.so
+%{_libdir}/sane/libsane-teco2.so
+%{_libdir}/sane/libsane-teco3.so
+%{_libdir}/sane/libsane-test.so
+%{_libdir}/sane/libsane-u12.so
+%{_libdir}/sane/libsane-umax.so
+%{_libdir}/sane/libsane-umax1220u.so
+%{_libdir}/sane/libsane-umax_pp.so
+%{_libdir}/sane/libsane-v4l.so
+%{_libdir}/sane/libsane-xerox_mfp.so
%{_libdir}/sane/*.so.1
%{_libdir}/sane/*.so.1.0.28
@@ -352,6 +448,9 @@ exit 0
%{_unitdir}/saned@.service
%changelog
+* Mon Oct 14 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-2
+- 1761145, 1761001, 1761051, 1761234 - genesys backend now needs gcc-c++, it is not built otherwise
+
* Mon Sep 30 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-1
- 1.0.28
4 years, 6 months
Architecture specific change in rpms/sane-backends.git
by githook-noreply@fedoraproject.org
The package rpms/sane-backends.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/sane-backends.git/commit/?id=4a94....
Change:
-%ifarch i686 x86_64
Thanks.
Full change:
============
commit 4a9414d15e23dedc4f626f92a5ccc51bf8b0b738
Author: Zdenek Dohnal <zdohnal(a)redhat.com>
Date: Thu Oct 17 14:27:12 2019 +0200
qcam backend support is tricky among different Fedora releases and archs - let the wildcard cover it
diff --git a/sane-backends.spec b/sane-backends.spec
index 4e57c26..db7d7ff 100644
--- a/sane-backends.spec
+++ b/sane-backends.spec
@@ -33,7 +33,7 @@
Summary: Scanner access software
Name: sane-backends
Version: 1.0.28
-Release: 2%{?dist}
+Release: 3%{?dist}
# lib/ is LGPLv2+, backends are GPLv2+ with exceptions
# Tools are GPLv2+, docs are public domain
# see LICENSE for details
@@ -409,10 +409,10 @@ exit 0
# qcam is not on aarch64, ppc64le and s390x. SANE needs
# ioperm, inb and outb functions or portaccess function
# to support qcam backend. Those functions are only in
-# armv7hl, i686 and x86_64 architectures.
-%ifarch i686 x86_64
-%{_libdir}/sane/libsane-qcam.so
-%endif
+# armv7hl (until F30), i686 and x86_64 architectures.
+# Because qcam is missing on some archs and releases,
+# I'll leave here a wildcard record
+%{_libdir}/sane/*.so
%{_libdir}/sane/libsane-ricoh.so
%{_libdir}/sane/libsane-ricoh2.so
%{_libdir}/sane/libsane-rts8891.so
@@ -454,6 +454,9 @@ exit 0
%{_unitdir}/saned@.service
%changelog
+* Thu Oct 17 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-3
+- qcam backend support is tricky among different Fedora releases and archs - let the wildcard cover it
+
* Thu Oct 17 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-2
- 1761145, 1761001, 1761051, 1761234 - genesys backend now needs gcc-c++, it is not built otherwise
- 1758886 - CanoScan LiDE scanners supported by genesys backend are not detected
4 years, 6 months
Architecture specific change in rpms/sane-backends.git
by githook-noreply@fedoraproject.org
The package rpms/sane-backends.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/sane-backends.git/commit/?id=4a94....
Change:
-%ifarch i686 x86_64
Thanks.
Full change:
============
commit 4a9414d15e23dedc4f626f92a5ccc51bf8b0b738
Author: Zdenek Dohnal <zdohnal(a)redhat.com>
Date: Thu Oct 17 14:27:12 2019 +0200
qcam backend support is tricky among different Fedora releases and archs - let the wildcard cover it
diff --git a/sane-backends.spec b/sane-backends.spec
index 4e57c26..db7d7ff 100644
--- a/sane-backends.spec
+++ b/sane-backends.spec
@@ -33,7 +33,7 @@
Summary: Scanner access software
Name: sane-backends
Version: 1.0.28
-Release: 2%{?dist}
+Release: 3%{?dist}
# lib/ is LGPLv2+, backends are GPLv2+ with exceptions
# Tools are GPLv2+, docs are public domain
# see LICENSE for details
@@ -409,10 +409,10 @@ exit 0
# qcam is not on aarch64, ppc64le and s390x. SANE needs
# ioperm, inb and outb functions or portaccess function
# to support qcam backend. Those functions are only in
-# armv7hl, i686 and x86_64 architectures.
-%ifarch i686 x86_64
-%{_libdir}/sane/libsane-qcam.so
-%endif
+# armv7hl (until F30), i686 and x86_64 architectures.
+# Because qcam is missing on some archs and releases,
+# I'll leave here a wildcard record
+%{_libdir}/sane/*.so
%{_libdir}/sane/libsane-ricoh.so
%{_libdir}/sane/libsane-ricoh2.so
%{_libdir}/sane/libsane-rts8891.so
@@ -454,6 +454,9 @@ exit 0
%{_unitdir}/saned@.service
%changelog
+* Thu Oct 17 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-3
+- qcam backend support is tricky among different Fedora releases and archs - let the wildcard cover it
+
* Thu Oct 17 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-2
- 1761145, 1761001, 1761051, 1761234 - genesys backend now needs gcc-c++, it is not built otherwise
- 1758886 - CanoScan LiDE scanners supported by genesys backend are not detected
4 years, 6 months
Architecture specific change in rpms/sane-backends.git
by githook-noreply@fedoraproject.org
The package rpms/sane-backends.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/sane-backends.git/commit/?id=4a94....
Change:
-%ifarch i686 x86_64
Thanks.
Full change:
============
commit 4a9414d15e23dedc4f626f92a5ccc51bf8b0b738
Author: Zdenek Dohnal <zdohnal(a)redhat.com>
Date: Thu Oct 17 14:27:12 2019 +0200
qcam backend support is tricky among different Fedora releases and archs - let the wildcard cover it
diff --git a/sane-backends.spec b/sane-backends.spec
index 4e57c26..db7d7ff 100644
--- a/sane-backends.spec
+++ b/sane-backends.spec
@@ -33,7 +33,7 @@
Summary: Scanner access software
Name: sane-backends
Version: 1.0.28
-Release: 2%{?dist}
+Release: 3%{?dist}
# lib/ is LGPLv2+, backends are GPLv2+ with exceptions
# Tools are GPLv2+, docs are public domain
# see LICENSE for details
@@ -409,10 +409,10 @@ exit 0
# qcam is not on aarch64, ppc64le and s390x. SANE needs
# ioperm, inb and outb functions or portaccess function
# to support qcam backend. Those functions are only in
-# armv7hl, i686 and x86_64 architectures.
-%ifarch i686 x86_64
-%{_libdir}/sane/libsane-qcam.so
-%endif
+# armv7hl (until F30), i686 and x86_64 architectures.
+# Because qcam is missing on some archs and releases,
+# I'll leave here a wildcard record
+%{_libdir}/sane/*.so
%{_libdir}/sane/libsane-ricoh.so
%{_libdir}/sane/libsane-ricoh2.so
%{_libdir}/sane/libsane-rts8891.so
@@ -454,6 +454,9 @@ exit 0
%{_unitdir}/saned@.service
%changelog
+* Thu Oct 17 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-3
+- qcam backend support is tricky among different Fedora releases and archs - let the wildcard cover it
+
* Thu Oct 17 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-2
- 1761145, 1761001, 1761051, 1761234 - genesys backend now needs gcc-c++, it is not built otherwise
- 1758886 - CanoScan LiDE scanners supported by genesys backend are not detected
4 years, 6 months
Architecture specific change in rpms/sane-backends.git
by githook-noreply@fedoraproject.org
The package rpms/sane-backends.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/sane-backends.git/commit/?id=1d59...
https://src.fedoraproject.org/cgit/rpms/sane-backends.git/commit/?id=5185....
Change:
+%ifarch i686 x86_64
+%ifarch armv7hl i686 x86_64
Thanks.
Full change:
============
commit 1d593acb9d053095657e3ff4e85112663edfc8fc
Author: Zdenek Dohnal <zdohnal(a)redhat.com>
Date: Thu Oct 17 13:29:03 2019 +0200
remove qcam from armvhl7 too
diff --git a/sane-backends.spec b/sane-backends.spec
index 7808ce7..4e57c26 100644
--- a/sane-backends.spec
+++ b/sane-backends.spec
@@ -410,7 +410,7 @@ exit 0
# ioperm, inb and outb functions or portaccess function
# to support qcam backend. Those functions are only in
# armv7hl, i686 and x86_64 architectures.
-%ifarch armv7hl i686 x86_64
+%ifarch i686 x86_64
%{_libdir}/sane/libsane-qcam.so
%endif
%{_libdir}/sane/libsane-ricoh.so
@@ -459,6 +459,7 @@ exit 0
- 1758886 - CanoScan LiDE scanners supported by genesys backend are not detected
- 1760916 - Samsung C460 does not have JPEG support
- 1761530 - genesys aborts when accessing invalid vector index and built with GLIBCXX_ASSERTIONS
+- remove qcam from armvhl7 too
* Mon Sep 30 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-1
- 1.0.28
commit f67fcd597558c50136378401267bd27d9f5f82bd
Author: Zdenek Dohnal <zdohnal(a)redhat.com>
Date: Thu Oct 17 11:36:31 2019 +0200
1761530 - genesys aborts when accessing invalid vector index and built with GLIBCXX_ASSERTIONS
diff --git a/sane-backends.spec b/sane-backends.spec
index 27a0aa1..7808ce7 100644
--- a/sane-backends.spec
+++ b/sane-backends.spec
@@ -458,6 +458,7 @@ exit 0
- 1761145, 1761001, 1761051, 1761234 - genesys backend now needs gcc-c++, it is not built otherwise
- 1758886 - CanoScan LiDE scanners supported by genesys backend are not detected
- 1760916 - Samsung C460 does not have JPEG support
+- 1761530 - genesys aborts when accessing invalid vector index and built with GLIBCXX_ASSERTIONS
* Mon Sep 30 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-1
- 1.0.28
diff --git a/sane-genesys-vector-glibcxxassert.patch b/sane-genesys-vector-glibcxxassert.patch
new file mode 100644
index 0000000..48ed253
--- /dev/null
+++ b/sane-genesys-vector-glibcxxassert.patch
@@ -0,0 +1,56 @@
+diff --git a/backend/genesys_low.cc b/backend/genesys_low.cc
+index 097375f..20dd3a4 100644
+--- a/backend/genesys_low.cc
++++ b/backend/genesys_low.cc
+@@ -49,6 +49,11 @@
+
+ #include <vector>
+
++template <typename T>
++T safe_vec_addr(std::vector<T>& vec, int i)
++{
++ return vec.size() >= (unsigned long int)(i+1) ? vec[i] : (T)0;
++}
+
+ Genesys_Device::~Genesys_Device()
+ {
+@@ -1209,17 +1214,17 @@ SANE_Status sanei_genesys_generate_gamma_buffer(Genesys_Device * dev,
+ dev->settings.brightness);
+ for (int i = 0; i < size; i++)
+ {
+- uint16_t value=rgamma[i];
++ uint16_t value = safe_vec_addr(rgamma, i);
+ value=lut[value];
+ gamma[i * 2 + size * 0 + 0] = value & 0xff;
+ gamma[i * 2 + size * 0 + 1] = (value >> 8) & 0xff;
+
+- value=ggamma[i];
++ value = safe_vec_addr(ggamma, i);
+ value=lut[value];
+ gamma[i * 2 + size * 2 + 0] = value & 0xff;
+ gamma[i * 2 + size * 2 + 1] = (value >> 8) & 0xff;
+
+- value=bgamma[i];
++ value = safe_vec_addr(bgamma, i);
+ value=lut[value];
+ gamma[i * 2 + size * 4 + 0] = value & 0xff;
+ gamma[i * 2 + size * 4 + 1] = (value >> 8) & 0xff;
+@@ -1229,15 +1234,15 @@ SANE_Status sanei_genesys_generate_gamma_buffer(Genesys_Device * dev,
+ {
+ for (int i = 0; i < size; i++)
+ {
+- uint16_t value=rgamma[i];
++ uint16_t value = safe_vec_addr(rgamma, i);
+ gamma[i * 2 + size * 0 + 0] = value & 0xff;
+ gamma[i * 2 + size * 0 + 1] = (value >> 8) & 0xff;
+
+- value=ggamma[i];
++ value = safe_vec_addr(ggamma, i);
+ gamma[i * 2 + size * 2 + 0] = value & 0xff;
+ gamma[i * 2 + size * 2 + 1] = (value >> 8) & 0xff;
+
+- value=bgamma[i];
++ value = safe_vec_addr(bgamma, i);
+ gamma[i * 2 + size * 4 + 0] = value & 0xff;
+ gamma[i * 2 + size * 4 + 1] = (value >> 8) & 0xff;
+ }
commit 62dc8e3ea6b5095ce574211295b0a85cb40fc0a1
Author: Zdenek Dohnal <zdohnal(a)redhat.com>
Date: Thu Oct 17 11:33:51 2019 +0200
1760916 - Samsung C460 does not have JPEG support
diff --git a/sane-backends.spec b/sane-backends.spec
index a3814f4..27a0aa1 100644
--- a/sane-backends.spec
+++ b/sane-backends.spec
@@ -57,6 +57,8 @@ Patch2: sane-backends-1.0.23-sane-config-multilib.patch
Patch3: sane-backends-saned-manpage.patch
# several canoscan models did not work due genesys backend rewritten, taken from upstream
Patch4: 0001-genesys-Make-sure-calib_reg-are-available-before-wri.patch
+# blacklist Samsung C460 for JPEG, #1760916
+Patch5: sane-xerox-mfp-blacklist-C460-for-JPEG.patch
URL: http://www.sane-project.org
@@ -193,6 +195,7 @@ access image acquisition devices available on the local host.
%patch2 -p1 -b .sane-config-multilib
%patch3 -p1 -b .saned-manpage
%patch4 -p1 -b .genesys-regression
+%patch5 -p1 -b .c460-blacklist-for-jpeg
%build
CFLAGS="%optflags -fno-strict-aliasing"
@@ -454,6 +457,7 @@ exit 0
* Thu Oct 17 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-2
- 1761145, 1761001, 1761051, 1761234 - genesys backend now needs gcc-c++, it is not built otherwise
- 1758886 - CanoScan LiDE scanners supported by genesys backend are not detected
+- 1760916 - Samsung C460 does not have JPEG support
* Mon Sep 30 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-1
- 1.0.28
diff --git a/sane-xerox-mfp-blacklist-C460-for-JPEG.patch b/sane-xerox-mfp-blacklist-C460-for-JPEG.patch
new file mode 100644
index 0000000..401a4a7
--- /dev/null
+++ b/sane-xerox-mfp-blacklist-C460-for-JPEG.patch
@@ -0,0 +1,12 @@
+diff --git a/backend/xerox_mfp.c b/backend/xerox_mfp.c
+index b7fcbee..2cb73ee 100644
+--- a/backend/xerox_mfp.c
++++ b/backend/xerox_mfp.c
+@@ -209,6 +209,7 @@ static int isSupportedDevice(struct device __sane_unused__ *dev)
+ if (dev->compressionTypes & (1 << 6)) {
+ /* blacklist malfunctioning device(s) */
+ if (!strncmp(dev->sane.model, "SCX-4500W", 9) ||
++ !strncmp(dev->sane.model, "C460", 4) ||
+ !strncmp(dev->sane.model, "M288x", 5))
+ return 0;
+ return 1;
commit 7d3dd917343a955ac80b6cb84febb4e2dbee7c0f
Author: Zdenek Dohnal <zdohnal(a)redhat.com>
Date: Thu Oct 17 11:31:27 2019 +0200
1758886 - CanoScan LiDE scanners supported by genesys backend are not detected
diff --git a/0001-genesys-Make-sure-calib_reg-are-available-before-wri.patch b/0001-genesys-Make-sure-calib_reg-are-available-before-wri.patch
new file mode 100644
index 0000000..4687a24
--- /dev/null
+++ b/0001-genesys-Make-sure-calib_reg-are-available-before-wri.patch
@@ -0,0 +1,13 @@
+diff -up sane-backends-1.0.28/backend/genesys_gl841.cc.genesys-regression sane-backends-1.0.28/backend/genesys_gl841.cc
+--- sane-backends-1.0.28/backend/genesys_gl841.cc.genesys-regression 2019-10-14 13:11:10.772763713 +0200
++++ sane-backends-1.0.28/backend/genesys_gl841.cc 2019-10-14 13:11:57.602389188 +0200
+@@ -5042,6 +5042,9 @@ gl841_init (Genesys_Device * dev)
+ /* Set analog frontend */
+ RIE (gl841_set_fe(dev, sensor, AFE_INIT));
+
++ // FIXME: slow_back_home modifies dev->calib_reg and requires it to be filled
++ dev->calib_reg = dev->reg;
++
+ /* Move home */
+ RIE (gl841_slow_back_home (dev, SANE_TRUE));
+
diff --git a/sane-backends.spec b/sane-backends.spec
index 502c564..a3814f4 100644
--- a/sane-backends.spec
+++ b/sane-backends.spec
@@ -55,6 +55,8 @@ Patch1: sane-backends-1.0.23-soname.patch
Patch2: sane-backends-1.0.23-sane-config-multilib.patch
# saned manpage incomplete and exists when saned is not installed (#1515762)
Patch3: sane-backends-saned-manpage.patch
+# several canoscan models did not work due genesys backend rewritten, taken from upstream
+Patch4: 0001-genesys-Make-sure-calib_reg-are-available-before-wri.patch
URL: http://www.sane-project.org
@@ -190,6 +192,7 @@ access image acquisition devices available on the local host.
%patch1 -p1 -b .soname
%patch2 -p1 -b .sane-config-multilib
%patch3 -p1 -b .saned-manpage
+%patch4 -p1 -b .genesys-regression
%build
CFLAGS="%optflags -fno-strict-aliasing"
@@ -448,8 +451,9 @@ exit 0
%{_unitdir}/saned@.service
%changelog
-* Mon Oct 14 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-2
+* Thu Oct 17 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-2
- 1761145, 1761001, 1761051, 1761234 - genesys backend now needs gcc-c++, it is not built otherwise
+- 1758886 - CanoScan LiDE scanners supported by genesys backend are not detected
* Mon Sep 30 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-1
- 1.0.28
commit 5185ac94abd1821dbf3bf974f7c673cfe6943127
Author: Zdenek Dohnal <zdohnal(a)redhat.com>
Date: Thu Oct 17 11:27:14 2019 +0200
1761145, 1761001, 1761051, 1761234 - genesys backend now needs gcc-c++, it is not built otherwise
diff --git a/sane-backends.spec b/sane-backends.spec
index 6721f08..502c564 100644
--- a/sane-backends.spec
+++ b/sane-backends.spec
@@ -33,7 +33,7 @@
Summary: Scanner access software
Name: sane-backends
Version: 1.0.28
-Release: 1%{?dist}
+Release: 2%{?dist}
# lib/ is LGPLv2+, backends are GPLv2+ with exceptions
# Tools are GPLv2+, docs are public domain
# see LICENSE for details
@@ -56,13 +56,12 @@ Patch2: sane-backends-1.0.23-sane-config-multilib.patch
# saned manpage incomplete and exists when saned is not installed (#1515762)
Patch3: sane-backends-saned-manpage.patch
-
-#Patch5: sane-backends-revert-samsung-patch.patch
-
URL: http://www.sane-project.org
# gcc is no longer in buildroot by default
BuildRequires: gcc
+# genesys backend is not written in C++, so it is needed as buildrequire
+BuildRequires: gcc-c++
BuildRequires: %{_bindir}/latex
%if %libusb1
@@ -333,7 +332,104 @@ exit 0
%{_libdir}/pkgconfig/sane-backends.pc
%files drivers-scanners
-%{_libdir}/sane/*.so
+# we need to specify all .so files for available backends because something like
+# #1761145 can happen - genesys did not compile because of lack gcc-c++ in buildroot
+# and configure printed only warning. So now we can figure out missing backend support
+# during build
+%{_libdir}/sane/libsane-abaton.so
+%{_libdir}/sane/libsane-agfafocus.so
+%{_libdir}/sane/libsane-apple.so
+%{_libdir}/sane/libsane-artec.so
+%{_libdir}/sane/libsane-artec_eplus48u.so
+%{_libdir}/sane/libsane-as6e.so
+%{_libdir}/sane/libsane-avision.so
+%{_libdir}/sane/libsane-bh.so
+%{_libdir}/sane/libsane-canon.so
+%{_libdir}/sane/libsane-canon630u.so
+%{_libdir}/sane/libsane-canon_dr.so
+%{_libdir}/sane/libsane-canon_pp.so
+%{_libdir}/sane/libsane-cardscan.so
+%{_libdir}/sane/libsane-coolscan.so
+%{_libdir}/sane/libsane-coolscan2.so
+%{_libdir}/sane/libsane-coolscan3.so
+%{_libdir}/sane/libsane-dc210.so
+%{_libdir}/sane/libsane-dc240.so
+%{_libdir}/sane/libsane-dc25.so
+%{_libdir}/sane/libsane-dell1600n_net.so
+%{_libdir}/sane/libsane-dll.so
+%{_libdir}/sane/libsane-dmc.so
+%{_libdir}/sane/libsane-epjitsu.so
+%{_libdir}/sane/libsane-epson.so
+%{_libdir}/sane/libsane-epson2.so
+%{_libdir}/sane/libsane-epsonds.so
+%{_libdir}/sane/libsane-fujitsu.so
+%{_libdir}/sane/libsane-genesys.so
+%{_libdir}/sane/libsane-gt68xx.so
+%{_libdir}/sane/libsane-hp.so
+%{_libdir}/sane/libsane-hp3500.so
+%{_libdir}/sane/libsane-hp3900.so
+%{_libdir}/sane/libsane-hp4200.so
+%{_libdir}/sane/libsane-hp5400.so
+%{_libdir}/sane/libsane-hp5590.so
+%{_libdir}/sane/libsane-hpljm1005.so
+%{_libdir}/sane/libsane-hpsj5s.so
+%{_libdir}/sane/libsane-hs2p.so
+%{_libdir}/sane/libsane-ibm.so
+%{_libdir}/sane/libsane-kodak.so
+%{_libdir}/sane/libsane-kodakaio.so
+%{_libdir}/sane/libsane-kvs1025.so
+%{_libdir}/sane/libsane-kvs20xx.so
+%{_libdir}/sane/libsane-kvs40xx.so
+%{_libdir}/sane/libsane-leo.so
+%{_libdir}/sane/libsane-lexmark.so
+%{_libdir}/sane/libsane-ma1509.so
+%{_libdir}/sane/libsane-magicolor.so
+%{_libdir}/sane/libsane-matsushita.so
+%{_libdir}/sane/libsane-microtek.so
+%{_libdir}/sane/libsane-microtek2.so
+%{_libdir}/sane/libsane-mustek.so
+%{_libdir}/sane/libsane-mustek_pp.so
+%{_libdir}/sane/libsane-mustek_usb.so
+%{_libdir}/sane/libsane-mustek_usb2.so
+%{_libdir}/sane/libsane-nec.so
+%{_libdir}/sane/libsane-net.so
+%{_libdir}/sane/libsane-niash.so
+%{_libdir}/sane/libsane-p5.so
+%{_libdir}/sane/libsane-pie.so
+%{_libdir}/sane/libsane-pieusb.so
+%{_libdir}/sane/libsane-pixma.so
+%{_libdir}/sane/libsane-plustek.so
+%{_libdir}/sane/libsane-plustek_pp.so
+# qcam is not on aarch64, ppc64le and s390x. SANE needs
+# ioperm, inb and outb functions or portaccess function
+# to support qcam backend. Those functions are only in
+# armv7hl, i686 and x86_64 architectures.
+%ifarch armv7hl i686 x86_64
+%{_libdir}/sane/libsane-qcam.so
+%endif
+%{_libdir}/sane/libsane-ricoh.so
+%{_libdir}/sane/libsane-ricoh2.so
+%{_libdir}/sane/libsane-rts8891.so
+%{_libdir}/sane/libsane-s9036.so
+%{_libdir}/sane/libsane-sceptre.so
+%{_libdir}/sane/libsane-sharp.so
+%{_libdir}/sane/libsane-sm3600.so
+%{_libdir}/sane/libsane-sm3840.so
+%{_libdir}/sane/libsane-snapscan.so
+%{_libdir}/sane/libsane-sp15c.so
+%{_libdir}/sane/libsane-st400.so
+%{_libdir}/sane/libsane-stv680.so
+%{_libdir}/sane/libsane-tamarack.so
+%{_libdir}/sane/libsane-teco1.so
+%{_libdir}/sane/libsane-teco2.so
+%{_libdir}/sane/libsane-teco3.so
+%{_libdir}/sane/libsane-test.so
+%{_libdir}/sane/libsane-u12.so
+%{_libdir}/sane/libsane-umax.so
+%{_libdir}/sane/libsane-umax1220u.so
+%{_libdir}/sane/libsane-umax_pp.so
+%{_libdir}/sane/libsane-v4l.so
+%{_libdir}/sane/libsane-xerox_mfp.so
%{_libdir}/sane/*.so.1
%{_libdir}/sane/*.so.1.0.28
@@ -352,6 +448,9 @@ exit 0
%{_unitdir}/saned@.service
%changelog
+* Mon Oct 14 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-2
+- 1761145, 1761001, 1761051, 1761234 - genesys backend now needs gcc-c++, it is not built otherwise
+
* Mon Sep 30 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-1
- 1.0.28
4 years, 6 months
Architecture specific change in rpms/sane-backends.git
by githook-noreply@fedoraproject.org
The package rpms/sane-backends.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/sane-backends.git/commit/?id=1d59....
Change:
+%ifarch i686 x86_64
Thanks.
Full change:
============
commit 1d593acb9d053095657e3ff4e85112663edfc8fc
Author: Zdenek Dohnal <zdohnal(a)redhat.com>
Date: Thu Oct 17 13:29:03 2019 +0200
remove qcam from armvhl7 too
diff --git a/sane-backends.spec b/sane-backends.spec
index 7808ce7..4e57c26 100644
--- a/sane-backends.spec
+++ b/sane-backends.spec
@@ -410,7 +410,7 @@ exit 0
# ioperm, inb and outb functions or portaccess function
# to support qcam backend. Those functions are only in
# armv7hl, i686 and x86_64 architectures.
-%ifarch armv7hl i686 x86_64
+%ifarch i686 x86_64
%{_libdir}/sane/libsane-qcam.so
%endif
%{_libdir}/sane/libsane-ricoh.so
@@ -459,6 +459,7 @@ exit 0
- 1758886 - CanoScan LiDE scanners supported by genesys backend are not detected
- 1760916 - Samsung C460 does not have JPEG support
- 1761530 - genesys aborts when accessing invalid vector index and built with GLIBCXX_ASSERTIONS
+- remove qcam from armvhl7 too
* Mon Sep 30 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-1
- 1.0.28
4 years, 6 months
Architecture specific change in rpms/sane-backends.git
by githook-noreply@fedoraproject.org
The package rpms/sane-backends.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/sane-backends.git/commit/?id=1d59....
Change:
+%ifarch i686 x86_64
Thanks.
Full change:
============
commit 1d593acb9d053095657e3ff4e85112663edfc8fc
Author: Zdenek Dohnal <zdohnal(a)redhat.com>
Date: Thu Oct 17 13:29:03 2019 +0200
remove qcam from armvhl7 too
diff --git a/sane-backends.spec b/sane-backends.spec
index 7808ce7..4e57c26 100644
--- a/sane-backends.spec
+++ b/sane-backends.spec
@@ -410,7 +410,7 @@ exit 0
# ioperm, inb and outb functions or portaccess function
# to support qcam backend. Those functions are only in
# armv7hl, i686 and x86_64 architectures.
-%ifarch armv7hl i686 x86_64
+%ifarch i686 x86_64
%{_libdir}/sane/libsane-qcam.so
%endif
%{_libdir}/sane/libsane-ricoh.so
@@ -459,6 +459,7 @@ exit 0
- 1758886 - CanoScan LiDE scanners supported by genesys backend are not detected
- 1760916 - Samsung C460 does not have JPEG support
- 1761530 - genesys aborts when accessing invalid vector index and built with GLIBCXX_ASSERTIONS
+- remove qcam from armvhl7 too
* Mon Sep 30 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-1
- 1.0.28
4 years, 6 months
Architecture specific change in rpms/sane-backends.git
by githook-noreply@fedoraproject.org
The package rpms/sane-backends.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/sane-backends.git/commit/?id=5185....
Change:
+%ifarch armv7hl i686 x86_64
Thanks.
Full change:
============
commit f67fcd597558c50136378401267bd27d9f5f82bd
Author: Zdenek Dohnal <zdohnal(a)redhat.com>
Date: Thu Oct 17 11:36:31 2019 +0200
1761530 - genesys aborts when accessing invalid vector index and built with GLIBCXX_ASSERTIONS
diff --git a/sane-backends.spec b/sane-backends.spec
index 27a0aa1..7808ce7 100644
--- a/sane-backends.spec
+++ b/sane-backends.spec
@@ -458,6 +458,7 @@ exit 0
- 1761145, 1761001, 1761051, 1761234 - genesys backend now needs gcc-c++, it is not built otherwise
- 1758886 - CanoScan LiDE scanners supported by genesys backend are not detected
- 1760916 - Samsung C460 does not have JPEG support
+- 1761530 - genesys aborts when accessing invalid vector index and built with GLIBCXX_ASSERTIONS
* Mon Sep 30 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-1
- 1.0.28
diff --git a/sane-genesys-vector-glibcxxassert.patch b/sane-genesys-vector-glibcxxassert.patch
new file mode 100644
index 0000000..48ed253
--- /dev/null
+++ b/sane-genesys-vector-glibcxxassert.patch
@@ -0,0 +1,56 @@
+diff --git a/backend/genesys_low.cc b/backend/genesys_low.cc
+index 097375f..20dd3a4 100644
+--- a/backend/genesys_low.cc
++++ b/backend/genesys_low.cc
+@@ -49,6 +49,11 @@
+
+ #include <vector>
+
++template <typename T>
++T safe_vec_addr(std::vector<T>& vec, int i)
++{
++ return vec.size() >= (unsigned long int)(i+1) ? vec[i] : (T)0;
++}
+
+ Genesys_Device::~Genesys_Device()
+ {
+@@ -1209,17 +1214,17 @@ SANE_Status sanei_genesys_generate_gamma_buffer(Genesys_Device * dev,
+ dev->settings.brightness);
+ for (int i = 0; i < size; i++)
+ {
+- uint16_t value=rgamma[i];
++ uint16_t value = safe_vec_addr(rgamma, i);
+ value=lut[value];
+ gamma[i * 2 + size * 0 + 0] = value & 0xff;
+ gamma[i * 2 + size * 0 + 1] = (value >> 8) & 0xff;
+
+- value=ggamma[i];
++ value = safe_vec_addr(ggamma, i);
+ value=lut[value];
+ gamma[i * 2 + size * 2 + 0] = value & 0xff;
+ gamma[i * 2 + size * 2 + 1] = (value >> 8) & 0xff;
+
+- value=bgamma[i];
++ value = safe_vec_addr(bgamma, i);
+ value=lut[value];
+ gamma[i * 2 + size * 4 + 0] = value & 0xff;
+ gamma[i * 2 + size * 4 + 1] = (value >> 8) & 0xff;
+@@ -1229,15 +1234,15 @@ SANE_Status sanei_genesys_generate_gamma_buffer(Genesys_Device * dev,
+ {
+ for (int i = 0; i < size; i++)
+ {
+- uint16_t value=rgamma[i];
++ uint16_t value = safe_vec_addr(rgamma, i);
+ gamma[i * 2 + size * 0 + 0] = value & 0xff;
+ gamma[i * 2 + size * 0 + 1] = (value >> 8) & 0xff;
+
+- value=ggamma[i];
++ value = safe_vec_addr(ggamma, i);
+ gamma[i * 2 + size * 2 + 0] = value & 0xff;
+ gamma[i * 2 + size * 2 + 1] = (value >> 8) & 0xff;
+
+- value=bgamma[i];
++ value = safe_vec_addr(bgamma, i);
+ gamma[i * 2 + size * 4 + 0] = value & 0xff;
+ gamma[i * 2 + size * 4 + 1] = (value >> 8) & 0xff;
+ }
commit 62dc8e3ea6b5095ce574211295b0a85cb40fc0a1
Author: Zdenek Dohnal <zdohnal(a)redhat.com>
Date: Thu Oct 17 11:33:51 2019 +0200
1760916 - Samsung C460 does not have JPEG support
diff --git a/sane-backends.spec b/sane-backends.spec
index a3814f4..27a0aa1 100644
--- a/sane-backends.spec
+++ b/sane-backends.spec
@@ -57,6 +57,8 @@ Patch2: sane-backends-1.0.23-sane-config-multilib.patch
Patch3: sane-backends-saned-manpage.patch
# several canoscan models did not work due genesys backend rewritten, taken from upstream
Patch4: 0001-genesys-Make-sure-calib_reg-are-available-before-wri.patch
+# blacklist Samsung C460 for JPEG, #1760916
+Patch5: sane-xerox-mfp-blacklist-C460-for-JPEG.patch
URL: http://www.sane-project.org
@@ -193,6 +195,7 @@ access image acquisition devices available on the local host.
%patch2 -p1 -b .sane-config-multilib
%patch3 -p1 -b .saned-manpage
%patch4 -p1 -b .genesys-regression
+%patch5 -p1 -b .c460-blacklist-for-jpeg
%build
CFLAGS="%optflags -fno-strict-aliasing"
@@ -454,6 +457,7 @@ exit 0
* Thu Oct 17 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-2
- 1761145, 1761001, 1761051, 1761234 - genesys backend now needs gcc-c++, it is not built otherwise
- 1758886 - CanoScan LiDE scanners supported by genesys backend are not detected
+- 1760916 - Samsung C460 does not have JPEG support
* Mon Sep 30 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-1
- 1.0.28
diff --git a/sane-xerox-mfp-blacklist-C460-for-JPEG.patch b/sane-xerox-mfp-blacklist-C460-for-JPEG.patch
new file mode 100644
index 0000000..401a4a7
--- /dev/null
+++ b/sane-xerox-mfp-blacklist-C460-for-JPEG.patch
@@ -0,0 +1,12 @@
+diff --git a/backend/xerox_mfp.c b/backend/xerox_mfp.c
+index b7fcbee..2cb73ee 100644
+--- a/backend/xerox_mfp.c
++++ b/backend/xerox_mfp.c
+@@ -209,6 +209,7 @@ static int isSupportedDevice(struct device __sane_unused__ *dev)
+ if (dev->compressionTypes & (1 << 6)) {
+ /* blacklist malfunctioning device(s) */
+ if (!strncmp(dev->sane.model, "SCX-4500W", 9) ||
++ !strncmp(dev->sane.model, "C460", 4) ||
+ !strncmp(dev->sane.model, "M288x", 5))
+ return 0;
+ return 1;
commit 7d3dd917343a955ac80b6cb84febb4e2dbee7c0f
Author: Zdenek Dohnal <zdohnal(a)redhat.com>
Date: Thu Oct 17 11:31:27 2019 +0200
1758886 - CanoScan LiDE scanners supported by genesys backend are not detected
diff --git a/0001-genesys-Make-sure-calib_reg-are-available-before-wri.patch b/0001-genesys-Make-sure-calib_reg-are-available-before-wri.patch
new file mode 100644
index 0000000..4687a24
--- /dev/null
+++ b/0001-genesys-Make-sure-calib_reg-are-available-before-wri.patch
@@ -0,0 +1,13 @@
+diff -up sane-backends-1.0.28/backend/genesys_gl841.cc.genesys-regression sane-backends-1.0.28/backend/genesys_gl841.cc
+--- sane-backends-1.0.28/backend/genesys_gl841.cc.genesys-regression 2019-10-14 13:11:10.772763713 +0200
++++ sane-backends-1.0.28/backend/genesys_gl841.cc 2019-10-14 13:11:57.602389188 +0200
+@@ -5042,6 +5042,9 @@ gl841_init (Genesys_Device * dev)
+ /* Set analog frontend */
+ RIE (gl841_set_fe(dev, sensor, AFE_INIT));
+
++ // FIXME: slow_back_home modifies dev->calib_reg and requires it to be filled
++ dev->calib_reg = dev->reg;
++
+ /* Move home */
+ RIE (gl841_slow_back_home (dev, SANE_TRUE));
+
diff --git a/sane-backends.spec b/sane-backends.spec
index 502c564..a3814f4 100644
--- a/sane-backends.spec
+++ b/sane-backends.spec
@@ -55,6 +55,8 @@ Patch1: sane-backends-1.0.23-soname.patch
Patch2: sane-backends-1.0.23-sane-config-multilib.patch
# saned manpage incomplete and exists when saned is not installed (#1515762)
Patch3: sane-backends-saned-manpage.patch
+# several canoscan models did not work due genesys backend rewritten, taken from upstream
+Patch4: 0001-genesys-Make-sure-calib_reg-are-available-before-wri.patch
URL: http://www.sane-project.org
@@ -190,6 +192,7 @@ access image acquisition devices available on the local host.
%patch1 -p1 -b .soname
%patch2 -p1 -b .sane-config-multilib
%patch3 -p1 -b .saned-manpage
+%patch4 -p1 -b .genesys-regression
%build
CFLAGS="%optflags -fno-strict-aliasing"
@@ -448,8 +451,9 @@ exit 0
%{_unitdir}/saned@.service
%changelog
-* Mon Oct 14 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-2
+* Thu Oct 17 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-2
- 1761145, 1761001, 1761051, 1761234 - genesys backend now needs gcc-c++, it is not built otherwise
+- 1758886 - CanoScan LiDE scanners supported by genesys backend are not detected
* Mon Sep 30 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-1
- 1.0.28
commit 5185ac94abd1821dbf3bf974f7c673cfe6943127
Author: Zdenek Dohnal <zdohnal(a)redhat.com>
Date: Thu Oct 17 11:27:14 2019 +0200
1761145, 1761001, 1761051, 1761234 - genesys backend now needs gcc-c++, it is not built otherwise
diff --git a/sane-backends.spec b/sane-backends.spec
index 6721f08..502c564 100644
--- a/sane-backends.spec
+++ b/sane-backends.spec
@@ -33,7 +33,7 @@
Summary: Scanner access software
Name: sane-backends
Version: 1.0.28
-Release: 1%{?dist}
+Release: 2%{?dist}
# lib/ is LGPLv2+, backends are GPLv2+ with exceptions
# Tools are GPLv2+, docs are public domain
# see LICENSE for details
@@ -56,13 +56,12 @@ Patch2: sane-backends-1.0.23-sane-config-multilib.patch
# saned manpage incomplete and exists when saned is not installed (#1515762)
Patch3: sane-backends-saned-manpage.patch
-
-#Patch5: sane-backends-revert-samsung-patch.patch
-
URL: http://www.sane-project.org
# gcc is no longer in buildroot by default
BuildRequires: gcc
+# genesys backend is not written in C++, so it is needed as buildrequire
+BuildRequires: gcc-c++
BuildRequires: %{_bindir}/latex
%if %libusb1
@@ -333,7 +332,104 @@ exit 0
%{_libdir}/pkgconfig/sane-backends.pc
%files drivers-scanners
-%{_libdir}/sane/*.so
+# we need to specify all .so files for available backends because something like
+# #1761145 can happen - genesys did not compile because of lack gcc-c++ in buildroot
+# and configure printed only warning. So now we can figure out missing backend support
+# during build
+%{_libdir}/sane/libsane-abaton.so
+%{_libdir}/sane/libsane-agfafocus.so
+%{_libdir}/sane/libsane-apple.so
+%{_libdir}/sane/libsane-artec.so
+%{_libdir}/sane/libsane-artec_eplus48u.so
+%{_libdir}/sane/libsane-as6e.so
+%{_libdir}/sane/libsane-avision.so
+%{_libdir}/sane/libsane-bh.so
+%{_libdir}/sane/libsane-canon.so
+%{_libdir}/sane/libsane-canon630u.so
+%{_libdir}/sane/libsane-canon_dr.so
+%{_libdir}/sane/libsane-canon_pp.so
+%{_libdir}/sane/libsane-cardscan.so
+%{_libdir}/sane/libsane-coolscan.so
+%{_libdir}/sane/libsane-coolscan2.so
+%{_libdir}/sane/libsane-coolscan3.so
+%{_libdir}/sane/libsane-dc210.so
+%{_libdir}/sane/libsane-dc240.so
+%{_libdir}/sane/libsane-dc25.so
+%{_libdir}/sane/libsane-dell1600n_net.so
+%{_libdir}/sane/libsane-dll.so
+%{_libdir}/sane/libsane-dmc.so
+%{_libdir}/sane/libsane-epjitsu.so
+%{_libdir}/sane/libsane-epson.so
+%{_libdir}/sane/libsane-epson2.so
+%{_libdir}/sane/libsane-epsonds.so
+%{_libdir}/sane/libsane-fujitsu.so
+%{_libdir}/sane/libsane-genesys.so
+%{_libdir}/sane/libsane-gt68xx.so
+%{_libdir}/sane/libsane-hp.so
+%{_libdir}/sane/libsane-hp3500.so
+%{_libdir}/sane/libsane-hp3900.so
+%{_libdir}/sane/libsane-hp4200.so
+%{_libdir}/sane/libsane-hp5400.so
+%{_libdir}/sane/libsane-hp5590.so
+%{_libdir}/sane/libsane-hpljm1005.so
+%{_libdir}/sane/libsane-hpsj5s.so
+%{_libdir}/sane/libsane-hs2p.so
+%{_libdir}/sane/libsane-ibm.so
+%{_libdir}/sane/libsane-kodak.so
+%{_libdir}/sane/libsane-kodakaio.so
+%{_libdir}/sane/libsane-kvs1025.so
+%{_libdir}/sane/libsane-kvs20xx.so
+%{_libdir}/sane/libsane-kvs40xx.so
+%{_libdir}/sane/libsane-leo.so
+%{_libdir}/sane/libsane-lexmark.so
+%{_libdir}/sane/libsane-ma1509.so
+%{_libdir}/sane/libsane-magicolor.so
+%{_libdir}/sane/libsane-matsushita.so
+%{_libdir}/sane/libsane-microtek.so
+%{_libdir}/sane/libsane-microtek2.so
+%{_libdir}/sane/libsane-mustek.so
+%{_libdir}/sane/libsane-mustek_pp.so
+%{_libdir}/sane/libsane-mustek_usb.so
+%{_libdir}/sane/libsane-mustek_usb2.so
+%{_libdir}/sane/libsane-nec.so
+%{_libdir}/sane/libsane-net.so
+%{_libdir}/sane/libsane-niash.so
+%{_libdir}/sane/libsane-p5.so
+%{_libdir}/sane/libsane-pie.so
+%{_libdir}/sane/libsane-pieusb.so
+%{_libdir}/sane/libsane-pixma.so
+%{_libdir}/sane/libsane-plustek.so
+%{_libdir}/sane/libsane-plustek_pp.so
+# qcam is not on aarch64, ppc64le and s390x. SANE needs
+# ioperm, inb and outb functions or portaccess function
+# to support qcam backend. Those functions are only in
+# armv7hl, i686 and x86_64 architectures.
+%ifarch armv7hl i686 x86_64
+%{_libdir}/sane/libsane-qcam.so
+%endif
+%{_libdir}/sane/libsane-ricoh.so
+%{_libdir}/sane/libsane-ricoh2.so
+%{_libdir}/sane/libsane-rts8891.so
+%{_libdir}/sane/libsane-s9036.so
+%{_libdir}/sane/libsane-sceptre.so
+%{_libdir}/sane/libsane-sharp.so
+%{_libdir}/sane/libsane-sm3600.so
+%{_libdir}/sane/libsane-sm3840.so
+%{_libdir}/sane/libsane-snapscan.so
+%{_libdir}/sane/libsane-sp15c.so
+%{_libdir}/sane/libsane-st400.so
+%{_libdir}/sane/libsane-stv680.so
+%{_libdir}/sane/libsane-tamarack.so
+%{_libdir}/sane/libsane-teco1.so
+%{_libdir}/sane/libsane-teco2.so
+%{_libdir}/sane/libsane-teco3.so
+%{_libdir}/sane/libsane-test.so
+%{_libdir}/sane/libsane-u12.so
+%{_libdir}/sane/libsane-umax.so
+%{_libdir}/sane/libsane-umax1220u.so
+%{_libdir}/sane/libsane-umax_pp.so
+%{_libdir}/sane/libsane-v4l.so
+%{_libdir}/sane/libsane-xerox_mfp.so
%{_libdir}/sane/*.so.1
%{_libdir}/sane/*.so.1.0.28
@@ -352,6 +448,9 @@ exit 0
%{_unitdir}/saned@.service
%changelog
+* Mon Oct 14 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-2
+- 1761145, 1761001, 1761051, 1761234 - genesys backend now needs gcc-c++, it is not built otherwise
+
* Mon Sep 30 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-1
- 1.0.28
4 years, 6 months
Architecture specific change in rpms/sane-backends.git
by githook-noreply@fedoraproject.org
The package rpms/sane-backends.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/sane-backends.git/commit/?id=5185....
Change:
+%ifarch armv7hl i686 x86_64
Thanks.
Full change:
============
commit f67fcd597558c50136378401267bd27d9f5f82bd
Author: Zdenek Dohnal <zdohnal(a)redhat.com>
Date: Thu Oct 17 11:36:31 2019 +0200
1761530 - genesys aborts when accessing invalid vector index and built with GLIBCXX_ASSERTIONS
diff --git a/sane-backends.spec b/sane-backends.spec
index 27a0aa1..7808ce7 100644
--- a/sane-backends.spec
+++ b/sane-backends.spec
@@ -458,6 +458,7 @@ exit 0
- 1761145, 1761001, 1761051, 1761234 - genesys backend now needs gcc-c++, it is not built otherwise
- 1758886 - CanoScan LiDE scanners supported by genesys backend are not detected
- 1760916 - Samsung C460 does not have JPEG support
+- 1761530 - genesys aborts when accessing invalid vector index and built with GLIBCXX_ASSERTIONS
* Mon Sep 30 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-1
- 1.0.28
diff --git a/sane-genesys-vector-glibcxxassert.patch b/sane-genesys-vector-glibcxxassert.patch
new file mode 100644
index 0000000..48ed253
--- /dev/null
+++ b/sane-genesys-vector-glibcxxassert.patch
@@ -0,0 +1,56 @@
+diff --git a/backend/genesys_low.cc b/backend/genesys_low.cc
+index 097375f..20dd3a4 100644
+--- a/backend/genesys_low.cc
++++ b/backend/genesys_low.cc
+@@ -49,6 +49,11 @@
+
+ #include <vector>
+
++template <typename T>
++T safe_vec_addr(std::vector<T>& vec, int i)
++{
++ return vec.size() >= (unsigned long int)(i+1) ? vec[i] : (T)0;
++}
+
+ Genesys_Device::~Genesys_Device()
+ {
+@@ -1209,17 +1214,17 @@ SANE_Status sanei_genesys_generate_gamma_buffer(Genesys_Device * dev,
+ dev->settings.brightness);
+ for (int i = 0; i < size; i++)
+ {
+- uint16_t value=rgamma[i];
++ uint16_t value = safe_vec_addr(rgamma, i);
+ value=lut[value];
+ gamma[i * 2 + size * 0 + 0] = value & 0xff;
+ gamma[i * 2 + size * 0 + 1] = (value >> 8) & 0xff;
+
+- value=ggamma[i];
++ value = safe_vec_addr(ggamma, i);
+ value=lut[value];
+ gamma[i * 2 + size * 2 + 0] = value & 0xff;
+ gamma[i * 2 + size * 2 + 1] = (value >> 8) & 0xff;
+
+- value=bgamma[i];
++ value = safe_vec_addr(bgamma, i);
+ value=lut[value];
+ gamma[i * 2 + size * 4 + 0] = value & 0xff;
+ gamma[i * 2 + size * 4 + 1] = (value >> 8) & 0xff;
+@@ -1229,15 +1234,15 @@ SANE_Status sanei_genesys_generate_gamma_buffer(Genesys_Device * dev,
+ {
+ for (int i = 0; i < size; i++)
+ {
+- uint16_t value=rgamma[i];
++ uint16_t value = safe_vec_addr(rgamma, i);
+ gamma[i * 2 + size * 0 + 0] = value & 0xff;
+ gamma[i * 2 + size * 0 + 1] = (value >> 8) & 0xff;
+
+- value=ggamma[i];
++ value = safe_vec_addr(ggamma, i);
+ gamma[i * 2 + size * 2 + 0] = value & 0xff;
+ gamma[i * 2 + size * 2 + 1] = (value >> 8) & 0xff;
+
+- value=bgamma[i];
++ value = safe_vec_addr(bgamma, i);
+ gamma[i * 2 + size * 4 + 0] = value & 0xff;
+ gamma[i * 2 + size * 4 + 1] = (value >> 8) & 0xff;
+ }
commit 62dc8e3ea6b5095ce574211295b0a85cb40fc0a1
Author: Zdenek Dohnal <zdohnal(a)redhat.com>
Date: Thu Oct 17 11:33:51 2019 +0200
1760916 - Samsung C460 does not have JPEG support
diff --git a/sane-backends.spec b/sane-backends.spec
index a3814f4..27a0aa1 100644
--- a/sane-backends.spec
+++ b/sane-backends.spec
@@ -57,6 +57,8 @@ Patch2: sane-backends-1.0.23-sane-config-multilib.patch
Patch3: sane-backends-saned-manpage.patch
# several canoscan models did not work due genesys backend rewritten, taken from upstream
Patch4: 0001-genesys-Make-sure-calib_reg-are-available-before-wri.patch
+# blacklist Samsung C460 for JPEG, #1760916
+Patch5: sane-xerox-mfp-blacklist-C460-for-JPEG.patch
URL: http://www.sane-project.org
@@ -193,6 +195,7 @@ access image acquisition devices available on the local host.
%patch2 -p1 -b .sane-config-multilib
%patch3 -p1 -b .saned-manpage
%patch4 -p1 -b .genesys-regression
+%patch5 -p1 -b .c460-blacklist-for-jpeg
%build
CFLAGS="%optflags -fno-strict-aliasing"
@@ -454,6 +457,7 @@ exit 0
* Thu Oct 17 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-2
- 1761145, 1761001, 1761051, 1761234 - genesys backend now needs gcc-c++, it is not built otherwise
- 1758886 - CanoScan LiDE scanners supported by genesys backend are not detected
+- 1760916 - Samsung C460 does not have JPEG support
* Mon Sep 30 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-1
- 1.0.28
diff --git a/sane-xerox-mfp-blacklist-C460-for-JPEG.patch b/sane-xerox-mfp-blacklist-C460-for-JPEG.patch
new file mode 100644
index 0000000..401a4a7
--- /dev/null
+++ b/sane-xerox-mfp-blacklist-C460-for-JPEG.patch
@@ -0,0 +1,12 @@
+diff --git a/backend/xerox_mfp.c b/backend/xerox_mfp.c
+index b7fcbee..2cb73ee 100644
+--- a/backend/xerox_mfp.c
++++ b/backend/xerox_mfp.c
+@@ -209,6 +209,7 @@ static int isSupportedDevice(struct device __sane_unused__ *dev)
+ if (dev->compressionTypes & (1 << 6)) {
+ /* blacklist malfunctioning device(s) */
+ if (!strncmp(dev->sane.model, "SCX-4500W", 9) ||
++ !strncmp(dev->sane.model, "C460", 4) ||
+ !strncmp(dev->sane.model, "M288x", 5))
+ return 0;
+ return 1;
commit 7d3dd917343a955ac80b6cb84febb4e2dbee7c0f
Author: Zdenek Dohnal <zdohnal(a)redhat.com>
Date: Thu Oct 17 11:31:27 2019 +0200
1758886 - CanoScan LiDE scanners supported by genesys backend are not detected
diff --git a/0001-genesys-Make-sure-calib_reg-are-available-before-wri.patch b/0001-genesys-Make-sure-calib_reg-are-available-before-wri.patch
new file mode 100644
index 0000000..4687a24
--- /dev/null
+++ b/0001-genesys-Make-sure-calib_reg-are-available-before-wri.patch
@@ -0,0 +1,13 @@
+diff -up sane-backends-1.0.28/backend/genesys_gl841.cc.genesys-regression sane-backends-1.0.28/backend/genesys_gl841.cc
+--- sane-backends-1.0.28/backend/genesys_gl841.cc.genesys-regression 2019-10-14 13:11:10.772763713 +0200
++++ sane-backends-1.0.28/backend/genesys_gl841.cc 2019-10-14 13:11:57.602389188 +0200
+@@ -5042,6 +5042,9 @@ gl841_init (Genesys_Device * dev)
+ /* Set analog frontend */
+ RIE (gl841_set_fe(dev, sensor, AFE_INIT));
+
++ // FIXME: slow_back_home modifies dev->calib_reg and requires it to be filled
++ dev->calib_reg = dev->reg;
++
+ /* Move home */
+ RIE (gl841_slow_back_home (dev, SANE_TRUE));
+
diff --git a/sane-backends.spec b/sane-backends.spec
index 502c564..a3814f4 100644
--- a/sane-backends.spec
+++ b/sane-backends.spec
@@ -55,6 +55,8 @@ Patch1: sane-backends-1.0.23-soname.patch
Patch2: sane-backends-1.0.23-sane-config-multilib.patch
# saned manpage incomplete and exists when saned is not installed (#1515762)
Patch3: sane-backends-saned-manpage.patch
+# several canoscan models did not work due genesys backend rewritten, taken from upstream
+Patch4: 0001-genesys-Make-sure-calib_reg-are-available-before-wri.patch
URL: http://www.sane-project.org
@@ -190,6 +192,7 @@ access image acquisition devices available on the local host.
%patch1 -p1 -b .soname
%patch2 -p1 -b .sane-config-multilib
%patch3 -p1 -b .saned-manpage
+%patch4 -p1 -b .genesys-regression
%build
CFLAGS="%optflags -fno-strict-aliasing"
@@ -448,8 +451,9 @@ exit 0
%{_unitdir}/saned@.service
%changelog
-* Mon Oct 14 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-2
+* Thu Oct 17 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-2
- 1761145, 1761001, 1761051, 1761234 - genesys backend now needs gcc-c++, it is not built otherwise
+- 1758886 - CanoScan LiDE scanners supported by genesys backend are not detected
* Mon Sep 30 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-1
- 1.0.28
commit 5185ac94abd1821dbf3bf974f7c673cfe6943127
Author: Zdenek Dohnal <zdohnal(a)redhat.com>
Date: Thu Oct 17 11:27:14 2019 +0200
1761145, 1761001, 1761051, 1761234 - genesys backend now needs gcc-c++, it is not built otherwise
diff --git a/sane-backends.spec b/sane-backends.spec
index 6721f08..502c564 100644
--- a/sane-backends.spec
+++ b/sane-backends.spec
@@ -33,7 +33,7 @@
Summary: Scanner access software
Name: sane-backends
Version: 1.0.28
-Release: 1%{?dist}
+Release: 2%{?dist}
# lib/ is LGPLv2+, backends are GPLv2+ with exceptions
# Tools are GPLv2+, docs are public domain
# see LICENSE for details
@@ -56,13 +56,12 @@ Patch2: sane-backends-1.0.23-sane-config-multilib.patch
# saned manpage incomplete and exists when saned is not installed (#1515762)
Patch3: sane-backends-saned-manpage.patch
-
-#Patch5: sane-backends-revert-samsung-patch.patch
-
URL: http://www.sane-project.org
# gcc is no longer in buildroot by default
BuildRequires: gcc
+# genesys backend is not written in C++, so it is needed as buildrequire
+BuildRequires: gcc-c++
BuildRequires: %{_bindir}/latex
%if %libusb1
@@ -333,7 +332,104 @@ exit 0
%{_libdir}/pkgconfig/sane-backends.pc
%files drivers-scanners
-%{_libdir}/sane/*.so
+# we need to specify all .so files for available backends because something like
+# #1761145 can happen - genesys did not compile because of lack gcc-c++ in buildroot
+# and configure printed only warning. So now we can figure out missing backend support
+# during build
+%{_libdir}/sane/libsane-abaton.so
+%{_libdir}/sane/libsane-agfafocus.so
+%{_libdir}/sane/libsane-apple.so
+%{_libdir}/sane/libsane-artec.so
+%{_libdir}/sane/libsane-artec_eplus48u.so
+%{_libdir}/sane/libsane-as6e.so
+%{_libdir}/sane/libsane-avision.so
+%{_libdir}/sane/libsane-bh.so
+%{_libdir}/sane/libsane-canon.so
+%{_libdir}/sane/libsane-canon630u.so
+%{_libdir}/sane/libsane-canon_dr.so
+%{_libdir}/sane/libsane-canon_pp.so
+%{_libdir}/sane/libsane-cardscan.so
+%{_libdir}/sane/libsane-coolscan.so
+%{_libdir}/sane/libsane-coolscan2.so
+%{_libdir}/sane/libsane-coolscan3.so
+%{_libdir}/sane/libsane-dc210.so
+%{_libdir}/sane/libsane-dc240.so
+%{_libdir}/sane/libsane-dc25.so
+%{_libdir}/sane/libsane-dell1600n_net.so
+%{_libdir}/sane/libsane-dll.so
+%{_libdir}/sane/libsane-dmc.so
+%{_libdir}/sane/libsane-epjitsu.so
+%{_libdir}/sane/libsane-epson.so
+%{_libdir}/sane/libsane-epson2.so
+%{_libdir}/sane/libsane-epsonds.so
+%{_libdir}/sane/libsane-fujitsu.so
+%{_libdir}/sane/libsane-genesys.so
+%{_libdir}/sane/libsane-gt68xx.so
+%{_libdir}/sane/libsane-hp.so
+%{_libdir}/sane/libsane-hp3500.so
+%{_libdir}/sane/libsane-hp3900.so
+%{_libdir}/sane/libsane-hp4200.so
+%{_libdir}/sane/libsane-hp5400.so
+%{_libdir}/sane/libsane-hp5590.so
+%{_libdir}/sane/libsane-hpljm1005.so
+%{_libdir}/sane/libsane-hpsj5s.so
+%{_libdir}/sane/libsane-hs2p.so
+%{_libdir}/sane/libsane-ibm.so
+%{_libdir}/sane/libsane-kodak.so
+%{_libdir}/sane/libsane-kodakaio.so
+%{_libdir}/sane/libsane-kvs1025.so
+%{_libdir}/sane/libsane-kvs20xx.so
+%{_libdir}/sane/libsane-kvs40xx.so
+%{_libdir}/sane/libsane-leo.so
+%{_libdir}/sane/libsane-lexmark.so
+%{_libdir}/sane/libsane-ma1509.so
+%{_libdir}/sane/libsane-magicolor.so
+%{_libdir}/sane/libsane-matsushita.so
+%{_libdir}/sane/libsane-microtek.so
+%{_libdir}/sane/libsane-microtek2.so
+%{_libdir}/sane/libsane-mustek.so
+%{_libdir}/sane/libsane-mustek_pp.so
+%{_libdir}/sane/libsane-mustek_usb.so
+%{_libdir}/sane/libsane-mustek_usb2.so
+%{_libdir}/sane/libsane-nec.so
+%{_libdir}/sane/libsane-net.so
+%{_libdir}/sane/libsane-niash.so
+%{_libdir}/sane/libsane-p5.so
+%{_libdir}/sane/libsane-pie.so
+%{_libdir}/sane/libsane-pieusb.so
+%{_libdir}/sane/libsane-pixma.so
+%{_libdir}/sane/libsane-plustek.so
+%{_libdir}/sane/libsane-plustek_pp.so
+# qcam is not on aarch64, ppc64le and s390x. SANE needs
+# ioperm, inb and outb functions or portaccess function
+# to support qcam backend. Those functions are only in
+# armv7hl, i686 and x86_64 architectures.
+%ifarch armv7hl i686 x86_64
+%{_libdir}/sane/libsane-qcam.so
+%endif
+%{_libdir}/sane/libsane-ricoh.so
+%{_libdir}/sane/libsane-ricoh2.so
+%{_libdir}/sane/libsane-rts8891.so
+%{_libdir}/sane/libsane-s9036.so
+%{_libdir}/sane/libsane-sceptre.so
+%{_libdir}/sane/libsane-sharp.so
+%{_libdir}/sane/libsane-sm3600.so
+%{_libdir}/sane/libsane-sm3840.so
+%{_libdir}/sane/libsane-snapscan.so
+%{_libdir}/sane/libsane-sp15c.so
+%{_libdir}/sane/libsane-st400.so
+%{_libdir}/sane/libsane-stv680.so
+%{_libdir}/sane/libsane-tamarack.so
+%{_libdir}/sane/libsane-teco1.so
+%{_libdir}/sane/libsane-teco2.so
+%{_libdir}/sane/libsane-teco3.so
+%{_libdir}/sane/libsane-test.so
+%{_libdir}/sane/libsane-u12.so
+%{_libdir}/sane/libsane-umax.so
+%{_libdir}/sane/libsane-umax1220u.so
+%{_libdir}/sane/libsane-umax_pp.so
+%{_libdir}/sane/libsane-v4l.so
+%{_libdir}/sane/libsane-xerox_mfp.so
%{_libdir}/sane/*.so.1
%{_libdir}/sane/*.so.1.0.28
@@ -352,6 +448,9 @@ exit 0
%{_unitdir}/saned@.service
%changelog
+* Mon Oct 14 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-2
+- 1761145, 1761001, 1761051, 1761234 - genesys backend now needs gcc-c++, it is not built otherwise
+
* Mon Sep 30 2019 Zdenek Dohnal <zdohnal(a)redhat.com> - 1.0.28-1
- 1.0.28
4 years, 6 months