From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id D07E813933E for ; Thu, 1 Jul 2021 16:57:21 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 1E550E088D; Thu, 1 Jul 2021 16:57:21 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id E7A2EE088D for ; Thu, 1 Jul 2021 16:57:20 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id C8AB1335DA5 for ; Thu, 1 Jul 2021 16:57:19 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id D72AA7C2 for ; Thu, 1 Jul 2021 16:57:16 +0000 (UTC) From: "Ionen Wolkens" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Ionen Wolkens" Message-ID: <1625158482.e2fee93fb7bebb6e7bbd43fb724154267d44ab2c.ionen@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: media-video/obs-studio/ X-VCS-Repository: repo/gentoo X-VCS-Files: media-video/obs-studio/obs-studio-9999.ebuild X-VCS-Directories: media-video/obs-studio/ X-VCS-Committer: ionen X-VCS-Committer-Name: Ionen Wolkens X-VCS-Revision: e2fee93fb7bebb6e7bbd43fb724154267d44ab2c X-VCS-Branch: master Date: Thu, 1 Jul 2021 16:57:16 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: e4fcbb85-d12e-4fa5-adac-cfe62d0c84ae X-Archives-Hash: 947edc915fe539e162b824aeda2552aa commit: e2fee93fb7bebb6e7bbd43fb724154267d44ab2c Author: Ionen Wolkens gentoo org> AuthorDate: Thu Jul 1 16:38:11 2021 +0000 Commit: Ionen Wolkens gentoo org> CommitDate: Thu Jul 1 16:54:42 2021 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e2fee93f media-video/obs-studio: sync live Signed-off-by: Ionen Wolkens gentoo.org> media-video/obs-studio/obs-studio-9999.ebuild | 91 ++++++++++++++++++++------- 1 file changed, 69 insertions(+), 22 deletions(-) diff --git a/media-video/obs-studio/obs-studio-9999.ebuild b/media-video/obs-studio/obs-studio-9999.ebuild index f1b911e3391..56839893506 100644 --- a/media-video/obs-studio/obs-studio-9999.ebuild +++ b/media-video/obs-studio/obs-studio-9999.ebuild @@ -5,26 +5,35 @@ EAPI=7 CMAKE_REMOVE_MODULES_LIST=( FindFreetype ) LUA_COMPAT=( luajit ) -PYTHON_COMPAT=( python3_{7..9} ) +PYTHON_COMPAT=( python3_{8..10} ) -inherit cmake lua-single python-single-r1 xdg-utils +inherit xdg cmake lua-single python-single-r1 -if [[ ${PV} == *9999 ]]; then +OBS_BROWSER_COMMIT="f1a61c5a2579e5673765c31a47c2053d4b502d4b" +CEF_DIR="cef_binary_4280_linux64" + +if [[ ${PV} == 9999 ]]; then inherit git-r3 EGIT_REPO_URI="https://github.com/obsproject/obs-studio.git" - EGIT_SUBMODULES=() + EGIT_SUBMODULES=( plugins/obs-browser ) else SRC_URI="https://github.com/obsproject/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" + SRC_URI+=" browser? ( https://github.com/obsproject/obs-browser/archive/${OBS_BROWSER_COMMIT}.tar.gz -> obs-browser-${OBS_BROWSER_COMMIT}.tar.gz )" KEYWORDS="~amd64 ~ppc64 ~x86" fi +SRC_URI+=" browser? ( https://cdn-fastly.obsproject.com/downloads/${CEF_DIR}.tar.bz2 )" DESCRIPTION="Software for Recording and Streaming Live Video Content" HOMEPAGE="https://obsproject.com" LICENSE="GPL-2" SLOT="0" -IUSE="+alsa decklink fdk imagemagick jack lua nvenc pipewire pulseaudio python speex +ssl truetype v4l vlc wayland" +IUSE=" + +alsa browser decklink fdk jack lua nvenc pipewire + pulseaudio python speex +ssl truetype v4l vlc wayland +" REQUIRED_USE=" + browser? ( || ( alsa pulseaudio ) ) lua? ( ${LUA_REQUIRED_USE} ) python? ( ${PYTHON_REQUIRED_USE} ) " @@ -34,7 +43,7 @@ BDEPEND=" python? ( dev-lang/swig ) " DEPEND=" - >=dev-libs/jansson-2.5 + dev-libs/jansson dev-qt/qtcore:5 dev-qt/qtdeclarative:5 dev-qt/qtgui:5[wayland?] @@ -50,21 +59,38 @@ DEPEND=" media-video/ffmpeg:=[x264] net-misc/curl sys-apps/dbus - sys-libs/zlib + sys-libs/zlib:= virtual/udev x11-libs/libX11 x11-libs/libXcomposite x11-libs/libXfixes x11-libs/libXinerama x11-libs/libXrandr - x11-libs/libxcb + x11-libs/libxcb:= alsa? ( media-libs/alsa-lib ) + browser? ( + app-accessibility/at-spi2-atk + dev-libs/atk + dev-libs/expat + dev-libs/glib + dev-libs/nspr + dev-libs/nss + media-libs/alsa-lib + media-libs/fontconfig + net-print/cups + x11-libs/libXScrnSaver + x11-libs/libXcursor + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXi + x11-libs/libXrender + x11-libs/libXtst + ) fdk? ( media-libs/fdk-aac:= ) - imagemagick? ( media-gfx/imagemagick:= ) jack? ( virtual/jack ) lua? ( ${LUA_DEPS} ) nvenc? ( >=media-video/ffmpeg-4[video_cards_nvidia] ) - pipewire? ( media-video/pipewire ) + pipewire? ( media-video/pipewire:= ) pulseaudio? ( media-sound/pulseaudio ) python? ( ${PYTHON_DEPS} ) speex? ( media-libs/speexdsp ) @@ -79,17 +105,40 @@ DEPEND=" " RDEPEND="${DEPEND}" -PATCHES=( "${FILESDIR}/${PN}-26.1.2-python-3.8.patch" ) # https://github.com/obsproject/obs-studio/pull/3335 +QA_PREBUILT=" + usr/lib*/obs-plugins/chrome-sandbox + usr/lib*/obs-plugins/libEGL.so + usr/lib*/obs-plugins/libGLESv2.so + usr/lib*/obs-plugins/libcef.so + usr/lib*/obs-plugins/swiftshader/libEGL.so + usr/lib*/obs-plugins/swiftshader/libGLESv2.so +" + +PATCHES=( + "${FILESDIR}/${PN}-26.1.2-python-3.8.patch" +) pkg_setup() { use lua && lua-single_pkg_setup use python && python-single-r1_pkg_setup } +src_unpack() { + default + + if [[ ${PV} == 9999 ]]; then + git-r3_src_unpack + elif use browser; then + rm -d ${P}/plugins/obs-browser || die + mv obs-browser-${OBS_BROWSER_COMMIT} ${P}/plugins/obs-browser || die + fi +} + src_configure() { local libdir=$(get_libdir) local mycmakeargs=( - -DBUILD_BROWSER=no + $(usex browser -DCEF_ROOT_DIR=../${CEF_DIR} '') + -DBUILD_BROWSER=$(usex browser) -DBUILD_VST=no -DENABLE_WAYLAND=$(usex wayland) -DDISABLE_ALSA=$(usex !alsa) @@ -102,13 +151,16 @@ src_configure() { -DDISABLE_SPEEXDSP=$(usex !speex) -DDISABLE_V4L2=$(usex !v4l) -DDISABLE_VLC=$(usex !vlc) - -DLIBOBS_PREFER_IMAGEMAGICK=$(usex imagemagick) -DOBS_MULTIARCH_SUFFIX=${libdir#lib} -DUNIX_STRUCTURE=1 -DWITH_RTMPS=$(usex ssl) + + # deprecated and currently cause issues + # https://github.com/obsproject/obs-studio/pull/4560#issuecomment-826345608 + -DLIBOBS_PREFER_IMAGEMAGICK=no ) - if [[ ${PV} != *9999 ]]; then + if [[ ${PV} != 9999 ]]; then mycmakeargs+=( -DOBS_VERSION_OVERRIDE=${PV} ) @@ -129,13 +181,14 @@ src_configure() { src_install() { cmake_src_install - #external plugins may need some things not installed by default, install them here + + # external plugins may need some things not installed by default, install them here insinto /usr/include/obs/UI/obs-frontend-api doins UI/obs-frontend-api/obs-frontend-api.h } pkg_postinst() { - xdg_icon_cache_update + xdg_pkg_postinst if ! use alsa && ! use pulseaudio; then elog @@ -154,9 +207,7 @@ pkg_postinst() { elog "(if 'x11-misc/xdg-utils' is installed)." elog fi -} -pkg_postinst() { if use python; then ewarn "This ebuild applies a patch that is not yet accepted upstream," ewarn "and while it fixes Python support at least to some extent, it" @@ -165,7 +216,3 @@ pkg_postinst() { ewarn "Please report any such issues to the Gentoo maintainer." fi } - -pkg_postrm() { - xdg_icon_cache_update -}