public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Andrew Ammerlaan" <andrewammerlaan@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: media-video/droidcam/
Date: Wed,  5 Apr 2023 19:23:35 +0000 (UTC)	[thread overview]
Message-ID: <1680722606.45e3a4051fe41e72b918e9062211478cedac59c1.andrewammerlaan@gentoo> (raw)

commit:     45e3a4051fe41e72b918e9062211478cedac59c1
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Wed Apr  5 18:49:03 2023 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Wed Apr  5 19:23:26 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=45e3a405

media-video/droidcam: add 1.9.0

Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 media-video/droidcam/Manifest              |   1 +
 media-video/droidcam/droidcam-1.9.0.ebuild | 156 +++++++++++++++++++++++++++++
 2 files changed, 157 insertions(+)

diff --git a/media-video/droidcam/Manifest b/media-video/droidcam/Manifest
index d6d1c64f41d2..e582cd8f9074 100644
--- a/media-video/droidcam/Manifest
+++ b/media-video/droidcam/Manifest
@@ -1,3 +1,4 @@
 DIST droidcam-1.8.2.tar.gz 84797 BLAKE2B b2458dd04b467106a6d9a8a9f3d44058641a7c8ca429d5c92f498401c07f6bc364dc056755f21b40faac7e7aec1877250afb119ac3b7f979b24cdeb86f45c384 SHA512 507f513c8d0dffa86afe5368ccab5461931e236b6352269a6eb5e970a79e5f9b386808da3466f3b391e955170b47b24a82663632ddc3c3c84e4de5988b7d3f8f
 DIST droidcam-1.8.2_p20220831.tar.gz 84943 BLAKE2B db54f39a9b303b4b06dfdfcb6bf9323ce25f8cea4594cdcec063685fea531fdeb915caab393d0edf72086deb592345d7ca6aefd546d44f06e24855d66fbd8d47 SHA512 c30848c2348c70a15c46f894b1c0547a3e904bbb8582ae2d34009dbc9b0d006a49ab3950fef4491f76f838fd091d68ec1d63d5b1f52e793e98936fe5f2d44b5c
+DIST droidcam-1.9.0.tar.gz 85083 BLAKE2B ab96fd70a8514ff6f3ebb98fc482e6d8ee17f984c4929c26441ed1f6223ce5dc6421039e99068ab747012fbcb252d6e158c4c778a45f117cb8143aa278766ded SHA512 47532731688c08d90dfe1c7d177154ea68180a84061050bf6602669bfb867ce6d44e1d1f351cb5526d3d4abf1c6235c26ddf53b423e3641a2956afd392f9f5f6
 DIST droidcam-1.9.0_rc1.tar.gz 85035 BLAKE2B aa0129eeb1f5348948872c6144b472008d50d29b2d83bc96c32de52ba7696f067eeb59208c8ab53f0cd4d0bdcf74e94b61f11bd652d5cae828efd89bd434f595 SHA512 4b44cb702456110fdd7d9f82cd5e0f024a428dd9bed2e1c0eeb914983b9611a6405dadbb399efdb1539358a729c2194142eaa95d3eba68b6906ff1614919a29d

