summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2014-06-14 02:47:41 +0000
committerMike Frysinger <vapier@gentoo.org>2014-06-14 02:47:41 +0000
commit9e16e7ed0113d0db9b66d73910a25ff9d33b54fc (patch)
tree777c61c6f9495fc8b3eebb66defe9be513cd2eac
parentAdd correct Changelog (diff)
downloadgentoo-2-9e16e7ed0113d0db9b66d73910a25ff9d33b54fc.tar.gz
gentoo-2-9e16e7ed0113d0db9b66d73910a25ff9d33b54fc.tar.bz2
gentoo-2-9e16e7ed0113d0db9b66d73910a25ff9d33b54fc.zip
Initial ebuild #426586.
(Portage version: 2.2.10/cvs/Linux x86_64, signed Manifest commit with key D2E96200)
-rw-r--r--sci-libs/libsigrok/ChangeLog12
-rw-r--r--sci-libs/libsigrok/files/libsigrok-0.3.0-configure-flags.patch169
-rw-r--r--sci-libs/libsigrok/files/libsigrok-0.3.0-no-check-linkage.patch30
-rw-r--r--sci-libs/libsigrok/libsigrok-0.3.0.ebuild65
-rw-r--r--sci-libs/libsigrok/libsigrok-9999.ebuild63
-rw-r--r--sci-libs/libsigrok/metadata.xml9
6 files changed, 348 insertions, 0 deletions
diff --git a/sci-libs/libsigrok/ChangeLog b/sci-libs/libsigrok/ChangeLog
new file mode 100644
index 000000000000..f63e05506cb2
--- /dev/null
+++ b/sci-libs/libsigrok/ChangeLog
@@ -0,0 +1,12 @@
+# ChangeLog for sci-libs/libsigrok
+# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/libsigrok/ChangeLog,v 1.1 2014/06/14 02:47:41 vapier Exp $
+
+*libsigrok-0.3.0 (14 Jun 2014)
+*libsigrok-9999 (14 Jun 2014)
+
+ 14 Jun 2014; Mike Frysinger <vapier@gentoo.org>
+ +files/libsigrok-0.3.0-configure-flags.patch,
+ +files/libsigrok-0.3.0-no-check-linkage.patch, +libsigrok-0.3.0.ebuild,
+ +libsigrok-9999.ebuild, +metadata.xml:
+ Initial ebuild #426586.
diff --git a/sci-libs/libsigrok/files/libsigrok-0.3.0-configure-flags.patch b/sci-libs/libsigrok/files/libsigrok-0.3.0-configure-flags.patch
new file mode 100644
index 000000000000..16e13349360c
--- /dev/null
+++ b/sci-libs/libsigrok/files/libsigrok-0.3.0-configure-flags.patch
@@ -0,0 +1,169 @@
+https://sourceforge.net/p/sigrok/mailman/message/32459490/
+
+From de8690fe8aad81f963f14cf1bd7d6e7013d9d747 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Fri, 13 Jun 2014 19:09:35 -0400
+Subject: [PATCH] add explicit configure flags for ftdi/serial/usb libraries
+
+This makes it a lot easier for distros to control this functionality.
+---
+ configure.ac | 118 +++++++++++++++++++++++++++++++++++++++--------------------
+ 1 file changed, 79 insertions(+), 39 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 496bc7a..f23e630 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -261,6 +261,18 @@ AC_ARG_ENABLE(zeroplus-logic-cube,
+ [HW_ZEROPLUS_LOGIC_CUBE="$enableval"],
+ [HW_ZEROPLUS_LOGIC_CUBE=$HW_ENABLED_DEFAULT])
+
++AC_ARG_ENABLE(libserialport,
++ AC_HELP_STRING([--disable-libserialport],
++ [disable libserialport support [default=detect]]))
++
++AC_ARG_ENABLE(libftdi,
++ AC_HELP_STRING([--disable-libftdi],
++ [disable libftdi support [default=detect]]))
++
++AC_ARG_ENABLE(libusb,
++ AC_HELP_STRING([--disable-libusb],
++ [disable libusb support [default=detect]]))
++
+ # Checks for libraries.
+
+ case "$host" in
+@@ -302,19 +314,28 @@ PKG_CHECK_MODULES([libzip], [libzip >= 0.10],
+
+ # libserialport is only needed for some hardware drivers. Disable the
+ # respective drivers if it is not found.
+-PKG_CHECK_MODULES([libserialport], [libserialport >= 0.1.0],
+- [have_libserialport="yes"; LIB_CFLAGS="$LIB_CFLAGS $libserialport_CFLAGS";
+- LIBS="$LIBS $libserialport_LIBS";
+- SR_PKGLIBS="$SR_PKGLIBS libserialport"],
+- [have_libserialport="no"; HW_AGILENT_DMM="no"; HW_APPA_55II="no";
++if test "x$enable_libserialport" != "xno"; then
++ PKG_CHECK_MODULES([libserialport], [libserialport >= 0.1.0],
++ [have_libserialport="yes"; LIB_CFLAGS="$LIB_CFLAGS $libserialport_CFLAGS";
++ LIBS="$LIBS $libserialport_LIBS";
++ SR_PKGLIBS="$SR_PKGLIBS libserialport"],
++ [have_libserialport="no"])
++ if test "x$enable_libserialport$have_libserialport" = "xyesno"; then
++ AC_MSG_ERROR([libserialport support requested, but it was not found])
++ fi
++else
++ have_libserialport="no"
++fi
++
++# Define HAVE_LIBSERIALPORT in config.h if we found libserialport.
++if test "x$have_libserialport" = "xno"; then
++ HW_AGILENT_DMM="no"; HW_APPA_55II="no";
+ HW_ATTEN_PPS3XXX="no"; HW_BRYMEN_DMM="no"; HW_CEM_DT_885X="no";
+ HW_CENTER_3XX="no"; HW_COLEAD_SLM="no"; HW_CONRAD_DIGI_35_CPU="no";
+ HW_FLUKE_DMM="no"; HW_GMC_MH_1X_2X="no"; HW_HAMEG_HMO="no";
+ HW_MIC_985XX="no"; HW_NORMA_DMM="no"; HW_OLS="no";
+- HW_SERIAL_DMM="no"; HW_TELEINFO="no"; HW_TONDAJ_SL_814="no"])
+-
+-# Define HAVE_LIBSERIALPORT in config.h if we found libserialport.
+-if test "x$have_libserialport" != "xno"; then
++ HW_SERIAL_DMM="no"; HW_TELEINFO="no"; HW_TONDAJ_SL_814="no";
++else
+ AC_DEFINE_UNQUOTED(HAVE_LIBSERIALPORT, [1],
+ [Specifies whether we have libserialport.])
+ fi
+@@ -340,43 +361,62 @@ fi
+
+ # libusb-1.0 is only needed for some hardware drivers. Disable the respective
+ # drivers if it is not found.
+-case "$host" in
+-*freebsd*)
+- # FreeBSD comes with an "integrated" libusb-1.0-style USB API.
+- # This means libusb-1.0 is always available, no need to check for it,
+- # and no need to (potentially) disable any drivers if it's not found.
++if test "x$enable_libusb" != "xno"; then
++ case "$host" in
++ *freebsd*)
++ # FreeBSD comes with an "integrated" libusb-1.0-style USB API.
++ # This means libusb-1.0 is always available, no need to check for it,
++ # and no need to (potentially) disable any drivers if it's not found.
++ have_libusb1_0="yes"
++ ;;
++ *)
++ PKG_CHECK_MODULES([libusb], [libusb-1.0 >= 1.0.16],
++ [have_libusb1_0="yes"; LIB_CFLAGS="$LIB_CFLAGS $libusb_CFLAGS";
++ LIBS="$LIBS $libusb_LIBS";
++ SR_PKGLIBS="$SR_PKGLIBS libusb-1.0"],
++ [have_libusb1_0="no"])
++ if test "x$enable_libusb$have_libusb1_0" = "xyesno"; then
++ AC_MSG_ERROR([libusb support requested, but it was not found])
++ fi
++ ;;
++ esac
++else
++ have_libusb1_0="no"
++fi
++
++# Define HAVE_LIBUSB_1_0 in config.h if we found libusb-1.0.
++if test "x$have_libusb1_0" = "xno"; then
++ HW_BRYMEN_BM86X="no"; HW_FX2LAFW="no";
++ HW_HANTEK_DSO="no"; HW_IKALOGIC_SCANALOGIC2="no";
++ HW_KECHENG_KC_330B="no"; HW_LASCAR_EL_USB="no";
++ HW_SYSCLK_LWLA="no"; HW_UNI_T_DMM="no";
++ HW_UNI_T_UT32X="no"; HW_VICTOR_DMM="no";
++ HW_ZEROPLUS_LOGIC_CUBE="no"; HW_SALEAE_LOGIC16="no";
++else
+ AC_DEFINE_UNQUOTED(HAVE_LIBUSB_1_0, [1],
+ [Specifies whether we have a libusb.h header.])
+- ;;
+-*)
+- PKG_CHECK_MODULES([libusb], [libusb-1.0 >= 1.0.16],
+- [have_libusb1_0="yes"; LIB_CFLAGS="$LIB_CFLAGS $libusb_CFLAGS";
+- LIBS="$LIBS $libusb_LIBS";
+- SR_PKGLIBS="$SR_PKGLIBS libusb-1.0"],
+- [have_libusb1_0="no"; HW_BRYMEN_BM86X="no"; HW_FX2LAFW="no";
+- HW_HANTEK_DSO="no"; HW_IKALOGIC_SCANALOGIC2="no";
+- HW_KECHENG_KC_330B="no"; HW_LASCAR_EL_USB="no";
+- HW_SYSCLK_LWLA="no"; HW_UNI_T_DMM="no";
+- HW_UNI_T_UT32X="no"; HW_VICTOR_DMM="no";
+- HW_ZEROPLUS_LOGIC_CUBE="no"; HW_SALEAE_LOGIC16="no"])
+-
+- # Define HAVE_LIBUSB_1_0 in config.h if we found libusb-1.0.
+- if test "x$have_libusb1_0" != "xno"; then
+- AC_DEFINE_UNQUOTED(HAVE_LIBUSB_1_0, [1],
+- [Specifies whether we have a libusb.h header.])
+- fi
+- ;;
+-esac
++fi
+
+ # USB + FX2 firmware helper code is only compiled in if libusb-1.0 was found.
+ AM_CONDITIONAL(NEED_USB, test "x$have_libusb1_0" != xno)
+
+ # libftdi is only needed for some hardware drivers. Disable them if not found.
+-PKG_CHECK_MODULES([libftdi], [libftdi >= 0.16],
+- [LIB_CFLAGS="$LIB_CFLAGS $libftdi_CFLAGS";
+- LIBS="$LIBS $libftdi_LIBS";
+- SR_PKGLIBS="$SR_PKGLIBS libftdi"],
+- [HW_ASIX_SIGMA="no"; HW_CHRONOVU_LA="no"; HW_IKALOGIC_SCANAPLUS="no"])
++if test "x$enable_libftdi" != "xno"; then
++ PKG_CHECK_MODULES([libftdi], [libftdi >= 0.16],
++ [have_libftdi="yes"; LIB_CFLAGS="$LIB_CFLAGS $libftdi_CFLAGS";
++ LIBS="$LIBS $libftdi_LIBS";
++ SR_PKGLIBS="$SR_PKGLIBS libftdi"],
++ [have_libftdi="no"])
++ if test "x$enable_libftdi$have_libftdi" = "xyesno"; then
++ AC_MSG_ERROR([libftdi support requested, but it was not found])
++ fi
++else
++ have_libftdi="no"
++fi
++
++if test "x$have_libftdi" = "xno"; then
++ HW_ASIX_SIGMA="no"; HW_CHRONOVU_LA="no"; HW_IKALOGIC_SCANAPLUS="no";
++fi
+
+ # The Check unit testing framework is optional. Disable if not found.
+ PKG_CHECK_MODULES([check], [check >= 0.9.4],
+--
+2.0.0
+
diff --git a/sci-libs/libsigrok/files/libsigrok-0.3.0-no-check-linkage.patch b/sci-libs/libsigrok/files/libsigrok-0.3.0-no-check-linkage.patch
new file mode 100644
index 000000000000..f638c47b196e
--- /dev/null
+++ b/sci-libs/libsigrok/files/libsigrok-0.3.0-no-check-linkage.patch
@@ -0,0 +1,30 @@
+https://sourceforge.net/p/sigrok/mailman/message/32459488/
+
+From 5326833697a73826babb6a43c74112da7368d2d6 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Fri, 13 Jun 2014 21:17:23 -0400
+Subject: [PATCH] do not add check to common cflags/libs
+
+Only the unittests use these flags, so don't go linking them in for
+the main library too.
+---
+ configure.ac | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index f23e630..d0654f1 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -420,8 +420,7 @@ fi
+
+ # The Check unit testing framework is optional. Disable if not found.
+ PKG_CHECK_MODULES([check], [check >= 0.9.4],
+- [have_check="yes"; LIB_CFLAGS="$LIB_CFLAGS $check_CFLAGS";
+- LIBS="$LIBS $check_LIBS"], [have_check="no"])
++ [have_check="yes"], [have_check="no"])
+ AM_CONDITIONAL(HAVE_CHECK, test x"$have_check" = "xyes")
+
+ # The OLS driver uses serial port file descriptors directly, and therefore
+--
+2.0.0
+
diff --git a/sci-libs/libsigrok/libsigrok-0.3.0.ebuild b/sci-libs/libsigrok/libsigrok-0.3.0.ebuild
new file mode 100644
index 000000000000..5bae43870f9d
--- /dev/null
+++ b/sci-libs/libsigrok/libsigrok-0.3.0.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/libsigrok/libsigrok-0.3.0.ebuild,v 1.1 2014/06/14 02:47:41 vapier Exp $
+
+EAPI="5"
+
+inherit eutils autotools
+
+if [[ ${PV} == "9999" ]]; then
+ EGIT_REPO_URI="git://sigrok.org/${PN}"
+ inherit git-2 autotools
+else
+ SRC_URI="http://sigrok.org/download/source/${PN}/${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="provide basic hardware drivers for logic analyzers and input/output file format support"
+HOMEPAGE="http://sigrok.org/"
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="ftdi serial static-libs test usb"
+
+# We also support librevisa, but that isn't in the tree ...
+LIB_DEPEND=">=dev-libs/glib-2.32.0[static-libs(+)]
+ >=dev-libs/libzip-0.8[static-libs(+)]
+ ftdi? ( >=dev-embedded/libftdi-0.16[static-libs(+)] )
+ serial? ( dev-libs/libserialport[static-libs(+)] )
+ usb? ( virtual/libusb:1[static-libs(+)] )"
+RDEPEND="!static-libs? ( ${LIB_DEPEND//\[static-libs(+)]} )
+ static-libs? ( ${LIB_DEPEND} )"
+DEPEND="${LIB_DEPEND//\[static-libs(+)]}
+ test? ( >=dev-libs/check-0.9.4 )
+ virtual/pkgconfig"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-0.3.0-configure-flags.patch
+ epatch "${FILESDIR}"/${PN}-0.3.0-no-check-linkage.patch
+ eautoreconf
+
+ # Deal with libftdi-0.x & libftdi-1.x changes.
+ if has_version '>=dev-embedded/libftdi-1' ; then
+ sed -i 's:libftdi >= 0.16:libftdi1 >= 0.16:g' configure || die
+ fi
+
+ # Fix implicit decl w/usleep.
+ sed -i '1i#include <unistd.h>' hardware/asix-sigma/asix-sigma.c || die
+}
+
+src_configure() {
+ econf \
+ $(use_enable ftdi libftdi) \
+ $(use_enable serial libserialport) \
+ $(use_enable usb libusb) \
+ $(use_enable static-libs static)
+}
+
+src_test() {
+ emake check
+}
+
+src_install() {
+ default
+ prune_libtool_files
+}
diff --git a/sci-libs/libsigrok/libsigrok-9999.ebuild b/sci-libs/libsigrok/libsigrok-9999.ebuild
new file mode 100644
index 000000000000..1b7e3b5fbbcc
--- /dev/null
+++ b/sci-libs/libsigrok/libsigrok-9999.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/libsigrok/libsigrok-9999.ebuild,v 1.1 2014/06/14 02:47:41 vapier Exp $
+
+EAPI="5"
+
+inherit eutils autotools
+
+if [[ ${PV} == "9999" ]]; then
+ EGIT_REPO_URI="git://sigrok.org/${PN}"
+ inherit git-2 autotools
+else
+ SRC_URI="http://sigrok.org/download/source/${PN}/${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="provide basic hardware drivers for logic analyzers and input/output file format support"
+HOMEPAGE="http://sigrok.org/"
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="ftdi serial static-libs test usb"
+
+# We also support librevisa, but that isn't in the tree ...
+LIB_DEPEND=">=dev-libs/glib-2.32.0[static-libs(+)]
+ >=dev-libs/libzip-0.8[static-libs(+)]
+ ftdi? ( >=dev-embedded/libftdi-0.16[static-libs(+)] )
+ serial? ( dev-libs/libserialport[static-libs(+)] )
+ usb? ( virtual/libusb:1[static-libs(+)] )"
+RDEPEND="!static-libs? ( ${LIB_DEPEND//\[static-libs(+)]} )
+ static-libs? ( ${LIB_DEPEND} )"
+DEPEND="${LIB_DEPEND//\[static-libs(+)]}
+ test? ( >=dev-libs/check-0.9.4 )
+ virtual/pkgconfig"
+
+src_prepare() {
+ [[ ${PV} == "9999" ]] && eautoreconf
+
+ # Deal with libftdi-0.x & libftdi-1.x changes.
+ if has_version '>=dev-embedded/libftdi-1' ; then
+ sed -i 's:libftdi >= 0.16:libftdi1 >= 0.16:g' configure || die
+ fi
+
+ # Fix implicit decl w/usleep.
+ sed -i '1i#include <unistd.h>' hardware/asix-sigma/asix-sigma.c || die
+}
+
+src_configure() {
+ econf \
+ $(use_enable ftdi libftdi) \
+ $(use_enable serial libserialport) \
+ $(use_enable usb libusb) \
+ $(use_enable static-libs static)
+}
+
+src_test() {
+ emake check
+}
+
+src_install() {
+ default
+ prune_libtool_files
+}
diff --git a/sci-libs/libsigrok/metadata.xml b/sci-libs/libsigrok/metadata.xml
new file mode 100644
index 000000000000..9b40b4fbcc3b
--- /dev/null
+++ b/sci-libs/libsigrok/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>dev-embedded</herd>
+<use>
+ <flag name='ftdi'>Enable drivers that need libftdi</flag>
+ <flag name='serial'>Enable drivers that are serial (RS232) based</flag>
+</use>
+</pkgmetadata>