summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sci-libs/libsigrok')
-rw-r--r--sci-libs/libsigrok/Manifest2
-rw-r--r--sci-libs/libsigrok/files/libsigrok-0.5.2-ruby-swig-docs.patch63
-rw-r--r--sci-libs/libsigrok/files/libsigrok-0.5.2-swig-4.patch37
-rw-r--r--sci-libs/libsigrok/libsigrok-0.4.0.ebuild90
-rw-r--r--sci-libs/libsigrok/libsigrok-0.5.1.ebuild101
-rw-r--r--sci-libs/libsigrok/libsigrok-0.5.2.ebuild71
-rw-r--r--sci-libs/libsigrok/libsigrok-9999.ebuild64
7 files changed, 185 insertions, 243 deletions
diff --git a/sci-libs/libsigrok/Manifest b/sci-libs/libsigrok/Manifest
index 5bd8440632e5..a25f3c7b87d3 100644
--- a/sci-libs/libsigrok/Manifest
+++ b/sci-libs/libsigrok/Manifest
@@ -1,4 +1,2 @@
DIST libsigrok-0.3.0.tar.gz 924503 BLAKE2B 132cc952b7314e11034100973f1086d17515fb7b1eb3792506569211fe05e9f35b113fceaff7c0468ad9be0bbcac0251ae63ae856f1393c51e743983e60886df SHA512 b94e8a8da1346f9ab267fd693975411243f2cb016e48ec05f4ad88a8a1dfe5ed6f5ad4ac4bf0e94dc551dc92cd70d2719983e21abaa4811693fb28a27bf74550
-DIST libsigrok-0.4.0.tar.gz 1387329 BLAKE2B 8d1578c1f84c84af54f0e6c97bcdcec6d183a80170d0b19aa44c4015dac3c418e1a1e304b42b12be3f905a3887f95d2ecc9644aeb2a81a961e09438e380ec70b SHA512 5963c1a44cf351a38d9434f89a15b20d36c7196a78464c302c65ab262bcdb2f26274c7fabf01174757e1f9a367497b9721578ebf802f75ef97ee71ff3dade1e0
-DIST libsigrok-0.5.1.tar.gz 1664813 BLAKE2B b5765e1057ee4411ef2f83fa73473429bc8f84653f1c7761af3c1280decc2fcb1d3c68d8f92f7e77b85f1fcda74cf6066e5bf56c0da2de4b28148b920b94e0da SHA512 48337fc4625dc0abc162ae54e04ce091047835aa1e49ba1ab84542805008d1ff5646b143fde57e317f3b34514c0e6d4dcb7b1c5944f3f16bdef1a7169edc3517
DIST libsigrok-0.5.2.tar.gz 1779465 BLAKE2B fc6fdde1054e9ac50bc42249c34b3dbfff1e89d77f0db5a8762e52fcf2ea5ea69b2defcf1cde4ed7b1edd1e21770002ed661a470c8d666904daa48a84a2bbfc5 SHA512 cf673dad6280302d69050c29490621f66c6d6a73932d019a53ec3501316d3f2e23e7667a04f866dbe6ed73f86a63de73d2173e2b6cea563631d705e06f887092
diff --git a/sci-libs/libsigrok/files/libsigrok-0.5.2-ruby-swig-docs.patch b/sci-libs/libsigrok/files/libsigrok-0.5.2-ruby-swig-docs.patch
new file mode 100644
index 000000000000..808227a2fffb
--- /dev/null
+++ b/sci-libs/libsigrok/files/libsigrok-0.5.2-ruby-swig-docs.patch
@@ -0,0 +1,63 @@
+From bae9308ec157378bd22ce4f4a0226f1e7ef23594 Mon Sep 17 00:00:00 2001
+From: Anatol Pomozov <anatol.pomozov@gmail.com>
+Date: Mon, 8 Jun 2020 20:46:44 -0700
+Subject: [PATCH] Fix ruby SWIG bindings generation
+
+bindings/swig/doc.py generates a swig interface file for ruby bindings
+that includes docstrings with comments braces ( /* and */ ) like this:
+
+ %feature("docstring") sigrok::Channel::type "/* Type of this channel. */\n";
+ %feature("docstring") sigrok::Channel::enabled "/* Enabled status of this channel. */\n";
+
+SWIG generates *.cxx and adds its own braces to the docstring:
+
+/*/* Document-class: Sigrok::Error
+Exception thrown when an error code is returned by any libsigrok call. */
+*/
+
+this causes compilation error for Ruby bindings.
+
+To fix the error we should not add extra braces to the docstring.
+With this patch libsigrok compiles fine with with ruby 2.7 and swig 4.0.2.
+
+Fixes bug #1526
+
+Signed-off-by: Anatol Pomozov <anatol.pomozov@gmail.com>
+---
+ bindings/swig/doc.py | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/bindings/swig/doc.py b/bindings/swig/doc.py
+index e8767af8..182f5477 100644
+--- a/bindings/swig/doc.py
++++ b/bindings/swig/doc.py
+@@ -46,7 +46,7 @@ for compound in index.findall('compound'):
+ if language == 'python':
+ print('%%feature("docstring") %s "%s";' % (class_name, brief))
+ elif language == 'ruby':
+- print('%%feature("docstring") %s "/* Document-class: %s\\n%s */\\n";' % (class_name, class_name.replace("sigrok", "Sigrok", 1), brief))
++ print('%%feature("docstring") %s "Document-class: %s\\n%s\\n";' % (class_name, class_name.replace("sigrok", "Sigrok", 1), brief))
+ elif language == 'java':
+ print('%%typemap(javaclassmodifiers) %s "/** %s */\npublic class"' % (
+ class_name, brief))
+@@ -77,10 +77,10 @@ for compound in index.findall('compound'):
+ for name, desc in parameters.items()]) + '";')
+ if language == 'ruby' and kind == 'public-func':
+ print(str.join('\n', [
+- '%%feature("docstring") %s::%s "/* %s' % (
++ '%%feature("docstring") %s::%s "%s' % (
+ class_name, member_name, brief)] + [
+ '@param %s %s' % (name, desc)
+- for name, desc in parameters.items()]) + ' */\\n";')
++ for name, desc in parameters.items()]) + '\\n";')
+ elif language == 'java' and kind == 'public-func':
+ print(str.join('\n', [
+ '%%javamethodmodifiers %s::%s "/** %s' % (
+@@ -111,4 +111,4 @@ for compound in index.findall('compound'):
+ print('%}')
+ elif language == 'ruby' and constants:
+ for member_name, brief in constants:
+- print('%%feature("docstring") %s::%s "/* %s */\\n";' % (class_name, member_name, brief))
++ print('%%feature("docstring") %s::%s "%s\\n";' % (class_name, member_name, brief))
+--
+2.27.0
diff --git a/sci-libs/libsigrok/files/libsigrok-0.5.2-swig-4.patch b/sci-libs/libsigrok/files/libsigrok-0.5.2-swig-4.patch
new file mode 100644
index 000000000000..3c5dd85a5100
--- /dev/null
+++ b/sci-libs/libsigrok/files/libsigrok-0.5.2-swig-4.patch
@@ -0,0 +1,37 @@
+From e803574173bdac8a7f33085a648c29eaf248a394 Mon Sep 17 00:00:00 2001
+From: Uwe Hermann <uwe@hermann-uwe.de>
+Date: Sat, 4 Apr 2020 21:54:13 +0200
+Subject: [PATCH 1/1] bindings/java: Fix build issue with SWIG 4.x.
+
+Tested with SWIG 3.x and SWIG 4.x.
+
+This fixes bug #1527.
+---
+ bindings/java/org/sigrok/core/classes/classes.i | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/bindings/java/org/sigrok/core/classes/classes.i b/bindings/java/org/sigrok/core/classes/classes.i
+index 75793b25..e953fe5d 100644
+--- a/bindings/java/org/sigrok/core/classes/classes.i
++++ b/bindings/java/org/sigrok/core/classes/classes.i
+@@ -94,10 +94,18 @@ VECTOR(std::shared_ptr<sigrok::HardwareDevice>, HardwareDevice)
+ "java.util.Map<JKey, JValue>"
+
+ %typemap(javain,
++/* SWIG 4.0.0 changed the std::map wrappers in an incompatible way. */
++#if SWIG_VERSION >= 0x040000
++ pre=" $javaclassname temp$javainput = new $javaclassname();
++ for (java.util.Map.Entry<JKey, JValue> entry : $javainput.entrySet())
++ temp$javainput.put(entry.getKey(), entry.getValue());",
++ pgcppname="temp$javainput")
++#else
+ pre=" $javaclassname temp$javainput = new $javaclassname();
+ for (java.util.Map.Entry<JKey, JValue> entry : $javainput.entrySet())
+ temp$javainput.set(entry.getKey(), entry.getValue());",
+ pgcppname="temp$javainput")
++#endif
+ std::map< CKey, CValue > "$javaclassname.getCPtr(temp$javainput)"
+
+ %typemap(javaout) std::map< CKey, CValue > {
+--
+2.24.0.rc2
diff --git a/sci-libs/libsigrok/libsigrok-0.4.0.ebuild b/sci-libs/libsigrok/libsigrok-0.4.0.ebuild
deleted file mode 100644
index df9318757a57..000000000000
--- a/sci-libs/libsigrok/libsigrok-0.4.0.ebuild
+++ /dev/null
@@ -1,90 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-PYTHON_COMPAT=( python3_6 )
-
-inherit eutils python-single-r1 java-pkg-opt-2 ltprune
-
-if [[ ${PV} == "9999" ]]; then
- EGIT_REPO_URI="git://sigrok.org/${PN}"
- inherit git-r3 autotools
-else
- SRC_URI="https://sigrok.org/download/source/${PN}/${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-DESCRIPTION="basic hardware drivers for logic analyzers and input/output file format support"
-HOMEPAGE="https://sigrok.org/wiki/Libsigrok"
-
-LICENSE="GPL-3"
-SLOT="0/3"
-IUSE="cxx ftdi java parport python serial static-libs test usb"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="java? ( cxx ) python? ( cxx ${PYTHON_REQUIRED_USE} )"
-
-# 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(+)]
- cxx? ( dev-cpp/glibmm:2[static-libs(+)] )
- python? (
- ${PYTHON_DEPS}
- $(python_gen_cond_dep '
- >=dev-python/pygobject-3.0.0[${PYTHON_MULTI_USEDEP}]
- ')
- )
- ftdi? ( >=dev-embedded/libftdi-0.16:=[static-libs(+)] )
- parport? ( sys-libs/libieee1284[static-libs(+)] )
- serial? ( >=dev-libs/libserialport-0.1.1[static-libs(+)] )
- usb? ( virtual/libusb:1[static-libs(+)] )"
-RDEPEND="!static-libs? ( ${LIB_DEPEND//\[static-libs(+)]} )
- static-libs? ( ${LIB_DEPEND} )
- java? ( >=virtual/jre-1.4 )"
-DEPEND="${LIB_DEPEND//\[static-libs(+)]}
- test? ( >=dev-libs/check-0.9.4 )
- cxx? ( app-doc/doxygen )
- java? (
- >=dev-lang/swig-3.0.6
- >=virtual/jdk-1.4
- )
- python? (
- $(python_gen_cond_dep '
- dev-python/setuptools[${PYTHON_MULTI_USEDEP}]
- dev-python/numpy[${PYTHON_MULTI_USEDEP}]
- ')
- >=dev-lang/swig-3.0.6
- )
- virtual/pkgconfig"
-
-pkg_setup() {
- use python && python-single-r1_pkg_setup
- java-pkg-opt-2_pkg_setup
-}
-
-src_prepare() {
- [[ ${PV} == "9999" ]] && eautoreconf
- eapply_user
-}
-
-src_configure() {
- econf \
- $(use_with ftdi libftdi) \
- $(use_with parport libieee1284) \
- $(use_with serial libserialport) \
- $(use_with usb libusb) \
- $(use_enable cxx) \
- $(use_enable java) \
- $(use_enable python) \
- --disable-ruby \
- $(use_enable static-libs static)
-}
-
-src_test() {
- emake check
-}
-
-src_install() {
- default
- prune_libtool_files
-}
diff --git a/sci-libs/libsigrok/libsigrok-0.5.1.ebuild b/sci-libs/libsigrok/libsigrok-0.5.1.ebuild
deleted file mode 100644
index 078e9f5d9ab5..000000000000
--- a/sci-libs/libsigrok/libsigrok-0.5.1.ebuild
+++ /dev/null
@@ -1,101 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-PYTHON_COMPAT=( python3_{6,7} )
-
-inherit eutils gnome2-utils python-single-r1 java-pkg-opt-2 ltprune udev xdg-utils
-
-if [[ ${PV} == "9999" ]]; then
- EGIT_REPO_URI="git://sigrok.org/${PN}"
- inherit git-r3 autotools
-else
- SRC_URI="https://sigrok.org/download/source/${PN}/${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-DESCRIPTION="basic hardware drivers for logic analyzers and input/output file format support"
-HOMEPAGE="https://sigrok.org/wiki/Libsigrok"
-
-LICENSE="GPL-3"
-SLOT="0/4"
-IUSE="cxx ftdi java parport python serial static-libs test +udev usb"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="java? ( cxx ) python? ( cxx ${PYTHON_REQUIRED_USE} )"
-
-# 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(+)]
- cxx? ( dev-cpp/glibmm:2[static-libs(+)] )
- python? (
- ${PYTHON_DEPS}
- $(python_gen_cond_dep '
- >=dev-python/pygobject-3.0.0[${PYTHON_MULTI_USEDEP}]
- ')
- )
- ftdi? ( >=dev-embedded/libftdi-0.16:=[static-libs(+)] )
- parport? ( sys-libs/libieee1284[static-libs(+)] )
- serial? ( >=dev-libs/libserialport-0.1.1[static-libs(+)] )
- usb? ( virtual/libusb:1[static-libs(+)] )"
-RDEPEND="!static-libs? ( ${LIB_DEPEND//\[static-libs(+)]} )
- static-libs? ( ${LIB_DEPEND} )
- java? ( >=virtual/jre-1.4 )"
-DEPEND="${LIB_DEPEND//\[static-libs(+)]}
- test? ( >=dev-libs/check-0.9.4 )
- cxx? ( app-doc/doxygen )
- java? (
- >=dev-lang/swig-3.0.6
- >=virtual/jdk-1.4
- )
- python? (
- $(python_gen_cond_dep '
- dev-python/setuptools[${PYTHON_MULTI_USEDEP}]
- dev-python/numpy[${PYTHON_MULTI_USEDEP}]
- ')
- >=dev-lang/swig-3.0.6
- )
- virtual/pkgconfig"
-
-pkg_setup() {
- use python && python-single-r1_pkg_setup
- java-pkg-opt-2_pkg_setup
-}
-
-src_prepare() {
- [[ ${PV} == "9999" ]] && eautoreconf
- eapply_user
-}
-
-src_configure() {
- econf \
- $(use_with ftdi libftdi) \
- $(use_with parport libieee1284) \
- $(use_with serial libserialport) \
- $(use_with usb libusb) \
- $(use_enable cxx) \
- $(use_enable java) \
- $(use_enable python) \
- --disable-ruby \
- $(use_enable static-libs static)
-}
-
-src_test() {
- emake check
-}
-
-src_install() {
- default
- use udev && udev_dorules contrib/*.rules
- prune_libtool_files
-}
-
-pkg_postinst() {
- gnome2_icon_cache_update
- xdg_mimeinfo_database_update
-}
-
-pkg_postrm() {
- gnome2_icon_cache_update
- xdg_mimeinfo_database_update
-}
diff --git a/sci-libs/libsigrok/libsigrok-0.5.2.ebuild b/sci-libs/libsigrok/libsigrok-0.5.2.ebuild
index 49ca96068ac4..7e3111fc54d1 100644
--- a/sci-libs/libsigrok/libsigrok-0.5.2.ebuild
+++ b/sci-libs/libsigrok/libsigrok-0.5.2.ebuild
@@ -3,13 +3,13 @@
EAPI="6"
-PYTHON_COMPAT=( python3_{6,7} )
-USE_RUBY="ruby26 ruby25 ruby24"
+PYTHON_COMPAT=( python3_{6,7,8} )
+USE_RUBY="ruby26 ruby25"
RUBY_OPTIONAL="yes"
-inherit eutils gnome2-utils python-r1 java-pkg-opt-2 ltprune ruby-ng udev xdg-utils
+inherit python-r1 java-pkg-opt-2 ruby-ng udev xdg-utils
-if [[ ${PV} == "9999" ]]; then
+if [[ ${PV} == *9999* ]]; then
EGIT_REPO_URI="git://sigrok.org/${PN}"
inherit git-r3 autotools
else
@@ -17,56 +17,75 @@ else
KEYWORDS="~amd64 ~x86"
fi
-DESCRIPTION="basic hardware drivers for logic analyzers and input/output file format support"
+DESCRIPTION="Basic hardware drivers for logic analyzers and input/output file format support"
HOMEPAGE="https://sigrok.org/wiki/Libsigrok"
LICENSE="GPL-3"
SLOT="0/4"
-IUSE="cxx ftdi java parport python ruby serial static-libs +udev test usb"
+IUSE="+cxx ftdi java parport python ruby serial static-libs test +udev usb"
+REQUIRED_USE="java? ( cxx )
+ python? ( cxx ${PYTHON_REQUIRED_USE} )
+ ruby? ( cxx || ( $(ruby_get_use_targets) ) )"
+
RESTRICT="!test? ( test )"
-REQUIRED_USE="java? ( cxx ) python? ( cxx ${PYTHON_REQUIRED_USE} ) ruby? ( cxx || ( $(ruby_get_use_targets) ) )"
# We also support librevisa, but that isn't in the tree ...
-LIB_DEPEND=">=dev-libs/glib-2.32.0[static-libs(+)]
+LIB_DEPEND="
+ >=dev-libs/glib-2.32.0[static-libs(+)]
>=dev-libs/libzip-0.8:=[static-libs(+)]
cxx? ( dev-cpp/glibmm:2[static-libs(+)] )
- python? ( ${PYTHON_DEPS} >=dev-python/pygobject-3.0.0[${PYTHON_USEDEP}] )
- ruby? ( $(ruby_implementations_depend) )
ftdi? ( >=dev-embedded/libftdi-0.16:=[static-libs(+)] )
parport? ( sys-libs/libieee1284[static-libs(+)] )
+ python? (
+ ${PYTHON_DEPS}
+ >=dev-python/pygobject-3.0.0[${PYTHON_USEDEP}]
+ )
+ ruby? ( $(ruby_implementations_depend) )
serial? ( >=dev-libs/libserialport-0.1.1[static-libs(+)] )
- usb? ( virtual/libusb:1[static-libs(+)] )"
-RDEPEND="!static-libs? ( ${LIB_DEPEND//\[static-libs(+)]} )
+ usb? ( virtual/libusb:1[static-libs(+)] )
+"
+RDEPEND="
+ java? ( >=virtual/jre-1.4 )
+ !static-libs? ( ${LIB_DEPEND//\[static-libs(+)]} )
static-libs? ( ${LIB_DEPEND} )
- java? ( >=virtual/jre-1.4 )"
+"
DEPEND="${LIB_DEPEND//\[static-libs(+)]}
- test? ( >=dev-libs/check-0.9.4 )
cxx? ( app-doc/doxygen )
java? (
>=dev-lang/swig-3.0.6
>=virtual/jdk-1.4
)
python? (
- dev-python/setuptools[${PYTHON_USEDEP}]
- dev-python/numpy[${PYTHON_USEDEP}]
>=dev-lang/swig-3.0.6
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/setuptools[${PYTHON_USEDEP}]
)
ruby? ( >=dev-lang/swig-3.0.8 )
- virtual/pkgconfig"
+ test? ( >=dev-libs/check-0.9.4 )
+ virtual/pkgconfig
+"
S="${WORKDIR}"/${P}
+PATCHES=(
+ # https://sigrok.org/bugzilla/show_bug.cgi?id=1527
+ "${FILESDIR}/${P}-swig-4.patch"
+ # https://sigrok.org/bugzilla/show_bug.cgi?id=1526
+ "${FILESDIR}/${P}-ruby-swig-docs.patch" # bug 705074
+)
+
pkg_setup() {
+ use python && python_setup
use ruby && ruby-ng_pkg_setup
java-pkg-opt-2_pkg_setup
}
src_unpack() {
- [[ ${PV} == "9999" ]] && git-r3_src_unpack || default
+ [[ ${PV} == *9999* ]] && git-r3_src_unpack || default
}
sigrok_src_prepare() {
- [[ ${PV} == "9999" ]] && eautoreconf
+ [[ ${PV} == *9999* ]] && eautoreconf
}
each_ruby_prepare() {
@@ -74,9 +93,12 @@ each_ruby_prepare() {
}
src_prepare() {
- use ruby && cp -rl "${S}" "${WORKDIR}"/all && ruby-ng_src_prepare
+ if use ruby; then
+ cp -rl "${S}" "${WORKDIR}"/all || die
+ ruby-ng_src_prepare
+ fi
+ default
sigrok_src_prepare
- eapply_user
use python && python_copy_sources
}
@@ -102,7 +124,6 @@ each_python_configure() {
}
src_configure() {
- python_setup
sigrok_src_configure --disable-ruby --disable-python
use ruby && ruby-ng_src_configure
use python && python_foreach_impl each_python_configure
@@ -142,15 +163,15 @@ src_install() {
use python && python_foreach_impl each_python_install
use ruby && ruby-ng_src_install
use udev && udev_dorules contrib/*.rules
- prune_libtool_files
+ find "${D}" -name '*.la' -type f -delete || die
}
pkg_postinst() {
- gnome2_icon_cache_update
+ xdg_icon_cache_update
xdg_mimeinfo_database_update
}
pkg_postrm() {
- gnome2_icon_cache_update
+ xdg_icon_cache_update
xdg_mimeinfo_database_update
}
diff --git a/sci-libs/libsigrok/libsigrok-9999.ebuild b/sci-libs/libsigrok/libsigrok-9999.ebuild
index d4e9bf2291f2..1449357471e6 100644
--- a/sci-libs/libsigrok/libsigrok-9999.ebuild
+++ b/sci-libs/libsigrok/libsigrok-9999.ebuild
@@ -3,13 +3,13 @@
EAPI="6"
-PYTHON_COMPAT=( python3_{6,7} )
-USE_RUBY="ruby26 ruby25 ruby24"
+PYTHON_COMPAT=( python3_{6,7,8} )
+USE_RUBY="ruby26 ruby25"
RUBY_OPTIONAL="yes"
-inherit eutils gnome2-utils python-r1 java-pkg-opt-2 ltprune ruby-ng udev xdg-utils
+inherit python-r1 java-pkg-opt-2 ruby-ng udev xdg-utils
-if [[ ${PV} == "9999" ]]; then
+if [[ ${PV} == *9999* ]]; then
EGIT_REPO_URI="git://sigrok.org/${PN}"
inherit git-r3 autotools
else
@@ -17,56 +17,68 @@ else
KEYWORDS="~amd64 ~x86"
fi
-DESCRIPTION="basic hardware drivers for logic analyzers and input/output file format support"
+DESCRIPTION="Basic hardware drivers for logic analyzers and input/output file format support"
HOMEPAGE="https://sigrok.org/wiki/Libsigrok"
LICENSE="GPL-3"
SLOT="0/9999"
-IUSE="cxx ftdi java parport python ruby serial static-libs +udev test usb"
+IUSE="+cxx ftdi java parport python ruby serial static-libs test +udev usb"
+REQUIRED_USE="java? ( cxx )
+ python? ( cxx ${PYTHON_REQUIRED_USE} )
+ ruby? ( cxx || ( $(ruby_get_use_targets) ) )"
+
RESTRICT="!test? ( test )"
-REQUIRED_USE="java? ( cxx ) python? ( cxx ${PYTHON_REQUIRED_USE} ) ruby? ( cxx || ( $(ruby_get_use_targets) ) )"
# We also support librevisa, but that isn't in the tree ...
-LIB_DEPEND=">=dev-libs/glib-2.32.0[static-libs(+)]
+LIB_DEPEND="
+ >=dev-libs/glib-2.32.0[static-libs(+)]
>=dev-libs/libzip-0.8:=[static-libs(+)]
cxx? ( dev-cpp/glibmm:2[static-libs(+)] )
- python? ( ${PYTHON_DEPS} >=dev-python/pygobject-3.0.0[${PYTHON_USEDEP}] )
- ruby? ( $(ruby_implementations_depend) )
ftdi? ( >=dev-embedded/libftdi-0.16:=[static-libs(+)] )
parport? ( sys-libs/libieee1284[static-libs(+)] )
+ python? (
+ ${PYTHON_DEPS}
+ >=dev-python/pygobject-3.0.0[${PYTHON_USEDEP}]
+ )
+ ruby? ( $(ruby_implementations_depend) )
serial? ( >=dev-libs/libserialport-0.1.1[static-libs(+)] )
- usb? ( virtual/libusb:1[static-libs(+)] )"
-RDEPEND="!static-libs? ( ${LIB_DEPEND//\[static-libs(+)]} )
+ usb? ( virtual/libusb:1[static-libs(+)] )
+"
+RDEPEND="
+ java? ( >=virtual/jre-1.4 )
+ !static-libs? ( ${LIB_DEPEND//\[static-libs(+)]} )
static-libs? ( ${LIB_DEPEND} )
- java? ( >=virtual/jre-1.4 )"
+"
DEPEND="${LIB_DEPEND//\[static-libs(+)]}
- test? ( >=dev-libs/check-0.9.4 )
cxx? ( app-doc/doxygen )
java? (
>=dev-lang/swig-3.0.6
>=virtual/jdk-1.4
)
python? (
- dev-python/setuptools[${PYTHON_USEDEP}]
- dev-python/numpy[${PYTHON_USEDEP}]
>=dev-lang/swig-3.0.6
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/setuptools[${PYTHON_USEDEP}]
)
ruby? ( >=dev-lang/swig-3.0.8 )
- virtual/pkgconfig"
+ test? ( >=dev-libs/check-0.9.4 )
+ virtual/pkgconfig
+"
S="${WORKDIR}"/${P}
pkg_setup() {
+ use python && python_setup
use ruby && ruby-ng_pkg_setup
java-pkg-opt-2_pkg_setup
}
src_unpack() {
- [[ ${PV} == "9999" ]] && git-r3_src_unpack || default
+ [[ ${PV} == *9999* ]] && git-r3_src_unpack || default
}
sigrok_src_prepare() {
- [[ ${PV} == "9999" ]] && eautoreconf
+ [[ ${PV} == *9999* ]] && eautoreconf
}
each_ruby_prepare() {
@@ -74,9 +86,12 @@ each_ruby_prepare() {
}
src_prepare() {
- use ruby && cp -rl "${S}" "${WORKDIR}"/all && ruby-ng_src_prepare
+ if use ruby; then
+ cp -rl "${S}" "${WORKDIR}"/all || die
+ ruby-ng_src_prepare
+ fi
+ default
sigrok_src_prepare
- eapply_user
use python && python_copy_sources
}
@@ -102,7 +117,6 @@ each_python_configure() {
}
src_configure() {
- python_setup
sigrok_src_configure --disable-ruby --disable-python
use ruby && ruby-ng_src_configure
use python && python_foreach_impl each_python_configure
@@ -142,15 +156,15 @@ src_install() {
use python && python_foreach_impl each_python_install
use ruby && ruby-ng_src_install
use udev && udev_dorules contrib/*.rules
- prune_libtool_files
+ find "${D}" -name '*.la' -type f -delete || die
}
pkg_postinst() {
- gnome2_icon_cache_update
+ xdg_icon_cache_update
xdg_mimeinfo_database_update
}
pkg_postrm() {
- gnome2_icon_cache_update
+ xdg_icon_cache_update
xdg_mimeinfo_database_update
}