diff --git a/media-video/droidcam/droidcam-1.9.0.ebuild b/media-video/droidcam/droidcam-1.9.0.ebuild
new file mode 100644
index 000000000000..43c1cec97661
--- /dev/null
+++ b/media-video/droidcam/droidcam-1.9.0.ebuild
@@ -0,0 +1,156 @@
+# Copyright 2019-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop linux-mod xdg
+
+DESCRIPTION="Use your phone or tablet as webcam with a v4l device driver and app"
+HOMEPAGE="https://www.dev47apps.com/droidcam/linux/"
+SRC_URI="https://github.com/dev47apps/${PN}/archive/v${PV//_rc1/-RC}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${PV//_rc1/-RC}"
+
+KEYWORDS="~amd64"
+LICENSE="GPL-2"
+SLOT="0"
+
+IUSE="gtk"
+
+# Requires connection to phone/tablet
+RESTRICT="test"
+
+DEPEND="
+	app-pda/libplist
+	app-pda/libusbmuxd
+	dev-libs/glib
+	dev-libs/libayatana-appindicator
+	dev-libs/libxml2
+	dev-util/android-tools
+	media-libs/alsa-lib
+	media-libs/libjpeg-turbo
+	>=media-libs/speex-1.2.0-r1
+	media-video/ffmpeg
+	gtk? (
+		x11-libs/gdk-pixbuf
+		x11-libs/gtk+:3
+		x11-libs/libX11
+		x11-libs/pango
+	)
+"
+RDEPEND="${DEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+BUILD_TARGETS="all"
+MODULE_NAMES="v4l2loopback-dc(video:${S}/v4l2loopback:${S}/v4l2loopback)"
+MODULESD_V4L2LOOPBACK_DC_ENABLED="yes"
+
+CONFIG_CHECK="~SND_ALOOP VIDEO_DEV MEDIA_SUPPORT MEDIA_CAMERA_SUPPORT"
+ERROR_SND_ALOOP="CONFIG_SND_ALOOP is optionally required for audio support"
+
+PATCHES="${FILESDIR}/${PN}-1.8.2_p20220831-makefile-fixes.patch"
+
+src_prepare() {
+	if ! use gtk; then
+		default
+		sed -i -e '/cflags gtk+/d' Makefile || die
+	else
+		default
+		# remove path and extension from Icon and Exec entry
+		sed -i -e 's/Icon=\/opt\/droidcam-icon.png/Icon=droidcam/g' \
+			-e 's/\/usr\/local\/bin\/droidcam/droidcam/g' \
+			droidcam.desktop || die
+		sed -i -e 's%/opt/droidcam-icon.png%/usr/share/icons/hicolor/96x96/apps/droidcam.png%g' src/droidcam.c || die
+	fi
+}
+
+src_configure() {
+	set_arch_to_kernel
+	default
+}
+
+src_compile() {
+	if use gtk; then
+		emake droidcam
+	fi
+	emake droidcam-cli
+
+	if linux_chkconfig_present CC_IS_CLANG; then
+		BUILD_PARAMS+=' CC=${CHOST}-clang'
+		if linux_chkconfig_present LD_IS_LLD; then
+			BUILD_PARAMS+=' LD=ld.lld'
+			if linux_chkconfig_present LTO_CLANG_THIN; then
+				# kernel enables cache by default leading to sandbox violations
+				BUILD_PARAMS+=' ldflags-y=--thinlto-cache-dir= LDFLAGS_MODULE=--thinlto-cache-dir='
+			fi
+		fi
+	fi
+	export KERNEL_DIR || die
+	linux-mod_src_compile
+}
+
+src_test() {
+	pushd "v4l2loopback" || die
+	default
+	./test || die
+	popd || die
+}
+
+src_install() {
+	if use gtk; then
+		dobin droidcam
+		newicon -s 32 icon.png droidcam.png
+		newicon -s 96 icon2.png droidcam.png
+		domenu droidcam.desktop
+	fi
+	dobin droidcam-cli
+
+	# The cli and gui do not auto load the module if unloaded (why not though?)
+	# so we just put it in modules-load.d to make sure it always works
+	insinto /etc/modules-load.d
+	if linux_config_exists; then
+		if linux_chkconfig_module SND_ALOOP; then
+			newins - "${PN}.conf" <<-EOF
+				v4l2loopback-dc
+				snd_aloop
+			EOF
+		else
+			newins - "${PN}.conf" <<-EOF
+				v4l2loopback-dc
+			EOF
+		fi
+	fi
+
+	einstalldocs
+	linux-mod_src_install
+}
+
+pkg_preinst() {
+	linux-mod_pkg_preinst
+	if use gtk; then
+		xdg_pkg_preinst
+	fi
+}
+
+pkg_postinst() {
+	linux-mod_pkg_postinst
+	if use gtk; then
+		xdg_pkg_postinst
+	else
+		elog
+		elog "Only droidcam-cli has been installed since 'gtk' flag was not set"
+		elog
+	fi
+
+	elog "The default resolution for v4l2loopback-dc (i.e. droidcam) is 640x480."
+	elog "You can change this value in /etc/modprobe.d/v4l2loopback-dc.conf"
+	elog
+	elog "Links to the Android/iPhone/iPad apps can be found at"
+	elog "https://www.dev47apps.com/"
+}
+
+pkg_postrm() {
+	linux-mod_pkg_postrm
+	if use gtk; then
+		xdg_pkg_postrm
+	fi
+}


             reply	other threads:[~2023-04-05 19:23 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-04-05 19:23 Andrew Ammerlaan [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-03-27 10:42 [gentoo-commits] repo/gentoo:master commit in: media-video/droidcam/ Andrew Ammerlaan
2023-12-20 19:24 Andrew Ammerlaan
2023-12-05  8:18 Andrew Ammerlaan
2023-12-05  8:18 Andrew Ammerlaan
2023-12-01 21:52 Andrew Ammerlaan
2023-12-01 21:52 Andrew Ammerlaan
2023-06-21 16:36 Andrew Ammerlaan
2023-06-08 10:52 Andrew Ammerlaan
2023-06-08  9:19 Andrew Ammerlaan
2023-06-08  9:19 Andrew Ammerlaan
2023-04-16  7:09 Andrew Ammerlaan
2023-03-08 13:11 Andrew Ammerlaan
2022-05-31 11:53 Andrew Ammerlaan
2022-05-31 11:53 Andrew Ammerlaan
2022-02-15  8:06 Andrew Ammerlaan
2021-12-27 20:15 Andrew Ammerlaan
2021-12-22 20:07 Andrew Ammerlaan
2021-12-07 17:07 Andrew Ammerlaan
2021-12-07 10:03 Andrew Ammerlaan
2021-12-07 10:03 Andrew Ammerlaan
2021-10-06 13:11 Andrew Ammerlaan
2021-07-30  8:14 Andrew Ammerlaan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1680722606.45e3a4051fe41e72b918e9062211478cedac59c1.andrewammerlaan@gentoo \
    --to=andrewammerlaan@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox