commit:     c43a8b3cd8be202b594522496958762e6701109d
Author:     Craig Andrews <candrews <AT> integralblue <DOT> com>
AuthorDate: Sun Jul 31 22:34:27 2016 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Tue Aug  2 17:29:12 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c43a8b3c

app-misc/lirc-0.9.4a-r2: cleanup old ebuild, init script improvements, remove 
la files, don't set docdir unnecessarily (EAPI 6 does that automatically)

Gentoo-bug: 454466, 353774
Closes: https://github.com/gentoo/gentoo/pull/1988

Signed-off-by: David Seifert <soap <AT> gentoo.org>

 app-misc/lirc/Manifest                             |   1 -
 app-misc/lirc/files/irexec-initd-0.9.4a-r2         |  28 +++++
 app-misc/lirc/files/lircmd-0.9.4a-r2               |  20 ++++
 app-misc/lirc/files/lircmd.conf                    |   4 +
 app-misc/lirc/lirc-0.9.4.ebuild                    | 125 ---------------------
 app-misc/lirc/lirc-0.9.4a-r1.ebuild                |   8 ++
 .../{lirc-0.9.4a.ebuild => lirc-0.9.4a-r2.ebuild}  |  22 ++--
 7 files changed, 73 insertions(+), 135 deletions(-)

diff --git a/app-misc/lirc/Manifest b/app-misc/lirc/Manifest
index 2545d62..244e890 100644
--- a/app-misc/lirc/Manifest
+++ b/app-misc/lirc/Manifest
@@ -1,3 +1,2 @@
 DIST lirc-0.9.0.tar.bz2 857286 SHA256 
6323afae6ad498d4369675f77ec3dbb680fe661bea586aa296e67f2e2daba4ff SHA512 
e91534c63e6065bd7da3b15e1676edf1672b8beb21864a6825df86247d7d165bf2dee6f8191732933e24e42a406e46afc55559948e4061eed2de7b08fac13431
 WHIRLPOOL 
0a1c00b07898aa7a5d78865fb73c6d26c6331dd0a4945773a801d29e40298b365eb58cae113a95fcf73be678a24ac082ad0868e8051303d732882fb82a859a7b
-DIST lirc-0.9.4.tar.bz2 2291164 SHA256 
dd18a6751674fd61e4a96eebc3b9e5c883389d6230811943513443522dfc5dd0 SHA512 
0220cfa0e1900691eed3d6b0624c27e0a99825cd60303304eee7c60e3ae1d8e939d05d32680da64cdbf764919708888ce05803e9ab2423f4bf019b4acd8542f1
 WHIRLPOOL 
83390295e55445f2d10372e1515b0163d5b3b1e9903f132e018d975d66998d98ffee1caaa1fe26577a0ce18fce20ec025fd5cc0aaf5074728269b12e84d55268
 DIST lirc-0.9.4a.tar.bz2 2292119 SHA256 
386086a74c7d12e7e8f26f7dbc8f40d20b9968c9ad2a42599483a51dd2da03ba SHA512 
16be0ac5dd9b07d717ceba63cdc38c0db4a2bdcfc373ca6346d7cd4ab2cd2973aa7585d10b045fcaea952a3aabf7617c564ccb8268db6c62b172683a4b2cc188
 WHIRLPOOL 
93431c43d2dd31081e97113e2d49134de7feb29be53508900b3360408f7a099becf169fcebd0f6fc196280c594dc83d1299617ee54b65452828492db9bcd09ad

diff --git a/app-misc/lirc/files/irexec-initd-0.9.4a-r2 
b/app-misc/lirc/files/irexec-initd-0.9.4a-r2
new file mode 100644
index 0000000..2945577
--- /dev/null
+++ b/app-misc/lirc/files/irexec-initd-0.9.4a-r2
@@ -0,0 +1,28 @@
+#!/sbin/openrc-run
+# Copyright 2003 Martin Hierling <[email protected]>
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+: ${IREXEC_USER:=root}
+
+depend() {
+       need lircd
+}
+
+start() {
+       if [ "x${IREXEC_USER}" = "xroot" -a "x${IREXEC_DISABLE_ROOT_WARNING}" 
!= "xyes" ]; then
+               ewarn "Warning: Running irexec as root can open security holes"
+       fi
+
+       ebegin "Starting irexec"
+       start-stop-daemon --start --user ${IREXEC_USER} --chdir / \
+               --exec /usr/bin/irexec -- --daemon ${IREXEC_OPTS}
+       eend $? "Failed to start irexec."
+}
+
+stop() {
+       ebegin "Stopping irexec"
+       start-stop-daemon --stop --exec /usr/bin/irexec --user ${IREXEC_USER}
+       eend $? "Failed to stop irexec."
+}
+

