mirror of
https://anongit.gentoo.org/git/repo/gentoo.git
synced 2025-06-10 15:19:09 +02:00
Add IUSE aom, faac, fdk-aac, lame, libusb, mp4, opus, rav1e, screencast, svt-av1, vlc, vorbis, vpx, X, x264 Add missing media-libs/alsa-lib for IUSE alsa Better describe IUSE libuvc (at all) Drop no-op IUSE oss Drop IUSE v4lutils (duplicates v4l without good explanation) Drop IUSE videoeffects (no deps) Merge IUSE qtaudio and qtcamera into qtmedia (same dep, prior use) Drop puzzling use of RESTRICT="mirror" in live ebuild switch Sort IUSE Fix stray tab in DEPENDs Wire up IUSE portaudio (at all) Bug: https://bugs.gentoo.org/935774 Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
117 lines
3.2 KiB
Bash
117 lines
3.2 KiB
Bash
# Copyright 1999-2025 Gentoo Authors
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
EAPI=8
|
|
|
|
inherit cmake flag-o-matic xdg
|
|
|
|
DESCRIPTION="Full featured webcam capture application"
|
|
HOMEPAGE="https://webcamoid.github.io"
|
|
if [[ ${PV} == *9999* ]]; then
|
|
EGIT_REPO_URI="https://github.com/webcamoid/webcamoid.git"
|
|
inherit git-r3
|
|
else
|
|
SRC_URI="https://github.com/webcamoid/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
|
|
KEYWORDS="~amd64 ~arm64 ~x86"
|
|
fi
|
|
|
|
LICENSE="GPL-3"
|
|
SLOT="0"
|
|
IUSE="alsa aom debug faac fdk-aac ffmpeg gstreamer headers jack lame libusb libuvc mp4
|
|
opus portaudio pulseaudio qtmedia rav1e screencast sdl svt-av1 v4l vlc vorbis vpx X x264"
|
|
|
|
COMMON_DEPEND="
|
|
media-libs/libmikmod
|
|
dev-qt/qtbase:6[concurrent,dbus,gui,network,opengl,widgets]
|
|
dev-qt/qtdeclarative:6
|
|
dev-qt/qtsvg:6
|
|
alsa? ( media-libs/alsa-lib )
|
|
aom? ( media-libs/libaom:= )
|
|
faac? ( media-libs/faac )
|
|
fdk-aac? ( media-libs/fdk-aac:= )
|
|
ffmpeg? ( media-video/ffmpeg:= )
|
|
gstreamer? ( >=media-libs/gstreamer-1.6.0 )
|
|
jack? ( virtual/jack )
|
|
lame? ( media-sound/lame )
|
|
libusb? ( dev-libs/libusb:1 )
|
|
libuvc? ( >=media-libs/libuvc-0.0.7 )
|
|
mp4? ( media-libs/libmp4v2 )
|
|
opus? ( media-libs/opus )
|
|
portaudio? ( media-libs/portaudio )
|
|
pulseaudio? ( media-libs/libpulse )
|
|
qtmedia? ( dev-qt/qtmultimedia:6 )
|
|
rav1e? ( media-video/rav1e:= )
|
|
screencast? ( media-video/pipewire:= )
|
|
sdl? ( media-libs/libsdl2 )
|
|
svt-av1? ( media-libs/svt-av1:= )
|
|
v4l? ( media-libs/libv4l )
|
|
vlc? ( media-video/vlc:= )
|
|
vorbis? ( media-libs/libvorbis )
|
|
vpx? ( media-libs/libvpx:= )
|
|
X? (
|
|
x11-libs/libX11
|
|
x11-libs/libXext
|
|
x11-libs/libXfixes
|
|
)
|
|
x264? ( media-libs/x264:= )
|
|
"
|
|
DEPEND="${COMMON_DEPEND}
|
|
>=sys-kernel/linux-headers-3.6
|
|
"
|
|
RDEPEND="${COMMON_DEPEND}
|
|
virtual/opengl
|
|
"
|
|
|
|
src_configure() {
|
|
# -Werror=odr
|
|
# https://bugs.gentoo.org/927104
|
|
# https://github.com/webcamoid/webcamoid/issues/702
|
|
filter-lto
|
|
|
|
#Disable git in package source. If not disabled the cmake configure process will show
|
|
#a lot of "fatal not a git repository" errors
|
|
sed -i 's|find_program(GIT_BIN git)|#find_program(GIT_BIN git)|' libAvKys/cmake/ProjectCommons.cmake || die
|
|
|
|
local mycmakeargs=(
|
|
-DNOVIDEOEFFECTS=0 # no extra deps, no IUSE
|
|
-DNOCHECKUPDATES=1
|
|
-DNOMEDIAFOUNDATION=1
|
|
-DNODSHOW=1
|
|
-DNOWASAPI=1
|
|
-DNOALSA=$(usex !alsa)
|
|
-DNOAOMAV1=$(usex !aom)
|
|
-DNOFAAC=$(usex !faac)
|
|
-DNOFDKAAC=$(usex !fdk-aac)
|
|
-DNOFFMPEG=$(usex !ffmpeg)
|
|
-DNOGSTREAMER=$(usex !gstreamer)
|
|
-DNOJACK=$(usex !jack)
|
|
-DNOLAME=$(usex !lame)
|
|
-DNOLIBUSB=$(usex !libusb)
|
|
-DNOLIBUVC=$(usex !libuvc)
|
|
-DNOLIBMP4V2=$(usex !mp4)
|
|
-DNOLIBOPUS=$(usex !opus)
|
|
-DNOPORTAUDIO=$(usex !portaudio)
|
|
-DNOPULSEAUDIO=$(usex !pulseaudio)
|
|
-DNOQTAUDIO=$(usex !qtmedia)
|
|
-DNOQTCAMERA=$(usex !qtmedia)
|
|
-DNOQTSCREENCAPTURE=$(usex !qtmedia)
|
|
-DNORAVIE=$(usex !rav1e)
|
|
-DNOPIPEWIRE=$(usex !screencast)
|
|
-DNOSDL=$(usex !sdl)
|
|
-DNOSVTAV1=$(usex !svt-av1)
|
|
-DNOV4L2=$(usex !v4l)
|
|
-DNOV4LUTILS=$(usex !v4l)
|
|
-DNOVLC=$(usex !vlc)
|
|
-DNOLIBVORBIS=$(usex !vorbis)
|
|
-DNOLIBWEBM=$(usex !vpx)
|
|
-DNOLIBVPX=$(usex !vpx)
|
|
-DNOXLIBSCREENCAP=$(usex !X)
|
|
-DNOX264=$(usex !x264)
|
|
)
|
|
cmake_src_configure
|
|
}
|
|
|
|
src_install() {
|
|
docompress -x /usr/share/man/man1/${PN}.1.gz
|
|
cmake_src_install
|
|
}
|