Compare commits

...

No commits in common. "c8" and "c9" have entirely different histories.
c8 ... c9

4 changed files with 83 additions and 175 deletions

2
.gitignore vendored
View File

@ -1 +1 @@
SOURCES/libgphoto2-2.5.16.tar.bz2
SOURCES/libgphoto2-2.5.27.tar.bz2

View File

@ -1 +1 @@
f1736e4c0f7273a1154c28ac26b76f1be538b4f3 SOURCES/libgphoto2-2.5.16.tar.bz2
5b71a66418eadc5177d7df19e9d8b64609a961b6 SOURCES/libgphoto2-2.5.27.tar.bz2

View File

@ -1,168 +0,0 @@
diff -up libgphoto2-2.4.7/packaging/generic/print-camera-list.c.storage libgphoto2-2.4.7/packaging/generic/print-camera-list.c
--- libgphoto2-2.4.7/packaging/generic/print-camera-list.c.storage 2009-08-11 17:11:27.000000000 +0200
+++ libgphoto2-2.4.7/packaging/generic/print-camera-list.c 2009-08-19 15:44:41.000000000 +0200
@@ -819,6 +819,8 @@ fdi_begin_func (const func_params_t *par
printf("<deviceinfo version=\"0.2\">\n");
printf(" <device>\n");
printf(" <match key=\"info.subsystem\" string=\"usb\">\n");
+ printf(" <!-- skip USB Mass Storage Devices -->\n");
+ printf(" <match key=\"usb.interface.class\" compare_ne=\"8\">\n");
return 0;
}
@@ -858,62 +860,62 @@ fdi_camera_func (const func_params_t *pa
return 0;
}
if (a->usb_vendor) { /* usb product id might be 0! */
- printf(" <match key=\"usb.vendor_id\" int=\"%d\">\n", a->usb_vendor);
- printf(" <match key=\"usb.product_id\" int=\"%d\">\n", a->usb_product);
+ printf(" <match key=\"usb.vendor_id\" int=\"%d\">\n", a->usb_vendor);
+ printf(" <match key=\"usb.product_id\" int=\"%d\">\n", a->usb_product);
if (a->usb_vendor == 0x05ac) { /* Apple iPhone, PTP user. */
- printf(" <match key=\"usb.interface.class\" int=\"6\">\n");
- printf(" <match key=\"usb.interface.subclass\" int=\"1\">\n");
- printf(" <match key=\"usb.interface.protocol\" int=\"1\">\n");
+ printf(" <match key=\"usb.interface.class\" int=\"6\">\n");
+ printf(" <match key=\"usb.interface.subclass\" int=\"1\">\n");
+ printf(" <match key=\"usb.interface.protocol\" int=\"1\">\n");
}
if (a->device_type & GP_DEVICE_AUDIO_PLAYER) {
- printf(" <merge key=\"info.category\" type=\"string\">portable_audio_player</merge>\n");
- printf(" <addset key=\"info.capabilities\" type=\"strlist\">portable_audio_player</addset>\n");
- printf(" <merge key=\"portable_audio_player.access_method\" type=\"string\">user</merge>\n");
- printf(" <merge key=\"portable_audio_player.type\" type=\"string\">mtp</merge>\n");
+ printf(" <merge key=\"info.category\" type=\"string\">portable_audio_player</merge>\n");
+ printf(" <addset key=\"info.capabilities\" type=\"strlist\">portable_audio_player</addset>\n");
+ printf(" <merge key=\"portable_audio_player.access_method\" type=\"string\">user</merge>\n");
+ printf(" <merge key=\"portable_audio_player.type\" type=\"string\">mtp</merge>\n");
/* FIXME: needs true formats ... But all of them can do MP3 */
- printf(" <append key=\"portable_audio_player.output_formats\" type=\"strlist\">audio/mpeg</append>\n");
+ printf(" <append key=\"portable_audio_player.output_formats\" type=\"strlist\">audio/mpeg</append>\n");
} else {
- printf(" <merge key=\"info.category\" type=\"string\">camera</merge>\n");
- printf(" <addset key=\"info.capabilities\" type=\"strlist\">camera</addset>\n");
+ printf(" <merge key=\"info.category\" type=\"string\">camera</merge>\n");
+ printf(" <addset key=\"info.capabilities\" type=\"strlist\">camera</addset>\n");
/* HACK alert ... but the HAL / gnome-volume-manager guys want that */
if (NULL!=strstr(a->library,"ptp"))
- printf(" <merge key=\"camera.access_method\" type=\"string\">ptp</merge>\n");
+ printf(" <merge key=\"camera.access_method\" type=\"string\">ptp</merge>\n");
else
- printf(" <merge key=\"camera.access_method\" type=\"string\">proprietary</merge>\n");
+ printf(" <merge key=\"camera.access_method\" type=\"string\">proprietary</merge>\n");
}
/* leave them here even for audio players */
- printf(" <merge key=\"camera.libgphoto2.name\" type=\"string\">%s</merge>\n", model);
- printf(" <merge key=\"camera.libgphoto2.support\" type=\"bool\">true</merge>\n");
+ printf(" <merge key=\"camera.libgphoto2.name\" type=\"string\">%s</merge>\n", model);
+ printf(" <merge key=\"camera.libgphoto2.support\" type=\"bool\">true</merge>\n");
if (a->usb_vendor == 0x05ac) { /* Apple iPhone */
+ printf(" </match>\n");
printf(" </match>\n");
printf(" </match>\n");
- printf(" </match>\n");
}
+ printf(" </match>\n");
printf(" </match>\n");
- printf(" </match>\n");
} else if ((a->usb_class) && (a->usb_class != 666)) {
- printf(" <match key=\"usb.interface.class\" int=\"%d\">\n", a->usb_class);
- printf(" <match key=\"usb.interface.subclass\" int=\"%d\">\n", a->usb_subclass);
- printf(" <match key=\"usb.interface.protocol\" int=\"%d\">\n", a->usb_protocol);
- printf(" <merge key=\"info.category\" type=\"string\">camera</merge>\n");
- printf(" <addset key=\"info.capabilities\" type=\"strlist\">camera</addset>\n");
+ printf(" <match key=\"usb.interface.class\" int=\"%d\">\n", a->usb_class);
+ printf(" <match key=\"usb.interface.subclass\" int=\"%d\">\n", a->usb_subclass);
+ printf(" <match key=\"usb.interface.protocol\" int=\"%d\">\n", a->usb_protocol);
+ printf(" <merge key=\"info.category\" type=\"string\">camera</merge>\n");
+ printf(" <addset key=\"info.capabilities\" type=\"strlist\">camera</addset>\n");
if (a->usb_class == 6) {
- printf(" <merge key=\"camera.access_method\" type=\"string\">ptp</merge>\n");
+ printf(" <merge key=\"camera.access_method\" type=\"string\">ptp</merge>\n");
} else {
if (a->usb_class == 8) {
- printf(" <merge key=\"camera.access_method\" type=\"string\">storage</merge>\n");
+ printf(" <merge key=\"camera.access_method\" type=\"string\">storage</merge>\n");
} else {
- printf(" <merge key=\"camera.access_method\" type=\"string\">proprietary</merge>\n");
+ printf(" <merge key=\"camera.access_method\" type=\"string\">proprietary</merge>\n");
}
}
- printf(" <merge key=\"camera.libgphoto2.name\" type=\"string\">%s</merge>\n", model);
- printf(" <merge key=\"camera.libgphoto2.support\" type=\"bool\">true</merge>\n");
+ printf(" <merge key=\"camera.libgphoto2.name\" type=\"string\">%s</merge>\n", model);
+ printf(" <merge key=\"camera.libgphoto2.support\" type=\"bool\">true</merge>\n");
+ printf(" </match>\n");
printf(" </match>\n");
printf(" </match>\n");
- printf(" </match>\n");
}
} /* camera has USB connection */
return 0;
@@ -922,6 +924,7 @@ fdi_camera_func (const func_params_t *pa
static int
fdi_end_func (const func_params_t *params, void *data)
{
+ printf(" </match>\n");
printf(" </match>\n");
printf(" </device>\n");
printf("</deviceinfo>\n");
@@ -948,6 +951,8 @@ fdi_device_begin_func (const func_params
printf("<deviceinfo version=\"0.2\">\n");
printf(" <device>\n");
printf(" <match key=\"info.subsystem\" string=\"usb\">\n");
+ printf(" <!-- skip USB Mass Storage Devices -->\n");
+ printf(" <match key=\"usb.interface.class\" compare_ne=\"8\">\n");
return 0;
}
@@ -991,28 +996,28 @@ fdi_device_camera_func (const func_param
/* do not set category. We don't really know what this device really is.
* But we do now that is capable of being a camera, so add to capabilities
*/
- printf(" <match key=\"usb_device.vendor_id\" int=\"%d\">\n", a->usb_vendor);
- printf(" <match key=\"usb_device.product_id\" int=\"%d\">\n", a->usb_product);
+ printf(" <match key=\"usb_device.vendor_id\" int=\"%d\">\n", a->usb_vendor);
+ printf(" <match key=\"usb_device.product_id\" int=\"%d\">\n", a->usb_product);
if (params->add_comments) {
printf(" <!-- %s -->\n", a->model);
}
if (a->device_type & GP_DEVICE_AUDIO_PLAYER)
- printf(" <append key=\"info.capabilities\" type=\"strlist\">portable_audio_player</append>\n");
+ printf(" <append key=\"info.capabilities\" type=\"strlist\">portable_audio_player</append>\n");
else
- printf(" <append key=\"info.capabilities\" type=\"strlist\">camera</append>\n");
+ printf(" <append key=\"info.capabilities\" type=\"strlist\">camera</append>\n");
+ printf(" </match>\n");
printf(" </match>\n");
- printf(" </match>\n");
}
#if 0
/* would need to be able to merge upwards ... but cannot currently */
else if ((a->usb_class) && (a->usb_class != 666)) {
- printf(" <match key=\"usb.interface.class\" int=\"%d\">\n", a->usb_class);
- printf(" <match key=\"usb.interface.subclass\" int=\"%d\">\n", a->usb_subclass);
- printf(" <match key=\"usb.interface.protocol\" int=\"%d\">\n", a->usb_protocol);
- printf(" <append key=\"info.capabilities\" type=\"strlist\">camera</append>\n");
+ printf(" <match key=\"usb.interface.class\" int=\"%d\">\n", a->usb_class);
+ printf(" <match key=\"usb.interface.subclass\" int=\"%d\">\n", a->usb_subclass);
+ printf(" <match key=\"usb.interface.protocol\" int=\"%d\">\n", a->usb_protocol);
+ printf(" <append key=\"info.capabilities\" type=\"strlist\">camera</append>\n");
+ printf(" </match>\n");
printf(" </match>\n");
printf(" </match>\n");
- printf(" </match>\n");
}
#endif
}
@@ -1022,6 +1027,7 @@ fdi_device_camera_func (const func_param
static int
fdi_device_end_func (const func_params_t *params, void *data)
{
+ printf(" </match>\n");
printf(" </match>\n");
printf(" </device>\n");
printf("</deviceinfo>\n");

View File

@ -4,7 +4,7 @@
%global port_version 0.12.0
Name: libgphoto2
Version: 2.5.16
Version: 2.5.27
Release: 3%{?dist}
Summary: Library for accessing digital cameras
# GPLV2+ for the main lib (due to exif.c) and most plugins, some plugins GPLv2
@ -13,8 +13,7 @@ URL: http://www.gphoto.org/
Source0: http://downloads.sourceforge.net/gphoto/%{name}-%{version}.tar.bz2
Patch1: gphoto2-pkgcfg.patch
Patch2: gphoto2-storage.patch
Patch3: gphoto2-device-return.patch
Patch2: gphoto2-device-return.patch
BuildRequires: gcc
BuildRequires: gcc-c++
@ -26,6 +25,7 @@ BuildRequires: bison
%endif
BuildRequires: libtool-ltdl-devel
BuildRequires: libjpeg-devel
BuildRequires: libcurl-devel
BuildRequires: pkgconfig(libxml-2.0)
BuildRequires: gd-devel
BuildRequires: pkgconfig(libexif)
@ -37,6 +37,9 @@ BuildRequires: pkgconfig(libusb-1.0)
Requires: lockdev
# -----------------------------------
# Temporarily required for patch3
BuildRequires: autoconf automake libtool gettext-devel
%description
libgphoto2 is a library that can be used by applications to access
various digital cameras. libgphoto2 itself is not a GUI application,
@ -65,6 +68,9 @@ for f in AUTHORS ChangeLog COPYING libgphoto2_port/AUTHORS libgphoto2_port/COPYI
done
%build
# Temporarily required for patch3
autoreconf -if
%configure \
udevscriptdir='%{udevdir}' \
--with-drivers=all \
@ -94,7 +100,11 @@ pushd packaging/linux-hotplug/
# Output udev rules for device identification; this is used by GVfs gphoto2
# backend and others.
mkdir -p %{buildroot}%{_udevrulesdir}
%{buildroot}%{_libdir}/%{name}/print-camera-list udev-rules version 136 > %{buildroot}%{_udevrulesdir}/40-libgphoto2.rules
%{buildroot}%{_libdir}/%{name}/print-camera-list udev-rules version 201 > %{buildroot}%{_udevrulesdir}/40-libgphoto2.rules
# Add support for hwdb (#1658259)
mkdir -p %{buildroot}%{_udevhwdbdir}
%{buildroot}%{_libdir}/%{name}/print-camera-list hwdb version 201 > %{buildroot}%{_udevhwdbdir}/20-gphoto2.hwdb
popd
# remove circular symlink in /usr/include/gphoto2 (#460807)
@ -119,7 +129,7 @@ rm -rf %{buildroot}%{_datadir}/libgphoto2_port/*/vcamera/
%files -f %{name}.lang
%license COPYING
%doc AUTHORS README NEWS
%doc AUTHORS README.md NEWS
%{_libdir}/%{name}.so.*
%{_libdir}/%{name}_port.so.*
%dir %{_libdir}/%{name}/
@ -129,6 +139,7 @@ rm -rf %{buildroot}%{_datadir}/libgphoto2_port/*/vcamera/
%{_libdir}/%{name}/%{version}/*.so
%{_libdir}/%{name}_port/%{port_version}/*.so
%{_udevrulesdir}/40-libgphoto2.rules
%{_udevhwdbdir}/20-gphoto2.hwdb
%{udevdir}/check-ptp-camera
%{_datadir}/libgphoto2/
@ -145,6 +156,71 @@ rm -rf %{buildroot}%{_datadir}/libgphoto2_port/*/vcamera/
%{_mandir}/man3/%{name}_port.3*
%changelog
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 2.5.27-3
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
Related: rhbz#1991688
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 2.5.27-2
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
* Wed Mar 10 2021 Josef Ridky <jridky@redhat.com> - 2.5.27-1
- New upstream release 2.5.27 (#1931187)
* Wed Jan 27 2021 Josef Ridky <jridky@redhat.com> - 2.5.26-1
- New upstream release 2.5.26 (#1887201)
- Add support for hwdb output (#1658259)
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.5.25-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Wed Oct 07 2020 Josef Ridky <jridky@redhat.com> - 2.5.25-1
- New upstream release 2.5.25 (#1839543)
* Thu Aug 6 2020 Daniel P. Berrangé <berrange@redhat.com> - 2.5.24-4
- Fix configure check for symbol versioning with GCC 10 (rhbz #1862745)
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.5.24-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Wed May 13 2020 Daniel P. Berrangé <berrange@redhat.com> - 2.5.24-2
- Add libcurl for Lumix WIFI support
* Wed May 13 2020 Daniel P. Berrangé <berrange@redhat.com> - 2.5.24-1
- Update to 2.5.24 release
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.5.23-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Wed Aug 21 2019 Josef Řídký <jridky@redhat.com> - 2.5.23-1
- New upstream release 2.5.23
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.5.21-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.5.21-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Tue Dec 11 2018 Bastien Nocera <bnocera@redhat.com> - 2.5.21-2
- Fix camera mounts not showing up in GNOME
* Tue Dec 11 2018 Bastien Nocera <bnocera@redhat.com> - 2.5.21-1
- Update to 2.5.21
* Tue Nov 27 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 2.5.20-1
- Update to 2.5.20
* Sun Sep 09 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 2.5.19-1
- Update to 2.5.19
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.5.18-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Mon May 14 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 2.5.18-1
- Update to 2.5.18
* Fri Apr 20 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 2.5.17-1
- Update to 2.5.17
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.5.16-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild