summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas K. Hüttel <dilfridge@gentoo.org>2016-12-13 00:31:16 +0100
committerAndreas K. Hüttel <dilfridge@gentoo.org>2016-12-13 00:31:38 +0100
commit7088922c489acda561bb286dbf119c18c90debd2 (patch)
tree87dc36dd46d2df5ed52cdf482732e97501744d7c /sci-libs/linux-gpib
parentmedia-video/oxine: Fix building with GCC 5 (diff)
downloadgentoo-7088922c489acda561bb286dbf119c18c90debd2.tar.gz
gentoo-7088922c489acda561bb286dbf119c18c90debd2.tar.bz2
gentoo-7088922c489acda561bb286dbf119c18c90debd2.zip
sci-libs/linux-gpib: Version bump
Package-Manager: portage-2.3.3
Diffstat (limited to 'sci-libs/linux-gpib')
-rw-r--r--sci-libs/linux-gpib/Manifest1
-rw-r--r--sci-libs/linux-gpib/files/linux-gpib-4.0.3-reallydie.patch16
-rw-r--r--sci-libs/linux-gpib/linux-gpib-4.0.3.ebuild203
3 files changed, 220 insertions, 0 deletions
diff --git a/sci-libs/linux-gpib/Manifest b/sci-libs/linux-gpib/Manifest
index a69e2090fe48..bfb0482b6348 100644
--- a/sci-libs/linux-gpib/Manifest
+++ b/sci-libs/linux-gpib/Manifest
@@ -2,3 +2,4 @@ DIST gpib_firmware-2006-11-12.tar.gz 169357 SHA256 98380a8d12e6e34dccc0c1d82b48e
DIST linux-gpib-3.2.21-ctrl-c.patch.gz 10477 SHA256 697a460ea8515788765983afb5c27ad527e6ab1e75232133c572530643351916 SHA512 4b34ecbc5a3f3170337808397df19b9cf09d3fc8a53052fb560ae7b5336b946c6b1c76ba24b0ad66d4bb5a005902fe8599bb7e981c140a68046b9f14ed5268b3 WHIRLPOOL 5656ed7d4dafeff4b766f247c4f495444d271130cbad8bedaef9b761e14b57c09b46a7ccd5e3be5ff50934f48a88a987eb71f6997aafdcd4adc486c49b2c0c5d
DIST linux-gpib-3.2.21.tar.gz 1274505 SHA256 31fd86f4897239ffc55e0d4d850586d24d74144b604d6d39fd33dc59d28f7019 SHA512 539f7444e6bcd07d66cabc3abae9d40cdea3a84365bd69a4621149bc11b7b0e9826650d91d2a048d9780fab7db30005b08a4b91c77e7a26e036ed6f5adb6850b WHIRLPOOL 72a9c929d7e3b79c5c954fb6e41c4d9eb450595c6dccc877a3b47851e467e741b191a708ec3c018e4fe576e5677ffec5986970f83c020707bbbd8e2968e43153
DIST linux-gpib-4.0.2.tar.gz 1233294 SHA256 0a352a168d69ab564a2cc03ce7239370d944d187d6bc187697fb704c6e49d98f SHA512 20e504fa8e72c6c04b7cda70898cf520343d777825dfe976ea7fd11ee6aa4a8337c0badeec6c5c3c0bd20853d831802b0641c018817439677756654295ff65d6 WHIRLPOOL 8abc1afcd7010a6c585ca643c87813ab071b9a26a742d3ae3bb4349af17e16692d9f7d0b2a48c539f4c419108bcfc109e080ddc95fc8b1d28db560eab2544f74
+DIST linux-gpib-4.0.3.tar.gz 1311963 SHA256 6af5113978d179d2f281f5d779f235935371bdfbb15c6c7ca848bca5c3f17c4a SHA512 6eb65cae5220d3c7ca607eed5a641e8a68b422d0e76a787e767d3bffd0695672d5137d44a097483176e933ded5eb376ff57e3a61cddd62aceaa43192218c9cfe WHIRLPOOL f0df699fbdaa7d77abd114c8fef1b6ff3aacd67cc233a68f78b0db67b30baeab615beff89861ed47a70216e1fe0d73c518050f80c9d70d0c8199b2b159e068a1
diff --git a/sci-libs/linux-gpib/files/linux-gpib-4.0.3-reallydie.patch b/sci-libs/linux-gpib/files/linux-gpib-4.0.3-reallydie.patch
new file mode 100644
index 000000000000..e19f8d36755b
--- /dev/null
+++ b/sci-libs/linux-gpib/files/linux-gpib-4.0.3-reallydie.patch
@@ -0,0 +1,16 @@
+Index: drivers/Makefile.am
+===================================================================
+--- a/drivers/Makefile.am (revision 1602)
++++ b/drivers/Makefile.am (working copy)
+@@ -15,10 +15,8 @@
+
+ -include $(top_srcdir)/util/linux_flags/flags
+
+-#ignore errors from kernel's make modules in all-local, to avoid failure of make install
+-#on nfs filesystem with root_squash
+ all-local:
+- -$(MAKE) -C $(LINUX_SRCDIR) V=1 modules\
++ $(MAKE) -C $(LINUX_SRCDIR) V=1 modules\
+ CC="$(LINUX_CC) -I@abs_top_srcdir@ -I@abs_top_srcdir@/drivers/gpib/include -I@abs_top_srcdir@/include" \
+ SUBDIRS="$(GPIB_ABS_MODULE_SUBDIR)"
+
diff --git a/sci-libs/linux-gpib/linux-gpib-4.0.3.ebuild b/sci-libs/linux-gpib/linux-gpib-4.0.3.ebuild
new file mode 100644
index 000000000000..23703421e48b
--- /dev/null
+++ b/sci-libs/linux-gpib/linux-gpib-4.0.3.ebuild
@@ -0,0 +1,203 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit readme.gentoo-r1 versionator eutils linux-mod autotools perl-functions python-single-r1 toolchain-funcs udev user
+
+DESCRIPTION="Kernel module and driver library for GPIB (IEEE 488.2) hardware"
+HOMEPAGE="http://linux-gpib.sourceforge.net/"
+SRC_URI="mirror://sourceforge/linux-gpib/${P}.tar.gz
+ firmware? ( http://linux-gpib.sourceforge.net/firmware/gpib_firmware-2006-11-12.tar.gz )
+"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="isa pcmcia static debug guile perl php python tcl doc firmware"
+
+COMMONDEPEND="
+ 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}"
+DEPEND="${COMMONDEPEND}
+ virtual/pkgconfig
+ doc? ( app-text/docbook-sgml-utils )
+ perl? ( virtual/perl-ExtUtils-MakeMaker )"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.2.21-build.patch
+ "${FILESDIR}"/${PN}-3.2.16-perl.patch
+ "${FILESDIR}"/${PN}-4.0.3-reallydie.patch
+)
+
+pkg_setup () {
+ use perl && perl_set_version
+ use python && python_setup
+ linux-mod_pkg_setup
+
+ if kernel_is -lt 2 6 8; then
+ die "Kernel versions older than 2.6.8 are not supported."
+ fi
+
+ # https://sourceforge.net/tracker/?func=detail&aid=3285657&group_id=42378&atid=432940
+ if use pcmcia && kernel_is -ge 2 6 38; then
+ die "pcmcia support is broken on kernels newer 2.6.38"
+ fi
+}
+
+src_prepare () {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ set_arch_to_kernel
+ econf \
+ $(use_enable isa) \
+ $(use_enable pcmcia) \
+ $(use_enable static) \
+ $(use_enable debug driver-debug) \
+ $(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) \
+ --with-linux-srcdir=${KV_DIR}
+}
+
+src_compile() {
+ set_arch_to_kernel
+ FIRM_DIR=/usr/share/usb
+ emake \
+ DESTDIR="${D}" \
+ INSTALL_MOD_PATH="${D}" \
+ HOTPLUG_USB_CONF_DIR="${D}"/etc/hotplug/usb \
+ UDEV_RULES_DIR="${D}$(get_udevdir)"/rules.d \
+ USB_FIRMWARE_DIR="${D}"${FIRM_DIR} \
+ docdir=/usr/share/doc/${PF}/html
+}
+
+src_install() {
+ set_arch_to_kernel
+ FIRM_DIR=/usr/share/usb
+ emake \
+ DESTDIR="${D}" \
+ INSTALL_MOD_PATH="${D}" \
+ HOTPLUG_USB_CONF_DIR="${D}"/etc/hotplug/usb \
+ UDEV_RULES_DIR="${D}/$(get_udevdir)"/rules.d \
+ USB_FIRMWARE_DIR="${D}"${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
+ dodir /etc/pcmcia
+ insinto /etc/pcmcia
+ doins "${S}"/etc/pcmcia/*
+ fi
+
+ if use firmware; then
+ insinto "${FIRM_DIR}"/agilent_82357a
+ doins "${WORKDIR}"/gpib_firmware-2006-11-12/agilent_82357a/*
+
+ insinto "${FIRM_DIR}"/ni_gpib_usb_b
+ doins "${WORKDIR}"/gpib_firmware-2006-11-12/ni_gpib_usb_b/*
+
+ insinto /usr/share/linux-gpib/hp_82341
+ # do not install precompiled generate_firmware
+ doins "${WORKDIR}"/gpib_firmware-2006-11-12/hp_82341/{*.bin,README}
+ fi
+
+ DOC_CONTENTS="
+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_preinst () {
+ linux-mod_pkg_preinst
+ use perl && perl_set_version
+ enewgroup gpib
+}
+
+pkg_postinst () {
+ linux-mod_pkg_postinst
+ readme.gentoo_print_elog
+
+ local v
+ for v in ${REPLACING_VERSIONS}; do
+ if ! version_is_at_least 3.2.21-r1 ${v}; then
+ ewarn "sci-libs/linux-gpib-3.2.21-r1 introduces incompatible changes to the kernel"
+ ewarn "interface. You may need to reboot to make sure the newly built driver modules"
+ ewarn "are used (some of the driver modules cannot be unloaded)."
+ ewarn "If you do not do this, every gpib call will just result in an error message."
+ break
+ fi
+ done
+}