From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <gentoo-commits+bounces-1514120-garchives=archives.gentoo.org@lists.gentoo.org>
Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (2048 bits))
	(No client certificate requested)
	by finch.gentoo.org (Postfix) with ESMTPS id 8A42615ACFC
	for <garchives@archives.gentoo.org>; Tue,  2 May 2023 08:24:36 +0000 (UTC)
Received: from pigeon.gentoo.org (localhost [127.0.0.1])
	by pigeon.gentoo.org (Postfix) with SMTP id C2511E0848;
	Tue,  2 May 2023 08:24:35 +0000 (UTC)
Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits))
	(No client certificate requested)
	by pigeon.gentoo.org (Postfix) with ESMTPS id 8227FE0848
	for <gentoo-commits@lists.gentoo.org>; Tue,  2 May 2023 08:24:35 +0000 (UTC)
Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits))
	(No client certificate requested)
	by smtp.gentoo.org (Postfix) with ESMTPS id 88BFB34108D
	for <gentoo-commits@lists.gentoo.org>; Tue,  2 May 2023 08:24:34 +0000 (UTC)
Received: from localhost.localdomain (localhost [IPv6:::1])
	by oystercatcher.gentoo.org (Postfix) with ESMTP id 1BE608E4
	for <gentoo-commits@lists.gentoo.org>; Tue,  2 May 2023 08:24:33 +0000 (UTC)
From: "Viorel Munteanu" <ceamac@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Content-Transfer-Encoding: 8bit
Content-type: text/plain; charset=UTF-8
Reply-To: gentoo-dev@lists.gentoo.org, "Viorel Munteanu" <ceamac@gentoo.org>
Message-ID: <1683015840.496cb065e413016d6f788c26f485d55349b1c46b.ceamac@gentoo>
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-libs/libcec/
X-VCS-Repository: repo/gentoo
X-VCS-Files: dev-libs/libcec/libcec-6.0.2-r1.ebuild
X-VCS-Directories: dev-libs/libcec/
X-VCS-Committer: ceamac
X-VCS-Committer-Name: Viorel Munteanu
X-VCS-Revision: 496cb065e413016d6f788c26f485d55349b1c46b
X-VCS-Branch: master
Date: Tue,  2 May 2023 08:24:33 +0000 (UTC)
Precedence: bulk
List-Post: <mailto:gentoo-commits@lists.gentoo.org>
List-Help: <mailto:gentoo-commits+help@lists.gentoo.org>
List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org>
List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org>
List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org>
X-BeenThere: gentoo-commits@lists.gentoo.org
X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply
X-Archives-Salt: 288f6455-7c34-47b0-9caa-fcfeb1b231f7
X-Archives-Hash: 2c4084795391cc181ba8c6657c56e565

commit:     496cb065e413016d6f788c26f485d55349b1c46b
Author:     Alan Swanson <reiver <AT> improbability <DOT> net>
AuthorDate: Mon May  1 15:59:35 2023 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Tue May  2 08:24:00 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=496cb065

dev-libs/libcec: Fix udev rule

Also change udev rule to set group ownership to "video" instead of "uucp".

Closes: https://bugs.gentoo.org/765358
Closes: https://bugs.gentoo.org/896708
Signed-off-by: Alan Swanson <reiver <AT> improbability.net>
Closes: https://github.com/gentoo/gentoo/pull/20851
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 dev-libs/libcec/libcec-6.0.2-r1.ebuild | 131 +++++++++++++++++++++++++++++++++
 1 file changed, 131 insertions(+)