diff --git a/app-misc/lirc/files/lircmd-0.9.4a-r2 
b/app-misc/lirc/files/lircmd-0.9.4a-r2
new file mode 100644
index 0000000..6b51c6e
--- /dev/null
+++ b/app-misc/lirc/files/lircmd-0.9.4a-r2
@@ -0,0 +1,20 @@
+#!/sbin/openrc-run
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+depend() {
+       need lircd
+}
+
+start() {
+       ebegin "Starting lircmd"
+       start-stop-daemon --start --quiet --exec /usr/sbin/lircmd -- 
${LIRCMD_OPTS}
+       eend $?
+}
+
+stop() {
+       ebegin "Stopping lircmd"
+       start-stop-daemon --stop --quiet --exec /usr/sbin/lircmd
+       eend $?
+}

diff --git a/app-misc/lirc/files/lircmd.conf b/app-misc/lirc/files/lircmd.conf
new file mode 100644
index 0000000..319362a
--- /dev/null
+++ b/app-misc/lirc/files/lircmd.conf
@@ -0,0 +1,4 @@
+# Options to pass to the lircmd process
+
+LIRCMD_OPTS="--uinput"
+

diff --git a/app-misc/lirc/lirc-0.9.4.ebuild b/app-misc/lirc/lirc-0.9.4.ebuild
deleted file mode 100644
index 3d735c5..0000000
--- a/app-misc/lirc/lirc-0.9.4.ebuild
+++ /dev/null
@@ -1,125 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=6
-
-inherit eutils flag-o-matic systemd
-
-DESCRIPTION="decode and send infra-red signals of many commonly used remote 
controls"
-HOMEPAGE="http://www.lirc.org/";
-
-LIRC_DRIVER_DEVICE="/dev/lirc0"
-
-MY_P=${PN}-${PV/_/}
-
-if [[ "${PV/_pre/}" = "${PV}" ]]; then
-       SRC_URI="mirror://sourceforge/lirc/${MY_P}.tar.bz2"
-else
-       SRC_URI="http://www.lirc.org/software/snapshots/${MY_P}.tar.bz2";
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-IUSE="doc static-libs X audio irman ftdi inputlirc iguanair systemd"
-
-S="${WORKDIR}/${MY_P}"
-
-REQUIRED_USE="
-       iguanair? ( irman )
-"
-DEPEND="
-       doc? ( app-doc/doxygen )
-"
-
-RDEPEND="
-       X? (
-               x11-libs/libX11
-               x11-libs/libSM
-               x11-libs/libICE
-       )
-       systemd? ( sys-apps/systemd )
-       audio? (
-               >media-libs/portaudio-18
-               media-libs/alsa-lib
-       )
-       irman? ( media-libs/libirman )
-       iguanair? ( app-misc/iguanaIR )
-       ftdi? ( dev-embedded/libftdi:0 )
-       inputlirc? ( app-misc/inputlircd )
-       virtual/libusb:0
-"
-
-src_configure() {
-       filter-flags -Wl,-O1
-       econf \
-               $(use_enable static-libs static) \
-               $(use_with X x)
-}
-
-src_install() {
-       default
-
-       newinitd "${FILESDIR}"/lircd-0.8.6-r2 lircd
-       newinitd "${FILESDIR}"/lircmd lircmd
-       newconfd "${FILESDIR}"/lircd.conf.4 lircd
-
-       insinto /etc/modprobe.d/
-       newins "${FILESDIR}"/modprobed.lirc lirc.conf
-
-       newinitd "${FILESDIR}"/irexec-initd irexec
-       newconfd "${FILESDIR}"/irexec-confd irexec
-
-       if use doc ; then
-               dodoc -r doc/html
-       fi
-
-       keepdir /etc/lirc
-       if [[ -e "${D}"/etc/lirc/lircd.conf ]]; then
-               newdoc "${D}"/etc/lirc/lircd.conf lircd.conf.example
-       fi
-
-       if ! use static-libs; then
-               rm "${D}/usr/$(get_libdir)/liblirc_client.la" || die
-       fi
-}
-
-pkg_preinst() {
-       local dir="${EROOT}/etc/modprobe.d"
-       if [[ -a "${dir}"/lirc && ! -a "${dir}"/lirc.conf ]]; then
-               elog "Renaming ${dir}/lirc to lirc.conf"
-               mv -f "${dir}/lirc" "${dir}/lirc.conf" || die
-       fi
-
-       # copy the first file that can be found
-       if [[ -f "${EROOT}"/etc/lirc/lircd.conf ]]; then
-               cp "${EROOT}"/etc/lirc/lircd.conf "${T}"/lircd.conf || die
-       elif [[ -f "${EROOT}"/etc/lircd.conf ]]; then
-               cp "${EROOT}"/etc/lircd.conf "${T}"/lircd.conf || die
-               MOVE_OLD_LIRCD_CONF=1
-       elif [[ -f "${D}"/etc/lirc/lircd.conf ]]; then
-               cp "${D}"/etc/lirc/lircd.conf "${T}"/lircd.conf || die
-       fi
-
-       # stop portage from touching the config file
-       if [[ -e "${D}"/etc/lirc/lircd.conf ]]; then
-               rm -f "${D}"/etc/lirc/lircd.conf || die
-       fi
-}
-
-pkg_postinst() {
-       # copy config file to new location
-       # without portage knowing about it
-       # so it will not delete it on unmerge or ever touch it again
-       if [[ -e "${T}"/lircd.conf ]]; then
-               cp "${T}"/lircd.conf "${EROOT}"/etc/lirc/lircd.conf || die
-               if [[ "$MOVE_OLD_LIRCD_CONF" = "1" ]]; then
-                       elog "Moved /etc/lircd.conf to /etc/lirc/lircd.conf"
-                       rm -f "${EROOT}"/etc/lircd.conf || die
-               fi
-       fi
-
-       einfo "The new default location for lircd.conf is inside of"
-       einfo "/etc/lirc/ directory"
-}

