sys-apps/i2c-tools: add missing perl dep and make it optional
authorMike Frysinger <vapier@chromium.org>
Wed, 13 Feb 2019 21:24:33 +0000 (16:24 -0500)
committerMike Frysinger <vapier@gentoo.org>
Wed, 13 Feb 2019 21:59:44 +0000 (16:59 -0500)
This package installs a number of perl scripts, so make sure we RDEPEND
on perl to avoid broken deps.  But also put that behind USE=perl so we
can install the other (more interesting) programs w/out forcing perl on
everyone.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
sys-apps/i2c-tools/i2c-tools-4.1-r1.ebuild [new file with mode: 0644]

diff --git a/sys-apps/i2c-tools/i2c-tools-4.1-r1.ebuild b/sys-apps/i2c-tools/i2c-tools-4.1-r1.ebuild
new file mode 100644 (file)
index 0000000..595a0eb
--- /dev/null
@@ -0,0 +1,74 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6,3_7} )
+DISTUTILS_OPTIONAL="1"
+
+inherit distutils-r1 flag-o-matic toolchain-funcs
+
+DESCRIPTION="I2C tools for bus probing, chip dumping, EEPROM decoding, and more"
+HOMEPAGE="https://www.kernel.org/pub/software/utils/i2c-tools"
+SRC_URI="${HOMEPAGE}/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE="perl python static-libs"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="!<sys-apps/lm_sensors-3
+       python? ( ${PYTHON_DEPS} )"
+DEPEND="${RDEPEND}"
+RDEPEND+="
+       perl? ( dev-lang/perl )"
+
+src_prepare() {
+       default
+       use python && distutils-r1_src_prepare
+
+       # Cut out the eeprom/ & stub/ dirs as only perl scripts live there.
+       if ! use perl ; then
+               sed -i '/^SRCDIRS/s: eeprom stub : :g' Makefile || die
+       fi
+}
+
+src_configure() {
+       use python && distutils-r1_src_configure
+}
+
+src_compile() {
+       emake AR="$(tc-getAR)" CC="$(tc-getCC)" all-lib # parallel make
+       emake CC="$(tc-getCC)"
+       emake -C eepromer CC="$(tc-getCC)" CFLAGS="${CFLAGS}"
+
+       if use python ; then
+               cd py-smbus || die
+               append-cppflags -I../include
+               distutils-r1_src_compile
+       fi
+}
+
+src_install() {
+       emake DESTDIR="${D}" libdir="/usr/$(get_libdir)" PREFIX="/usr" install-lib install
+       dosbin eepromer/eeprom{,er}
+       rm -rf "${D}"/usr/include || die # part of linux-headers
+       dodoc CHANGES README
+       local d
+       for d in $(usex perl eeprom '') eepromer ; do
+               docinto "${d}"
+               dodoc "${d}"/README*
+       done
+
+       if use python ; then
+               cd py-smbus || die
+               docinto py-smbus
+               dodoc README*
+               distutils-r1_src_install
+       fi
+
+       if ! use static-libs; then
+               rm -rf "${D}"/usr/$(get_libdir)/libi2c.a || die
+       fi
+}