X-Git-Url: https://git.pld-linux.org/?a=blobdiff_plain;f=linux-gpib.spec;h=51b6331847082cf18a0d64736a9ada20ce9e51f1;hb=659cb172c8adafe983e01fef846cfcbffdddab0a;hp=15e292fe25ff1e124fb3f096a16c0d5de5e2a564;hpb=2d0c8827282a43d1a91524f0867b8a801a475da0;p=packages%2Flinux-gpib.git diff --git a/linux-gpib.spec b/linux-gpib.spec index 15e292f..51b6331 100644 --- a/linux-gpib.spec +++ b/linux-gpib.spec @@ -2,18 +2,18 @@ # Conditional build: %bcond_without kernel # kernel modules %bcond_without drivers_isa # ISA kernel drivers [ix86 only] -%bcond_without drivers_pcmcia # PCMCIA support in kernel drivers %bcond_without drivers_usb # USB kernel drivers %bcond_without userspace # userspace packages %bcond_without verbose # verbose modules build (V=1) -%bcond_without docs # documentation build +%bcond_without doc # documentation build %bcond_with hotplug # legacy hotplug support %bcond_without static_libs # static library %bcond_without guile # guile binding %bcond_without perl # Perl binding -%bcond_without php # PHP binding -%bcond_without python # Python binding +%bcond_with php # PHP binding +%bcond_without python # Python (any) binding +%bcond_without python2 # Python 2.x binding %bcond_without tcl # Tcl binding # The goal here is to have main, userspace, package built once with @@ -27,41 +27,43 @@ exit 1 %ifnarch %{ix86} %undefine with_drivers_isa -%undefine with_drivers_pcmcia +%endif +%if %{without python} +%undefine with_python2 %endif -%include /usr/lib/rpm/macros.perl %define php_name php%{?php_suffix} -%define rel 5 +%define rel 3 %define pname linux-gpib Summary: GPIB (IEEE 488) Linux support Summary(pl.UTF-8): Obsługa GPIB (IEEE 488) dla Linuksa Name: %{pname}%{?_pld_builder:%{?with_kernel:-kernel}}%{_alt_kernel} -Version: 4.0.3 +Version: 4.3.3 Release: %{rel}%{?_pld_builder:%{?with_kernel:@%{_kernel_ver_str}}} License: GPL v2+ Group: Applications/System Source0: http://downloads.sourceforge.net/linux-gpib/%{pname}-%{version}.tar.gz -# Source0-md5: 2d97191e538a57ba7350fcc011ee2596 -Patch0: %{pname}-include_file.patch -Patch1: %{pname}-destdir.patch +# Source0-md5: 1243aa44f788cf23f9b40ded54c14685 Patch2: %{pname}-python.patch Patch3: %{pname}-perl.patch Patch4: %{pname}-firmwaredir.patch Patch5: %{pname}-guile2.patch Patch6: %{pname}-php7.patch +Patch8: kernel-5.2.patch +Patch9: kernel-5.10.patch +Patch10: pkgconfig-version.patch URL: http://linux-gpib.sourceforge.net/ BuildRequires: autoconf >= 2.50 BuildRequires: automake BuildRequires: libtool -BuildRequires: rpmbuild(macros) >= 1.614 +BuildRequires: rpmbuild(macros) >= 1.745 %if %{with kernel} BuildRequires: kernel-module-build >= 3:2.6.8 %endif %if %{with userspace} BuildRequires: bison -%{?with_docs:BuildRequires: docbook-utils} +%{?with_doc:BuildRequires: docbook-utils} BuildRequires: flex %{?with_guile:BuildRequires: guile-devel >= 1.4} %{?with_perl:BuildRequires: perl-devel} @@ -171,17 +173,30 @@ PHP bindings for GPIB library. Wiązania PHP do biblioteki GPIB. %package -n python-gpib -Summary: Python bindings for GPIB library -Summary(pl.UTF-8): Wiązania Pythona do biblioteki GPIB +Summary: Python 2 bindings for GPIB library +Summary(pl.UTF-8): Wiązania Pythona 2 do biblioteki GPIB Group: Libraries/Python Requires: %{pname}-libs = %{version}-%{release} Requires: python-libs %description -n python-gpib -Python bindings for GPIB library. +Python 2 bindings for GPIB library. %description -n python-gpib -l pl.UTF-8 -Wiązania Pythona do biblioteki GPIB. +Wiązania Pythona 2 do biblioteki GPIB. + +%package -n python3-gpib +Summary: Python 3 bindings for GPIB library +Summary(pl.UTF-8): Wiązania Pythona 3 do biblioteki GPIB +Group: Libraries/Python +Requires: %{pname}-libs = %{version}-%{release} +Requires: python3-libs + +%description -n python3-gpib +Python 3 bindings for GPIB library. + +%description -n python3-gpib -l pl.UTF-8 +Wiązania Pythona 3 do biblioteki GPIB. %package -n tcl-gpib Summary: Tcl bindings for GPIB library @@ -238,10 +253,18 @@ Ten pakiet zawiera sterowniki dla Linuksa do urządzeń GPIB (IEEE 488).\ %{nil} %define build_kernel_pkg()\ -TOPDIR=$(pwd)\ -%build_kernel_modules -C drivers/gpib -m gpib -- EARLYCPPFLAGS="-I$TOPDIR -I$TOPDIR/drivers/gpib/include -I$TOPDIR/include"\ +%{__make} VERBOSE=1 LINUX_SRCDIR=%{_kernelsrcdir}\ cd drivers/gpib\ -%install_kernel_modules -D installed -m agilent_82350b/agilent_82350b,cb7210/cb7210,cec/cec_gpib,hp_82335/hp82335,hp_82341/hp_82341,ines/ines_gpib,nec7210/nec7210,sys/gpib_common,tms9914/tms9914,tnt4882/tnt4882%{?with_drivers_isa:,pc2/pc2_gpib}%{?with_drivers_usb:,agilent_82357a/agilent_82357a,lpvo_usb_gpib/lpvo_usb_gpib,ni_usb/ni_usb_gpib} -d kernel/gpib\ +%if %{_kernel_version_code} < %{_kernel_version_magic 5 10 0}\ +%if %{with drivers_usb}\ +%install_kernel_modules -D installed -m lpvo_usb_gpib/lpvo_usb_gpib -d kernel/gpib\ +%endif\ +%endif\ +%ifarch %{ix86}\ +%install_kernel_modules -D installed -m agilent_82350b/agilent_82350b,cb7210/cb7210,cec/cec_gpib,hp_82335/hp82335,ines/ines_gpib,nec7210/nec7210,sys/gpib_common,tms9914/tms9914,tnt4882/tnt4882%{?with_drivers_isa:,pc2/pc2_gpib}%{?with_drivers_usb:,agilent_82357a/agilent_82357a,ni_usb/ni_usb_gpib} -d kernel/gpib\ +%else\ +%install_kernel_modules -D installed -m agilent_82350b/agilent_82350b,cb7210/cb7210,cec/cec_gpib,hp_82335/hp82335,hp_82341/hp_82341,ines/ines_gpib,nec7210/nec7210,sys/gpib_common,tms9914/tms9914,tnt4882/tnt4882%{?with_drivers_isa:,pc2/pc2_gpib}%{?with_drivers_usb:,agilent_82357a/agilent_82357a,ni_usb/ni_usb_gpib} -d kernel/gpib\ +%endif\ cd ../..\ %{nil} @@ -252,48 +275,60 @@ cd ../..\ %prep %setup -q -n %{pname}-%{version} -%patch0 -p1 -%patch1 -p1 +%if %{with userspace} +tar xzf linux-gpib-user-%{version}.tar.gz +cd linux-gpib-user-%{version} %patch2 -p1 %patch3 -p1 %patch4 -p1 %patch5 -p1 -%patch6 -p1 - -# disable modules build by default, just install userspace header -echo 'SUBDIRS = gpib/include' > drivers/Makefile.am +#%patch6 -p1 +%patch10 -p1 +cd .. +%endif -# need to inject -I options before $(LINUXINCLUDE), the simplest way is to override CC -for f in drivers/gpib/*/Makefile ; do -echo 'override CC += $(EARLYCPPFLAGS)' >> $f -done +%if %{with kernel} +tar xzf linux-gpib-kernel-%{version}.tar.gz +cd linux-gpib-kernel-%{version} +%ifarch %{ix86} +%patch8 -p1 +%endif +%patch9 -p1 +%endif %build +%if %{with userspace} +cd linux-gpib-user-%{version} %{__libtoolize} -%{__aclocal} -I m4 +%{__aclocal} %{__autoconf} %{__autoheader} %{__automake} %if %{with guile} -CPPFLAGS="%{rpmcppflags} -I/usr/include/guile/2.0" +CPPFLAGS="%{rpmcppflags} -I/usr/include/guile/2.2" %endif %configure \ - %{?with_drivers_isa:--enable-isa} \ - %{?with_drivers_pcmcia:--enable-pcmcia} \ - %{!?with_docs:--disable-documentation} \ + --with-udev-libdir=/lib/udev \ + %{!?with_doc:--disable-documentation} \ %{!?with_guile:--disable-guile-binding} \ %{!?with_perl:--disable-perl-binding} \ %{!?with_php:--disable-php-binding} \ %{!?with_python:--disable-python-binding} \ %{?with_static_libs:--enable-static} \ - %{!?with_tcl:--disable-tcl-binding} \ - --with-linux-srcdir=%{_kernelsrcdir} + %{!?with_tcl:--disable-tcl-binding} -%if %{with userspace} %{__make} + +%if %{with python2} +cd language/python +%py_build +cd ../.. +%endif +cd .. %endif %if %{with kernel} +cd linux-gpib-kernel-%{version} %{expand:%build_kernel_packages} %endif @@ -302,25 +337,32 @@ rm -rf $RPM_BUILD_ROOT install -d $RPM_BUILD_ROOT%{_examplesdir} %if %{with kernel} +cd linux-gpib-kernel-%{version} %{expand:%install_kernel_packages} cp -a drivers/gpib/installed/* $RPM_BUILD_ROOT +cd .. %endif %if %{with userspace} +cd linux-gpib-user-%{version} %{__make} install \ DESTDIR=$RPM_BUILD_ROOT \ HOTPLUG_USB_CONF_DIR=/lib/udev \ UDEV_RULES_DIR=/lib/udev/rules.d \ USB_FIRMWARE_DIR=/lib/firmware +%if %{with python2} +cd language/python +%py_install +cd ../.. +%endif + %if %{with hotplug} # use udev paths as base and legacy hotplug as addon (not the opposite) install -d $RPM_BUILD_ROOT/etc/hotplug/usb %{__mv} $RPM_BUILD_ROOT/lib/udev/*.usermap $RPM_BUILD_ROOT/etc/hotplug/usb ln -snf /lib/udev/agilent_82357a $RPM_BUILD_ROOT/etc/hotplug/usb/agilent_82357a ln -snf /lib/udev/ni_usb_gpib $RPM_BUILD_ROOT/etc/hotplug/usb/ni_usb_gpib -%else -%{__rm} $RPM_BUILD_ROOT/lib/udev/*.usermap %endif # obsoleted by pkg-config @@ -368,9 +410,9 @@ cp -pr language/tcl/examples $RPM_BUILD_ROOT%{_examplesdir}/tcl-gpib-%{version} %endif %endif -%if %{with docs} +%if %{with doc} # packaged as %doc -%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/linux-gpib/html +%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/linux-gpib-user/html %endif %endif @@ -397,14 +439,16 @@ fi %if %{with userspace} %files %defattr(644,root,root,755) +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/gpib.conf %attr(755,root,root) %{_bindir}/ibterm %attr(755,root,root) %{_bindir}/ibtest %attr(755,root,root) %{_sbindir}/gpib_config +/lib/udev/rules.d/98-gpib-generic.rules /lib/udev/rules.d/99-agilent_82357a.rules -/lib/udev/rules.d/99-gpib-generic.rules /lib/udev/rules.d/99-ni_usb_gpib.rules -%attr(755,root,root) /lib/udev/agilent_82357a -%attr(755,root,root) /lib/udev/ni_usb_gpib +%attr(755,root,root) /lib/udev/gpib_udev_config +%attr(755,root,root) /lib/udev/gpib_udev_fxloader +%attr(755,root,root) /lib/udev/gpib_udevadm_wrapper %if %{with hotplug} %files hotplug @@ -417,7 +461,7 @@ fi %files libs %defattr(644,root,root,755) -%doc AUTHORS ChangeLog README README.HAMEG README.hp82335 TODO +%doc linux-gpib-user-%{version}/{AUTHORS,ChangeLog,README,README.HAMEG,README.hp82335,TODO} %attr(755,root,root) %{_libdir}/libgpib.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libgpib.so.0 @@ -443,7 +487,7 @@ fi %if %{with perl} %files -n perl-gpib %defattr(644,root,root,755) -%doc language/perl/{Changes,README} +%doc linux-gpib-user-%{version}/language/perl/{Changes,README} %{perl_vendorarch}/LinuxGpib.pm %dir %{perl_vendorarch}/auto/LinuxGpib %attr(755,root,root) %{perl_vendorarch}/auto/LinuxGpib/LinuxGpib.so @@ -460,27 +504,37 @@ fi %attr(755,root,root) %{php_extensiondir}/gpib_php.so %endif -%if %{with python} +%if %{with python2} %files -n python-gpib %defattr(644,root,root,755) -%doc language/python/README +%doc linux-gpib-user-%{version}/language/python/README %attr(755,root,root) %{py_sitedir}/gpib.so %{py_sitedir}/Gpib.py[co] %{py_sitedir}/gpib-1.0-py*.egg-info %endif +%if %{with python} +%files -n python3-gpib +%defattr(644,root,root,755) +%doc linux-gpib-user-%{version}/language/python/README +%attr(755,root,root) %{py3_sitedir}/gpib.cpython-*.so +%{py3_sitedir}/Gpib.py +%{py3_sitedir}/__pycache__/Gpib.cpython-*.py[co] +%{py3_sitedir}/gpib-1.0-py*.egg-info +%endif + %if %{with tcl} %files -n tcl-gpib %defattr(644,root,root,755) -%doc language/tcl/README +%doc linux-gpib-user-%{version}/language/tcl/README %attr(755,root,root) %{_libdir}/libgpib_tcl-%{version}.so %attr(755,root,root) %{_libdir}/libgpib_tcl.so %{_examplesdir}/tcl-gpib-%{version} %endif -%if %{with docs} +%if %{with doc} %files doc %defattr(644,root,root,755) -%doc doc/doc_html/* +%doc linux-gpib-user-%{version}/doc/doc_html/* %endif %endif