]> git.pld-linux.org Git - packages/linux-gpib.git/commitdiff
- hopefully resolved udev/hotplug/firmwaredir packaging issues; added firmwaredir...
authorJakub Bogusz <qboosh@pld-linux.org>
Wed, 6 Jul 2016 15:46:30 +0000 (17:46 +0200)
committerJakub Bogusz <qboosh@pld-linux.org>
Wed, 6 Jul 2016 15:46:30 +0000 (17:46 +0200)
linux-gpib-firmwaredir.patch [new file with mode: 0644]
linux-gpib.spec

diff --git a/linux-gpib-firmwaredir.patch b/linux-gpib-firmwaredir.patch
new file mode 100644 (file)
index 0000000..ef3a4b1
--- /dev/null
@@ -0,0 +1,51 @@
+--- linux-gpib-4.0.3/usb/agilent_82357a/agilent_82357a.orig    2016-04-09 15:33:10.000000000 +0200
++++ linux-gpib-4.0.3/usb/agilent_82357a/agilent_82357a 2016-07-05 22:01:15.232112298 +0200
+@@ -1,7 +1,7 @@
+ #!/bin/sh
+ GPIB_CONFIG_OPTIONS="--minor 0"
+-DATADIR=/usr/share
++FIRMWAREDIR=/lib/firmware
+ FXLOAD=fxload
+ FXLOAD_OPTIONS=
+@@ -47,7 +47,7 @@
+ # 82357a without firmware
+ 957/7/*)
+-      FIRMWARE=$DATADIR/usb/agilent_82357a/82357a_fw.hex
++      FIRMWARE=$FIRMWAREDIR/agilent_82357a/82357a_fw.hex
+       ;;
+ # 82357b with firmware already loaded
+@@ -57,7 +57,7 @@
+ # 82357b without firmware
+ 957/518/*)
+-      FIRMWARE=$DATADIR/usb/agilent_82357a/measat_releaseX1.8.hex
++      FIRMWARE=$FIRMWAREDIR/agilent_82357a/measat_releaseX1.8.hex
+       FXLOAD_OPTIONS="-t fx2"
+       ;;
+--- linux-gpib-4.0.3/usb/ni_usb_gpib/ni_usb_gpib.orig  2016-04-09 15:33:10.000000000 +0200
++++ linux-gpib-4.0.3/usb/ni_usb_gpib/ni_usb_gpib       2016-07-05 22:01:43.015295116 +0200
+@@ -1,7 +1,7 @@
+ #!/bin/sh
+ GPIB_CONFIG_OPTIONS="--minor 0"
+-DATADIR=/usr/share
++FIRMWAREDIR=/lib/firmware
+ FXLOAD=fxload
+ FXLOAD_OPTIONS="-t fx"
+@@ -48,8 +48,8 @@
+ # ni-usb-b or kusb-488 without firmware
+ 3923/702b/* | 3923/713b/*)
+-      FIRMWARE=$DATADIR/usb/ni_usb_gpib/niusbb_firmware.hex
+-      SS_LOADER=$DATADIR/usb/ni_usb_gpib/niusbb_loader.hex
++      FIRMWARE=$FIRMWAREDIR/ni_usb_gpib/niusbb_firmware.hex
++      SS_LOADER=$FIRMWAREDIR/ni_usb_gpib/niusbb_loader.hex
+       ;;
+ # ni-usb-hs
index a068b3604a167b8aa474a77f0d9ad4aba800b900..b771b5be954b06a7e2cc8bdf857c3ac38a98e109 100644 (file)
@@ -1,5 +1,5 @@
 # TODO:
 # TODO:
-# - resolve udev vs hotplug issues (use /lib/udev/rules.d, don't require /etc/hotplug dir with udev)
+# - where to get firmware from?
 # - guile 2 support
 # - PHP 7 support
 #
 # - guile 2 support
 # - PHP 7 support
 #
@@ -9,6 +9,7 @@
 %bcond_without verbose         # verbose modules build (V=1)
 
 %bcond_without docs            # documentation build
 %bcond_without verbose         # verbose modules build (V=1)
 
 %bcond_without docs            # documentation build
+%bcond_with    hotplug         # legacy hotplug support
 %bcond_without static_libs     # static library
 %bcond_with    guile           # guile binding
 %bcond_without perl            # Perl binding
 %bcond_without static_libs     # static library
 %bcond_with    guile           # guile binding
 %bcond_without perl            # Perl binding
@@ -30,6 +31,7 @@ Patch0:               %{name}-include_file.patch
 Patch1:                %{name}-destdir.patch
 Patch2:                %{name}-python.patch
 Patch3:                %{name}-perl.patch
 Patch1:                %{name}-destdir.patch
 Patch2:                %{name}-python.patch
 Patch3:                %{name}-perl.patch
+Patch4:                %{name}-firmwaredir.patch
 URL:           http://linux-gpib.sourceforge.net/
 BuildRequires: autoconf >= 2.50
 BuildRequires: automake
 URL:           http://linux-gpib.sourceforge.net/
 BuildRequires: autoconf >= 2.50
 BuildRequires: automake
@@ -58,6 +60,19 @@ The Linux GPIB package provides support for GPIB (IEEE 488) hardware.
 %description -l pl.UTF-8
 Pakiet Linux GPIB służy do obsługi sprzętu GPIB (IEEE 488).
 
 %description -l pl.UTF-8
 Pakiet Linux GPIB służy do obsługi sprzętu GPIB (IEEE 488).
 
+%package hotplug
+Summary:       Linux GPIB support for legacy USB hotplug
+Summary(pl.UTF-8):     Obsługa Linux GPIB dla starego systemu hotplug USB
+Group:         Applications/System
+Requires:      %{name} = %{version}-%{release}
+Requires:      hotplug
+
+%description hotplug
+Linux GPIB support for legacy USB hotplug.
+
+%description hotplug -l pl.UTF-8
+Obsługa Linux GPIB dla starego systemu hotplug USB.
+
 %package libs
 Summary:       Shared GPIB library
 Summary(pl.UTF-8):     Biblioteka współdzielona GPIB
 %package libs
 Summary:       Shared GPIB library
 Summary(pl.UTF-8):     Biblioteka współdzielona GPIB
@@ -190,6 +205,7 @@ cd drivers/gpib\
 %patch1 -p1
 %patch2 -p1
 %patch3 -p1
 %patch1 -p1
 %patch2 -p1
 %patch3 -p1
+%patch4 -p1
 
 # disable modules build by default, just install userspace header
 echo 'SUBDIRS = gpib/include' > drivers/Makefile.am
 
 # disable modules build by default, just install userspace header
 echo 'SUBDIRS = gpib/include' > drivers/Makefile.am
@@ -238,7 +254,15 @@ cp -a drivers/gpib/installed/* $RPM_BUILD_ROOT
 
 %if %{with userspace}
 %{__make} install \
 
 %if %{with userspace}
 %{__make} install \
-       DESTDIR=$RPM_BUILD_ROOT
+       DESTDIR=$RPM_BUILD_ROOT \
+       HOTPLUG_USB_CONF_DIR=/lib/udev \
+       UDEV_RULES_DIR=/lib/udev/rules.d \
+       USB_FIRMWARE_DIR=/lib/firmware
+# 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
 
 # obsoleted by pkg-config
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libgpib.la
 
 # obsoleted by pkg-config
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libgpib.la
@@ -280,18 +304,28 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_bindir}/ibterm
 %attr(755,root,root) %{_bindir}/ibtest
 %attr(755,root,root) %{_sbindir}/gpib_config
 %attr(755,root,root) %{_bindir}/ibterm
 %attr(755,root,root) %{_bindir}/ibtest
 %attr(755,root,root) %{_sbindir}/gpib_config
-# TODO: move to /lib/udev/rules.d
-/etc/udev/rules.d/99-agilent_82357a.rules
-/etc/udev/rules.d/99-gpib-generic.rules
-/etc/udev/rules.d/99-ni_usb_gpib.rules
-# TODO: paths to fix (scripts used also in udev .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
+%dir /lib/firmware/agilent_82357a
+# TODO:
+#/lib/firmware/agilent_82357a/82357a_fw.hex
+#/lib/firmware/agilent_82357a/measat_releaseX1.8.hex
+%dir /lib/firmware/ni_usb_gpib
+# TODO:
+#/lib/firmware/ni_usb_gpib/niusbb_firmware.hex
+#/lib/firmware/ni_usb_gpib/niusbb_loader.hex
+
+%if %{with hotplug}
+%files hotplug
+%defattr(644,root,root,755)
 %attr(755,root,root) /etc/hotplug/usb/agilent_82357a
 %attr(755,root,root) /etc/hotplug/usb/ni_usb_gpib
 /etc/hotplug/usb/agilent_82357a.usermap
 /etc/hotplug/usb/ni_usb_gpib.usermap
 %attr(755,root,root) /etc/hotplug/usb/agilent_82357a
 %attr(755,root,root) /etc/hotplug/usb/ni_usb_gpib
 /etc/hotplug/usb/agilent_82357a.usermap
 /etc/hotplug/usb/ni_usb_gpib.usermap
-# /lib/firmware/...; and where are the files?
-%dir %{_datadir}/usb/agilent_82357a
-%dir %{_datadir}/usb/ni_usb_gpib
+%endif
 
 %files libs
 %defattr(644,root,root,755)
 
 %files libs
 %defattr(644,root,root,755)
This page took 0.162043 seconds and 4 git commands to generate.