diff options
Diffstat (limited to 'sci-libs/linux-gpib')
-rw-r--r-- | sci-libs/linux-gpib/Manifest | 1 | ||||
-rw-r--r-- | sci-libs/linux-gpib/linux-gpib-4.3.2.ebuild | 178 |
2 files changed, 179 insertions, 0 deletions
diff --git a/sci-libs/linux-gpib/Manifest b/sci-libs/linux-gpib/Manifest index c499d53193a8..c04c9185c247 100644 --- a/sci-libs/linux-gpib/Manifest +++ b/sci-libs/linux-gpib/Manifest @@ -1,3 +1,4 @@ DIST gpib_firmware-2006-11-12.tar.gz 169357 BLAKE2B 05f1be78545e025d76e2b9819a5dcac5a6715dfbb6df5c6fbe8b78900adf8ca7b1c28db350674ff1dd9c77e24507e98b536ca1af8b558c9a46ef8c25034c9769 SHA512 164d6fcfb3af43933f0a16645276f7d527a7aa24ef311f6ae3dcd7f45c41f92c855cf221bc946772f43fc2f9524057abc34bbd7d805c89b33ed7e111bc6870af DIST linux-gpib-4.2.0.tar.gz 1431440 BLAKE2B 7b6adf562963e0785f960c072f3f3d67cb91df9090205d8fecb0dc3170d3a1ac3719732919bae112e06b47387499ffe49a0144e72caa27ba39c85c8b98e56786 SHA512 1505c2c04f16bf7e92b9dd474f09edd242520a96f9e4d8eea88ebd44d0a82d653055155c1bfcde69da5355d609d400e3cb682da8aae83f59f1e565307a3fc4a7 DIST linux-gpib-4.3.0.tar.gz 1375852 BLAKE2B e2daa444ddf4c0c34084f264247051d4ce1c8103d8ae5d91b02d4742131c1f92ded02775eb0f8b0ea29820e2ae7b61c3132c74084a876e86fbb4efaf11688773 SHA512 8db4eb6d606c68ffacc67988479684fec815fc552756a6c93466ef0dfc93368771bb551944e3afc31db83e72e464ec1fb289fdcf80b4a6be1617e734fe3b9d65 +DIST linux-gpib-4.3.2.tar.gz 1377406 BLAKE2B 57ec8b3788606ffb42d204ad0e2476c432bc82f929b1854c6a1d48c73f48a149716d05b13906b4597a4bf03e4c10a0ffe2c66e6de8cf9a5891b86c3d459713fc SHA512 bf9963d885e0c974f41eed96359501bd41c7d4f051026f64d835e52f1031f39e6bba6ce976a27e660a8b36087e56b81205206066c68b42db9a1d578d351a8f8b diff --git a/sci-libs/linux-gpib/linux-gpib-4.3.2.ebuild b/sci-libs/linux-gpib/linux-gpib-4.3.2.ebuild new file mode 100644 index 000000000000..91351386ba0b --- /dev/null +++ b/sci-libs/linux-gpib/linux-gpib-4.3.2.ebuild @@ -0,0 +1,178 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PYTHON_COMPAT=( python3_6 python3_7 ) + +inherit readme.gentoo-r1 autotools perl-functions python-single-r1 toolchain-funcs udev + +DESCRIPTION="Driver library for GPIB (IEEE 488.2) hardware" +HOMEPAGE="https://linux-gpib.sourceforge.io/" +SRC_URI="mirror://sourceforge/linux-gpib/${P}.tar.gz + firmware? ( https://linux-gpib.sourceforge.io/firmware/gpib_firmware-2006-11-12.tar.gz ) +" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~x86" +IUSE="pcmcia static guile perl php python tcl doc firmware" + +S="${WORKDIR}/${PN}-user-${PV}" + +COMMONDEPEND=" + sys-libs/readline:= + tcl? ( dev-lang/tcl:0= ) + guile? ( dev-scheme/guile:12 ) + perl? ( dev-lang/perl:= ) + php? ( dev-lang/php:= ) + python? ( ${PYTHON_DEPS} ) + firmware? ( sys-apps/fxload )" +RDEPEND="${COMMONDEPEND} + acct-group/gpib + ~sci-libs/linux-gpib-modules-${PV} +" +DEPEND="${COMMONDEPEND} + virtual/pkgconfig + doc? ( app-text/docbook-sgml-utils ) + perl? ( virtual/perl-ExtUtils-MakeMaker )" + +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +PATCHES=( + "${FILESDIR}"/${PN}-4.3.0-perl.patch +) + +pkg_setup() { + use perl && perl_set_version + use python && python_setup +} + +src_unpack() { + default + unpack "${WORKDIR}/${P}/${PN}-user-${PV}.tar.gz" +} + +src_prepare() { + default + eautoreconf +} + +src_configure() { + econf \ + $(use_enable static) \ + $(use_enable guile guile-binding) \ + $(use_enable perl perl-binding) \ + $(use_enable php php-binding) \ + $(use_enable python python-binding) \ + $(use_enable tcl tcl-binding) \ + $(use_enable doc documentation) +} + +src_compile() { + FIRM_DIR=/usr/share/usb + emake \ + DESTDIR="${D}" \ + INSTALL_MOD_PATH="${D}" \ + HOTPLUG_USB_CONF_DIR=/etc/hotplug/usb \ + UDEV_RULES_DIR="$(get_udevdir)"/rules.d \ + USB_FIRMWARE_DIR=${FIRM_DIR} \ + docdir=/usr/share/doc/${PF}/html +} + +src_install() { + FIRM_DIR=/usr/share/usb + emake \ + DESTDIR="${D}" \ + INSTALL_MOD_PATH="${D}" \ + HOTPLUG_USB_CONF_DIR=/etc/hotplug/usb \ + UDEV_RULES_DIR="$(get_udevdir)"/rules.d \ + USB_FIRMWARE_DIR=${FIRM_DIR} \ + docdir=/usr/share/doc/${PF}/html install + + if use perl; then + einfo "Installing perl module" + cd "${S}"/language/perl || die + DESTDIR=${D} emake install + perl_fix_packlist + perl_delete_emptybsdir + cd "${S}" || die + fi + + echo "KERNEL==\"gpib[0-9]*\", MODE=\"0660\", GROUP=\"gpib\"" >> 99-gpib.rules + udev_dorules 99-gpib.rules + + dodoc doc/linux-gpib.pdf ChangeLog AUTHORS README* NEWS + + insinto /etc + newins util/templates/gpib.conf gpib.conf + newins util/templates/gpib.conf gpib.conf.example + + if use pcmcia; then + insinto /etc/pcmcia + doins "${S}"/etc/pcmcia/* + fi + + # fix rules files + local f + find "${D}$(get_udevdir)"/rules.d -type f -print0 | while read -rd '' f ; do + grep -q "${D}" "${f}" && einfo "File ${f} contains a temporary path, fixing." + sed -i -e "s:${D}:/:g" "${f}" + done + + DOC_CONTENTS=" +As the udev rules were changed and refactored in this release it is +necessary to remove any manually installed pre-4.3.0 gpib udev rules files +in /etc/udev/rules.d/. The files to remove are: +\n + 99-agilent_82357a.rules\n + 99-gpib-generic.rules\n + 99-ni_usb_gpib.rules\n +\n +You need to run the 'gpib_config' utility to setup the driver before +you can use it. In order to do it automatically you can add to your +start script something like this (supposing the appropriate driver +is loaded on the startup): +\n + gpib_config --minor 0 +\n +To give a user access to the computer's gpib board you will have to add +them to the group 'gpib' or, you could change the permissions on the device +files /dev/gpib[0-15] to something you like better, using 'chmod' +\n +Edit /etc/gpib.conf to match your interface board, and any devices you wish +to open via ibfind(). See the documentation in /usr/share/linux-gpib/html for +more information. +\n +" + + if use pcmcia; then + DOC_CONTENTS+=' +For PCMCIA cards:\n +All files needed for a PCMCIA board were copied to /etc/pcmcia. +You may wish to edit the options passed to the gpib_config call in the +/etc/pcmcia/linux-gpib-pcmcia script. +You may need to send a SIGHUP signal to the cardmgr daemon to force it +to reload the files in /etc/pcmcia \(alternatively you could use your +pcmcia init.d script to restart the cardmgr, or you could just reboot\). +The driver module will be loaded as needed by the cardmgr. + +' + fi + + if use firmware; then + DOC_CONTENTS+=' +For Agilent \(HP\) 82341C and 82341D cards: +The firmware for these boards is uploaded by passing the appropriate +firmware file from /usr/share/linux-gpib/hp_82341 directory to +gpib_config using the -I or --init-data command line option. Example:\n +gpib_config --minor 0 --init-data /usr/share/linux-gpib/hp_82341/hp_82341c_fw.bin +' + fi + + readme.gentoo_create_doc +} + +pkg_postinst() { + readme.gentoo_print_elog +} |