diff --git a/app-misc/lirc/lirc-0.9.4a-r1.ebuild 
b/app-misc/lirc/lirc-0.9.4a-r1.ebuild
index e77f5fa..0c413ef 100644
--- a/app-misc/lirc/lirc-0.9.4a-r1.ebuild
+++ b/app-misc/lirc/lirc-0.9.4a-r1.ebuild
@@ -64,6 +64,14 @@ src_configure() {
                $(use_with X x)
 }
 
+# Defined src_compile as a workaround for a parallel make issue
+# See https://bugs.gentoo.org/show_bug.cgi?id=588864
+# and https://sourceforge.net/p/lirc/tickets/210/
+src_compile() {
+       emake lib
+       emake
+}
+
 src_install() {
        default
 

diff --git a/app-misc/lirc/lirc-0.9.4a.ebuild 
b/app-misc/lirc/lirc-0.9.4a-r2.ebuild
similarity index 87%
rename from app-misc/lirc/lirc-0.9.4a.ebuild
rename to app-misc/lirc/lirc-0.9.4a-r2.ebuild
index 395ddd3..d1b39e5 100644
--- a/app-misc/lirc/lirc-0.9.4a.ebuild
+++ b/app-misc/lirc/lirc-0.9.4a-r2.ebuild
@@ -51,9 +51,14 @@ RDEPEND="
        usb? ( virtual/libusb:0 )
 "
 
+PATCHES=(
+       "${FILESDIR}"/lirc-0.9.4-doc-path-fix.patch # 
https://bugs.gentoo.org/show_bug.cgi?id=589246 
https://sourceforge.net/p/lirc/tickets/214/
+)
+
 src_configure() {
        filter-flags -Wl,-O1
        econf \
+               --localstatedir=/var \
                $(use_enable static-libs static) \
                $(use_with X x)
 }
@@ -70,27 +75,26 @@ src_install() {
        default
 
        newinitd "${FILESDIR}"/lircd-0.8.6-r2 lircd
-       newinitd "${FILESDIR}"/lircmd lircmd
+       newinitd "${FILESDIR}"/lircmd-0.9.4a-r2 lircmd
        newconfd "${FILESDIR}"/lircd.conf.4 lircd
+       newconfd "${FILESDIR}"/lircmd.conf lircmd
 
        insinto /etc/modprobe.d/
        newins "${FILESDIR}"/modprobed.lirc lirc.conf
 
-       newinitd "${FILESDIR}"/irexec-initd irexec
+       newinitd "${FILESDIR}"/irexec-initd-0.9.4a-r2 irexec
        newconfd "${FILESDIR}"/irexec-confd irexec
 
-       if use doc ; then
-               dodoc -r doc/html
-       fi
-
        keepdir /etc/lirc
        if [[ -e "${D}"/etc/lirc/lircd.conf ]]; then
                newdoc "${D}"/etc/lirc/lircd.conf lircd.conf.example
        fi
 
-       if ! use static-libs; then
-               rm "${D}/usr/$(get_libdir)/liblirc_client.la" || die
-       fi
+       find "${D}" -name '*.la' -delete || die
+
+       # Avoid QA notice
+       rm -d "${D}"/var/run/lirc || die
+       rm -d "${D}"/var/run || die
 }
 
 pkg_preinst() {

Reply via email to