diff --git a/dev-libs/libcec/libcec-6.0.2-r1.ebuild b/dev-libs/libcec/libcec-6.0.2-r1.ebuild
new file mode 100644
index 000000000000..f35813989e13
--- /dev/null
+++ b/dev-libs/libcec/libcec-6.0.2-r1.ebuild
@@ -0,0 +1,131 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..11} )
+MY_PV=${PV/_p/-}
+MY_P=${PN}-${MY_PV}
+
+inherit cmake linux-info python-single-r1 toolchain-funcs udev
+
+DESCRIPTION="Library for communicating with the Pulse-Eight USB HDMI-CEC Adaptor"
+HOMEPAGE="https://libcec.pulse-eight.com"
+SRC_URI="https://github.com/Pulse-Eight/${PN}/archive/${MY_P}.tar.gz"
+S="${WORKDIR}/${PN}-${MY_P}"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+IUSE="cubox exynos kernel-cec python raspberry-pi tools udev +xrandr"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND=">=dev-libs/libplatform-2.0.0
+	python? ( ${PYTHON_DEPS} )
+	raspberry-pi? ( >=media-libs/raspberrypi-userland-0_pre20160305-r1 )
+	udev? ( virtual/udev )
+	xrandr? (
+		x11-libs/libX11
+		x11-libs/libXrandr
+	)
+
+"
+DEPEND="${RDEPEND}
+	python? ( dev-lang/swig )"
+BDEPEND="virtual/pkgconfig"
+
+CONFIG_CHECK="~USB_ACM"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-4.0.7-no-override-udev.patch"
+	"${FILESDIR}/${PN}-6.0.2-musl-nullptr.patch"
+)
+
+pkg_pretend() {
+	use udev || CONFIG_CHECK+=" ~SYSFS"
+	ERROR_SYSFS="When using libcec build without udev, kernel config option CONFIG_SYSFS is required to automatically detect P8 USB-CEC adapter port number"
+
+	linux-info_pkg_setup
+}
+
+pkg_setup() {
+	linux-info_pkg_setup
+	use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+	cmake_src_prepare
+
+	# Do not hardcode the python libpath #577612
+	sed -i \
+		-e '/DESTINATION/s:"lib/python${PYTHON_VERSION}/${PYTHON_PKG_DIR}":${PYTHON_SITEDIR}:' \
+		src/libcec/cmake/CheckPlatformSupport.cmake || die
+
+	sed -Ee 's|[ ~]?#DIST#;?||g' debian/changelog.in > ChangeLog || die
+
+	(use tools && use python) || cmake_comment_add_subdirectory "src/pyCecClient"
+
+	if ! use tools; then
+		cmake_comment_add_subdirectory "src/cec-client"
+		cmake_comment_add_subdirectory "src/cecc-client"
+		sed -i -Ee 's|add_dependencies\(cecc?-client cec\)|#DO NOT BUILD \0|' \
+			CMakeLists.txt || die
+	fi
+}
+
+src_configure() {
+	local mycmakeargs=(
+		-DHAVE_LINUX_API=$(usex kernel-cec ON OFF)
+		-DHAVE_LIBUDEV=$(usex udev ON OFF)
+		-DSKIP_PYTHON_WRAPPER=$(usex python OFF ON)
+		-DHAVE_EXYNOS_API=$(usex exynos ON OFF)
+		-DHAVE_TDA995X_API=$(usex cubox ON OFF)
+		-DHAVE_RPI_API=$(usex raspberry-pi ON OFF)
+	)
+
+	if linux_config_exists && linux_chkconfig_present SYSFS; then
+		mycmakeargs+=( -DHAVE_P8_USB_DETECT=ON )
+	fi
+
+	# raspberrypi-userland itself does not provide .pc file so using
+	# bcm_host.pc instead
+	use raspberry-pi && mycmakeargs+=(
+		-DRPI_INCLUDE_DIR=$( $(tc-getPKG_CONFIG) --variable=includedir bcm_host) \
+		-DRPI_LIB_DIR=$( $(tc-getPKG_CONFIG) --variable=libdir bcm_host)
+	)
+
+	cmake_src_configure
+}
+
+src_compile() {
+	cmake_src_compile
+
+	if use udev ; then
+		sed '/2548/ s/SUBSYSTEM/SUBSYSTEMS/; s/$/, GROUP="video"/;' "${S}/debian/pulse-eight-usb-cec.udev" > \
+			"${BUILD_DIR}/65-pulse-eight-usb-cec.rules" || die
+	fi
+}
+
+src_install() {
+	cmake_src_install
+
+	use python && python_optimize "${D}$(python_get_sitedir)"
+
+	use tools && doman debian/cec-client.1
+
+	if use udev; then
+		udev_dorules "${BUILD_DIR}/65-pulse-eight-usb-cec.rules"
+	fi
+}
+
+pkg_postrm() {
+	use udev && udev_reload
+}
+
+pkg_postinst() {
+	use udev && udev_reload
+
+	elog "You will need to ensure the user running your CEC client has"
+	elog "read/write access to the device. You can ensure this by adding"
+	elog "them to the video group"
+}