# # spec file for package libusb-compat # # Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # Name: libusb-compat Url: http://libusb.info/ Summary: libusb-1.0 Compatibility Layer for libusb-0.1 License: BSD-3-Clause and LGPL-2.1+ Group: Development/Libraries/C and C++ Version: 0.1.5 Release: 36.17 Source: http://downloads.sourceforge.net/project/libusb/%{name}-0.1/%{name}-%{version}/%{name}-%{version}.tar.bz2 Source1: baselibs.conf Source2: %{name}.rpmlintrc # PATCH-FIX-UPSTREAM libusb-compat-update-news.patch sbrabec@suse.cz -- Update news for 0.1.5. Patch0: libusb-compat-update-news.patch # PATCH-FIX-UPSTREAM libusb-compat-revert-atexit.patch sbrabec@suse.cz -- Revert atexit(). Patch1: libusb-compat-revert-atexit.patch # PATCH-FIX-UPSTREAM libusb-compat-add-destructor.patch sbrabec@suse.cz -- Add destructor. Patch2: libusb-compat-add-destructor.patch # PATCH-FEATURE-OPENSUSE libusb-compat-hide-libusb-1_0.patch boo#596411 sbrabec@suse.cz -- Hide libusb-1.0 symbols to prevent symbol clash. Patch3: libusb-compat-hide-libusb-1_0.patch BuildRequires: pkgconf-pkg-config BuildRequires: pkgconfig(libusb-1.0) # Needed for libusb-compat-hide-libusb-1_0.patch: BuildRequires: autoconf BuildRequires: automake BuildRequires: libtool BuildRoot: %{_tmppath}/%{name}-%{version}-build %define debug_package_requires libusb-0_1-5 = %{version}-%{release} %description A compatibility layer allowing applications written for libusb-0.1 to work with libusb-1.0. libusb-compat-0.1 attempts to look, feel, smell and walk like libusb-0.1. %package -n libusb-0_1-4 # A better version than 0.1.12 provided by libusb-0_1: Version: 0.1.13 Release: 36.17 Summary: libusb-1.0 Compatibility Library for libusb-0.1 Group: System/Libraries # Special symbol for packages, that use libusb-0.1 API, but use libusb-1.0 features: Provides: libusb-1_0-features-in-0_1-api # Update of libusb from openSUSE < 11.1 SLE < 11: # This symbol is also required by several third party packages! Provides: libusb = 0.1.13 Obsoletes: libusb < 0.1.13 # libusb-compat-hide-libusb-1_0.patch hides this requirement #Requires: %(rpm -q --provides libusb-1_0-0 | grep libusb-1.0.so.0) %description -n libusb-0_1-4 A compatibility layer allowing applications written for libusb-0.1 to work with libusb-1.0. libusb-compat-0.1 attempts to look, feel, smell and walk like libusb-0.1. %package devel Summary: libusb-1.0 Compatibility Layer for libusb-0.1 Group: Development/Libraries/C and C++ Requires: glibc-devel Requires: libusb-0_1-4 = 0.1.13 Requires: libusb-1_0-devel Requires: libusb-1_0-features-in-0_1-api # Update of libusb from openSUSE < 11.1 SLE < 11: Provides: libusb-devel = 0.1.13 Obsoletes: libusb-devel < 0.1.13 Conflicts: libusb-devel < 0.1.13 %description devel A compatibility layer allowing applications written for libusb-0.1 to work with libusb-1.0. libusb-compat-0.1 attempts to look, feel, smell and walk like libusb-0.1. %prep %setup -q %patch0 -p1 %patch1 -p1 %patch2 -p1 %patch3 -p1 %build autoreconf -f -i %configure --disable-static make %{?_smp_mflags} %install %make_install rm %{buildroot}%{_libdir}/*.la %post -n libusb-0_1-4 -p /sbin/ldconfig %postun -n libusb-0_1-4 -p /sbin/ldconfig %files -n libusb-0_1-4 %defattr(-,root,root) %doc AUTHORS COPYING ChangeLog LICENSE NEWS README %{_libdir}/*.so.* %files devel %defattr(-,root,root) %{_bindir}/*-config %{_includedir}/*.h %{_libdir}/*.so %{_libdir}/pkgconfig/*.pc %changelog * Thu Jul 9 2015 sbrabec@suse.com - Fix libusb-compat-hide-libusb-1_0.patch: Ensure that inline functions inside libusb-1.0/libusb.h use wrapped calls. It should fix all triggered build failures. * Sat Jun 20 2015 dimstar@opensuse.org - Currently disable libusb-compat-hide-libusb-1_0.patch: it causes many more problems when linking to libusb-compat. * Wed Jun 10 2015 sbrabec@suse.com - Fix libusb-compat-hide-libusb-1_0.patch autoconf checks, especially with -Wl,--as-needed. - Use architecture-independent way to get libusb-1.0.so.0 rpm symbol. * Fri May 29 2015 schwab@suse.de - Fix dependencies * Tue May 26 2015 dgutu@suse.com - Added PowerPC architectures to spec file * Wed Apr 22 2015 jengelh@inai.de - remove --with-pic, it is implicit for shared libraries anyway (and we do not build static libraries). Use %%_smp_mflags for parallel build. * Mon Apr 20 2015 sbrabec@suse.cz - Add upstream fixes: * Update NEWS (libusb-compat-update-news.patch). * Replace atexit() by library destructor (libusb-compat-revert-atexit.patch, libusb-compat-add-destructor.patch). - Hide libusb-1.0 symbols to prevent symbol clash (libusb-compat-hide-libusb-1_0.patch, boo#596411). * Tue Jan 28 2014 sbrabec@suse.cz - New upstream, new home page. - Update to version 0.1.5: * devel package fixes * memory leak at exit fix * for more see ChangeLog - Add libusb-compat.rpmlintrc. * Mon Apr 15 2013 mmeister@suse.com - Added url as source. Please see http://en.opensuse.org/SourceUrls * Sat Feb 2 2013 coolo@suse.com - update license to new format * Thu Apr 26 2012 sbrabec@suse.cz - Update to version 0.1.4: * Fix usb_*_write() prototypes. * Fix usb_detach_kernel_driver_np() error mapping (libusb#42, bnc#683307). * Wed Apr 4 2012 sbrabec@suse.cz - Properly emulate error codes of usb_detach_kernel_driver_np() (bnc#683307). * Sun Feb 12 2012 crrodriguez@opensuse.org - Libraries back to %%{_libdir}, /usr merge project * Sun Nov 20 2011 coolo@suse.com - add libtool as buildrequire to avoid implicit dependency * Wed Jun 1 2011 seife+obs@b1-systems.com - move libusb-compat from /usr to / to make it usable for other packages and work around rpmlint stupidity * Tue Dec 15 2009 jengelh@medozas.de - add baselibs.conf as a source * Thu Aug 6 2009 sbrabec@suse.cz - Updated to version 0.1.3: * improve libusb-config for cross-compiling - Removed support for parallel installation with libusb-0.1. * Wed Jul 8 2009 sbrabec@suse.cz - Set shared library package version to 0.1.13 to be higher than the last libusb0 (bnc#519311#c8). * Mon Jun 29 2009 sbrabec@suse.cz - Fixed build with the latest autotools. * Mon Jun 22 2009 sbrabec@suse.cz - Updated to version 0.1.2: * handle libusb initialization failure * Wed Jun 17 2009 meissner@suse.de - Fixed crashes of libgphoto2 (and other usb_find_busses() and usb_find_devices() users) when no USB device is in the system (like in a chroot without /sys, or on s390 or similar). bnc#432129 (again) * Fri Jun 5 2009 sbrabec@suse.cz - Updated to version 0.1.1: * improvements to match libusb-0.1 endpoint addressing behaviour * Fri Apr 17 2009 sbrabec@suse.cz - Ensure use of read EP in usb_interrupt_read() (bnc#443861). * Wed Apr 15 2009 sbrabec@suse.cz - Fixed devel dependencies. * Wed Apr 15 2009 sbrabec@suse.cz - Worked around 'Duplicate License entries' breakage in Autobuild. * Tue Apr 14 2009 sbrabec@suse.cz - Updated to version 0.1.0: * Bug fixes. * Documentation of incompatibilities with libusb-0.1. - Implemented rpm build option FULLY_REPLACE_LIBUSB_0_1. - Another attempt to replace libusb-0.1 completely. * Wed Nov 12 2008 sbrabec@suse.cz - Changed library soname to libusb-0.1 incompatible libusb-0.1.so.5 allowing to install both in paralel. (bnc#443861, works around also bnc#432129 and bnc#439574) - Confllict with libusb-devel instead of obsoleting it. * Wed Oct 22 2008 sbrabec@suse.cz - Properly obsolete old implementation of the library (bnc#437768). * Wed Oct 8 2008 meissner@suse.de - handle case where usb_init() failed (ctx NULL), so we do not crash. bnc#432129 - added more NULL ptr checks, where older libusb were more graceful and did not crash. bnc#432129 * Mon Oct 6 2008 sbrabec@suse.cz - Added baselibs.conf (bnc#432304). * Thu Sep 25 2008 ro@suse.de - fix debug package requires * Wed Sep 10 2008 sbrabec@suse.cz - New package providing compatibility layer for libusb.